24 #ifndef VTR_INTERFACES_H
25 #define VTR_INTERFACES_H
27 #include "../version.h"
29 #include "../sdc/type.h"
30 #include "../sdc/crease.h"
31 #include "../vtr/types.h"
36 namespace OpenSubdiv {
37 namespace OPENSUBDIV_VERSION {
115 void SetIndex(
int edgeIndex) { _eIndex = edgeIndex; }
128 for (
int i = 0; i < eFaces.
size(); ++i) {
150 _pIndex = parentIndex;
151 _cIndex = childIndex;
163 for (
int i = 0; i < _eCount; ++i) {
171 float * pSharpness = (
float *)alloca(_eCount*
sizeof(
float));
178 const Level* _parent;
190 using namespace OPENSUBDIV_VERSION;
void SetIndex(int edgeIndex)
float GetChildSharpness(Sdc::Crease const &) const
void GetNumVerticesPerFace(int vertsPerFace[]) const
void GetChildSharpnesses(Sdc::Crease const &, float s[2]) const
Weight & VertexWeight(int index)
float GetSharpness() const
int GetNumFaceWeights() const
void SetNumVertexWeights(int count)
float * GetSharpnessPerEdge(float pSharpness[]) const
float * GetChildSharpnessPerEdge(Sdc::Crease const &crease, float cSharpness[]) const
IndexArray const getEdgeFaces(Index edgeIndex) const
Weight const & FaceWeight(int index) const
int GetNumVertexWeights() const
Weight & FaceWeight(int index)
void SubdivideEdgeSharpnessesAroundVertex(int incidentEdgeCountAtVertex, float const *incidentEdgeSharpnessAroundVertex, float *childEdgesSharpnessAroundVertex) const
void SetIndex(int parentIndex, int childIndex)
FaceInterface(int vertCount)
void SetNumEdgeWeights(int count)
void SetNumFaceWeights(int count)
IndexArray const getFaceVertices(Index faceIndex) const
int GetNumEdgeWeights() const
IndexArray const getVertexEdges(Index vertIndex) const
IndexArray const getVertexFaces(Index vertIndex) const
EdgeInterface(Level const &level)
VertexInterface(Level const &parent, Level const &child)
int GetNumVertices() const
Sharpness getVertexSharpness(Index vertIndex) const
Weight const & EdgeWeight(int index) const
Weight const & VertexWeight(int index) const
Sharpness getEdgeSharpness(Index edgeIndex) const
Weight & EdgeWeight(int index)
float GetSharpness() const
MaskInterface(Weight *v, Weight *e, Weight *f)