|
MGCL V10
V10
MGCL V10
|
Defines a vector mgTL2Fan. [詳解]
公開型 | |
| typedef MGPvector< mgTL2Fan > ::iterator | iterator |
| typedef MGPvector< mgTL2Fan > ::const_iterator | const_iterator |
公開メンバ関数 | |
| mgTL2Fans (const MGLoop &polygon) | |
| mgTL2Fans (std::vector< const mgTL2Polyline * > &polylines) | |
| mgTL2Fans (const mgTL2LPline pline[4]) | |
| mgTL2Fans (const mgTL2Polyline *pline[4]) | |
| const mgTL2Fan * | operator[] (int i) const |
| mgTL2Fan * | operator[] (int i) |
| const_iterator | begin () const |
| const_iterator | end () const |
| iterator | begin () |
| iterator | end () |
| int | find3rdV (int alpha, int beta, int &status) |
| 3点目の頂点(id of m_fans)を求める(頂点は使用点となる) [詳解] | |
| void | init_edgeStack (mgTL2FanEdges &edgeStack) |
| bool | is_boundary (int alpha, int beta) const |
| Test if the edge(alpha, beta) is boundary or not. [詳解] | |
| bool | has_isect (int v1, int v2) const |
| void | push_back (mgTL2Fan *fan) |
| void | push_back (mgTL2Fans &fans) |
| void | push1Vaft (int alpha, int beta, int gamma) |
| void | push1Vbefore (int alpha, int beta, int gamma) |
| void | push2V (int gamma, int alpha, int beta) |
| 目的:中心点(center)がgammaで頂点(alpha,beta)のものを新規に作成する [詳解] | |
| void | set_edge_used (int alpha, int beta) |
| Set edge(alpha,j) as used. [詳解] | |
| int | size () const |
| Get the number of fans included. [詳解] | |
| void | triangulate (mgTL2Triangles &triangles) const |
| bool | used (int alpha) const |
| check if vertex(alpha) is used or not. [詳解] | |
| bool | used (int alpha, int beta) const |
| check if edge(alpha, beta) is used or not. [詳解] | |
| MGPosition | uv (int i) const |
| Retrieve surface parameter value (u,v) of the i-th vertex. [詳解] | |
| MGPosition | xyz (int i, bool need_normal) const |
| Retrieve world coordinate value (x,y,z) of the i-th vertex. [詳解] | |
フレンド | |
| std::ostream & | operator<< (std::ostream &out, const mgTL2Fans &fans) |
Defines a vector mgTL2Fan.
private class for tessellation.
| typedef MGPvector<mgTL2Fan>::iterator mgTL2Fans::iterator |
| mgTL2Fans::mgTL2Fans | ( | const MGLoop & | polygon | ) |
| polygon | The target polygon, that is, a outer loop of a MGFace. |
| mgTL2Fans::mgTL2Fans | ( | std::vector< const mgTL2Polyline * > & | polylines | ) |
| mgTL2Fans::mgTL2Fans | ( | const mgTL2LPline | pline[4] | ) |
| pline | Four edges that constitute a closed polygon. |
| mgTL2Fans::mgTL2Fans | ( | const mgTL2Polyline * | pline[4] | ) |
| pline | Four edges that constitute a closed polygon. |
|
inline |
|
inline |
|
inline |
|
inline |
| int mgTL2Fans::find3rdV | ( | int | alpha, |
| int | beta, | ||
| int & | status | ||
| ) |
3点目の頂点(id of m_fans)を求める(頂点は使用点となる)
| alpha | エッジの始点(id of m_fans) |
| beta | エッジの終点(id of m_fans) |
| status | ステータス |
| bool mgTL2Fans::has_isect | ( | int | v1, |
| int | v2 | ||
| ) | const |
線分(v1,v2)が既存のedgeと交点があるかどうかを調べる Function's return: true if had isect.
| v1 | 線分1の点 |
| v2 | 線分1の点 |
| void mgTL2Fans::init_edgeStack | ( | mgTL2FanEdges & | edgeStack | ) |
Fan生成に必要な変数の準備を行う edgeStackにedgeのstackを積む
| bool mgTL2Fans::is_boundary | ( | int | alpha, |
| int | beta | ||
| ) | const |
Test if the edge(alpha, beta) is boundary or not.
|
inline |
|
inline |
| void mgTL2Fans::push1Vaft | ( | int | alpha, |
| int | beta, | ||
| int | gamma | ||
| ) |
目的:中心点(center)がalphaのmgTL2Fanに対し、頂点gammaを基準betaの 後ろに追加する
| alpha | 中心点のインデックス |
| beta | 追加する頂点のインデックス |
| gamma | 基準となる頂点のインデックス |
| void mgTL2Fans::push1Vbefore | ( | int | alpha, |
| int | beta, | ||
| int | gamma | ||
| ) |
目的:中心点(center)がalphaのmgTL2Fanに対し、頂点betaを基準gammaの 前に追加する
| alpha | 中心点のインデックス |
| beta | 追加する頂点のインデックス |
| gamma | 基準となる頂点のインデックス |
| void mgTL2Fans::push2V | ( | int | gamma, |
| int | alpha, | ||
| int | beta | ||
| ) |
目的:中心点(center)がgammaで頂点(alpha,beta)のものを新規に作成する
| gamma | γのインデックス |
| alpha | αのインデックス |
| beta | βのインデックス |
|
inline |
|
inline |
| void mgTL2Fans::set_edge_used | ( | int | alpha, |
| int | beta | ||
| ) |
Set edge(alpha,j) as used.
|
inline |
Get the number of fans included.
| void mgTL2Fans::triangulate | ( | mgTL2Triangles & | triangles | ) | const |
Triangulate polygon. The result will be appended onto triangles.
| triangles | Triangulated data will be appended. |
| bool mgTL2Fans::used | ( | int | alpha | ) | const |
check if vertex(alpha) is used or not.
| bool mgTL2Fans::used | ( | int | alpha, |
| int | beta | ||
| ) | const |
check if edge(alpha, beta) is used or not.
| MGPosition mgTL2Fans::uv | ( | int | i | ) | const |
Retrieve surface parameter value (u,v) of the i-th vertex.
| MGPosition mgTL2Fans::xyz | ( | int | i, |
| bool | need_normal | ||
| ) | const |
Retrieve world coordinate value (x,y,z) of the i-th vertex.
|
friend |