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

MGShell is a composition of MGFace's(trimmed surface). [詳解]

MGShell の継承関係図
MGBoundary MGComplex MGTopology MGObject MGAttribedGel MGGel

公開メンバ関数

 MGShell ()
 Default constructor. [詳解]
 
 MGShell (const MGFace &face)
 
 MGShell (MGFace *face)
 
 MGShell (const MGFSurface &face)
 
 MGShell (MGFSurface *face)
 
 MGShell (std::list< MGCellNB * > boundaries)
 
MGShelloperator= (const MGGel &gel2)
 
MGShelloperator= (const MGShell &gel2)
 
MGShelloperator+= (const MGVector &v)
 Object transformation. [詳解]
 
MGShelloperator-= (const MGVector &v)
 
MGShelloperator*= (double scale)
 
MGShelloperator*= (const MGMatrix &mat)
 
MGShelloperator*= (const MGTransf &tr)
 
bool operator< (const MGShell &gel2) const
 comparison [詳解]
 
bool operator< (const MGGel &gel2) const
 
std::ostream & out (std::ostream &ostrm) const
 Debug Function. [詳解]
 
int out_to_IGES (MGIgesOfstream &igesfile, int SubordinateEntitySwitch=0) const
 
bool active () const
 Test if this is an active boundary. [詳解]
 
void append_face (MGFace *f)
 
MGShellclone (MGCell &parent) const
 
MGShellclone () const
 
MGShellclone_without_binders (MGCell &parent) const
 Make a clone that has not binders. [詳解]
 
MGShellclone_without_binders () const
 
bool closed () const
 Test if this is closed boundary. [詳解]
 
MGFPoint closest (const MGPosition &point) const
 Compute the closest point from a point to this shell. [詳解]
 
virtual void display_arrows (mgSysGL &sgl) const
 Judge if the display list for vmode is made or not. [詳解]
 
virtual void display_control_polygon (mgSysGL &sgl) const
 
void ensure_BVertices_of_ModelEdges () const
 
MGFaceface (pcellItr i)
 Get the face pointer from its iterator in MGComplex of MGBoudarynD. [詳解]
 
const MGFaceface (const_pcellItr i) const
 
MGFaceface (int i)
 Get the face pointer from its pcell id in MGComplex of MGBoudarynD. [詳解]
 
const MGFaceface (int i) const
 
long identify_type () const
 Return This object's typeID. [詳解]
 
MGisects intersection (const MGObject &obj2) const
 
MGisects intersection (const MGCurve &obj2) const
 
MGisects intersection (const MGFSurface &obj2) const
 
MGisects intersection (const MGSurface &obj2) const
 
MGisects intersection (const MGFace &obj2) const
 
MGisects intersection (const MGShell &obj2) const
 
MGCFisect_vector isect (const MGCurve &curve) const
 Intersection of a shell and a curve. [詳解]
 
MGHHisect_vector isect (const MGShell &shell2) const
 Intersection of two shells. [詳解]
 
MGHHisect_vector isect (const MGSurface &surf) const
 
MGHHisect_vector isect (const MGFace &face) const
 
MGHHisect_vector isect (const MGFSurface &face) const
 
void make_display_list (MGCL::VIEWMODE vmode=MGCL::DONTCARE) const
 Make 2 types of display list of this gel(wire and shading). [詳解]
 
int manifold_dimension () const
 Get manifold dimension. [詳解]
 
bool merge_at_common_edge (const MGFace &face)
 
bool merge_at_common_edge (MGFace *face)
 
bool merge_at_common_edge (const MGFSurface &face)
 
bool merge_at_common_edge (MGFSurface *face)
 
int number_of_faces () const
 Get the number of faces included in this shell. [詳解]
 
bool on (const MGPosition &point, MGFPoint &fp) const
 
std::vector< MGFPointperps (const MGPosition &point) const
 Obtain perpendicular points of a shell from a point. [詳解]
 
int project (const MGCurve &crv, MGHHisect_vector &lines, const MGVector &vec=mgNULL_VEC) const
 
