Documentation ¶
Overview ¶
Package quadedge a topological subdivision of quadeges, to support creating triangulations and Voronoi diagrams.
Index ¶
- Constants
- func IsCCW(a matrix.Matrix, b matrix.Matrix, c matrix.Matrix) bool
- func IsInCircle(v matrix.Matrix, a matrix.Matrix, b matrix.Matrix, c matrix.Matrix) bool
- func Splice(a *QuadEdge, b *QuadEdge)
- func Swap(e *QuadEdge)
- type LastFoundQuadEdgeLocator
- type Locator
- type QuadEdge
- func (q *QuadEdge) DNext() *QuadEdge
- func (q *QuadEdge) DPrev() *QuadEdge
- func (q *QuadEdge) Destination() matrix.Matrix
- func (q *QuadEdge) InvRot() *QuadEdge
- func (q *QuadEdge) LNext() *QuadEdge
- func (q *QuadEdge) LPrev() *QuadEdge
- func (q *QuadEdge) ONext() *QuadEdge
- func (q *QuadEdge) OPrev() *QuadEdge
- func (q *QuadEdge) Origin() matrix.Matrix
- func (q *QuadEdge) Primary() *QuadEdge
- func (q *QuadEdge) RNext() *QuadEdge
- func (q *QuadEdge) RPrev() *QuadEdge
- func (q *QuadEdge) SetDestination(v matrix.Matrix)
- func (q *QuadEdge) SetOrigin(v matrix.Matrix)
- func (q *QuadEdge) Sym() *QuadEdge
- func (q *QuadEdge) ToString() string
- type Subdivision
- func (q *Subdivision) Connect(a *QuadEdge, b *QuadEdge) *QuadEdge
- func (q *Subdivision) Delete(e *QuadEdge)
- func (q *Subdivision) Edges() []*QuadEdge
- func (q *Subdivision) GetVoronoiCellPolygons() []matrix.PolygonMatrix
- func (q *Subdivision) IsFrameEdge(e *QuadEdge) bool
- func (q *Subdivision) IsFrameVertex(v matrix.Matrix) bool
- func (q *Subdivision) IsOnEdge(e *QuadEdge, p matrix.Matrix) bool
- func (q *Subdivision) IsVertexOfEdge(e *QuadEdge, v matrix.Matrix) bool
- func (q *Subdivision) Locate(v matrix.Matrix) *QuadEdge
- func (q *Subdivision) MakeEdge(o matrix.Matrix, d matrix.Matrix) *QuadEdge
- func (q *Subdivision) SetEdges(edges []*QuadEdge)
- type TriangleCircumcentreVisitor
- type TriangleVisitor
Constants ¶
View Source
const EdgeCoincidenceTolFactor = 1000
EdgeCoincidenceTolFactor ...
Variables ¶
This section is empty.
Functions ¶
func IsInCircle ¶
IsInCircle ...
Types ¶
type LastFoundQuadEdgeLocator ¶
type LastFoundQuadEdgeLocator struct {
// contains filtered or unexported fields
}
LastFoundQuadEdgeLocator ...
func NewLastFoundQuadEdgeLocator ¶
func NewLastFoundQuadEdgeLocator(subdivision *Subdivision) *LastFoundQuadEdgeLocator
NewLastFoundQuadEdgeLocator ...
type QuadEdge ¶
type QuadEdge struct {
// contains filtered or unexported fields
}
QuadEdge ...
func NewQuadEdge ¶
NewQuadEdge return a QuadEdge
func (*QuadEdge) SetDestination ¶
SetDestination ...
type Subdivision ¶ added in v1.1.0
type Subdivision struct {
// contains filtered or unexported fields
}
Subdivision ...
func NewQuadEdgeSubdivision ¶
func NewQuadEdgeSubdivision(env *envelope.Envelope, tolerance float64) *Subdivision
NewQuadEdgeSubdivision ...
func (*Subdivision) Connect ¶ added in v1.1.0
func (q *Subdivision) Connect(a *QuadEdge, b *QuadEdge) *QuadEdge
Connect ...
func (*Subdivision) GetVoronoiCellPolygons ¶ added in v1.1.0
func (q *Subdivision) GetVoronoiCellPolygons() []matrix.PolygonMatrix
GetVoronoiCellPolygons ...
func (*Subdivision) IsFrameEdge ¶ added in v1.1.0
func (q *Subdivision) IsFrameEdge(e *QuadEdge) bool
IsFrameEdge whether a QuadEdge is an edge incident on a frame triangle vertex
func (*Subdivision) IsFrameVertex ¶ added in v1.1.0
func (q *Subdivision) IsFrameVertex(v matrix.Matrix) bool
IsFrameVertex ...
func (*Subdivision) IsOnEdge ¶ added in v1.1.0
func (q *Subdivision) IsOnEdge(e *QuadEdge, p matrix.Matrix) bool
IsOnEdge ...
func (*Subdivision) IsVertexOfEdge ¶ added in v1.1.0
func (q *Subdivision) IsVertexOfEdge(e *QuadEdge, v matrix.Matrix) bool
IsVertexOfEdge ...
func (*Subdivision) Locate ¶ added in v1.1.0
func (q *Subdivision) Locate(v matrix.Matrix) *QuadEdge
Locate ...
func (*Subdivision) SetEdges ¶ added in v1.1.0
func (q *Subdivision) SetEdges(edges []*QuadEdge)
SetEdges ...
type TriangleCircumcentreVisitor ¶
type TriangleCircumcentreVisitor struct { }
TriangleCircumcentreVisitor ...
func (*TriangleCircumcentreVisitor) Visit ¶
func (t *TriangleCircumcentreVisitor) Visit(triEdges []*QuadEdge)
Visit ...
type TriangleVisitor ¶
type TriangleVisitor interface {
Visit(triEdges []*QuadEdge)
}
TriangleVisitor ...
Click to show internal directories.
Click to hide internal directories.