Module: RGeo::Feature::MultiSurface

Extended by:
Type
Includes:
GeometryCollection
Included in:
MultiPolygon
Defined in:
lib/rgeo/feature/multi_surface.rb

Overview

SFS 1.1 Description

A MultiSurface is a 2-dimensional GeometryCollection whose elements are Surfaces. The interiors of any two Surfaces in a MultiSurface may not intersect. The boundaries of any two elements in a MultiSurface may intersect, at most, at a finite number of Points.

MultiSurface is a non-instantiable class in this International Standard. It defines a set of methods for its subclasses and is included for reasons of extensibility. The instantiable subclass of MultiSurface is MultiPolygon, corresponding to a collection of Polygons.

Notes

MultiSurface is defined as a module and is provided primarily for the sake of documentation. Implementations need not necessarily include this module itself. Therefore, you should not depend on the kind_of? method to check type. Instead, use the provided check_type class method (or === operator) defined in the Type module.

Constant Summary

Constants included from Type

Type::Instance

Instance Method Summary collapse

Methods included from Type

_add_subtype, check_type, each_immediate_subtype, extended, subtype_of?, supertype, type_name

Methods included from GeometryCollection

#[], #each, #geometry_n, #num_geometries, #size

Methods included from Geometry

#*, #+, #-, #==, #as_binary, #as_text, #boundary, #buffer, #contains?, #convex_hull, #crosses?, #difference, #dimension, #disjoint?, #distance, #envelope, #eql?, #equals?, #factory, #geometry_type, #intersection, #intersects?, #is_empty?, #is_simple?, #overlaps?, #relate, #relate?, #rep_equals?, #srid, #sym_difference, #touches?, #union, #within?

Instance Method Details

#areaObject

SFS 1.1 Description

The area of this MultiSurface, as measured in the spatial reference system of this MultiSurface.

Notes

Returns a floating-point scalar value.



43
44
45
# File 'lib/rgeo/feature/multi_surface.rb', line 43

def area
  raise Error::UnsupportedOperation, "Method MultiSurface#area not defined."
end

#centroidObject

SFS 1.1 Description

The mathematical centroid for this MultiSurface as a Point. The result is not guaranteed to be on this MultiSurface.

Notes

Returns an object that supports the Point interface.



56
57
58
# File 'lib/rgeo/feature/multi_surface.rb', line 56

def centroid
  raise Error::UnsupportedOperation, "Method MultiSurface#centroid not defined."
end

#point_on_surfaceObject

SFS 1.1 Description

A Point guaranteed to be on this MultiSurface.

Notes

Returns an object that supports the Point interface.



68
69
70
# File 'lib/rgeo/feature/multi_surface.rb', line 68

def point_on_surface
  raise Error::UnsupportedOperation, "Method MultiSurface#point_on_surface not defined."
end