void shade (mgVBO &vbo, const MGDrawParam &para, mgVBO::ELEMENT_TARGET target=mgVBO::SHADING) const
 Shade the object in world coordinates. [詳解]
 
virtual void triangulate (const MGDrawParam &para, MGCL::TL_DATA_KIND dkind, std::vector< mgTL2Triangles > &trisVec) const
 Triangulate this object(MGShell, MGFace, or MGSurface is the target). [詳解]
 
MGShellshell ()
 Return MGShell pointer if this MGGel is an MGShell, else return null. [詳解]
 
const MGShellshell () const
 
MGPvector< MGCurveskeleton (int density=1) const
 
MGPvector< MGCurveskeleton_at_knots () const
 Obtain all the parameter curves at knots of u and v knot vector. [詳解]
 
virtual std::string whoami () const
 
- 基底クラス MGBoundary に属する継承公開メンバ関数
 MGBoundary ()
 Void constructor. [詳解]
 
 MGBoundary (MGCellNB *pcell)
 Constructor of one parameter cell. [詳解]
 
 MGBoundary (std::list< MGCellNB * > &pcells)
 Constructor from list of member pcells. [詳解]
 
 MGBoundary (const MGBoundary &boundary)
 Boundary data pcells that constitute complex. [詳解]
 
virtual ~MGBoundary ()
 original boundary. [詳解]
 
virtual MGBoundaryoperator= (const MGBoundary &gel2)
 
MGUnit_vector direction_star (int i) const
 
bool empty ()
 
bool equal_direction (int i, const MGBoundary &bound2, int j) const
 
virtual void negate ()
 
virtual void negate_as_boundary (const MGCellNB *parent=0)
 
int number_of_pcells () const
 Obtain how many parameter cells are included in the boundary. [詳解]
 
void set_binder (int i, MGCellNB &binder) const
 
MGCellset_parent (MGCell &new_parent) const
 
const MGCellNBstar () const
 Get the star cell. [詳解]
 
MGCellNBstar ()
 
- 基底クラス MGComplex に属する継承公開メンバ関数
 MGComplex ()
 Void constructor. [詳解]
 
 MGComplex (const MGComplex &complex)
 
 MGComplex (const MGCellNB &cell)
 
 MGComplex (MGCellNB *cell)
 
virtual ~MGComplex ()
 
virtual MGComplexoperator= (const MGComplex &gel2)
 
MGComplex operator+ (const MGVector &v) const
 
MGComplex operator- (const MGVector &v) const
 
MGComplex operator* (double s) const
 
MGComplex operator* (const MGMatrix &mat) const
 
MGComplex operator* (const MGTransf &tr) const
 
MGComplex operator/ (double s) const
 
virtual bool operator< (const MGComplex &gel2) const
 comparison [詳解]
 
const_bcellItr bcell_begin () const
 Obtain first bcell iterator. [詳解]
 
bcellItr bcell_begin ()
 
const_bcellItr bcell_end () const
 Obtain end bcell iterator(next of the last bcell). [詳解]
 
bcellItr bcell_end ()
 
const MGCellNBbcelli (int i) const
 Obtain i-the pcell in the m_bcells sequence. MGCellNB version. [詳解]
 
MGCellNBbcelli (int i)
 
const_bcellItr bcellIterator (int i) const
 Obtain i-the pcell in the m_bcells sequence. MGCellNB version. [詳解]
 
bcellItr bcellIterator (int i)
 
bool bcell_exist () const
 Cehck if bcell exist. [詳解]
 
MGCellNBbinder (int i) const
 Obtain the binder of i-the pcell, may be null. [詳解]
 
std::vector< MGCellNB * > binders () const
 
const MGBoxbox () const
 Return the box of this complex. [詳解]
 
MGPosition center () const
 
void drawWire (mgVBO &vbo, double span_length, int line_density=1) const
 
virtual void drawWire_in_star (mgVBO &vbo, double span_length, int line_density=1) const
 
virtual void draw3DVertex (mgVBO &vbo) const
 
virtual void draw3DVertex_in_star (mgVBO &vbo) const
 
