Polygon
- class compas.geometry.Polygon[source]
- Bases: - Geometry- A polygon is a geometric object defined by a sequence of points forming a closed loop. - A polygon is defined by a sequence of points connected by line segments forming a closed boundary that separates its interior from the exterior. - In the sequence of points, the first and last element are not the same. The existence of the closing edge is implied. The boundary should not intersect itself. - Polygons are not necessarily planar by construction; they can be warped or skewed. - The polygon does not have a coordinate frame. Its geometry is always defined with respect to the world coordinate system. - Polygons can be constructed parametrically by the number of sides and a radius, but the geometry of the resulting object is defined by a list of explicit point locations. - Parameters:
- pointslist[[float, float, float] | compas.geometry.Point]
- An ordered list of points. 
- namestr, optional
- The name of the polygon. 
 
- pointslist[[float, float, float] | 
- Attributes:
- pointslist of compas.geometry.Point
- The points of the polygon. 
- lineslist of compas.geometry.Line, read-only
- The lines of the polygon. 
- lengthfloat, read-only
- The length of the boundary. 
- centroidcompas.geometry.Point, read-only
- The centroid of the polygon. 
- normalcompas.geometry.Vector, read-only
- The (average) normal of the polygon. 
- areafloat, read-only
- The area of the polygon. 
- is_convexbool, read-only
- True if the polygon is convex. 
- is_planarbool, read-only
- True if the polygon is planar. 
 
- pointslist of 
 - See also - Examples - >>> polygon = Polygon([[0, 0, 0], [1, 0, 0], [1, 1, 0], [0, 1, 0]]) >>> point = polygon.centroid >>> print(point) Point(x=0.500, y=0.500, z=0.000) >>> polygon.area 1.0 - Methods - Compute the boolean difference of this polygon and another polygon. - Compute the boolean intersection of this polygon and another polygon. - Compute the boolean symmetric difference of this polygon and another polygon. - Compute the boolean union of this polygon and another polygon. - Construct a rectangle. - Construct a polygon from a number of sides and a radius. - Returns a brep representation of the polygon. - Returns a mesh representation of the polygon. - Returns a list of vertices and faces. - Transform this polygon. - Inherited Methods - Converts the instance to a string. - Compute the axis-aligned bounding box of the geometry. - Compute the oriented bounding box of the geometry. - Make an independent copy of the data object. - Construct an object of this type from a JSON file. - Construct an object of this type from a JSON string. - Rotate the geometry. - Returns a rotated copy of this geometry. - Scale the geometry. - Returns a scaled copy of this geometry. - Compute a hash of the data for comparison during version control using the sha256 algorithm. - Convert an object to its native data representation and save it to a JSON file. - Convert an object to its native data representation and save it to a JSON string. - Returns a transformed copy of this geometry. - Translate the geometry. - Returns a translated copy of this geometry. - Validate the data against the object's data schema.