package
0.0.0-20220831181609-9c88ebf2c706
Repository: https://github.com/adamcolton/geom.git
Documentation: pkg.go.dev

# Functions

ConvexHull is currently a wrapper around GrahamScan.
GetTriangles takes triangle indexes from FindTriangles and returns a slice of triangles.
GrahamScan: https://en.wikipedia.org/wiki/Graham_scan Finds the convex hull of a set of points in O(n log n).
New creates a polygon and orders the points to proceed counter clockwise.
NewConcavePolygon converts a Polygon to a ConcavePolygon.
NewLL creates a linked list polygon from a regular polygon.
Create a new PolarPolygon from a set of points.
RectanglePointWidthLength takes a point and a vector and returns a rectangle.
RectangleTwoPoints takes two points and returns a Polygon representing a rectangle.
RegularPolygonRadius constructs a regular polygon.
RegularPolygonSideLength constructs a regular polygon defined by the length of the sides.

# Constants

Pi constant.
Tau constant.

# Variables

GrahamTolerance is the deviation from 0 of a cross product that will still be treated as 0.

# Structs

Collision between two polygons.
ConcavePolygon represents a Polygon with at least one concave angle.
ErrNotConvex is return if a convex hull is not actually convex.
LLNode is a node in a linked list polygon.
LLPolygon represents a polygon as a linked list stored in a slice.

# Interfaces

ConvexHuller is taken from shape.ConvexHuller to avoid cyclic imports.

# Type aliases

AssertConvexHull fulfills geomtest.AssertEqualizer.
AssertConvexHuller fulfills geomtest.AssertEqualizer.
Collisions represent a set of collisions between two polygons.
PolarPolygon is useful in constructing a Polygon when the order of the vertexes is not known.
Polygon represents a Convex Polygon.