Class ImplicitShape
Provides methods for creating and manipulating implicit shapes.
public static class ImplicitShape
 Inheritance

ImplicitShape
 Inherited Members
Methods
 Circle(float, Func<Vector2, float>)
Creates a 2D Circle Shape with center in (0,0)
 Circle(Vector2, float, Func<Vector2, float>)
Creates a 2D Circle Shape.
 ConvexPolygon(IEnumerable<GridPoint2>)
Creates a 2D Convex Polygon given a IEnumerable of vertices.
 DownTriangle(float)
Creates a 2D Down Triangle Shape using a Down Triangle Norm.
 DownTriangle(Vector2, float)
Creates a 2D Down Triangle Shape using a Circle Shape with a DownTriangle Norm.
 FlatHexFatRectangle(GridPoint2)
Creates a fat rectangle shape suitable for a flat hex grid.
 FlatHexRectangle(GridPoint2)
Creates a rectangle shape suitable for a flat hex grid.
 FlatHexThinRectangle(GridPoint2)
Creates a thin rectangle shape suitable for a flat hex grid.
 Func<TPoint>(Func<TPoint, bool>)
Creates a shape from a predicate.
 HalfPlane(GridPoint2, GridPoint2)
Creates a 2D HalfPlane Shape given two points.
 Hexagon(float)
Creates a 2D Hexagon Shape using a Circle Shape with a Hex Norm.
 Hexagon(Vector2, float)
Creates a 2D Hexagon Shape using a Circle Shape with a Hex Norm.
 Intersect(IEnumerable<IImplicitShape<GridPoint2>>)
Creates a 2D Intersect Shape.
 Intersection<TPoint>(IImplicitShape<TPoint>, IImplicitShape<TPoint>)
Creates a generic Function Shape that works as a Generic Intersection.
 Intersection<TPoint>(IEnumerable<IImplicitShape<TPoint>>)
Creates a generic Function Shape that works as a Generic Intersection.
 Inverse<TPoint>(IImplicitShape<TPoint>)
Create a generic Function Shape that works as a Generic Inverse.
 Layer(IImplicitShape<GridPoint2>, int)
Creates a shape that has the given number of 2D shapes stacked in layers.
 Layer(IEnumerable<IImplicitShape<GridPoint2>>)
Creates a new 3D shape by staking a list of 2D shapes.
 List(IEnumerable<GridPoint2>)
Creates a 2D PointListShape with a list of given points.
 Parallelepiped(GridPoint3)
Creates a 3D Parallelepiped.
 Parallelogram(GridPoint2)
Creates a 2D Parallelogram Shape.
 PointyHexFatRectangle(GridPoint2)
Creates a fat rectangle shape suitable for a pointy hex grid.
 PointyHexRectangle(GridPoint2)
Creates a rectangle shape suitable for a pointy hex grid.
 PointyHexThinRectangle(GridPoint2)
Creates a thin rectangle shape suitable for a pointy hex grid.
 Product(IExplicitShape<GridPoint2>, IImplicitShape<GridPoint2>, GridPoint2)
Creates a 2D Product Shape.
 Product(IExplicitShape<GridPoint3>, IImplicitShape<GridPoint3>, GridPoint3)
Creates a shape that is the product of this shape with another shape.
 Product(IExplicitShape<int>, IImplicitShape<int>, int)
Creates a 1D Product Shape using another shape and a scale factor.
 RectDiamond(float)
Creates a 2D RectDiamond Shape using a Circle Shape with a Manhattan Norm.
 RectDiamond(Vector2, float)
Creates a 2D Rect Diamond Shape using a Circle Shape with a Manhattan Norm.
 ReverseSelect<TPoint>(IImplicitShape<TPoint>, Func<TPoint, TPoint>)
Returns a new implicit shape that projects points before testing them for membership.
 Segment(GridInterval)
Creates a 1D Segment Shape given a GridInterval.
 Segment(int, int)
Creates a 1D Segment Shape with a given start and size interval.
 SegmentFromEndpoints(int, int)
Creates a 1D Segment Shape with a given start and end point.
 Single(int)
Creates a 1D Segment of size 1 and a value point of n.
 Single1()
Creates a 1D Single Shape with center value 0.
 Single1(GridPoint3)
Creates a 3D Single Shape.
 Single1(int)
Creates a 1D Single Shape with a given point value.
 Single2()
Creates a 2D Single Shape with a center value of (0,0)
 Single2(GridPoint2)
Creates a 2D Single Shape with a given center value.
 Single3()
Creates a 3D Single Shape with a center point of (0, 0, 0)
 Sphere(float)
Creates a 3D Sphere.
 Square(float)
Creates a 2D Square Shape using a Circle Shape with a Chebychev norm.
 Square(Vector2, float)
Creates a 2D Square Shape using a Circle Shape with a Chebychev norm.
 Star(float)
Creates a 2D Star Shape using a Circle Shape with a Star Norm.
 Star(Vector2, float)
Creates a 2D Star Shape using a Circle Shape with a Star Norm.
 SwapToXZY(IImplicitShape<GridPoint3>)
Creates a new shape with the same points as the given shape with Y and Z swapped.
 SwapToYXZ(IImplicitShape<GridPoint3>)
Creates a new shape with the same points as the given shape with X and Y swapped.
 SwapToYZX(IImplicitShape<GridPoint3>)
Creates a new shape with the same points as the given shape with the coordinates shifted left.
 SwapToZXY(IImplicitShape<GridPoint3>)
Creates a new shape with the same points as the given shape with coordinates shifted right.
 SwapToZYX(IImplicitShape<GridPoint3>)
Creates a new shape with the same points as the given shape with coordinates in reverse order.
 SwapXY(IImplicitShape<GridPoint2>)
Creates a new shape with the same points as the given shape with X and Y swapped.
 SwapYZ(IImplicitShape<GridPoint3>)
Creates a new shape with the same points as the given shape with Y and Z swapped.
 Transform<TPoint>(IImplicitShape<TPoint>, IReverseMap<TPoint, TPoint>)
Creates a generic Function Shape that works as a Generic Transform.
 Translate(IImplicitShape<GridPoint2>, GridPoint2)
Creates a 2D Translate Shape.
 Translate(IImplicitShape<GridPoint3>, GridPoint3)
Creates a 3D Translate Shape.
 Translate(IImplicitShape<int>, int)
Creates a 1D Translation Shape with a given offset.
 Union(IEnumerable<IImplicitShape<GridPoint2>>)
Creates a 2D Union Shape.
 Union<TPoint>(IImplicitShape<TPoint>, IImplicitShape<TPoint>)
Creates a generic Function Shape that works as a Generic Union.
 Union<TPoint>(IEnumerable<IImplicitShape<TPoint>>)
Creates a generic Function Shape that works as a Generic Union.
 UpTriangle(float)
Creates a 2D UpTriangle shape.
 UpTriangle(Vector2, float)
Creates a 2D Up Triangle Shape using a Circle Shape with a UpTriangle Norm.
 Where<TPoint>(IImplicitShape<TPoint>, Func<TPoint, bool>)
Creates a generic Function Shape that works as a Generic Where.