class OGR::Point
Public Class Methods
new(geometry_ptr = nil, spatial_reference: nil)
click to toggle source
@param [FFI::Pointer] geometry_ptr
# File lib/ogr/geometries/point.rb, line 8 def initialize(geometry_ptr = nil, spatial_reference: nil) geometry_ptr ||= OGR::Geometry.create(:wkbPoint) initialize_from_pointer(geometry_ptr) self.spatial_reference = spatial_reference if spatial_reference end
Public Instance Methods
add_point(x, y)
click to toggle source
Adds a point to a LineString
or Point
geometry.
@param x [Float] @param y [Float]
# File lib/ogr/geometries/point.rb, line 51 def add_point(x, y) FFI::OGR::API.OGR_G_AddPoint_2D(@c_pointer, x, y) end
point()
click to toggle source
@return [<Array<Float, Float>] [x, y].
# File lib/ogr/geometries/point.rb, line 29 def point return [] if empty? x_ptr = FFI::MemoryPointer.new(:double) y_ptr = FFI::MemoryPointer.new(:double) z_ptr = FFI::MemoryPointer.new(:double) FFI::OGR::API.OGR_G_GetPoint(@c_pointer, 0, x_ptr, y_ptr, z_ptr) [x_ptr.read_double, y_ptr.read_double] end
Also aliased as: point_value
set_point(x, y)
click to toggle source
@param x [Number] @param y [Number]
# File lib/ogr/geometries/point.rb, line 43 def set_point(x, y) FFI::OGR::API.OGR_G_SetPoint_2D(@c_pointer, 0, x, y) end
x()
click to toggle source
@return [Float]
# File lib/ogr/geometries/point.rb, line 15 def x return nil if empty? FFI::OGR::API.OGR_G_GetX(@c_pointer, 0) end
y()
click to toggle source
@return [Float]
# File lib/ogr/geometries/point.rb, line 22 def y return nil if empty? FFI::OGR::API.OGR_G_GetY(@c_pointer, 0) end