Module: RGeo::Geos::ZMPolygonMethods
- Included in:
- ZMPolygonImpl
- Defined in:
- lib/rgeo/geos/zm_feature_methods.rb
Overview
:nodoc:
Instance Method Summary collapse
- #area ⇒ Object
- #centroid ⇒ Object
- #coordinates ⇒ Object
- #exterior_ring ⇒ Object
- #interior_ring_n(idx) ⇒ Object
- #interior_rings ⇒ Object
- #num_interior_rings ⇒ Object
- #point_on_surface ⇒ Object
Instance Method Details
#area ⇒ Object
280 281 282 |
# File 'lib/rgeo/geos/zm_feature_methods.rb', line 280 def area @zgeometry.area end |
#centroid ⇒ Object
284 285 286 |
# File 'lib/rgeo/geos/zm_feature_methods.rb', line 284 def centroid @factory.create_feature(ZMPointImpl, @zgeometry.centroid, @mgeometry.centroid) end |
#coordinates ⇒ Object
314 315 316 |
# File 'lib/rgeo/geos/zm_feature_methods.rb', line 314 def coordinates ([exterior_ring] + interior_rings).map(&:coordinates) end |
#exterior_ring ⇒ Object
292 293 294 |
# File 'lib/rgeo/geos/zm_feature_methods.rb', line 292 def exterior_ring @factory.create_feature(ZMLineStringImpl, @zgeometry.exterior_ring, @mgeometry.exterior_ring) end |
#interior_ring_n(idx) ⇒ Object
300 301 302 |
# File 'lib/rgeo/geos/zm_feature_methods.rb', line 300 def interior_ring_n(idx) @factory.create_feature(ZMLineStringImpl, @zgeometry.interior_ring_n(idx), @mgeometry.interior_ring_n(idx)) end |
#interior_rings ⇒ Object
304 305 306 307 308 309 310 311 312 |
# File 'lib/rgeo/geos/zm_feature_methods.rb', line 304 def interior_rings result_ = [] zrings_ = @zgeometry.interior_rings mrings_ = @mgeometry.interior_rings zrings_.size.times do |i_| result_ << @factory.create_feature(ZMLineStringImpl, zrings_[i_], mrings_[i_]) end result_ end |
#num_interior_rings ⇒ Object
296 297 298 |
# File 'lib/rgeo/geos/zm_feature_methods.rb', line 296 def num_interior_rings @zgeometry.num_interior_rings end |
#point_on_surface ⇒ Object
288 289 290 |
# File 'lib/rgeo/geos/zm_feature_methods.rb', line 288 def point_on_surface @factory.create_feature(ZMPointImpl, @zgeometry.centroid, @mgeometry.centroid) end |