class
PackedGeometryData ​
PackedGeometryData keeps the same information as GeometryData, but with all corner data fields moved into per-vertex fields. No per-corner fields exist, apart from the VertexIds field. Please note that the number of vertices in an PackedGeometryData is commonly higher than in an GeometryData, as vertices must be split to accommodate for different corner data.
See also: GeometryData
Properties ​
Property | Description |
---|---|
Name | The name of the PackedGeometryData object. (Inherited from Object) |
TriangleCount | The number of triangles in the geometry. |
VertexCount | The number of vertices in the geometry. |
Methods ​
Method | Description |
---|---|
AddBaseTypeUserTriangleField | Adds an empty user-specified triangle field. To be able to add a field, it must have a name that does not conflict with the existing triangle fields. |
AddBaseTypeUserVertexField | Adds an empty user-specified vertex field. To be able to add a field, it must have a name that does not conflict with the existing vertex fields. |
AddBoneWeights | Adds the BoneWeights and BoneIds fields in the vertices. The BoneWeights and BoneIds fields are added and removed in unison, and should always be the same tuple size. (Field names: "BoneWeights" & "BoneIds", Tuple size: varying , Stored as: Vertex attribute) |
AddColors | Adds a Color field in the vertices. The valid id range of the level parameter is 0-255, which equals fields 'Colors0' - 'Colors255' (Field name: "Colors0" - "Colors255", Tuple size: 4 , Stored as: Vertex attribute) |
AddGroupIds | Adds the GroupIds field in the triangles. (Field name: "GroupIds", Tuple size: 1 , Stored as: triangle attribute) |
AddMaterialIds | Adds the MaterialIds field in the triangles. (Field name: "MaterialIds", Tuple size: 1 , Stored as: triangle attribute) |
AddNamedColors | Adds a named Color field in the corners. (Field name: "Colors0" - "Colors255", Tuple size: 4 , Stored as: Corner attribute) |
AddNamedTexCoords | Adds a named TexCoords field in the corners. (Field name: "TexCoords0" - "TexCoords255", Tuple size: 2 , Stored as: Corner attribute) |
AddNormals | Adds the Normals field in the vertices. (Field name: "Normals" , Tuple size: 3 , Stored as: Vertex attribute) |
AddObserver | Adds a user-defined observer object to the interface, that will receive events from the interface. (Inherited from Object) |
AddTangents | Adds a Tangents field in the vertices. (Field name: "Tangents0" - "Tangents255" & "Bitangents0" - "Bitangents255", Tuple size: 3 , Stored as: Vertex attribute) |
AddTexCoords | Adds a TexCoords field in the vertices. The valid id range of the level parameter is 0-255, which equals fields 'TexCoords0' - 'TexCoords255' (Field name: "TexCoords0" - "TexCoords255", Tuple size: 2 , Stored as: Vertex attribute) |
AddTriangles | Increases the triangle count by the specified value. |
AddUserTriangleField | Adds a user-specified triangle field from an already populated array. To be able to add a field, it must have a name that does not conflict with the existing triangle fields. |
AddUserVertexField | Adds a user-specified vertex field from an already populated value array. To be able to add a field, it must have a name that does not conflict with the existing vertex fields. |
AddVertexLocks | Adds the VertexLocks field for the vertices. If the value for a vertex is true, then the vertex should be locked, and not be removed in the collapse-process. (Field name: "VertexLocks", Tuple size: 1 , Stored as: Vertex attribute) |
AddVertexWeighting | Adds the VertexWeighting field for the vertices. (Field name: "VertexWeights", Tuple size: 1 , Stored as: Vertex attribute) |
AddVertexWeights | Adds the VertexWeights field for the vertices. (Field name: "VertexWeights", Tuple size: 1 , Stored as: Vertex attribute) |
AddVertices | AddVertices increases the vertex count by the specified value. |
AppendPackedGeometry | Appends all vertex-tuples in "source" that don't already exists in the current GeometryData. For each vertex field in this PackedGeometryData, the "source" must contain a corresponding vertex or corner field. All extra-fields in "source" will be skipped however. Returns the number of new and unique vertices created, and the NewVertexIds will contain the indices for the triangles of the "source" Geometry. The VertexIds of the current GeometryData will still be valid. If collapseToOriginalVertices is set to true, all vertices from source will be collapsed to the closest matching vertex of the current geometry. This means that no new vertices will be added, so the returned value will always be 0. If the "NewVertexIds"-array is not initiated before send into this function, it will do nothing and return -1 instead, as error value. The method does not append triangle ids or triangle field data from "source" to the current object. |
DeepCopy | Copies the field setup and data from another object. To only copy the setup, set copy_data to false. |
GetBitangents | Gets a Bitangents field in the vertices. (Field name: "Tangents0" - "Tangents255" & "Bitangents0" - "Bitangents255", Tuple size: 3 , Stored as: Vertex attribute) |
GetBoneIds | The BoneIds field. (Field name: "BoneIds", Tuple size: varying , Stored as: Vertex attribute) |
GetBoneWeights | The BoneWeights field. (Field name: "BoneWeights", Tuple size: varying , Stored as: Vertex attribute) |
GetClass | Get the name of the PackedGeometryData class. (Inherited from Object) |
GetColors | Gets a Color field in the vertices. The valid id range of the level parameter is 0-255, which equals fields 'Colors0' - 'Colors255' (Field name: "Colors0" - "Colors255", Tuple size: 4 , Stored as: Vertex attribute) |
GetCoords | The Coords field in the vertices. (Field name: "Coords", Tuple size: 3 , Stored as: Vertex attribute) |
GetExtents | Get the extents object in the geometry. |
GetGroupIds | The GroupIds field in the triangles. (Field name: "GroupIds", Tuple size: 1 , Stored as: triangle attribute) |
GetInf | The inferior (minimum) extent of the geometry. |
GetMaterialIds | The MaterialIds field in the triangles. (Field name: "MaterialIds", Tuple size: 1 , Stored as: triangle attribute) |
GetNamedColors | Gets a Color field, using the alternative name instead of the index. |
GetNamedTexCoords | Gets a TexCoords field, using the alternative name instead of the index. |
GetNormals | The Normals field in the vertices. (Field name: "Normals" , Tuple size: 3 , Stored as: Vertex attribute) |
GetSup | The superior (maximum) extent of the geometry. |
GetTangents | Gets a Tangents field in the vertices. (Field name: "Tangents0" - "Tangents255" & "Bitangents0" - "Bitangents255", Tuple size: 3 , Stored as: Vertex attribute) |
GetTexCoords | Gets a TexCoords field in the vertices. The valid id range of the level parameter is 0-255, which equals fields 'TexCoords0' - 'TexCoords255' (Field name: "TexCoords0" - "TexCoords255", Tuple size: 2 , Stored as: Vertex attribute) |
GetTriangles | Retrieves the ReFieldData object that contains the triangle fields. |
GetUserTriangleField | Gets a user-specified triangle field. To be able to add a field, it must have a name that does not conflict with the existing triangle fields. |
GetUserVertexField | Gets a user-specified vertex field. |
GetVertexIds | The VertexIds field in the triangles. |
GetVertexLocks | The VertexLocks field for the vertices. If the value for a vertex is true, then the vertex should be locked, and not be removed in the collapse-process. (Field name: "VertexLocks", Tuple size: 1 , Stored as: Vertex attribute) |
GetVertexWeighting | The VertexWeighting field for the vertices. (Field name: "VertexWeights", Tuple size: 1 , Stored as: Vertex attribute) |
GetVertexWeights | The VertexWeights field for the vertices. (Field name: "VertexWeights", Tuple size: 1 , Stored as: Vertex attribute) |
GetVertices | Retrieves the FieldData object that contains the vertex fields. |
IsA | Returns true if PackedGeometryData is a or is a descendant of the class named as the type parameter. (Inherited from Object) |
IsNull | Returns true if the PackedGeometryData object is invalid. (Inherited from Object) |
IsSameObjectAs | Returns true if the PackedGeometryData object is valid. (Inherited from Object) |
NewCopy | Creates another geometry data object with the same field setup. To also copy the data to the new object, set copy_data to true. |
NewUnpackedCopy | Creates an "unpacked" GeometryData object. Please note that since the data in the PackedGeometryData structure is per-vertex, you may have to weld the resulting GeometryData to remove vertices with the same spatial coordinates. |
NonNull | Returns true if the PackedGeometryData object is valid. (Inherited from Object) |
PrintInfo | Prints the content/info of the PackedGeometryData object to the log. (Inherited from Object) |
RemoveBoneWeights | Removes the BoneWeights and BoneIds fields in the vertices. The BoneWeights and BoneIds fields are added and removed in unison, and should always be the same tuple size. (Field names: "BoneWeights" & "BoneIds", Tuple size: varying , Stored as: Vertex attribute) |
RemoveColors | Removes a Color field in the vertices. The valid id range of the level parameter is 0-255, which equals fields 'Colors0' - 'Colors255' (Field name: "Colors0" - "Colors255", Tuple size: 4 , Stored as: Vertex attribute) |
RemoveGroupIds | Removes the GroupIds field in the triangles. (Field name: "GroupIds", Tuple size: 1 , Stored as: triangle attribute) |
RemoveMaterialIds | Removes the MaterialIds field in the triangles. (Field name: "MaterialIds", Tuple size: 1 , Stored as: triangle attribute) |
RemoveNamedColors | Removes a named Color field in the corners. (Field name: "Colors0" - "Colors255", Tuple size: 4 , Stored as: Corner attribute) |
RemoveNamedTexCoords | Removes a named TexCoords field in the corners. 'TexCoords0' - 'TexCoords255' (Field name: "TexCoords0" - "TexCoords255", Tuple size: 2 , Stored as: Corner attribute) |
RemoveNormals | Removes the Normals field in the vertices. (Field name: "Normals" , Tuple size: 3 , Stored as: Vertex attribute) |
RemoveObserver | Removes a previously added observer object. (Inherited from Object) |
RemoveTangents | Removes a Tangents field in the vertices. (Field name: "Tangents0" - "Tangents255" & "Bitangents0" - "Bitangents255", Tuple size: 3 , Stored as: Vertex attribute) |
RemoveTexCoords | Removes a TexCoords field in the vertices. The valid id range of the level parameter is 0-255, which equals fields 'TexCoords0' - 'TexCoords255' (Field name: "TexCoords0" - "TexCoords255", Tuple size: 2 , Stored as: Vertex attribute) |
RemoveUserTriangleField | Removes a user-specified triangle field. To be able to add a field, it must have a name that does not conflict with the existing triangle fields. |
RemoveUserVertexField | Removes a user-specified vertex field. |
RemoveVertexLocks | Removes the VertexLocks field for the vertices. If the value for a vertex is true, then the vertex should be locked, and not be removed in the collapse-process. (Field name: "VertexLocks", Tuple size: 1 , Stored as: Vertex attribute) |
RemoveVertexWeighting | Removes the VertexWeighting field for the vertices. (Field name: "VertexWeights", Tuple size: 1 , Stored as: Vertex attribute) |
RemoveVertexWeights | Removes the VertexWeights field for the vertices. (Field name: "VertexWeights", Tuple size: 1 , Stored as: Vertex attribute) |
SetInf | The inferior (minimum) extent of the geometry. |
SetSup | The superior (maximum) extent of the geometry. |
Static methods ​
Method | Description |
---|---|
IsClassA | Returns true if the class is a or is a descendant of the class named as the type parameter. (Inherited from Object) |
SafeCast | SafeCast makes sure the input object is of a class that can be cast into spPackedGeometryData, and if this is the case, returns the object cast into spPackedGeometryData. (Inherited from Object) |
Properties details ​
Name ​
The name of the PackedGeometryData object. (Inherited from Object)
TriangleCount ​
The number of triangles in the geometry.
VertexCount ​
The number of vertices in the geometry.
Methods details ​
AddBaseTypeUserTriangleField ​
Adds an empty user-specified triangle field. To be able to add a field, it must have a name that does not conflict with the existing triangle fields.
AddBaseTypeUserVertexField ​
Adds an empty user-specified vertex field. To be able to add a field, it must have a name that does not conflict with the existing vertex fields.
AddBoneWeights ​
Adds the BoneWeights and BoneIds fields in the vertices. The BoneWeights and BoneIds fields are added and removed in unison, and should always be the same tuple size. (Field names: "BoneWeights" & "BoneIds", Tuple size: varying , Stored as: Vertex attribute)
AddColors ​
Adds a Color field in the vertices. The valid id range of the level parameter is 0-255, which equals fields 'Colors0' - 'Colors255' (Field name: "Colors0" - "Colors255", Tuple size: 4 , Stored as: Vertex attribute)
AddGroupIds ​
Adds the GroupIds field in the triangles. (Field name: "GroupIds", Tuple size: 1 , Stored as: triangle attribute)
AddMaterialIds ​
Adds the MaterialIds field in the triangles. (Field name: "MaterialIds", Tuple size: 1 , Stored as: triangle attribute)
AddNamedColors ​
Adds a named Color field in the corners. (Field name: "Colors0" - "Colors255", Tuple size: 4 , Stored as: Corner attribute)
AddNamedTexCoords ​
Adds a named TexCoords field in the corners. (Field name: "TexCoords0" - "TexCoords255", Tuple size: 2 , Stored as: Corner attribute)
AddNormals ​
Adds the Normals field in the vertices. (Field name: "Normals" , Tuple size: 3 , Stored as: Vertex attribute)
AddObserver ​
Adds a user-defined observer object to the interface, that will receive events from the interface. (Inherited from Object)
AddTangents ​
Adds a Tangents field in the vertices. (Field name: "Tangents0" - "Tangents255" & "Bitangents0" - "Bitangents255", Tuple size: 3 , Stored as: Vertex attribute)
AddTexCoords ​
Adds a TexCoords field in the vertices. The valid id range of the level parameter is 0-255, which equals fields 'TexCoords0' - 'TexCoords255' (Field name: "TexCoords0" - "TexCoords255", Tuple size: 2 , Stored as: Vertex attribute)
AddTriangles ​
Increases the triangle count by the specified value.
AddUserTriangleField ​
Adds a user-specified triangle field from an already populated array. To be able to add a field, it must have a name that does not conflict with the existing triangle fields.
AddUserVertexField ​
Adds a user-specified vertex field from an already populated value array. To be able to add a field, it must have a name that does not conflict with the existing vertex fields.
AddVertexLocks ​
Adds the VertexLocks field for the vertices. If the value for a vertex is true, then the vertex should be locked, and not be removed in the collapse-process. (Field name: "VertexLocks", Tuple size: 1 , Stored as: Vertex attribute)
AddVertexWeighting ​
Adds the VertexWeighting field for the vertices. (Field name: "VertexWeights", Tuple size: 1 , Stored as: Vertex attribute)
AddVertexWeights ​
Adds the VertexWeights field for the vertices. (Field name: "VertexWeights", Tuple size: 1 , Stored as: Vertex attribute)
AddVertices ​
AddVertices increases the vertex count by the specified value.
AppendPackedGeometry ​
Appends all vertex-tuples in "source" that don't already exists in the current GeometryData. For each vertex field in this PackedGeometryData, the "source" must contain a corresponding vertex or corner field. All extra-fields in "source" will be skipped however. Returns the number of new and unique vertices created, and the NewVertexIds will contain the indices for the triangles of the "source" Geometry. The VertexIds of the current GeometryData will still be valid. If collapseToOriginalVertices is set to true, all vertices from source will be collapsed to the closest matching vertex of the current geometry. This means that no new vertices will be added, so the returned value will always be 0. If the "NewVertexIds"-array is not initiated before send into this function, it will do nothing and return -1 instead, as error value. The method does not append triangle ids or triangle field data from "source" to the current object.
DeepCopy ​
Copies the field setup and data from another object. To only copy the setup, set copy_data to false.
GetBitangents ​
Gets a Bitangents field in the vertices. (Field name: "Tangents0" - "Tangents255" & "Bitangents0" - "Bitangents255", Tuple size: 3 , Stored as: Vertex attribute)
GetBoneIds ​
The BoneIds field. (Field name: "BoneIds", Tuple size: varying , Stored as: Vertex attribute)
GetBoneWeights ​
The BoneWeights field. (Field name: "BoneWeights", Tuple size: varying , Stored as: Vertex attribute)
GetClass ​
Get the name of the PackedGeometryData class. (Inherited from Object)
GetColors ​
Gets a Color field in the vertices. The valid id range of the level parameter is 0-255, which equals fields 'Colors0' - 'Colors255' (Field name: "Colors0" - "Colors255", Tuple size: 4 , Stored as: Vertex attribute)
GetCoords ​
The Coords field in the vertices. (Field name: "Coords", Tuple size: 3 , Stored as: Vertex attribute)
GetExtents ​
Get the extents object in the geometry.
GetGroupIds ​
The GroupIds field in the triangles. (Field name: "GroupIds", Tuple size: 1 , Stored as: triangle attribute)
GetInf ​
The inferior (minimum) extent of the geometry.
GetMaterialIds ​
The MaterialIds field in the triangles. (Field name: "MaterialIds", Tuple size: 1 , Stored as: triangle attribute)
GetNamedColors ​
Gets a Color field, using the alternative name instead of the index.
GetNamedTexCoords ​
Gets a TexCoords field, using the alternative name instead of the index.
GetNormals ​
The Normals field in the vertices. (Field name: "Normals" , Tuple size: 3 , Stored as: Vertex attribute)
GetSup ​
The superior (maximum) extent of the geometry.
GetTangents ​
Gets a Tangents field in the vertices. (Field name: "Tangents0" - "Tangents255" & "Bitangents0" - "Bitangents255", Tuple size: 3 , Stored as: Vertex attribute)
GetTexCoords ​
Gets a TexCoords field in the vertices. The valid id range of the level parameter is 0-255, which equals fields 'TexCoords0' - 'TexCoords255' (Field name: "TexCoords0" - "TexCoords255", Tuple size: 2 , Stored as: Vertex attribute)
GetTriangles ​
Retrieves the ReFieldData object that contains the triangle fields.
GetUserTriangleField ​
Gets a user-specified triangle field. To be able to add a field, it must have a name that does not conflict with the existing triangle fields.
GetUserVertexField ​
Gets a user-specified vertex field.
GetVertexIds ​
The VertexIds field in the triangles.
GetVertexLocks ​
The VertexLocks field for the vertices. If the value for a vertex is true, then the vertex should be locked, and not be removed in the collapse-process. (Field name: "VertexLocks", Tuple size: 1 , Stored as: Vertex attribute)
GetVertexWeighting ​
The VertexWeighting field for the vertices. (Field name: "VertexWeights", Tuple size: 1 , Stored as: Vertex attribute)
GetVertexWeights ​
The VertexWeights field for the vertices. (Field name: "VertexWeights", Tuple size: 1 , Stored as: Vertex attribute)
GetVertices ​
Retrieves the FieldData object that contains the vertex fields.
IsA ​
Returns true if PackedGeometryData is a or is a descendant of the class named as the type parameter. (Inherited from Object)
IsNull ​
Returns true if the PackedGeometryData object is invalid. (Inherited from Object)
IsSameObjectAs ​
Returns true if the PackedGeometryData object is valid. (Inherited from Object)
NewCopy ​
Creates another geometry data object with the same field setup. To also copy the data to the new object, set copy_data to true.
NewUnpackedCopy ​
Creates an "unpacked" GeometryData object. Please note that since the data in the PackedGeometryData structure is per-vertex, you may have to weld the resulting GeometryData to remove vertices with the same spatial coordinates.
NonNull ​
Returns true if the PackedGeometryData object is valid. (Inherited from Object)
PrintInfo ​
Prints the content/info of the PackedGeometryData object to the log. (Inherited from Object)
RemoveBoneWeights ​
Removes the BoneWeights and BoneIds fields in the vertices. The BoneWeights and BoneIds fields are added and removed in unison, and should always be the same tuple size. (Field names: "BoneWeights" & "BoneIds", Tuple size: varying , Stored as: Vertex attribute)
RemoveColors ​
Removes a Color field in the vertices. The valid id range of the level parameter is 0-255, which equals fields 'Colors0' - 'Colors255' (Field name: "Colors0" - "Colors255", Tuple size: 4 , Stored as: Vertex attribute)
RemoveGroupIds ​
Removes the GroupIds field in the triangles. (Field name: "GroupIds", Tuple size: 1 , Stored as: triangle attribute)
RemoveMaterialIds ​
Removes the MaterialIds field in the triangles. (Field name: "MaterialIds", Tuple size: 1 , Stored as: triangle attribute)
RemoveNamedColors ​
Removes a named Color field in the corners. (Field name: "Colors0" - "Colors255", Tuple size: 4 , Stored as: Corner attribute)
RemoveNamedTexCoords ​
Removes a named TexCoords field in the corners. 'TexCoords0' - 'TexCoords255' (Field name: "TexCoords0" - "TexCoords255", Tuple size: 2 , Stored as: Corner attribute)
RemoveNormals ​
Removes the Normals field in the vertices. (Field name: "Normals" , Tuple size: 3 , Stored as: Vertex attribute)
RemoveObserver ​
Removes a previously added observer object. (Inherited from Object)
RemoveTangents ​
Removes a Tangents field in the vertices. (Field name: "Tangents0" - "Tangents255" & "Bitangents0" - "Bitangents255", Tuple size: 3 , Stored as: Vertex attribute)
RemoveTexCoords ​
Removes a TexCoords field in the vertices. The valid id range of the level parameter is 0-255, which equals fields 'TexCoords0' - 'TexCoords255' (Field name: "TexCoords0" - "TexCoords255", Tuple size: 2 , Stored as: Vertex attribute)
RemoveUserTriangleField ​
Removes a user-specified triangle field. To be able to add a field, it must have a name that does not conflict with the existing triangle fields.
RemoveUserVertexField ​
Removes a user-specified vertex field.
RemoveVertexLocks ​
Removes the VertexLocks field for the vertices. If the value for a vertex is true, then the vertex should be locked, and not be removed in the collapse-process. (Field name: "VertexLocks", Tuple size: 1 , Stored as: Vertex attribute)
RemoveVertexWeighting ​
Removes the VertexWeighting field for the vertices. (Field name: "VertexWeights", Tuple size: 1 , Stored as: Vertex attribute)
RemoveVertexWeights ​
Removes the VertexWeights field for the vertices. (Field name: "VertexWeights", Tuple size: 1 , Stored as: Vertex attribute)
SetInf ​
The inferior (minimum) extent of the geometry.
SetSup ​
The superior (maximum) extent of the geometry.
Static methods details ​
IsClassA ​
Returns true if the class is a or is a descendant of the class named as the type parameter. (Inherited from Object)
SafeCast ​
SafeCast makes sure the input object is of a class that can be cast into spPackedGeometryData, and if this is the case, returns the object cast into spPackedGeometryData. (Inherited from Object)