MGCL V10  V10
MGCL V10
 全て クラス 名前空間 関数 変数 型定義 列挙型 列挙値 フレンド グループ ページ
Topology.h
1 /********************************************************************/
2 /* Copyright (c) 2015 DG Technologies Inc. and Yuzi Mizuno */
3 /* All rights reserved. */
4 /********************************************************************/
5 #ifndef _MGTopology_HH_
6 #define _MGTopology_HH_
7 
8 #include "mg/Object.h"
9 
10 class MGBox;
11 class MGCell;
12 class MGCellBase;
13 class MGComplex;
14 class MGOfstream;
15 class MGIfstream;
16 class MGVector;
17 class MGMatrix;
18 class MGTransf;
19 
20 //Define MGTopology Class.
21 
28 
33 class MG_DLL_DECLR MGTopology: public MGObject{
34 
35 public:
37 
39 MGTopology();
40 
42 MGTopology(const MGTopology& topo):MGObject(topo){;};
43 
45 virtual ~MGTopology();
46 
50 virtual MGTopology& operator=(const MGTopology& gel2);
51 
53 
63 virtual MGisects intersection(const MGObject& obj2)const;
64 virtual MGisects intersection(const MGCurve& obj2)const;
65 virtual MGisects intersection(const MGFSurface& obj2)const;
66 virtual MGisects intersection(const MGSurface& obj2)const;
67 virtual MGisects intersection(const MGFace& obj2)const;
68 virtual MGisects intersection(const MGShell& obj2)const;
69 
71 MGTopology* topology(){return this;};
72 const MGTopology* topology()const{return this;};
73 
74 virtual std::string whoami()const{return "Topology";};
75 
76 protected:
77 
80 virtual void WriteMembers(MGOfstream& buf) const;
81 
84 virtual void ReadMembers(MGIfstream& buf);
85 
86 };
87  // end of TOPO group
89 #endif
MGTopology * topology()
Return MGTopology pointer if this MGGel is an MGTopology, else return null.
Definition: Topology.h:71
Is an abstract class and the super class of MGPVertex and MGCellNB.
Definition: CellBase.h:38
MGCurve is an abstract class which represents a whole curve.
Definition: Curve.h:63
MGTransf represents a transformation of a space dimension.
Definition: Transf.h:35
virtual MGisects intersection(const MGObject &obj2) const =0
MGTopology is an abstract class which represents a whole Topology.
Definition: Topology.h:33
virtual std::string whoami() const
Definition: Topology.h:74
MGIfstream is a class to read the serialized data generated by MGOfstream.
Definition: Ifstream.h:30
virtual void WriteMembers(MGOfstream &buf) const
Write all member data.
Is an abstract class which represents a whole geometry and a topology.
Definition: Object.h:42
MGShell is a composition of MGFace's(trimmed surface).
Definition: Shell.h:32
Vector of a general n space dimension.
Definition: Vector.h:26
Defines a Box of any space dimendion.
Definition: Box.h:34
MGCell is a general cell that has bound.
Definition: Cell.h:35
MGFace is a trimmed surface.
Definition: Face.h:51
MGTopology(const MGTopology &topo)
Copy constructor.
Definition: Topology.h:42
MGSurface is an abstract class of 3D surface.
Definition: Surface.h:54
virtual void ReadMembers(MGIfstream &buf)
general transformation.
MGFSurface is an abstract class to provide the comman interfaces to MGFace and MGSurface.
Definition: FSurface.h:33
MGOfstream is a class to serialize all of the subclasses of MGGel.
Definition: Ofstream.h:31
MGComplex is a container of parameter cells and binder cells.
Definition: Complex.h:25
MGisects defines a vector of MGisect.
Definition: isects.h:44
const MGTopology * topology() const
Definition: Topology.h:72
virtual MGObject & operator=(const MGObject &obj2)
Definition: Object.h:60
MGMatrix is a matix of m by m, where m is the space dimension.
Definition: Matrix.h:30