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

MGGeometry is an abstract class which represents a whole geometry. [詳解]

MGGeometry の継承関係図
MGObject MGAttribedGel MGGel MGCurve MGPoint MGSurface MGBSumCurve MGCompositeCurve MGEllipse MGLBRep MGRLBRep MGStraight MGSurfCurve MGTrimmedCurve MGBSumSurf MGCylinder MGPlane MGRSBRep MGSBRep MGSphere

公開メンバ関数

 MGGeometry ()
 Void constructor(初期化なしでオブジェクトを作成する。) [詳解]
 
 MGGeometry (const MGGeometry &geo2)
 Copy constructor. [詳解]
 
virtual ~MGGeometry ()
 Virtual Destructor. [詳解]
 
virtual MGGeometryoperator= (const MGGeometry &gel2)
 
virtual std::ostream & out (std::ostream &) const
 Output virtual function. [詳解]
 
virtual MGGeometrygeometry ()
 Return MGGeometry pointer if this MGGel is an MGGeometry, else return null. [詳解]
 
virtual const MGGeometrygeometry () const
 
const MGBoxbox () const
 Return minimum box that includes whole of the geometry. [詳解]
 
virtual MGPosition center () const =0
 Obtain ceter coordinate of the geometry. [詳解]
 
virtual MGPosition center_param () const =0
 Obtain ceter parameter value of the geometry. [詳解]
 
virtual MGGeometrychange_dimension (int sdim, int start1=0, int start2=0)=0
 Changing this object's space dimension. [詳解]
 
virtual MGGeometryclone () const =0
 
virtual MGGeometrycopy_change_dimension (int sdim, int start1=0, int start2=0) const =0
 
virtual MGUnit_vector direction (const MGPosition &param) const
 Compute direction unit vector of the geometry. [詳解]
 
virtual void draw3DVertex (mgVBO &vbo) const
 
virtual MGVector evaluate (const MGPosition &t, const int *nderiv=0) const =0
 Evaluate n'th derivative data. n=0 means positional data evaluation. [詳解]
 
virtual bool in_range (const MGPosition &t) const
 
bool is_null () const
 Test if this is null. [詳解]
 
virtual void negate ()
 Negate direction of this geometry. [詳解]
 
virtual void negate_transform (MGGeometry &boundary) const =0
 
double parameter_error () const
 Error allowed in the parameter space of the geometry. [詳解]
 
virtual MGBox parameter_range () const =0
 
virtual int sdim () const =0
 Return space dimension. [詳解]
 
virtual std::string whoami () const
 
- 基底クラス MGObject に属する継承公開メンバ関数
 MGObject ()
 Void constructor(初期化なしでオブジェクトを作成する。) [詳解]
 
 MGObject (const MGObject &obj2)
 Copy constructor. [詳解]
 
virtual ~MGObject ()
 Virtual Destructor. [詳解]
 
virtual MGObjectoperator= (const MGObject &obj2)
 
virtual MGObjectoperator+= (const MGVector &v)=0
 Object transformation. [詳解]
 
virtual MGObjectoperator-= (const MGVector &v)=0
 
virtual MGObjectoperator*= (double scale)=0
 
virtual MGObjectoperator*= (const MGMatrix &mat)=0
 
virtual MGObjectoperator*= (const MGTransf &tr)=0
 
MGAppearanceappearance ()
 
const MGAppearanceappearance () const
 
virtual void drawWire (mgVBO &vbo, double span_length, int line_density=1) const =0
 
virtual void shade (mgVBO &vbo, const MGDrawParam &para, mgVBO::ELEMENT_TARGET target=mgVBO::SHADING) const
 Shade the object in world coordinates. [詳解]
 
MGAppearanceensure_appearance ()
 
virtual void make_display_list (MGCL::VIEWMODE vmode=MGCL::DONTCARE) const
 Make a display list of this gel. [詳解]
 
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 MGObject &obj2) const =0
 
virtual MGisects intersection (const MGPoint &obj2) const
 
virtual MGisects intersection (const MGCurve &obj2) const =0
 
virtual MGisects intersection (const MGFSurface &obj2) const =0
 
virtual MGisects intersection (const MGSurface &obj2) const =0
 
virtual MGisects intersection (const MGFace &obj2) const =0
 
virtual MGisects intersection (const MGShell &obj2) const =0
 
virtual MGPosition pick_closest (const MGStraight &sl) 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 MGGeloperator= (const MGGel &gel2)
 
virtual bool operator== (const MGGel &gel2) const
 Comparison. [詳解]
 
virtual bool operator!= (const MGGel &gel2) const
 
virtual bool operator< (const MGGel &gel2) const
 
virtual bool operator> (const MGGel &gel2) const
 
virtual int out_to_IGES (MGIgesOfstream &igesfile, int SubordinateEntitySwitch=0) const
 
