jvmMain.io.data2viz.geojson.jackson.Geometry.kt Maven / Gradle / Ivy
package io.data2viz.geojson.jackson
abstract class Geometry : GeoJsonObject {
val coordinates: MutableList = mutableListOf()
constructor()
constructor(vararg elements: T) {
elements.forEach { coordinate -> coordinates.add(coordinate) }
}
fun add(elements: T): Geometry = apply { coordinates.add(elements) }
override fun equals(o: Any?): Boolean {
if (this === o) return true
if (o !is Geometry<*>) return false
if (!super.equals(o)) return false
return coordinates == o.coordinates
}
override fun hashCode(): Int = 31 * super.hashCode() + coordinates.hashCode()
override fun toString(): String = "Geometry{coordinates=$coordinates} ${super.toString()}"
}
© 2015 - 2025 Weber Informatics LLC | Privacy Policy