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.