void erase_first_pcell ()
 
void erase_last_pcell ()
 erase first pcell. [詳解]
 
void erase_pcell (MGCellNB *pcell)
 erase last pcell. [詳解]
 
const MGCellNBfirst_pcell () const
 Get fisrt pcell pointer. [詳解]
 
MGCellNBfirst_pcell ()
 
bool includes (const MGCellNB *cell) const
 
const MGCellNBlast_pcell () const
 Get last pcell pointer. [詳解]
 
MGCellNBlast_pcell ()
 
int number_of_bcells () const
 count number of bcells of the complex [詳解]
 
int number_of_pcells () const
 count number of pcells of the complex [詳解]
 
const_pcellItr pcell_begin () const
 Obtain first pcell iterator. [詳解]
 
pcellItr pcell_begin ()
 
const_pcellItr pcell_end () const
 Obtain end pcell iterator(next of the last pcell). [詳解]
 
pcellItr pcell_end ()
 
const MGCellNBpcelli (int i) const
 Obtain i-the pcell. MGCellNB version. [詳解]
 
MGCellNBpcelli (int i)
 
const_pcellItr pcellIterator (int i) const
 Obtain i-th pcell iterator. [詳解]
 
pcellItr pcellIterator (int i)
 
bool pcell_exist () const
 Cehck if pcell exist. [詳解]
 
std::vector< MGCellNB * > pcells ()
 
std::vector< const MGCellNB * > pcells () const
 
MGPosition pick_closest (const MGStraight &sl) const
 
const MGCellNBstar () const
 
MGCellNBstar ()
 
- 基底クラス MGTopology に属する継承公開メンバ関数
 MGTopology ()
 Void constructor(初期化なしでオブジェクトを作成する。) [詳解]
 
 MGTopology (const MGTopology &topo)
 Copy constructor. [詳解]
 
virtual ~MGTopology ()
 
virtual MGTopologyoperator= (const MGTopology &gel2)
 
MGTopologytopology ()
 Return MGTopology pointer if this MGGel is an MGTopology, else return null. [詳解]
 
const MGTopologytopology () const
 
- 基底クラス MGObject に属する継承公開メンバ関数
 MGObject ()
 Void constructor(初期化なしでオブジェクトを作成する。) [詳解]
 
 MGObject (const MGObject &obj2)
 Copy constructor. [詳解]
 
virtual ~MGObject ()
 Virtual Destructor. [詳解]
 
virtual MGObjectoperator= (const MGObject &obj2)
 
MGAppearanceappearance ()
 
const MGAppearanceappearance () const
 
MGAppearanceensure_appearance ()
 
bool has_common (const MGObject &obj2) const
 
const MGObjectincludes_object () const
 Test if this gel includes an object. [詳解]
 
MGObjectincludes_object ()
 Test if this gel includes an object. [詳解]
 
virtual MGisects intersection (const MGPoint &obj2) const
 
void remove_appearance ()
 Remove the MGAppearance of this MGAttribedGel. [詳解]
 
virtual MGObjectobject ()
 Return MGObject pointer if this MGGel is an MGObject, else return null. [詳解]
 
virtual const MGObjectobject () const
 
virtual const MGFSurfacefsurface () const
 Get the MGFSurface pointer if this is MGSurface or MGFace. [詳解]
 
virtual MGFSurfacefsurface ()
 
void set_appearance (const MGAppearance &appr2)
 
virtual void transform (const MGVector &v)
 Transform the gel by the argument. [詳解]
 
virtual void transform (double scale)
 translation [詳解]
 
virtual void transform (const MGMatrix &mat)
 scaling. [詳解]
 
virtual void transform (const MGTransf &tr)
 matrix transformation. [詳解]
 
- 基底クラス MGAttribedGel に属する継承公開メンバ関数
 MGAttribedGel ()
 void constructor. [詳解]
 
 MGAttribedGel (const MGAttribedGel &gel2)
 copy constructor. [詳解]
 
virtual MGAttribedGeloperator= (const MGAttribedGel &gel2)
 