virtual int manifold_dimension () 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 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 MGTopologytopology ()
 Return MGTopology pointer if this MGGel is an MGTopology, else return null. [詳解]
 
virtual const MGTopologytopology () const
 
virtual MGFaceface ()
 Return MGFace pointer if this MGGel is an MGFace, else return null. [詳解]
 
virtual const MGFaceface () const
 
virtual MGShellshell ()
 Return MGShell pointer if this MGGel is an MGShell, else return null. [詳解]
 
virtual const MGShellshell () const
 
virtual long identify_type () const =0
 Return This object's typeID. [詳解]
 
std::string string_content () const
 
bool type_is (const MGAbstractGels &types) const
 
virtual void display_arrows (mgSysGL &sgl) const
 
virtual void display_break_points (mgSysGL &sgl) const
 
virtual void display_control_polygon (mgSysGL &sgl) const
 
virtual void display_curvatures (mgSysGL &sgl, double scale, int density, bool use_radius) const
 

限定公開メンバ関数

virtual MGBoxcompute_box () const =0
 
virtual void ReadMembers (MGIfstream &buf)
 
MGGeometryset_geometry (const MGGeometry &geo2)
 Assignment. [詳解]
 
virtual void update_mark ()
 Mark this as updated. [詳解]
 
virtual void WriteMembers (MGOfstream &buf) const
 
- 基底クラス MGObject に属する継承限定公開メンバ関数
MGObjectset_object (const MGObject &gel2)
 

限定公開変数類

MGBoxm_box
 
- 基底クラス MGAttribedGel に属する継承限定公開変数類
std::auto_ptr< mgVBOm_dlistName
 display name if m_dlistName!=0; [詳解]
 

詳解

MGGeometry is an abstract class which represents a whole geometry.

Geometry represents point(MGPoint), curve(MGCurve), and surface (MGSurface).

構築子と解体子

MGGeometry::MGGeometry ( )

Void constructor(初期化なしでオブジェクトを作成する。)

MGGeometry::MGGeometry ( const MGGeometry geo2)

Copy constructor.

virtual MGGeometry::~MGGeometry ( )
virtual

Virtual Destructor.

関数詳解

const MGBox& MGGeometry::box ( ) const
virtual

Return minimum box that includes whole of the geometry.

MGObjectを実装しています。

virtual MGPosition MGGeometry::center ( ) const
pure virtual

Obtain ceter coordinate of the geometry.

MGEllipse, MGPlane, MGCurve, MGSurface, MGCylinder, MGPoint, MGPlaneImageで実装されています。

virtual MGPosition MGGeometry::center_param ( ) const
pure virtual

Obtain ceter parameter value of the geometry.

MGCurve, MGSurface, MGPointで実装されています。

virtual MGGeometry& MGGeometry::change_dimension ( int  sdim,
int  start1 = 0,
int  start2 = 0 
)
pure virtual

Changing this object's space dimension.

引数
sdimnew space dimension
start1Destination order of new object.
start2Source order of this object.

MGSBRep, MGLBRep, MGEllipse, MGRSBRep, MGRLBRep, MGStraight, MGPlane, MGSphere, MGCurve, MGSurface, MGCylinder, MGCompositeCurve, MGSurfCurve, MGTrimmedCurve, MGPoint, MGBSumCurve, MGBSumSurf (計17項目)で実装されています。

virtual MGGeometry* MGGeometry::clone ( ) const
pure virtual

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

MGObjectを実装しています。

MGLBRep, MGSBRep, MGEllipse, MGRSBRep, MGRLBRep, MGStraight, MGCompositeCurve, MGPlane, MGSurface, MGSphere, MGCurve, MGCylinder, MGSurfCurve, MGTrimmedCurve, MGBSumCurve, MGPoint, MGBSumSurf, mgTL2Polyline, MGPlaneImage (計19項目)で実装されています。

virtual MGBox* MGGeometry::compute_box ( ) const
protectedpure virtual

Compute box of the geometry. Returned is a newed MGBox pointer. MGGeometry takes the ownership.

virtual MGGeometry* MGGeometry::copy_change_dimension ( int  sdim,
int  start1 = 0,
int  start2 = 0 
) const
pure virtual

Construct new geometry object by changing the original object's space dimension. User must delete this copied object by "delete".

引数
sdimnew space dimension
start1Destination order of new object.
start2Source order of this object.

MGLBRep, MGSBRep, MGEllipse, MGRSBRep, MGRLBRep, MGCurve, MGStraight, MGCompositeCurve, MGSurface, MGPlane, MGSphere, MGTrimmedCurve, MGCylinder, MGSurfCurve, MGBSumCurve, MGPoint, MGBSumSurf (計17項目)で実装されています。

