Editable_Poly Methods

The following topic lists the polyOp methods which are applicable to objects collapsed to the Editable_Poly base object.

Topics Navigation:
Get/Set Selection
Get By Flag
Get Count
Get/Set Hidden
Edge Visibility
Open Edges
Get By Face
Get By Edge
Dead Elements
Face Material IDs
Manipulate Vertex
Fill In Mesh
Get A Using B
Get Face, Center, Normal and Area
Attach
Delete
Weld
Create
Auto-Smooth
Triangulation
Subdivisions
Face_Smoothing_Groups
Break, Divide, Split
Collapse
Propagate_Flags
Tessellate
Detach
Slice Plane
Cut
Cap Holes
Make Planar
Extrude, Bevel, Chamfer

About polyOp Methods First Argument:

All polyOp methods take as an argument <poly>, the poly to operate on. This argument can be either a node value where the base object of the node is an Editable_Poly, or the Editable_Poly base object.

About polyOp Methods Sub-Object Arguments:

Many of the polyOp methods take as an argument , , or .

These arguments specify the Sub-Object elements to operate on.

These arguments can be specified as:

#all - all Sub-Object elements of that type.

#selection - the current Sub-Object selection of that type.

#none - none of the Sub-Object elements of that type.

An array of integers, where each integer value specifies a Sub-Object element index.

A bitarray, where each bit specifies a Sub-Object element index.

A value convertible to an integer that specifies a Sub-Object element index.

A VertexSelection, EdgeSelection, or FaceSelection value. The value type must match the specified Sub-Object type.

About Editable_Poly Dead Sub-Object Elements:

Editable polys can have "dead" vertices, edges, and faces.

These are Sub-Object elements that are deleted from the poly, but are not removed from the corresponding lists of Sub-Object elements.

Sub-Object elements might be marked as dead in the process of performing certain operations on the poly, but the Sub-Object element lists are normally collapsed (all the dead Sub-Object elements removed) at the end of the operation or at file I/O operations. Thus, normally there must not be any dead Sub-Object elements present in the poly.

If you flag a Sub-Object element as dead using one of the polyOp methods, you must also call polyOp.collapseDeadStructs() to collapse the Sub-Object element lists.

Other than the methods that get/set Sub-Object element flags, the dead Sub-Object elements are normally ignored by the polyOp methods. If a method returns a value other than OK, takes a single Sub-Object element index, and that SO element is dead, a value of undefined is normally returned.