virtual ~MGAttribedGel ()
 
void copy_appearance (const MGAttribedGel &gel2)
 
mgVBOdlist_name () const
 
virtual bool displayList_is_made (MGCL::VIEWMODE vmode) const
 Judge if the display list for vmode is made or not. [詳解]
 
void deleteDlistName () const
 
virtual void drawAttrib (mgVBO &vbo, bool no_color=false) const
 Process of draw or render attributes. [詳解]
 
virtual void render_attribute () const
 
virtual int get_draw_attrib_mask () const
 Obtain attribute mask for glPushAttrib(). [詳解]
 
virtual int get_render_attrib_mask () const
 
int getVBOElementsNumber () const
 Get the number of elements of m_dlistName. [詳解]
 
int getVBOShaderElementsNumber () const
 Get the number of shading elements of m_dlistName. [詳解]
 
virtual bool no_display () const
 
void remove_GLattrib (long tid)
 Removed the attribute of specified type. [詳解]
 
virtual void set_GLattrib (MGGLAttrib *attr)
 
virtual void set_display ()
 Set this group as display or no display group. [詳解]
 
virtual void set_no_display ()
 
bool visible () const
 
void set_name (const MGName &newName)
 
const MGNameget_name () const
 
void set_color (const MGColor &newColor)
 
const MGColorget_color () const
 
void setDlistName (mgVBO *vbo=0) const
 
void setDirty (bool is_dirty) const
 Set dirty flag(s) of this VBO(m_dlistName). [詳解]
 
- 基底クラス MGGel に属する継承公開メンバ関数
virtual ~MGGel ()
 Virtual Destructor. [詳解]
 
virtual bool operator== (const MGGel &gel2) const
 Comparison. [詳解]
 
virtual bool operator!= (const MGGel &gel2) const
 
virtual bool operator> (const MGGel &gel2) const
 
virtual MGAttribattrib ()
 Return MGAttrib pointer if this MGGel is an MGAttrib, else return null. [詳解]
 
virtual const MGAttribattrib () const
 
virtual MGGroupgroup ()
 Return MGGroup pointer if this MGGel is an MGGroup, else return null. [詳解]
 
virtual const MGGroupgroup () const
 
virtual MGGeometrygeometry ()
 Return MGGeometry pointer if this MGGel is an MGGeometry, else return null. [詳解]
 
virtual const MGGeometrygeometry () const
 
virtual MGPointpoint ()
 Return point pointer if this MGGel is an MGPoint, else return null. [詳解]
 
virtual const MGPointpoint () const
 
virtual MGCurvecurve ()
 Return curve pointer if this MGGel is an MGCurve, else return null. [詳解]
 
virtual const MGCurvecurve () const
 
virtual MGSurfacesurf ()
 Return MGSurface pointer if this MGGel is an MGSurface, else return null. [詳解]
 
virtual const MGSurfacesurf () const
 
virtual MGFaceface ()
 Return MGFace pointer if this MGGel is an MGFace, else return null. [詳解]
 
virtual const MGFaceface () const
 
std::string string_content () const
 
bool type_is (const MGAbstractGels &types) const
 
virtual void display_break_points (mgSysGL &sgl) const
 
virtual void display_curvatures (mgSysGL &sgl, double scale, int density, bool use_radius) const
 

限定公開メンバ関数

void ReadMembers (MGIfstream &buf)
 Read Object's member data. [詳解]
 
void WriteMembers (MGOfstream &buf) const
 Write Object's Member Data. [詳解]
 
- 基底クラス MGBoundary に属する継承限定公開メンバ関数
 MGBoundary (const MGBoundary &boundary, MGCellMap &cmap)
 
void connect_bound (int i, MGBoundary *bound2, int j)
 
virtual void copy_boundary (const MGBoundary &bnd)
 
virtual void copy_boundary_without_binders (const MGBoundary &bnd)
 
void disconnect (int i)
 
void free_binders ()
 
MGBoundaryset_boundary (const MGBoundary &gel2)
 
