class OGR::CoordinateTransformation

Attributes

ptr[RW]

Public Class Methods

find_transformation(in_sr, out_sr) click to toggle source
# File lib/ffi-ogr/coordinate_transformation.rb, line 16
def self.find_transformation(in_sr, out_sr)
  bad_sr = []

  if !in_sr.instance_of?(OGR::SpatialReference)
    bad_sr << 'Input SR'
  elsif !out_sr.instance_of?(OGR::SpatialReference)
    bad_sr << 'Output SR'
  end

  raise RuntimeError.new("Invalid Spatial Reference(s): #{bad_sr.join(', ')}") if bad_sr.size > 0

  FFIOGR.OCTNewCoordinateTransformation(in_sr.ptr, out_sr.ptr)
end
new(ptr) click to toggle source
# File lib/ffi-ogr/coordinate_transformation.rb, line 5
def initialize(ptr)
  @ptr = FFI::AutoPointer.new(ptr, self.class.method(:release))
  @ptr.autorelease = false
end
release(ptr) click to toggle source
# File lib/ffi-ogr/coordinate_transformation.rb, line 10
def self.release(ptr);end

Public Instance Methods

free() click to toggle source
# File lib/ffi-ogr/coordinate_transformation.rb, line 12
def free
  FFIOGR.OCTDestroyCoordinateTransformation(@ptr)
end