InterfacePolyClass Interface

Definition

Namespace: PCBI.Automation.Interfaces
Assembly: PCB-Investigator (in PCB-Investigator.exe) Version: 0
C#
public interface InterfacePolyClass

Properties

DisableSplitToMatrix If set to true, polygon operations might be slower. Handle with care! If true, all polygons which are used for polygon operations must have set this property to true Might only make sense for polygons, which are rotated/moved a lot of times before polygonoperations like Union are done, then true might be more performant Default=false
EdgeCount Count of edges in polygon.

Methods

AddArc Add an arc to the polygon with outline elements (e.g. rounds at the endings).
AddCircle Add an complete circle to the polygon.
AddEdge(IEdge) Add an edge (ILineEdge or IArcEdge) to the polygon.
AddEdge(PointD, PointD) Add an ILineEdge to the polygon.
AddEdge(PointD, PointD, PointD, Boolean) Add an arc Edge to the polygon (its create the IArcEdge internal)
AddEdge(PointD, PointD, PointD, Double, Boolean) Add an arc Edge to the polygon (its create the IArcEdge internal)
AddEllipse Calculates an ellipse of an rectangle.
AddLine Add an line to the polygon with outline elments (e.g. rounds at the end).
AddOversize Resulting Polygon will be a) CW if val greater than 0 b) CCW if val smaller than 0
AddPie Add pie to this polygon.
AddRectangle Add a rectangle to this polygon.
Clone Clone the object to get a second polygon with same values.
CombinePolygons Combine two polygons and make one polygon of them. This connect both with two lines who overlapping on start end end.
Difference Calculates the difference between this and a second polygon. It modifies this and returns the reference to this.
DistanceTo Calculate distance from this polygon to second polygon.
DoesIntersect If the SecondObject intersect with this Object it returns true.
Draw Draws the Polygon on the given Graphics by using the current World-Client transformation of the IPCBIWindow.
Flatten Flatten cuts all arcs in small line elments with length "FlattenLength" in mils.
GetArea Calculate the area of this polygon.
GetBounds bounds of polygon
GetCircumference Returns the circumference of the polygon in mils
GetEdgeCount Returns number of Edges in this Polygon
GetEdgeIndex Returns the Index of the given edge in the list
GetEdges Create a new list of Edges from this polygon.
GetIntersectingPoints Returns a list of Intersecting Points of the Poly with the given Edge. Also the Edge-Indices which are intersecting are returned in indexList
GetOutline Get outline elements as IObjectSpecifics.
GetRasterEdges Create a new list of Edges from this polygon with y values in the raster(s) crossing the give Rectangle.
GetSubPolygons Calculate all sub polygons and return a list of them, the list is empty if no subpoly are calculated.
GetSubPolygons(Double) Create a List of all subPolygons.
GetSurfaceFromPolygon(IODBLayer) Create a new Surface on the ParentLayer. This works only if edges are sorted and only one polygon is included.
GetSurfaceFromPolygon(IODBLayer, Boolean) Create a new Surface on the ParentLayer. This works only if edges are sorted!
InnerSortOfPolygonElements Sort inner elements and build groubs of connected edges.
Intersect Calculate the intersection part of this and a second polygon (Does not change 'this' polygon).
IsAnyPointOfSecondObjectIncluded Check if any Point of second PolyClass is included in this PolyClass.
IsClockWise Returns true if Polygon is Clockwise
IsClosed Check the whether polygon is closed? This method is very slow, do use it carfully.
isEqualsTol Compares two polygons.
IsPointOfSecondObjectIncluded If the first point of the SecondObject is in this object it returns true;
PointInPolygon Checks the given point p is inside of the polygon.
RemoveDoubleEdges If there are double edges in the polygon outline, they are removed. The original polygon will be changed! Some other checks and operations need "clean" polygons without double edges, if necessary call this method first.
Reverse Change direction of edges (Isle to hole and holes to isle).
Rotate Rotate the polygon.
Scale Scales the Polygon
SplitInIsleAndHoles Sortes the Sub-Polygons in single Isles (including their holes)
SplitInIsleAndHoles(IPCBIWindow, IODBLayer) Check all subpolygons for holes and isles, make a list of new surfaces for each isle with own holes.
Transform Transforms the poylgon by the given Matrix
Translate(Double, Double) Move the poygon.
Translate(Single, Single) Move the poygon.
Union Union combines this and the second poly, it return this with modifications.
UpdateBounds Check all edges and calculate bound new.

See Also