Blender
V3.3
|
#include <mesh_topology.h>
Classes | |
struct | Edge |
struct | EdgeTag |
struct | VertexTag |
Public Member Functions | |
MeshTopology () | |
MeshTopology (const MeshTopology &other)=default | |
MeshTopology (MeshTopology &&other) noexcept=default | |
~MeshTopology () | |
MeshTopology & | operator= (const MeshTopology &other)=default |
MeshTopology & | operator= (MeshTopology &&other)=default |
void | setNumVertices (int num_vertices) |
int | getNumVertices () const |
void | setVertexSharpness (int vertex_index, float sharpness) |
float | getVertexSharpness (int vertex_index) const |
void | setNumEdges (int num_edges) |
int | getNumEdges () const |
void | setEdgeVertexIndices (int edge_index, int v1, int v2) |
void | getEdgeVertexIndices (int edge_index, int *v1, int *v2) const |
bool | isEdgeEqual (int edge_index, int expected_v1, int expected_v2) const |
void | setEdgeSharpness (int edge_index, float sharpness) |
float | getEdgeSharpness (int edge_index) const |
void | setNumFaces (int num_faces) |
int | getNumFaces () const |
void | setNumFaceVertices (int face_index, int num_face_vertices) |
int | getNumFaceVertices (int face_index) const |
void | setFaceVertexIndices (int face_index, int num_face_vertex_indices, const int *face_vertex_indices) |
bool | isFaceVertexIndicesEqual (int face_index, int num_expected_face_vertex_indices, const int *expected_face_vertex_indices) const |
bool | isFaceVertexIndicesEqual (int face_index, const vector< int > &expected_face_vertex_indices) const |
void | finishResizeTopology () |
bool | isEqualToConverter (const OpenSubdiv_Converter *converter) const |
Protected Member Functions | |
void | ensureNumEdgesAtLeast (int num_edges) |
void | ensureVertexTagsSize (int num_vertices) |
void | ensureEdgeTagsSize (int num_edges) |
int * | getFaceVertexIndicesStorage (int face_index) |
const int * | getFaceVertexIndicesStorage (int face_index) const |
MEM_CXX_CLASS_ALLOC_FUNCS ("MeshTopology") | |
Protected Attributes | |
int | num_vertices_ |
vector< VertexTag > | vertex_tags_ |
int | num_edges_ |
vector< Edge > | edges_ |
vector< EdgeTag > | edge_tags_ |
int | num_faces_ |
vector< int > | face_vertex_indices_ |
vector< int > | faces_first_vertex_index_ |
Definition at line 54 of file mesh_topology.h.
blender::opensubdiv::MeshTopology::MeshTopology | ( | ) |
Definition at line 26 of file mesh_topology.cc.
|
default |
|
defaultnoexcept |
blender::opensubdiv::MeshTopology::~MeshTopology | ( | ) |
Definition at line 30 of file mesh_topology.cc.
|
protected |
Definition at line 171 of file mesh_topology.cc.
References edge_tags_.
Referenced by setEdgeSharpness().
|
protected |
Definition at line 164 of file mesh_topology.cc.
References edges_.
Referenced by setEdgeVertexIndices().
|
protected |
Definition at line 70 of file mesh_topology.cc.
References vertex_tags_.
Referenced by setVertexSharpness().
void blender::opensubdiv::MeshTopology::finishResizeTopology | ( | ) |
Definition at line 265 of file mesh_topology.cc.
References face_vertex_indices_, and faces_first_vertex_index_.
Referenced by blender::opensubdiv::TEST().
float blender::opensubdiv::MeshTopology::getEdgeSharpness | ( | int | edge_index | ) | const |
Definition at line 151 of file mesh_topology.cc.
References edge_tags_.
Referenced by blender::opensubdiv::TEST().
void blender::opensubdiv::MeshTopology::getEdgeVertexIndices | ( | int | edge_index, |
int * | v1, | ||
int * | v2 | ||
) | const |
Definition at line 108 of file mesh_topology.cc.
References edges_, getNumEdges(), v1, and v2.
|
protected |
Definition at line 248 of file mesh_topology.cc.
References getFaceVertexIndicesStorage().
Referenced by getFaceVertexIndicesStorage(), isFaceVertexIndicesEqual(), and setFaceVertexIndices().
|
protected |
Definition at line 253 of file mesh_topology.cc.
References face_vertex_indices_, faces_first_vertex_index_, getNumFaces(), and offset.
int blender::opensubdiv::MeshTopology::getNumEdges | ( | ) | const |
Definition at line 85 of file mesh_topology.cc.
References num_edges_.
Referenced by getEdgeVertexIndices(), isEdgeEqual(), setEdgeSharpness(), and setEdgeVertexIndices().
int blender::opensubdiv::MeshTopology::getNumFaces | ( | ) | const |
Definition at line 190 of file mesh_topology.cc.
References num_faces_.
Referenced by getFaceVertexIndicesStorage(), getNumFaceVertices(), isFaceVertexIndicesEqual(), setFaceVertexIndices(), and setNumFaceVertices().
int blender::opensubdiv::MeshTopology::getNumFaceVertices | ( | int | face_index | ) | const |
Definition at line 204 of file mesh_topology.cc.
References faces_first_vertex_index_, and getNumFaces().
Referenced by isFaceVertexIndicesEqual(), setFaceVertexIndices(), and blender::opensubdiv::TEST().
int blender::opensubdiv::MeshTopology::getNumVertices | ( | ) | const |
Definition at line 42 of file mesh_topology.cc.
References num_vertices_.
Referenced by getVertexSharpness(), setEdgeVertexIndices(), and setVertexSharpness().
float blender::opensubdiv::MeshTopology::getVertexSharpness | ( | int | vertex_index | ) | const |
Definition at line 57 of file mesh_topology.cc.
References getNumVertices(), and vertex_tags_.
Referenced by blender::opensubdiv::TEST().
bool blender::opensubdiv::MeshTopology::isEdgeEqual | ( | int | edge_index, |
int | expected_v1, | ||
int | expected_v2 | ||
) | const |
Definition at line 124 of file mesh_topology.cc.
References edges_, and getNumEdges().
bool blender::opensubdiv::MeshTopology::isEqualToConverter | ( | const OpenSubdiv_Converter * | converter | ) | const |
Definition at line 219 of file mesh_topology_compare.cc.
Referenced by blender::opensubdiv::TopologyRefinerImpl::isEqualToConverter().
bool blender::opensubdiv::MeshTopology::isFaceVertexIndicesEqual | ( | int | face_index, |
const vector< int > & | expected_face_vertex_indices | ||
) | const |
Definition at line 241 of file mesh_topology.cc.
References isFaceVertexIndicesEqual().
bool blender::opensubdiv::MeshTopology::isFaceVertexIndicesEqual | ( | int | face_index, |
int | num_expected_face_vertex_indices, | ||
const int * | expected_face_vertex_indices | ||
) | const |
Definition at line 224 of file mesh_topology.cc.
References getFaceVertexIndicesStorage(), getNumFaces(), and getNumFaceVertices().
Referenced by isFaceVertexIndicesEqual(), and blender::opensubdiv::TEST().
|
protected |
|
default |
|
default |
Definition at line 137 of file mesh_topology.cc.
References edge_tags_, ensureEdgeTagsSize(), and getNumEdges().
Referenced by blender::opensubdiv::TEST().
void blender::opensubdiv::MeshTopology::setEdgeVertexIndices | ( | int | edge_index, |
int | v1, | ||
int | v2 | ||
) |
Definition at line 90 of file mesh_topology.cc.
References edges_, ensureNumEdgesAtLeast(), getNumEdges(), getNumVertices(), v1, and v2.
Referenced by blender::opensubdiv::TEST().
void blender::opensubdiv::MeshTopology::setFaceVertexIndices | ( | int | face_index, |
int | num_face_vertex_indices, | ||
const int * | face_vertex_indices | ||
) |
Definition at line 212 of file mesh_topology.cc.
References getFaceVertexIndicesStorage(), getNumFaces(), and getNumFaceVertices().
Referenced by blender::opensubdiv::TEST().
void blender::opensubdiv::MeshTopology::setNumEdges | ( | int | num_edges | ) |
Definition at line 80 of file mesh_topology.cc.
References num_edges_.
Referenced by blender::opensubdiv::TEST().
void blender::opensubdiv::MeshTopology::setNumFaces | ( | int | num_faces | ) |
Definition at line 181 of file mesh_topology.cc.
References faces_first_vertex_index_, and num_faces_.
Referenced by blender::opensubdiv::TEST().
void blender::opensubdiv::MeshTopology::setNumFaceVertices | ( | int | face_index, |
int | num_face_vertices | ||
) |
Definition at line 195 of file mesh_topology.cc.
References faces_first_vertex_index_, and getNumFaces().
Referenced by blender::opensubdiv::TEST().
void blender::opensubdiv::MeshTopology::setNumVertices | ( | int | num_vertices | ) |
Definition at line 37 of file mesh_topology.cc.
References num_vertices_.
Referenced by blender::opensubdiv::TEST().
Definition at line 47 of file mesh_topology.cc.
References ensureVertexTagsSize(), getNumVertices(), and vertex_tags_.
Referenced by blender::opensubdiv::TEST().
Definition at line 161 of file mesh_topology.h.
Referenced by ensureEdgeTagsSize(), getEdgeSharpness(), and setEdgeSharpness().
Definition at line 160 of file mesh_topology.h.
Referenced by ensureNumEdgesAtLeast(), getEdgeVertexIndices(), isEdgeEqual(), and setEdgeVertexIndices().
|
protected |
Definition at line 167 of file mesh_topology.h.
Referenced by finishResizeTopology(), and getFaceVertexIndicesStorage().
|
protected |
Definition at line 171 of file mesh_topology.h.
Referenced by finishResizeTopology(), getFaceVertexIndicesStorage(), getNumFaceVertices(), setNumFaces(), and setNumFaceVertices().
|
protected |
Definition at line 159 of file mesh_topology.h.
Referenced by getNumEdges(), and setNumEdges().
|
protected |
Definition at line 163 of file mesh_topology.h.
Referenced by getNumFaces(), and setNumFaces().
|
protected |
Definition at line 156 of file mesh_topology.h.
Referenced by getNumVertices(), and setNumVertices().
Definition at line 157 of file mesh_topology.h.
Referenced by ensureVertexTagsSize(), getVertexSharpness(), and setVertexSharpness().