- 基底クラス MGComplex に属する継承限定公開メンバ関数
 MGComplex (std::list< MGCellNB * > &pcells)
 
 MGComplex (const MGComplex &complex, MGCellMap &cmap)
 Binder cells of the pcells in complex will be registered in cmap. [詳解]
 
cellItr append_bcell (MGCellNB *cell) const
 cellmap to register binder association. [詳解]
 
cellItr add_cell (MGCellNB *cell, bool pcell, cellItr loc)
 
cellItr append_pcell (MGCellNB *cell)
 Append a PCell to the end of pcell sequence. [詳解]
 
virtual void compute_box () const
 Compute the box from the scratch. [詳解]
 
void copy_without_binders (const MGComplex &comp)
 
void erase_all_elements ()
 
cellItr prepend_pcell (MGCellNB *cell)
 Prepend a PCell to the end of pcell sequence. [詳解]
 
MGComplexset_complex (const MGComplex &comp2)
 
- 基底クラス MGObject に属する継承限定公開メンバ関数
MGObjectset_object (const MGObject &gel2)
 

その他の継承メンバ

- 基底クラス MGComplex に属する継承公開型
typedef std::list< MGCellNB * > container_type
 
typedef container_type::iterator cellItr
 
typedef
container_type::const_iterator 
const_cellItr
 
typedef container_type::iterator pcellItr
 
typedef
container_type::const_iterator 
const_pcellItr
 
typedef container_type::iterator bcellItr
 
typedef
container_type::const_iterator 
const_bcellItr
 
- 基底クラス MGBoundary に属する継承限定公開変数類
MGCellm_parent_cell
 Cell that has this boundary as a boundary. [詳解]
 
- 基底クラス MGComplex に属する継承限定公開変数類
MGBox m_box
 
- 基底クラス MGAttribedGel に属する継承限定公開変数類
std::auto_ptr< mgVBOm_dlistName
 display name if m_dlistName!=0; [詳解]
 

詳解

MGShell is a composition of MGFace's(trimmed surface).

See topology structure.

構築子と解体子

MGShell::MGShell ( )
inline

Default constructor.

MGShell::MGShell ( const MGFace face)

Construct a shell of one face. Copy version of face.

MGShell::MGShell ( MGFace face)
explicit

Construct a shell of one face. face is a pointer to newed face, and the ownership will be transfered to MGShell.

MGShell::MGShell ( const MGFSurface face)

Construct a shell of one face. Copy version of face.

MGShell::MGShell ( MGFSurface face)
explicit

Construct a shell of one face. face is a pointer to newed face, and the ownership will be transfered to MGShell.

MGShell::MGShell ( std::list< MGCellNB * >  boundaries)

Fundamental constructor. Construct from boundary complex(i.e. MGLoop). This constructor takes the ownership of MGCell* in boundary.

引数
boundariesBoundary data of the super class MGBoundary. List of faces.

関数詳解

bool MGShell::active ( ) const
inlinevirtual

Test if this is an active boundary.

MGBoundaryを実装しています。

void MGShell::append_face ( MGFace f)
inline

Append a face this is independent or connected to the already member faces of this shell. append_face() does not make any face join process. f must be a newed object, and the ownership will be transfered to this shell.

MGShell* MGShell::clone ( MGCell parent) const
virtual

Make a clone. Returned is pointer of newed object, must be deleted. When parent is specified, clone's parent is set to the parent.

MGBoundaryを実装しています。

MGShell* MGShell::clone ( ) const
virtual

Construct new object by copying to newed area. User must delete this copied object by "delete".

MGBoundaryを実装しています。

MGShell* MGShell::clone_without_binders ( MGCell parent) const
virtual

Make a clone that has not binders.

MGBoundaryを実装しています。

MGShell* MGShell::clone_without_binders ( ) const
virtual

MGBoundaryを実装しています。

bool MGShell::closed ( ) const
inlinevirtual

Test if this is closed boundary.

MGBoundaryを実装しています。

MGFPoint MGShell::closest ( const MGPosition point) const

Compute the closest point from a point to this shell.

