C# Class GeometryClassLibrary.PolygonListExtensions

Mostrar archivo Open project: ParagonTruss/GeometryClassLibrary

Public Methods

Method Description
CopyList ( this polygonList ) : List

Copies the list Note: the edges may be oriented differently

DoesShareSideWithPolygonInList ( this polygonsList, Polygon polygonToCheckSidesOf ) : bool

Returns whether or not the polygon has a common side with any of the polygons in this list

FindPolygonsThatAreIntersectedByLine ( this polygonList, Line intersectingLine ) : List

Finds all the polygons in this list that intersect the given line and returns a list of those Polygons

FindPolygonsTouchingPlane ( this polygonList, Plane toSeeIfTouches, bool includeContained = false ) : List

Finds all the polygons in this list that touch the plane passed in. If the includeContained flag is false, it will not return any polygons contained by the the plane

GetAllEdges ( this polygonList ) : List

returns all the edges from a list of polygons

ProjectAllOntoPlane ( this polygonList, Plane plane ) : List
Rotate ( this passedPolygons, Rotation passedRotation ) : List

Rotates the list of polygons with the given rotation

Shift ( this passedPolygon, Shift passedShift ) : List

Shifts the polygons in the list with the given shift

SplitIntoTriangles ( this polygonList ) : List

Method Details

CopyList() public static method

Copies the list Note: the edges may be oriented differently
public static CopyList ( this polygonList ) : List
polygonList this
return List

DoesShareSideWithPolygonInList() public static method

Returns whether or not the polygon has a common side with any of the polygons in this list
public static DoesShareSideWithPolygonInList ( this polygonsList, Polygon polygonToCheckSidesOf ) : bool
polygonsList this The List of Polygons to check if the passed polygon shares a side with
polygonToCheckSidesOf Polygon The polygon to see if any of the polygons in this list share a side with
return bool

FindPolygonsThatAreIntersectedByLine() public static method

Finds all the polygons in this list that intersect the given line and returns a list of those Polygons
public static FindPolygonsThatAreIntersectedByLine ( this polygonList, Line intersectingLine ) : List
polygonList this
intersectingLine Line
return List

FindPolygonsTouchingPlane() public static method

Finds all the polygons in this list that touch the plane passed in. If the includeContained flag is false, it will not return any polygons contained by the the plane
public static FindPolygonsTouchingPlane ( this polygonList, Plane toSeeIfTouches, bool includeContained = false ) : List
polygonList this The list of polygons to to see if they touch the planes
toSeeIfTouches Plane The plane to see if the polygons touch
includeContained bool If true it will include any polygons in the list that are contained in the plane, false it will not
return List

GetAllEdges() public static method

returns all the edges from a list of polygons
public static GetAllEdges ( this polygonList ) : List
polygonList this
return List

ProjectAllOntoPlane() public static method

public static ProjectAllOntoPlane ( this polygonList, Plane plane ) : List
polygonList this
plane Plane
return List

Rotate() public static method

Rotates the list of polygons with the given rotation
public static Rotate ( this passedPolygons, Rotation passedRotation ) : List
passedPolygons this
passedRotation Rotation
return List

Shift() public static method

Shifts the polygons in the list with the given shift
public static Shift ( this passedPolygon, Shift passedShift ) : List
passedPolygon this The polygons to Shift
passedShift Shift The shift to apply
return List

SplitIntoTriangles() public static method

public static SplitIntoTriangles ( this polygonList ) : List
polygonList this
return List