ZLayout EDA Library v1.0.0
Advanced Electronic Design Automation Layout Library with Bilingual Documentation
|
Public Member Functions | |
__init__ (self, Optional[SpatialIndex] spatial_index=None) | |
int | add_polygon (self, Polygon polygon) |
SharpAngleResult | find_sharp_angles (self, float threshold_degrees=30.0) |
NarrowDistanceResult | find_narrow_distances (self, float threshold_distance=1.0) |
EdgeIntersectionResult | find_edge_intersections (self) |
Public Attributes | |
spatial_index = spatial_index | |
list | polygons = [] |
list | polygon_ids = [] |
Protected Member Functions | |
List[Point] | _find_polygon_edge_intersections (self, Polygon poly1, Polygon poly2) |
float | _edge_to_edge_distance (self, Point p1, Point p2, Point p3, Point p4) |
Tuple[Point, Point] | _closest_points_on_edges (self, Point p1, Point p2, Point p3, Point p4) |
Analyzer for polygon geometric properties and relationships.
Definition at line 105 of file analysis.py.
zlayout.analysis.PolygonAnalyzer.__init__ | ( | self, | |
Optional[SpatialIndex] | spatial_index = None ) |
Definition at line 108 of file analysis.py.
|
protected |
Find the closest points on two line segments.
Definition at line 287 of file analysis.py.
|
protected |
Calculate minimum distance between two line segments.
Definition at line 269 of file analysis.py.
|
protected |
Find all intersection points between edges of two polygons.
Definition at line 257 of file analysis.py.
int zlayout.analysis.PolygonAnalyzer.add_polygon | ( | self, | |
Polygon | polygon ) |
Add a polygon for analysis.
Definition at line 113 of file analysis.py.
EdgeIntersectionResult zlayout.analysis.PolygonAnalyzer.find_edge_intersections | ( | self | ) |
Find all edge intersections using spatial indexing for efficiency.
Definition at line 227 of file analysis.py.
NarrowDistanceResult zlayout.analysis.PolygonAnalyzer.find_narrow_distances | ( | self, | |
float | threshold_distance = 1.0 ) |
Find regions where polygon edges are too close together.
Definition at line 172 of file analysis.py.
SharpAngleResult zlayout.analysis.PolygonAnalyzer.find_sharp_angles | ( | self, | |
float | threshold_degrees = 30.0 ) |
Find all sharp angles in all polygons.
Definition at line 123 of file analysis.py.
list zlayout.analysis.PolygonAnalyzer.polygon_ids = [] |
Definition at line 111 of file analysis.py.
zlayout.analysis.PolygonAnalyzer.polygons = [] |
Definition at line 110 of file analysis.py.
zlayout.analysis.PolygonAnalyzer.spatial_index = spatial_index |
Definition at line 109 of file analysis.py.