virtual void MGShell::display_arrows ( mgSysGL sgl) const
virtual

Judge if the display list for vmode is made or not.

MGGelを再実装しています。

virtual void MGShell::display_control_polygon ( mgSysGL sgl) const
virtual

MGGelを再実装しています。

void MGShell::ensure_BVertices_of_ModelEdges ( ) const
MGFace* MGShell::face ( pcellItr  i)

Get the face pointer from its iterator in MGComplex of MGBoudarynD.

const MGFace* MGShell::face ( const_pcellItr  i) const
MGFace* MGShell::face ( int  i)

Get the face pointer from its pcell id in MGComplex of MGBoudarynD.

const MGFace* MGShell::face ( int  i) const
long MGShell::identify_type ( ) const
virtual

Return This object's typeID.

MGBoundaryを実装しています。

MGisects MGShell::intersection ( const MGObject obj2) const
virtual

Compute the intersections of two objects. Intersections are obtained from two objects, which are known using the MGisects::object1() and object2(). ****NOTE**** When two objects' manifold dimension are the same, object1 is this object at the invocation of MGObject::intersection(), and object2 is the argument object. However, their manifold dimension are not the same, object1 is always the lower dimension's object and object2 is the higer dimension's object.

MGTopologyを再実装しています。

MGisects MGShell::intersection ( const MGCurve obj2) const
virtual

MGTopologyを再実装しています。

MGisects MGShell::intersection ( const MGFSurface obj2) const
virtual

MGTopologyを再実装しています。

MGisects MGShell::intersection ( const MGSurface obj2) const
virtual

MGTopologyを再実装しています。

MGisects MGShell::intersection ( const MGFace obj2) const
virtual

MGTopologyを再実装しています。

MGisects MGShell::intersection ( const MGShell obj2) const
virtual

MGTopologyを再実装しています。

MGCFisect_vector MGShell::isect ( const MGCurve curve) const

Intersection of a shell and a curve.

MGHHisect_vector MGShell::isect ( const MGShell shell2) const

Intersection of two shells.

MGHHisect_vector MGShell::isect ( const MGSurface surf) const

Intersection of a shell and a surface. This shell's face is face1 in HHisect and face2 is null.

MGHHisect_vector MGShell::isect ( const MGFace face) const

Intersection of a shell and a face. This shell's face is face1 in HHisect and face2 is face.

MGHHisect_vector MGShell::isect ( const MGFSurface face) const

Intersection of a shell and a face. This shell's face is face1 in HHisect and face2 is face.

void MGShell::make_display_list ( MGCL::VIEWMODE  vmode = MGCL::DONTCARE) const
virtual

Make 2 types of display list of this gel(wire and shading).

MGObjectを再実装しています。

int MGShell::manifold_dimension ( ) const
inlinevirtual

Get manifold dimension.

MGBoundaryを実装しています。

bool MGShell::merge_at_common_edge ( const MGFace face)

Merge a face at free edges of this shell. Function's return value is false: merge was not done because no common edges were found. true: merge of the shell and the face was done. Case of true includes that merge was done only partialy. This case occurs when after some common edges are merged, some common edges are found to have contradictionary direction. Merge is done only for the first common edges found to have same direction. When the function's return value is false, the face will not be added to the shell. Merge negates the input face direction when this shell's direction is not the same as the input face's one along the common edge(s). The second form is a pointer version. The face must be newed object and will be destructed after merge when function's return value is true (merge was processed). This shell may be dummy shell. In this case, the face is added to the 1st face in the shell.

bool MGShell::merge_at_common_edge ( MGFace face)
bool MGShell::merge_at_common_edge ( const MGFSurface face)
bool MGShell::merge_at_common_edge ( MGFSurface face)
int MGShell::number_of_faces ( ) const
inline

Get the number of faces included in this shell.

bool MGShell::on ( const MGPosition point,
MGFPoint fp 
) const

Test if a point is on the shell or not. Function's return value is true if the point is on the shell, and false if not. The point parameter of the shell is returned in fp if true is returned. If false is returned, the closest point of the shell will be returned in fp.

