Skip to content

Polygon3D

Class full path: NemAll_Python_Geometry.Polygon3D

Bases: PolyPoints3D

Representation class for 3D Polygon

Functions

GetLines()

Get edge lines of polygon

Returns:

Type Description
Line3DList

Edge lines of polygon

GetPlane()

Calculate plane

Returns:

Type Description
tuple[eGeometryErrorCode, Plane3D]

Plane where polygon is

GetVertices()

Get polygon vertices

Returns:

Type Description
object

polygon vertices

InsertPolygon(polygon, position=-1)

Insert a polygon into current one

Parameters:

Name Type Description Default
polygon Polygon3D

Polygon which will be inserted

required
position int

Position where the polygon will be inserted

-1

Returns:

Type Description
bool

true if insert was successful

IsValid()

Check polygon validity

Returns:

Type Description
bool

true = valid, false = not valid

IsValidStatus()

Check polygon validity

Returns:

Type Description
tuple

true = valid, false = not valid,

tuple

If polygon is invalid, here is the reason.

Normalize(normalizeType=DEFAULT_NORM_TYPE, extra_smooth=False)

Normalization of 3d polygon

Parameters:

Name Type Description Default
normalizeType ePolygonNormalizeType

Normalization type

DEFAULT_NORM_TYPE
extra_smooth bool

Increase level of details

False

NormalizeNoThrow(normalizeType=DEFAULT_NORM_TYPE, extra_smooth=False)

Normalize Polygon3D.

Same as Normalize, but method doesn't throw exception, just return error code

Parameters:

Name Type Description Default
normalizeType ePolygonNormalizeType

type of Polygon2D normalization

DEFAULT_NORM_TYPE
extra_smooth bool

Including extra smooth: true/false

False

Returns:

Type Description
object

Error code (eOK, eAllocError, eStructuralError, eWrongShape)

Reverse()

Reverse the point order in polygon, separately for every sub-polygon

__eq__(polygon2)

Equal operator

Parameters:

Name Type Description Default
polygon2 Polygon3D

Second polygon

required

Returns:

Type Description
bool

Polyline3D are equal

__iadd__ overload

__iadd__(polygon)

Addition assignment operator

Parameters:

Name Type Description Default
polygon Polygon3D

Polygon which will be copied

required

Returns:

Type Description
Polygon3D

Reference to polygon

__iadd__(point)

Addition assignment operator

Parameters:

Name Type Description Default
point Point3D

New Point3D which will be added to the polygon

required

Returns:

Type Description
Polygon3D

Reference to polygon

__init__ overload

__init__()

Initialize

__init__(pntList)

Constructor with an initializer list

Parameters:

Name Type Description Default
pntList list

Point list

required
__init__(polygon)

Copy constructor.

Parameters:

Name Type Description Default
polygon Polygon3D

Polygon which will be copied

required

__mul__(matrix)

Matrix transformation

Parameters:

Name Type Description Default
matrix Matrix3D

Transformation matrix

required

Returns:

Type Description
Polygon3D

Reference to polygon

__ne__(polygon2)

Not equal operator

Parameters:

Name Type Description Default
polygon2 Polygon3D

Second polygon

required

Returns:

Type Description
bool

Polyline3D are equal

__repr__()

Convert to string