virtual MGUnit_vector MGGeometry::direction ( const MGPosition param) const
virtual

Compute direction unit vector of the geometry.

MGCurve, MGSurface, MGPointで再実装されています。

virtual void MGGeometry::draw3DVertex ( mgVBO vbo) const
virtual

Draw 3D point(vertex) in world coordinates. The object is converted to point(s) and is drawn. This is valid only for topology objects or MGPoint.

MGObjectを実装しています。

MGPointで再実装されています。

virtual MGVector MGGeometry::evaluate ( const MGPosition t,
const int *  nderiv = 0 
) const
pure virtual

Evaluate n'th derivative data. n=0 means positional data evaluation.

引数
tParameter value, t's space dimension is geometry's manifold dimension.
nderivOrder of derivative of i-th parameter in nderiv[i], When nderiv=null, nderiv[i]=0 is assumed for all i.

MGCurve, MGSurface, MGPointで実装されています。

virtual MGGeometry* MGGeometry::geometry ( )
inlinevirtual

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

MGGelを再実装しています。

virtual const MGGeometry* MGGeometry::geometry ( ) const
inlinevirtual

MGGelを再実装しています。

virtual bool MGGeometry::in_range ( const MGPosition t) const
inlinevirtual

Test if input parameter value t is inside parameter range of the line. t's space dimension is geometry's manifold dimension.

MGSBRep, MGSurface, MGCurve, MGRSBRep, MGPlane, MGCylinder, MGPointで再実装されています。

bool MGGeometry::is_null ( ) const
inline

Test if this is null.

virtual void MGGeometry::negate ( )
inlinevirtual

Negate direction of this geometry.

MGLBRep, MGSurface, MGCurve, MGRLBRep, MGEllipse, MGStraight, MGCompositeCurve, MGPoint, MGBSumCurve, mgTL2Polylineで再実装されています。

virtual void MGGeometry::negate_transform ( MGGeometry boundary) const
pure virtual

Transform the coordinates of boundary of this geometry so that new coordinate of boundary is the same coordinate as the new one of this geometry after negate() of this geometry is done. That is, boundary coordinates are of parameter world of this geometry.

MGSurface, MGCurve, MGPointで実装されています。

virtual MGGeometry& MGGeometry::operator= ( const MGGeometry gel2)
inlinevirtual

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

virtual std::ostream& MGGeometry::out ( std::ostream &  ) const
virtual

Output virtual function.

MGObjectを再実装しています。

MGCurve, MGLBRep, MGSBRep, MGSurface, MGRLBRep, MGStraight, MGEllipse, MGRSBRep, MGCompositeCurve, MGSurfCurve, MGTrimmedCurve, MGBSumCurve, MGPoint, MGBSumSurf, MGPlane, MGPlaneImage, MGSphere, MGCylinder, mgTL2Polyline (計19項目)で再実装されています。

double MGGeometry::parameter_error ( ) const

Error allowed in the parameter space of the geometry.

virtual MGBox MGGeometry::parameter_range ( ) const
pure virtual

Return parameter range of the geometry(パラメータ範囲を返す) Returned box's space dimension is geometry's manifold dimension.

MGSurface, MGCurve, MGPointで実装されています。

virtual void MGGeometry::ReadMembers ( MGIfstream buf)
protectedvirtual

ファイル入力関数 戻り値はオブジェクトのPID(識別ID)

MGObjectを再実装しています。

MGSurface, MGCurve, MGLBRep, MGSBRep, MGStraight, MGRLBRep, MGEllipse, MGPlane, MGRSBRep, MGCompositeCurve, MGTrimmedCurve, MGCylinder, MGSphere, MGSurfCurve, MGBSumSurf, MGBSumCurve, MGPoint, MGPlaneImage (計18項目)で再実装されています。

virtual int MGGeometry::sdim ( ) const
pure virtual
MGGeometry& MGGeometry::set_geometry ( const MGGeometry geo2)
protected

Assignment.

virtual void MGGeometry::update_mark ( )
inlineprotectedvirtual

Mark this as updated.

MGCurveで再実装されています。

virtual std::string MGGeometry::whoami ( ) const
inlinevirtual
virtual void MGGeometry::WriteMembers ( MGOfstream buf) const
protectedvirtual

ファイル出力関数 戻り値はオブジェクトのPID(識別ID)

MGObjectを再実装しています。

MGSurface, MGCurve, MGLBRep, MGSBRep, MGStraight, MGRLBRep, MGEllipse, MGPlane, MGRSBRep, MGCompositeCurve, MGTrimmedCurve, MGCylinder, MGSphere, MGSurfCurve, MGBSumSurf, MGBSumCurve, MGPoint, MGPlaneImage (計18項目)で再実装されています。

メンバ詳解

MGBox* MGGeometry::m_box
mutableprotected

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