A MultiCurve is a 1-dimensional GeometryCollection whose elements are Curves.
MultiCurve is a non-instantiable class in this specification; it defines a set of methods for its subclasses and is included for reasons of extensibility.
A MultiCurve is simple if and only if all of its elements are simple and the only intersections between any two elements occur at Points that are on the boundaries of both elements.
The boundary of a MultiCurve is obtained by applying the “mod 2” union rule: A Point is in the boundary of a MultiCurve if it is in the boundaries of an odd number of elements of the MultiCurve.
A MultiCurve is closed if all of its elements are closed. The boundary of a closed MultiCurve is always empty.
A MultiCurve is defined as topologically closed.
MultiCurve 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.
Returns true if this MultiCurve is closed [StartPoint() = EndPoint() for each Curve in this MultiCurve].
Returns a boolean value. Note that this is different from the SFS specification, which stipulates an integer return value.
# File lib/rgeo/feature/multi_curve.rb, line 102 def is_closed? raise Error::UnsupportedOperation, "Method MultiCurve#is_closed? not defined." end
The Length of this MultiCurve which is equal to the sum of the lengths of the element Curves.
Returns a floating-point scalar value.
# File lib/rgeo/feature/multi_curve.rb, line 87 def length raise Error::UnsupportedOperation, "Method MultiCurve#length not defined." end