MGCL V10  V10
MGCL V10
 全て クラス 名前空間 関数 変数 型定義 列挙型 列挙値 フレンド グループ ページ
MGGelPosition クラス

MGGelPosition is a class to locate where a gel is in a group hierarchy. [詳解]

MGGelPosition の継承関係図
MGPickObject MGPickObjectCB MGPickObjectFB MGPickObjectSB

公開メンバ関数

 MGGelPosition ()
 Void constructor. [詳解]
 
 MGGelPosition (MGGroup *group, MGObject *obj=0)
 Constructor of no hierarched group(m_Ghierarcy.size()==0). [詳解]
 
 MGGelPosition (const MGGelPosition &obj2)
 Copy constructor. [詳解]
 
virtual ~MGGelPosition ()
 Destructor. [詳解]
 
virtual MGGelPositionoperator= (const MGGelPosition &GelPosition2)
 Assignment. [詳解]
 
bool operator== (const MGGelPosition &gelp2) const
 Equal operator. [詳解]
 
bool operator!= (const MGGelPosition &gelp2) const
 
bool operator< (const MGGelPosition &gp2) const
 
bool operator> (const MGGelPosition &gp2) const
 
bool operator<= (const MGGelPosition &gp2) const
 
bool operator>= (const MGGelPosition &gp2) const
 
void append_lower_gel (MGGel *gel)
 Append lower level group or shell data. [詳解]
 
const MGGelgel (int i) const
 Return the MGGel i;. [詳解]
 
MGGelgel (int i)
 
virtual MGGelPositionclone () const
 Generate a newed clone object. [詳解]
 
void do_add ()
 
void do_remove ()
 
const MGGroupbottom_group () const
 Get the group pointer that includes leaf_gel();. [詳解]
 
MGGroupbottom_group ()
 
const MGGrouptop_group () const
 Get the top group pointer. [詳解]
 
MGGrouptop_group ()
 
MGShellget_shell_of_shell_face () const
 
const MGGroupis_a_member_of (const MGGroup *grp) const
 
bool is_null () const
 Test if this is null. [詳解]
 
bool is_shell_face () const
 
bool is_type (const MGAbstractGels &types) const
 
bool leaf_is_group () const
 
const MGObjecttop_object () const
 
MGObjecttop_object ()
 
const MGObjectleaf_object () const
 
MGObjectleaf_object ()
 
const MGAttribedGelleafAttribedGel () const
 
MGAttribedGelleafAttribedGel ()
 
void set_attribedGel (MGAttribedGel *agel)
 Set the leaf object data. [詳解]
 
void set_leaf_object (MGObject *obj)
 Set the leaf object data. [詳解]
 
void set_top_group (MGGroup *group)
 Set the group data. [詳解]
 
void set_null ()
 Set this as null. [詳解]
 
bool symmetric (const MGGelPosition &gp2) const
 
MGAttribedGeltargetGel ()
 

限定公開変数類

MGGroupm_group
 
std::vector< MGGel * > m_Ghierarcy
 
MGAttribedGelm_agel
 
MGObjectm_object
 MGAttribedGel(MGGroup for attribute update) pointer. [詳解]
 

フレンド

MG_DLL_DECLR friend std::ostream & operator<< (std::ostream &, const MGGelPosition &)
 String stream function. [詳解]
 

詳解

MGGelPosition is a class to locate where a gel is in a group hierarchy.

MGGelPosition is a class to locate where a gel(MGObject(including MGShell) or MGGroup) is in a group hierarchy. Generally, A group includes other groups, and the included groups include other groups. In this way, the groups make a group hierachy. MGGelPosition represents this hierarcy. m_group is the top MGGroup that includes the object m_object if m_Ghierarcy.size()==0. If m_Ghierarcy.size()>0, m_group includes m_Ghierarcy[0]. Let n=m_Ghierarcy.size(), then group m_Ghierarcy[i-1] includes m_Ghierarcy[i] for n=0,...,n-2. m_Ghierarcy[n-1] includes m_object(if m_object!=0). m_object is the leaf MGObject pointer if exist. When n>0 and m_object=0, this means that leaf_is_group() is true and the positioning target is MGGroup. Although m_Ghierarcy[i] for i=0,...,n-2 are always MGGroup, m_Ghierarcy[n-1] may be MGShell that includes MGFace. In this case, is_shell_face() is true and m_object is the MGFace.

構築子と解体子

MGGelPosition::MGGelPosition ( )

Void constructor.

MGGelPosition::MGGelPosition ( MGGroup group,
MGObject obj = 0 
)
explicit

Constructor of no hierarched group(m_Ghierarcy.size()==0).

MGGelPosition::MGGelPosition ( const MGGelPosition obj2)

Copy constructor.

virtual MGGelPosition::~MGGelPosition ( )
inlinevirtual

Destructor.

関数詳解

void MGGelPosition::append_lower_gel ( MGGel gel)

