| 1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950515253545556575859606162636465 |
- import Geometry from './Geometry'
- import Lineal from './Lineal'
- import GeometryCollection from './GeometryCollection'
- import UnsupportedOperationException from '../../../../java/lang/UnsupportedOperationException'
- import Dimension from './Dimension'
- export default class MultiLineString extends GeometryCollection {
- constructor() {
- super()
- MultiLineString.constructor_.apply(this, arguments)
- }
- static constructor_() {
- const lineStrings = arguments[0], factory = arguments[1]
- GeometryCollection.constructor_.call(this, lineStrings, factory)
- }
- copyInternal() {
- const lineStrings = new Array(this._geometries.length).fill(null)
- for (let i = 0; i < lineStrings.length; i++)
- lineStrings[i] = this._geometries[i].copy()
-
- return new MultiLineString(lineStrings, this._factory)
- }
- equalsExact() {
- if (arguments.length === 2 && (typeof arguments[1] === 'number' && arguments[0] instanceof Geometry)) {
- const other = arguments[0], tolerance = arguments[1]
- if (!this.isEquivalentClass(other))
- return false
-
- return super.equalsExact.call(this, other, tolerance)
- } else {
- return super.equalsExact.apply(this, arguments)
- }
- }
- getBoundaryDimension() {
- if (this.isClosed())
- return Dimension.FALSE
-
- return 0
- }
- isClosed() {
- if (this.isEmpty())
- return false
-
- for (let i = 0; i < this._geometries.length; i++)
- if (!this._geometries[i].isClosed())
- return false
-
-
- return true
- }
- getTypeCode() {
- return Geometry.TYPECODE_MULTILINESTRING
- }
- getDimension() {
- return 1
- }
- getBoundary() {
- throw new UnsupportedOperationException()
- }
- getGeometryType() {
- return Geometry.TYPENAME_MULTILINESTRING
- }
- get interfaces_() {
- return [Lineal]
- }
- }
|