Uranium
Application Framework
|
Public Member Functions | |
None | __init__ (self, vertices=None, normals=None, indices=None, colors=None, uvs=None, file_name=None, center_position=None, zero_position=None, type=MeshType.faces, attributes=None) |
__del__ (self) | |
"MeshData" | set (self, vertices=Reuse, normals=Reuse, indices=Reuse, colors=Reuse, uvs=Reuse, file_name=Reuse, center_position=Reuse, zero_position=Reuse, attributes=Reuse) |
getHash (self) | |
Vector | getCenterPosition (self) |
Vector | getZeroPosition (self) |
getType (self) | |
int | getFaceCount (self) |
numpy.ndarray | getVertices (self) |
int | getVertexCount (self) |
getVertex (self, index) | |
bool | hasNormals (self) |
numpy.ndarray | getNormals (self) |
bool | hasIndices (self) |
numpy.ndarray | getIndices (self) |
bool | hasColors (self) |
numpy.ndarray | getColors (self) |
bool | hasUVCoordinates (self) |
Optional[str] | getFileName (self) |
"MeshData" | getTransformed (self, Matrix transformation) |
Optional[AxisAlignedBox] | getExtents (self, Optional[Matrix] matrix=None) |
Optional[bytes] | getVerticesAsByteArray (self) |
Optional[bytes] | getNormalsAsByteArray (self) |
Optional[bytes] | getIndicesAsByteArray (self) |
Optional[bytes] | getColorsAsByteArray (self) |
Optional[bytes] | getUVCoordinatesAsByteArray (self) |
Optional[scipy.spatial.ConvexHull] | getConvexHull (self) |
Optional[numpy.ndarray] | getConvexHullVertices (self) |
Optional[numpy.ndarray] | getConvexHullTransformedVertices (self, Matrix transformation) |
Tuple[numpy.ndarray, numpy.ndarray] | getFacePlane (self, int face_id) |
Tuple[numpy.ndarray, numpy.ndarray, numpy.ndarray] | getFaceNodes (self, int face_id) |
bool | hasAttribute (self, str key) |
getAttribute (self, str key) | |
List[str] | attributeNames (self) |
None | invertNormals (self) |
str | toString (self) |
Protected Member Functions | |
None | _computeConvexHull (self) |
Class to hold a list of verts and possibly how (and if) they are connected. This class stores three numpy arrays that contain the data for a mesh. Vertices are stored as a two-dimensional array of floats with the rows being individual vertices and the three columns being the X, Y and Z components of the vertices. Normals are stored in the same manner and kept in sync with the vertices. Indices are stored as a two-dimensional array of integers with the rows being the individual faces and the three columns being the indices that refer to the individual vertices. attributes: a dict with {"value", "opengl_type", "opengl_name"} type in vector2f, vector3f, uniforms, ...
UM.Mesh.MeshData.MeshData.__del__ | ( | self | ) |
Triggered when this file is deleted. The file will then no longer be watched for changes.
|
protected |
Convex hull handling
List[str] UM.Mesh.MeshData.MeshData.attributeNames | ( | self | ) |
Return attribute names in alphabetical order The sorting assures that the order is always the same.
UM.Mesh.MeshData.MeshData.getAttribute | ( | self, | |
str | key ) |
the return value is a dict with at least keys opengl_name, opengl_type, value
Optional[scipy.spatial.ConvexHull] UM.Mesh.MeshData.MeshData.getConvexHull | ( | self | ) |
Gets the Convex Hull of this mesh :return: :type{scipy.spatial.ConvexHull}
Optional[numpy.ndarray] UM.Mesh.MeshData.MeshData.getConvexHullTransformedVertices | ( | self, | |
Matrix | transformation ) |
Gets transformed convex hull points :return: :type{numpy.ndarray} the vertices which describe the convex hull
Optional[numpy.ndarray] UM.Mesh.MeshData.MeshData.getConvexHullVertices | ( | self | ) |
Gets the convex hull points :return: :type{numpy.ndarray} the vertices which describe the convex hull
Optional[AxisAlignedBox] UM.Mesh.MeshData.MeshData.getExtents | ( | self, | |
Optional[Matrix] | matrix = None ) |
Get the extents of this mesh. :param matrix: The transformation matrix from model to world coordinates.
Tuple[numpy.ndarray, numpy.ndarray, numpy.ndarray] UM.Mesh.MeshData.MeshData.getFaceNodes | ( | self, | |
int | face_id ) |
Gets the node vectors of the supplied face. :param face_id: :type{int} The index of the face (not the flattened indices). :return: :type{Tuple[numpy.ndarray, numpy.ndarray, numpy.ndarray]} Tuple of all three local vectors.
Tuple[numpy.ndarray, numpy.ndarray] UM.Mesh.MeshData.MeshData.getFacePlane | ( | self, | |
int | face_id ) |
Gets the plane the supplied face lies in. The resultant plane is specified by a point and a normal. :param face_id: :type{int} The index of the face (not the flattened indices). :return: :type{Tuple[numpy.ndarray, numpy.ndarray]} A plane, the 1st vector is the center, the 2nd the normal.
numpy.ndarray UM.Mesh.MeshData.MeshData.getIndices | ( | self | ) |
Get the array of indices :return: :type{numpy.ndarray}
Optional[bytes] UM.Mesh.MeshData.MeshData.getIndicesAsByteArray | ( | self | ) |
Get all indices as a bytearray :return: A bytearray object with 3 ints per face.
numpy.ndarray UM.Mesh.MeshData.MeshData.getNormals | ( | self | ) |
Return the list of vertex normals.
Optional[bytes] UM.Mesh.MeshData.MeshData.getNormalsAsByteArray | ( | self | ) |
Get all normals of this mesh as a bytearray :return: A bytearray object with 3 floats per normal.
"MeshData" UM.Mesh.MeshData.MeshData.getTransformed | ( | self, | |
Matrix | transformation ) |
Transform the meshdata, center and zero position by given Matrix :param transformation: 4x4 homogeneous transformation matrix
UM.Mesh.MeshData.MeshData.getVertex | ( | self, | |
index ) |
Get a vertex by index
int UM.Mesh.MeshData.MeshData.getVertexCount | ( | self | ) |
Get the number of vertices
numpy.ndarray UM.Mesh.MeshData.MeshData.getVertices | ( | self | ) |
Get the array of vertices
Optional[bytes] UM.Mesh.MeshData.MeshData.getVerticesAsByteArray | ( | self | ) |
Get all vertices of this mesh as a bytearray :return: A bytearray object with 3 floats per vertex.
bool UM.Mesh.MeshData.MeshData.hasIndices | ( | self | ) |
Return whether this mesh has indices.
bool UM.Mesh.MeshData.MeshData.hasNormals | ( | self | ) |
Return whether this mesh has vertex normals.
"MeshData" UM.Mesh.MeshData.MeshData.set | ( | self, | |
vertices = Reuse, | |||
normals = Reuse, | |||
indices = Reuse, | |||
colors = Reuse, | |||
uvs = Reuse, | |||
file_name = Reuse, | |||
center_position = Reuse, | |||
zero_position = Reuse, | |||
attributes = Reuse ) |
Create a new MeshData with specified changes :return: :type{MeshData}