Versions in this module Expand all Collapse all v1 v1.0.0 Dec 25, 2023 Changes in this version + type Bounds struct + func NewBounds(layout Layout) *Bounds + func (b *Bounds) Clone() *Bounds + func (b *Bounds) Extend(g T) *Bounds + func (b *Bounds) IsEmpty() bool + func (b *Bounds) Layout() Layout + func (b *Bounds) Max(dim int) float64 + func (b *Bounds) Min(dim int) float64 + func (b *Bounds) Overlaps(layout Layout, b2 *Bounds) bool + func (b *Bounds) OverlapsPoint(layout Layout, point Coord) bool + func (b *Bounds) Polygon() *Polygon + func (b *Bounds) Set(args ...float64) *Bounds + func (b *Bounds) SetCoords(min, max Coord) *Bounds + type Coord []float64 + func (c Coord) Clone() Coord + func (c Coord) Equal(layout Layout, other Coord) bool + func (c Coord) Set(other Coord) + func (c Coord) X() float64 + func (c Coord) Y() float64 + type ErrLayoutMismatch struct + Got Layout + Want Layout + func (e ErrLayoutMismatch) Error() string + type ErrStrideMismatch struct + Got int + Want int + func (e ErrStrideMismatch) Error() string + type ErrUnsupportedLayout Layout + func (e ErrUnsupportedLayout) Error() string + type ErrUnsupportedType struct + Value interface{} + func (e ErrUnsupportedType) Error() string + type GeometryCollection struct + func NewGeometryCollection() *GeometryCollection + func (*GeometryCollection) Ends() []int + func (*GeometryCollection) Endss() [][]int + func (*GeometryCollection) FlatCoords() []float64 + func (gc *GeometryCollection) Bounds() *Bounds + func (gc *GeometryCollection) Empty() bool + func (gc *GeometryCollection) Geom(i int) T + func (gc *GeometryCollection) Geoms() []T + func (gc *GeometryCollection) Layout() Layout + func (gc *GeometryCollection) MustPush(gs ...T) *GeometryCollection + func (gc *GeometryCollection) NumGeoms() int + func (gc *GeometryCollection) Push(gs ...T) error + func (gc *GeometryCollection) SRID() int + func (gc *GeometryCollection) SetSRID(srid int) *GeometryCollection + func (gc *GeometryCollection) Stride() int + type Layout int + const NoLayout + const XY + const XYM + const XYZ + const XYZM + func (l Layout) MIndex() int + func (l Layout) Stride() int + func (l Layout) String() string + func (l Layout) ZIndex() int + type LineString struct + func NewLineString(l Layout) *LineString + func NewLineStringFlat(layout Layout, flatCoords []float64) *LineString + func (g *LineString) Coord(i int) Coord + func (g *LineString) Coords() []Coord + func (g *LineString) NumCoords() int + func (ls *LineString) Area() float64 + func (ls *LineString) Clone() *LineString + func (ls *LineString) Empty() bool + func (ls *LineString) Interpolate(val float64, dim int) (int, float64) + func (ls *LineString) Length() float64 + func (ls *LineString) MustSetCoords(coords []Coord) *LineString + func (ls *LineString) SetCoords(coords []Coord) (*LineString, error) + func (ls *LineString) SetSRID(srid int) *LineString + func (ls *LineString) SubLineString(start, stop int) *LineString + func (ls *LineString) Swap(ls2 *LineString) + type LinearRing struct + func NewLinearRing(layout Layout) *LinearRing + func NewLinearRingFlat(layout Layout, flatCoords []float64) *LinearRing + func (g *LinearRing) Coord(i int) Coord + func (g *LinearRing) Coords() []Coord + func (g *LinearRing) NumCoords() int + func (lr *LinearRing) Area() float64 + func (lr *LinearRing) Clone() *LinearRing + func (lr *LinearRing) ContainCoord(pt *Coord) bool + func (lr *LinearRing) Empty() bool + func (lr *LinearRing) Length() float64 + func (lr *LinearRing) MustSetCoords(coords []Coord) *LinearRing + func (lr *LinearRing) SetCoords(coords []Coord) (*LinearRing, error) + func (lr *LinearRing) SetSRID(srid int) *LinearRing + func (lr *LinearRing) Swap(lr2 *LinearRing) + type MultiLineString struct + func NewMultiLineString(layout Layout) *MultiLineString + func NewMultiLineStringFlat(layout Layout, flatCoords []float64, ends []int) *MultiLineString + func (g *MultiLineString) Coords() [][]Coord + func (g *MultiLineString) Ends() []int + func (mls *MultiLineString) Area() float64 + func (mls *MultiLineString) Clone() *MultiLineString + func (mls *MultiLineString) Empty() bool + func (mls *MultiLineString) Length() float64 + func (mls *MultiLineString) LineString(i int) *LineString + func (mls *MultiLineString) MustSetCoords(coords [][]Coord) *MultiLineString + func (mls *MultiLineString) NumLineStrings() int + func (mls *MultiLineString) Push(ls *LineString) error + func (mls *MultiLineString) SetCoords(coords [][]Coord) (*MultiLineString, error) + func (mls *MultiLineString) SetSRID(srid int) *MultiLineString + func (mls *MultiLineString) Swap(mls2 *MultiLineString) + type MultiPoint struct + func NewMultiPoint(layout Layout) *MultiPoint + func NewMultiPointFlat(layout Layout, flatCoords []float64) *MultiPoint + func (g *MultiPoint) Coord(i int) Coord + func (g *MultiPoint) Coords() []Coord + func (g *MultiPoint) NumCoords() int + func (mp *MultiPoint) Area() float64 + func (mp *MultiPoint) Clone() *MultiPoint + func (mp *MultiPoint) Empty() bool + func (mp *MultiPoint) Length() float64 + func (mp *MultiPoint) MustSetCoords(coords []Coord) *MultiPoint + func (mp *MultiPoint) NumPoints() int + func (mp *MultiPoint) Point(i int) *Point + func (mp *MultiPoint) Push(p *Point) error + func (mp *MultiPoint) SetCoords(coords []Coord) (*MultiPoint, error) + func (mp *MultiPoint) SetSRID(srid int) *MultiPoint + func (mp *MultiPoint) Swap(mp2 *MultiPoint) + type MultiPolygon struct + func NewMultiPolygon(layout Layout) *MultiPolygon + func NewMultiPolygonFlat(layout Layout, flatCoords []float64, endss [][]int) *MultiPolygon + func (g *MultiPolygon) Coords() [][][]Coord + func (g *MultiPolygon) Endss() [][]int + func (mp *MultiPolygon) Area() float64 + func (mp *MultiPolygon) Clone() *MultiPolygon + func (mp *MultiPolygon) Empty() bool + func (mp *MultiPolygon) Length() float64 + func (mp *MultiPolygon) MustSetCoords(coords [][][]Coord) *MultiPolygon + func (mp *MultiPolygon) NumPolygons() int + func (mp *MultiPolygon) Polygon(i int) *Polygon + func (mp *MultiPolygon) Push(p *Polygon) error + func (mp *MultiPolygon) SetCoords(coords [][][]Coord) (*MultiPolygon, error) + func (mp *MultiPolygon) SetSRID(srid int) *MultiPolygon + func (mp *MultiPolygon) Swap(mp2 *MultiPolygon) + type Point struct + func NewPoint(l Layout) *Point + func NewPointFlat(l Layout, flatCoords []float64) *Point + func (g *Point) Bounds() *Bounds + func (g *Point) Coords() Coord + func (g *Point) Ends() []int + func (g *Point) Endss() [][]int + func (g *Point) FlatCoords() []float64 + func (g *Point) Layout() Layout + func (g *Point) NumCoords() int + func (g *Point) Reserve(n int) + func (g *Point) SRID() int + func (g *Point) Stride() int + func (p *Point) Area() float64 + func (p *Point) Clone() *Point + func (p *Point) Empty() bool + func (p *Point) Length() float64 + func (p *Point) M() float64 + func (p *Point) MustSetCoords(coords Coord) *Point + func (p *Point) SetCoords(coords Coord) (*Point, error) + func (p *Point) SetSRID(srid int) *Point + func (p *Point) Swap(p2 *Point) + func (p *Point) X() float64 + func (p *Point) Y() float64 + func (p *Point) Z() float64 + type Polygon struct + func NewPolygon(layout Layout) *Polygon + func NewPolygonFlat(layout Layout, flatCoords []float64, ends []int) *Polygon + func (g *Polygon) Coords() [][]Coord + func (g *Polygon) Ends() []int + func (p *Polygon) Area() float64 + func (p *Polygon) Clone() *Polygon + func (p *Polygon) Contains(lr *LinearRing) bool + func (p *Polygon) Empty() bool + func (p *Polygon) Length() float64 + func (p *Polygon) LinearRing(i int) *LinearRing + func (p *Polygon) MustSetCoords(coords [][]Coord) *Polygon + func (p *Polygon) NumLinearRings() int + func (p *Polygon) Push(lr *LinearRing) error + func (p *Polygon) SetCoords(coords [][]Coord) (*Polygon, error) + func (p *Polygon) SetSRID(srid int) *Polygon + func (p *Polygon) Swap(p2 *Polygon) + type T interface + Bounds func() *Bounds + Ends func() []int + Endss func() [][]int + FlatCoords func() []float64 + Layout func() Layout + SRID func() int + Stride func() int + func Must(g T, err error) T