index

package
v0.2.0-mixed Latest Latest
Warning

This package is not in the latest version of its module.

Go to latest
Published: Aug 9, 2021 License: LGPL-2.1 Imports: 2 Imported by: 0

Documentation

Index

Constants

This section is empty.

Variables

This section is empty.

Functions

This section is empty.

Types

type ArrayVisitor

type ArrayVisitor struct {
	Items []interface{}
}

ArrayVisitor Builds an array of all visited items.

func (*ArrayVisitor) VisitItem

func (a *ArrayVisitor) VisitItem(item interface{})

VisitItem Visits an item.

type ItemVisitor

type ItemVisitor interface {
	// VisitItem Visits an item in the index.
	VisitItem(item interface{})
}

ItemVisitor A visitor for items in a SpatialIndex.

type LineSegmentVisitor

type LineSegmentVisitor struct {

	// LineSegmentVisitor ItemVisitor subclass to reduce volume of query results.
	QuerySeg *matrix.LineSegment
	Items    []*matrix.LineSegment
}

LineSegmentVisitor ItemVisitor subclass to reduce volume of query results.

func (*LineSegmentVisitor) VisitItem

func (l *LineSegmentVisitor) VisitItem(item interface{})

VisitItem ...

type SpatialIndex

type SpatialIndex interface {
	// Insert Adds a spatial item with an extent specified by the given Envelope to the index
	Insert(itemEnv *envelope.Envelope, item interface{})

	// Query Queries the index for all items whose extents intersect the given search  Envelope
	// Note that some kinds of indexes may also return objects which do not in fact
	//  intersect the query envelope.
	Query(searchEnv *envelope.Envelope) []interface{}
	// QueryVisitor Queries the index for all items whose extents intersect the given search Envelope,
	// and applies an  ItemVisitor to them.
	// Note that some kinds of indexes may also return objects which do not in fact
	// intersect the query envelope.
	QueryVisitor(searchEnv *envelope.Envelope, visitor *ItemVisitor)

	// Remove Removes a single item from the tree.
	Remove(itemEnv *envelope.Envelope, item interface{})
}

SpatialIndex The basic operations supported implementing spatial index algorithms.

A spatial index typically provides a primary filter for range rectangle queries.
A secondary filter is required to test for exact intersection.
The secondary filter may consist of other kinds of tests,
such as testing other spatial relationships.

Directories

Path Synopsis

Jump to

Keyboard shortcuts

? : This menu
/ : Search site
f or F : Jump to
y or Y : Canonical URL