引数
pointTarget point.
fpShell's point parameter value.
MGShell& MGShell::operator*= ( double  scale)
inlinevirtual

MGBoundaryを再実装しています。

MGShell& MGShell::operator*= ( const MGMatrix mat)
inlinevirtual

MGBoundaryを再実装しています。

MGShell& MGShell::operator*= ( const MGTransf tr)
inlinevirtual

MGBoundaryを再実装しています。

MGShell& MGShell::operator+= ( const MGVector v)
inlinevirtual

Object transformation.

MGBoundaryを再実装しています。

MGShell& MGShell::operator-= ( const MGVector v)
inlinevirtual

MGBoundaryを再実装しています。

bool MGShell::operator< ( const MGShell gel2) const

comparison

bool MGShell::operator< ( const MGGel gel2) const
virtual

MGComplexを再実装しています。

MGShell& MGShell::operator= ( const MGGel gel2)
virtual

Assignment. When the leaf object of this and bnd2 are not equal, this assignment does nothing.

MGComplexを再実装しています。

MGShell& MGShell::operator= ( const MGShell gel2)
std::ostream& MGShell::out ( std::ostream &  ostrm) const
virtual

Debug Function.

MGBoundaryを再実装しています。

int MGShell::out_to_IGES ( MGIgesOfstream igesfile,
int  SubordinateEntitySwitch = 0 
) const
virtual

IGES output function Function's return value is the directory entry id created.

MGGelを再実装しています。

std::vector<MGFPoint> MGShell::perps ( const MGPosition point) const

Obtain perpendicular points of a shell from a point.

int MGShell::project ( const MGCurve crv,
MGHHisect_vector lines,
const MGVector vec = mgNULL_VEC 
) const

Obtain the projected curves of a curve onto the shell. The direction of the projection is along the vector vec if the vec is not NULL, and normal to the shell if the vec is NULL. Output of 'project' is two kind of curves: one is general world coordinate curves(iline() of the MGHHisect members of lines), and the other is (u,v) curves of the parameter space of the surfaces (uvline1() of the MGHHisect members of lines ). *** uvline2() of the MGHHisect members of lines is a deque of length zero (not used). Function's return value is the number of curves obtained. When <0 is returned, some internal error occured.

引数
crvgiven world coordinate curve to project.
linesWorld coordinates (x,y,z) lines and (u,v) lines of the projected curves will be returned in lines.
vecprojection direction. if vec = NULL, then projection that is normal to the shell.
void MGShell::ReadMembers ( MGIfstream buf)
protectedvirtual

Read Object's member data.

MGBoundaryを再実装しています。

void MGShell::shade ( mgVBO vbo,
const MGDrawParam para,
mgVBO::ELEMENT_TARGET  target = mgVBO::SHADING 
) const
virtual

Shade the object in world coordinates.

MGObjectを再実装しています。

MGShell* MGShell::shell ( )
inlinevirtual

Return MGShell pointer if this MGGel is an MGShell, else return null.

MGGelを再実装しています。

const MGShell* MGShell::shell ( ) const
inlinevirtual

MGGelを再実装しています。

MGPvector<MGCurve> MGShell::skeleton ( int  density = 1) const

Obtain boundary and main parameter lines of the FSurface. skeleton includes boundary() and inner parameter lines. density indicates how many inner parameter lines are necessary for both u and v directions.

MGPvector<MGCurve> MGShell::skeleton_at_knots ( ) const

Obtain all the parameter curves at knots of u and v knot vector.

virtual void MGShell::triangulate ( const MGDrawParam para,
MGCL::TL_DATA_KIND  dkind,
std::vector< mgTL2Triangles > &  trisVec 
) const
virtual

Triangulate this object(MGShell, MGFace, or MGSurface is the target).

virtual std::string MGShell::whoami ( ) const
inlinevirtual

MGBoundaryを再実装しています。

void MGShell::WriteMembers ( MGOfstream buf) const
protectedvirtual

Write Object's Member Data.

MGBoundaryを再実装しています。


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