Poly Class
A Poly describes an instance of a single geometry polygon. It is an instance of a Prim Class.
Members
closed
→ bool
(Read Only):
Returns True if the poly is closed, False otherwise.
Methods
No operator specific methods.
Prim Class[edit]
Members
center
→ TDU.Position
:
Get or set the barycentric coordinate of this primitive. It is expressed as a TDU.Position object.
index
→ int
(Read Only):
The primitive index in the list.
normal
→ TDU.Vector
(Read Only):
The calculated normal vector of this primitive, expressed as a TDU.Vector object.
owner
→ OP
(Read Only):
The OP to which this object belongs.
weight
→ float
(Read Only):
The associated weight of the primitive. Only certain primitives, such as those created by the Metaball SOP can modify this value from its default of 2.0.
direction
→ TDU.Vector
(Read Only):
A normalized vector pointing from the centroid of the SOP to the centroid of this primitive.
min
→ TDU.Position
(Read Only):
The minimum coordinates of this primitive along each dimension, expressed as a TDU.Position object.
max
→ TDU.Position
(Read Only):
The maximum coordinates of this primitive along each dimension, expressed as a TDU.Position object.
size
→ TDU.Position
(Read Only):
The size of this primitive along each dimension, expressed as a TDU.Position object.
Methods
destroy(destroyPoints=True)
→ None
:
Destroy and remove the actual primitive this object refers to. This operation is only valid when the primitive belongs to a scriptSOP. Note: after this call, other existing Prim objects in this SOP may no longer be valid.
- destroyPoints - (Keyword, Optional) If True, its points are destroyed as well, if false, they are simply detached. The argument is True by default.
eval(u, v)
→ TDU.Position
:
Evaluate the position on the primitive given the u,v coordinates. u,v should be in the range [0,1]. Note: Polygons and curves ignore the v parameter.
center = op('box1').prim[0].eval(0.5, 0.5)
Special Functions[edit]
len(Prim)
→ int
:
Returns the total number of vertices.
a = len(op('box1').prim[0])
[index]
→ td.Vertex
:
Get specific vertex given an integer index
n = op('box1').prims[5][0]
[row, col]
→ td.Vertex
:
Get specific vertex from a Mesh given integer row and column values.
v = op('grid1').prims[2,3]
Iterator
→ td.Vertex
:
Iterate over each vertex.
for m in op('box1').prims[5]: # do something with m, which is a Vertex
TouchDesigner Build: