Blender V2.61 - r43446
|
#include <subd_ring.h>
Public Member Functions | |
SubdFaceRing (SubdFace *face, SubdEdge *edge) | |
SubdFace * | face () |
SubdEdge * | firstEdge () |
int | num_verts () |
SubdVert * | vertexAt (int i) |
int | vert_index (SubdVert *vertex) |
void | evaluate_stencils (float3 *P, StencilMask *mask, int num) |
bool | is_triangle () |
bool | is_quad () |
int | num_edges () |
Static Public Member Functions | |
static bool | is_regular (SubdFace *face) |
static bool | is_triangle (SubdFace *face) |
static bool | is_quad (SubdFace *face) |
static bool | is_boundary (SubdFace *face) |
Protected Member Functions | |
void | initVerts () |
void | add_vert (SubdVert *vertex) |
bool | has_vert (SubdVert *vertex) |
Protected Attributes | |
SubdFace * | m_face |
SubdEdge * | m_firstEdge |
int | m_num_edges |
vector< SubdVert * > | m_verts |
Definition at line 36 of file subd_ring.h.
Definition at line 49 of file subd_ring.cpp.
References assert, face(), firstEdge(), initVerts(), m_face, m_firstEdge, m_num_edges, and SubdFace::num_edges().
void SubdFaceRing::add_vert | ( | SubdVert * | vertex | ) | [protected] |
Definition at line 217 of file subd_ring.cpp.
References has_vert(), and m_verts.
Referenced by initVerts().
void SubdFaceRing::evaluate_stencils | ( | float3 * | P, |
StencilMask * | mask, | ||
int | num | ||
) |
Definition at line 82 of file subd_ring.cpp.
References i, m_verts, make_float3(), num_verts(), p, sort(), and vertid().
Referenced by SubdAccBuilder::run().
SubdFace* SubdFaceRing::face | ( | ) | [inline] |
Definition at line 41 of file subd_ring.h.
References m_face.
Referenced by SubdAccBuilder::computeInteriorStencil(), and SubdFaceRing().
SubdEdge* SubdFaceRing::firstEdge | ( | ) | [inline] |
Definition at line 42 of file subd_ring.h.
References m_firstEdge.
Referenced by SubdAccBuilder::computeCornerStencil(), SubdAccBuilder::computeEdgeStencil(), SubdAccBuilder::computeInteriorStencil(), initVerts(), and SubdFaceRing().
bool SubdFaceRing::has_vert | ( | SubdVert * | vertex | ) | [protected] |
Definition at line 224 of file subd_ring.cpp.
References SubdVert::co, co, i, m_verts, and num_verts().
Referenced by add_vert().
void SubdFaceRing::initVerts | ( | ) | [protected] |
Definition at line 177 of file subd_ring.cpp.
References add_vert(), assert, SubdVert::co, SubdEdge::face, firstEdge(), SubdEdge::from(), i, SubdVert::ReverseEdgeIterator::isDone(), SubdFace::EdgeIterator::isDone(), m_firstEdge, m_verts, SubdEdge::next, NULL, SubdEdge::to(), and SubdVert::valence().
Referenced by SubdFaceRing().
bool SubdFaceRing::is_boundary | ( | SubdFace * | face | ) | [static] |
Definition at line 161 of file subd_ring.cpp.
References SubdFace::edges(), SubdVert::is_boundary(), SubdFace::EdgeIterator::isDone(), and SubdEdge::vert.
bool SubdFaceRing::is_quad | ( | SubdFace * | face | ) | [static] |
Definition at line 156 of file subd_ring.cpp.
References SubdFace::num_edges().
bool SubdFaceRing::is_quad | ( | ) |
Definition at line 117 of file subd_ring.cpp.
References m_num_edges.
Referenced by SubdAccBuilder::computeCornerStencil(), SubdAccBuilder::computeEdgeStencil(), SubdAccBuilder::computeInteriorStencil(), and is_regular().
bool SubdFaceRing::is_regular | ( | SubdFace * | face | ) | [static] |
Definition at line 127 of file subd_ring.cpp.
References SubdFace::edges(), SubdEdge::is_boundary(), is_quad(), SubdFace::EdgeIterator::isDone(), SubdVert::EdgeIterator::isDone(), NULL, SubdVert::valence(), and SubdEdge::vert.
bool SubdFaceRing::is_triangle | ( | ) |
Definition at line 112 of file subd_ring.cpp.
References m_num_edges.
Referenced by SubdAccBuilder::computeCornerStencil(), SubdAccBuilder::computeEdgeStencil(), and SubdAccBuilder::computeInteriorStencil().
bool SubdFaceRing::is_triangle | ( | SubdFace * | face | ) | [static] |
Definition at line 152 of file subd_ring.cpp.
References SubdFace::num_edges().
int SubdFaceRing::num_edges | ( | ) |
Definition at line 122 of file subd_ring.cpp.
References m_num_edges.
int SubdFaceRing::num_verts | ( | ) |
Definition at line 60 of file subd_ring.cpp.
References m_verts.
Referenced by SubdAccBuilder::computeBoundaryTangentStencils(), SubdAccBuilder::computeEdgeStencil(), SubdAccBuilder::computeInteriorStencil(), evaluate_stencils(), GregoryAccStencil::GregoryAccStencil(), has_vert(), and vert_index().
int SubdFaceRing::vert_index | ( | SubdVert * | vertex | ) |
Definition at line 70 of file subd_ring.cpp.
References assert, i, m_verts, and num_verts().
Referenced by SubdAccBuilder::computeBoundaryTangentStencils(), SubdAccBuilder::computeInteriorStencil(), and GregoryAccStencil::get().
SubdVert * SubdFaceRing::vertexAt | ( | int | i | ) |
Definition at line 65 of file subd_ring.cpp.
SubdFace* SubdFaceRing::m_face [protected] |
Definition at line 65 of file subd_ring.h.
Referenced by face(), and SubdFaceRing().
SubdEdge* SubdFaceRing::m_firstEdge [protected] |
Definition at line 66 of file subd_ring.h.
Referenced by firstEdge(), initVerts(), and SubdFaceRing().
int SubdFaceRing::m_num_edges [protected] |
Definition at line 68 of file subd_ring.h.
Referenced by is_quad(), is_triangle(), num_edges(), and SubdFaceRing().
vector<SubdVert*> SubdFaceRing::m_verts [protected] |
Definition at line 69 of file subd_ring.h.
Referenced by add_vert(), evaluate_stencils(), has_vert(), initVerts(), num_verts(), vert_index(), and vertexAt().