#include <FacetBaseData.h>

Public Member Functions | |
| FacetBaseData (int idx=0, int num=0) | |
| virtual | ~FacetBaseData (void) |
| void | init (int idx=0, int num=0) |
| void | free (void) |
| bool | getm (void) |
| void | dup (FacetBaseData a) |
| void | execScale (Vector< double > scale) |
| void | execShift (Vector< double > shift) |
| void | execRotate (Quaternion< double > quat) |
Public Attributes | |
| int | num_index |
| インデックスの数.(index の要素数) | |
| int | num_data |
| データ数.(vertex, normal, texcrd の要素数) | |
| int | vcount |
| ポリゴンの頂点数.通常は3 | |
| int * | index |
| インデックスデータ | |
| Vector< double > * | vertex |
| 頂点データ | |
| Vector< double > * | normal |
| 法線ベクトル | |
| UVMap< double > * | texcrd |
| テクスチャマップ | |
Definition at line 103 of file FacetBaseData.h.
| FacetBaseData | ( | int | idx = 0, |
|
| int | num = 0 | |||
| ) | [inline] |
Definition at line 116 of file FacetBaseData.h.
References FacetBaseData::init().
00116 { init(idx, num);}

| virtual ~FacetBaseData | ( | void | ) | [inline, virtual] |
Definition at line 117 of file FacetBaseData.h.
| void dup | ( | FacetBaseData | a | ) |
Definition at line 127 of file FacetBaseData.cpp.
References FacetBaseData::getm(), FacetBaseData::index, FacetBaseData::normal, FacetBaseData::num_data, FacetBaseData::num_index, FacetBaseData::texcrd, FacetBaseData::vcount, and FacetBaseData::vertex.
00128 { 00129 num_index = a.num_index; 00130 num_data = a.num_data; 00131 vcount = a.vcount; 00132 00133 if (getm()) { 00134 for (int i=0; i<num_index; i++) index[i] = a.index[i]; 00135 for (int i=0; i<num_data; i++) { 00136 vertex[i] = a.vertex[i]; 00137 normal[i] = a.normal[i]; 00138 texcrd[i] = a.texcrd[i]; 00139 } 00140 } 00141 return; 00142 }

| void execRotate | ( | Quaternion< double > | quat | ) |
Definition at line 168 of file FacetBaseData.cpp.
References FacetBaseData::normal, FacetBaseData::num_data, jbxl::VectorRotation(), and FacetBaseData::vertex.
00169 { 00170 for (int i=0; i<num_data; i++) { 00171 vertex[i] = VectorRotation(vertex[i], quat); 00172 normal[i] = VectorRotation(normal[i], quat); 00173 } 00174 }

| void execScale | ( | Vector< double > | scale | ) |
Definition at line 146 of file FacetBaseData.cpp.
References FacetBaseData::num_data, FacetBaseData::vertex, Vector< T >::x, Vector< T >::y, and Vector< T >::z.
| void execShift | ( | Vector< double > | shift | ) |
Definition at line 157 of file FacetBaseData.cpp.
References FacetBaseData::num_data, FacetBaseData::vertex, Vector< T >::x, Vector< T >::y, and Vector< T >::z.
| void free | ( | void | ) |
Definition at line 96 of file FacetBaseData.cpp.
References jbxl::freeNull(), FacetBaseData::index, FacetBaseData::init(), FacetBaseData::normal, FacetBaseData::texcrd, and FacetBaseData::vertex.
Referenced by jbxl::freeFacetBaseData(), and FacetBaseData::getm().
00097 { 00098 freeNull(index); 00099 00100 freeNull(vertex); 00101 freeNull(normal); 00102 freeNull(texcrd); 00103 00104 init(); 00105 }


| bool getm | ( | void | ) |
Definition at line 109 of file FacetBaseData.cpp.
References FacetBaseData::free(), FacetBaseData::index, FacetBaseData::normal, FacetBaseData::num_data, FacetBaseData::num_index, FacetBaseData::texcrd, and FacetBaseData::vertex.
Referenced by FacetBaseData::dup().
00110 { 00111 index = (int*)malloc(sizeof(int)*num_index); 00112 00113 vertex = (Vector<double>*)malloc(sizeof(Vector<double>)*num_data); 00114 normal = (Vector<double>*)malloc(sizeof(Vector<double>)*num_data); 00115 texcrd = (UVMap <double>*)malloc(sizeof(UVMap <double>)*num_data); 00116 00117 if (index==NULL || vertex==NULL || normal==NULL || texcrd==NULL) { 00118 this->free(); 00119 return false; 00120 } 00121 00122 return true; 00123 }


| void init | ( | int | idx = 0, |
|
| int | num = 0 | |||
| ) |
Definition at line 82 of file FacetBaseData.cpp.
References FacetBaseData::index, FacetBaseData::normal, FacetBaseData::num_data, FacetBaseData::num_index, FacetBaseData::texcrd, FacetBaseData::vcount, and FacetBaseData::vertex.
Referenced by FacetBaseData::FacetBaseData(), and FacetBaseData::free().
00083 { 00084 num_index = idx; 00085 num_data = num; 00086 vcount = 3; 00087 00088 index = NULL; 00089 vertex = NULL; 00090 normal = NULL; 00091 texcrd = NULL; 00092 }

| int* index |
Definition at line 110 of file FacetBaseData.h.
Referenced by MeshObjectNode::computeVertexDirect(), FacetBaseData::dup(), FacetBaseData::free(), FacetBaseData::getm(), and FacetBaseData::init().
Definition at line 112 of file FacetBaseData.h.
Referenced by MeshObjectNode::computeVertexDirect(), FacetBaseData::dup(), FacetBaseData::execRotate(), FacetBaseData::free(), FacetBaseData::getm(), and FacetBaseData::init().
| int num_data |
Definition at line 107 of file FacetBaseData.h.
Referenced by MeshObjectNode::computeVertexDirect(), FacetBaseData::dup(), FacetBaseData::execRotate(), FacetBaseData::execScale(), FacetBaseData::execShift(), FacetBaseData::getm(), and FacetBaseData::init().
| int num_index |
Definition at line 106 of file FacetBaseData.h.
Referenced by MeshObjectNode::computeVertexDirect(), FacetBaseData::dup(), FacetBaseData::getm(), and FacetBaseData::init().
Definition at line 113 of file FacetBaseData.h.
Referenced by MeshObjectNode::computeVertexDirect(), FacetBaseData::dup(), FacetBaseData::free(), FacetBaseData::getm(), and FacetBaseData::init().
| int vcount |
Definition at line 108 of file FacetBaseData.h.
Referenced by MeshObjectNode::computeVertexDirect(), FacetBaseData::dup(), and FacetBaseData::init().
Definition at line 111 of file FacetBaseData.h.
Referenced by MeshObjectNode::computeVertexDirect(), FacetBaseData::dup(), FacetBaseData::execRotate(), FacetBaseData::execScale(), FacetBaseData::execShift(), FacetBaseData::free(), FacetBaseData::getm(), and FacetBaseData::init().
1.6.1