Append lower level group or shell data.

const MGGroup* MGGelPosition::bottom_group ( ) const

Get the group pointer that includes leaf_gel();.

MGGroup* MGGelPosition::bottom_group ( )
virtual MGGelPosition* MGGelPosition::clone ( ) const
virtual

Generate a newed clone object.

MGPickObject, MGPickObjectFB, MGPickObjectCB, MGPickObjectSBで再実装されています。

void MGGelPosition::do_add ( )

perform add operation of this gel position. (push back the object of m_object to the group that includes m_object)

void MGGelPosition::do_remove ( )

perform remove operation of this gel position. (Release the object of m_object from the group that includes m_object, but does not delete the gel).

const MGGel* MGGelPosition::gel ( int  i) const
inline

Return the MGGel i;.

MGGel* MGGelPosition::gel ( int  i)
inline
MGShell* MGGelPosition::get_shell_of_shell_face ( ) const
const MGGroup* MGGelPosition::is_a_member_of ( const MGGroup grp) const

Test if this MGGelPosition is a member of a group of the input grp. Test is done through the hierarchy of the group grp. Returned is null if not a member of (or a member group of) grp. The parent groupt pointer is returned if this geposiiton is a member of a group.

bool MGGelPosition::is_null ( ) const

Test if this is null.

bool MGGelPosition::is_shell_face ( ) const

Test if this is MGGelpotion that point shell and the member face. That is, m_object is MGFace and top_object() is MGShell.

bool MGGelPosition::is_type ( const MGAbstractGels types) const
bool MGGelPosition::leaf_is_group ( ) const
const MGObject* MGGelPosition::leaf_object ( ) const
inline

Get the leaf object pointer of this. Returned is MGObject excluding Shell.

MGObject* MGGelPosition::leaf_object ( )
inline
const MGAttribedGel* MGGelPosition::leafAttribedGel ( ) const
inline

Get the leaf AttribedGel pointer of this. Returned is MGAttribedGel excluding Shell.

MGAttribedGel* MGGelPosition::leafAttribedGel ( )
inline
bool MGGelPosition::operator!= ( const MGGelPosition gelp2) const
inline
bool MGGelPosition::operator< ( const MGGelPosition gp2) const
bool MGGelPosition::operator<= ( const MGGelPosition gp2) const
inline
virtual MGGelPosition& MGGelPosition::operator= ( const MGGelPosition GelPosition2)
virtual

Assignment.

bool MGGelPosition::operator== ( const MGGelPosition gelp2) const

Equal operator.

bool MGGelPosition::operator> ( const MGGelPosition gp2) const
inline
bool MGGelPosition::operator>= ( const MGGelPosition gp2) const
inline
void MGGelPosition::set_attribedGel ( MGAttribedGel agel)

Set the leaf object data.

void MGGelPosition::set_leaf_object ( MGObject obj)

Set the leaf object data.

void MGGelPosition::set_null ( )

Set this as null.

void MGGelPosition::set_top_group ( MGGroup group)
inline

Set the group data.

bool MGGelPosition::symmetric ( const MGGelPosition gp2) const

Test if this is symmetric to gel2. Symmetric means: Both leaf objects are MGObject and they have the same manifold dimension.

MGAttribedGel* MGGelPosition::targetGel ( )

Get the target attribed gel to update. I.e., if this is shell_face, return the shell. Else, return the leaf AttribedGel.

const MGGroup* MGGelPosition::top_group ( ) const
inline

Get the top group pointer.

MGGroup* MGGelPosition::top_group ( )
inline
const MGObject* MGGelPosition::top_object ( ) const

Get the top object pointer of this. Returned is MGObject of m_object or MGShell that is the last member of m_Ghierarcy.

MGObject* MGGelPosition::top_object ( )

フレンドと関連関数の詳解

MG_DLL_DECLR friend std::ostream& operator<< ( std::ostream &  ,
const MGGelPosition  
)
friend

String stream function.

メンバ詳解

MGAttribedGel* MGGelPosition::m_agel
protected

then group m_Ghierarcy[i-1] includes m_Ghierarcy[i] for n=0,...,n-2. m_Ghierarcy[n-1] includes m_object; Although m_Ghierarcy[i] for i=0,...,n-2 are always MGGroup, m_Ghierarcy[n-1] may be MGShell that includes MGFace. In this case, m_object is the MGFace. The leaf MGObject or

std::vector<MGGel*> MGGelPosition::m_Ghierarcy
protected

the object m_object if m_Ghierarcy.size()==0. If m_Ghierarcy.size()>0, m_group includes m_Ghierarcy[0].

MGGroup* MGGelPosition::m_group
protected

The top group pointer which includes

MGObject* MGGelPosition::m_object
protected

MGAttribedGel(MGGroup for attribute update) pointer.

The leaf MGObject pointer if m_agel is an MGObject.


このクラス詳解は次のファイルから抽出されました: