9 #include "mg/Pvector.h"
10 #include "mg/drawParam.h"
12 #include "mg/Position.h"
13 #include "mg/isects.h"
14 #include "mg/AttribedGel.h"
72 virtual std::ostream&
out(std::ostream&)
const;
81 virtual const MGBox& box()
const=0;
89 virtual void drawWire(
98 virtual void draw3DVertex(
mgVBO& vbo)
const=0;
118 bool has_common(
const MGObject& obj2)
const;
virtual void transform(const MGMatrix &mat)
scaling.
Definition: Object.h:167
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
const MGAppearance * appearance() const
Definition: Object.h:78
MGPoint represents one dimensional manifold, a point in a space.
Definition: Point.h:28
A vector of mgTL2Triangle's.
Definition: TL2Triangles.h:25
virtual void WriteMembers(MGOfstream &buf) const
Write all member data.
MGTopology is an abstract class which represents a whole Topology.
Definition: Topology.h:33
MGIfstream is a class to read the serialized data generated by MGOfstream.
Definition: Ifstream.h:30
virtual MGAppearance * ensure_appearance()=0
Is an abstract class which represents a whole geometry and a topology.
Definition: Object.h:42
MG_DLL_DECLR MGVector & operator*=(MGVector &v, const MGMatrix &m)
MGShell is a composition of MGFace's(trimmed surface).
Definition: Shell.h:32
Vector of a general n space dimension.
Definition: Vector.h:26
MGGeometry is an abstract class which represents a whole geometry.
Definition: Geometry.h:36
virtual MGFSurface * fsurface()
Definition: Object.h:159
Defines a Box of any space dimendion.
Definition: Box.h:34
Defines parameters to draw MGObject, maily to approximate by lines and facets.
Definition: drawParam.h:53
MGFace is a trimmed surface.
Definition: Face.h:51
double span_length_wire() const
Definition: drawParam.h:93
virtual MGPosition pick_closest(const MGStraight &sl) const
Definition: Object.h:146
MGStraight is a curve of any space dimension, represent a straight line.
Definition: Straight.h:49
Is an abstract class which provides interfaces of MGGel that has MGAppearance.
Definition: AttribedGel.h:32
virtual void set_appearance(const MGAppearance &appr2)=0
virtual void transform(const MGTransf &tr)
matrix transformation.
Definition: Object.h:168
Represent a positional data.
Definition: Position.h:28
virtual const MGObject * object() const
Definition: Object.h:155
MGSurface is an abstract class of 3D surface.
Definition: Surface.h:54
virtual void transform(const MGVector &v)
Transform the gel by the argument.
Definition: Object.h:165
ELEMENT_TARGET
Definition: VBO.h:84
const MGObject * includes_object() const
Test if this gel includes an object.
Definition: Object.h:121
VIEWMODE
Definition: MGCL.h:271
virtual std::ostream & out(std::ostream &) const =0
Output virtual function.
virtual const MGFSurface * fsurface() const
Get the MGFSurface pointer if this is MGSurface or MGFace.
Definition: Object.h:158
MGFSurface is an abstract class to provide the comman interfaces to MGFace and MGSurface.
Definition: FSurface.h:33
virtual MGisects intersection(const MGPoint &obj2) const
Definition: Object.h:135
MGOfstream is a class to serialize all of the subclasses of MGGel.
Definition: Ofstream.h:31
virtual void shade(mgVBO &vbo, const MGDrawParam ¶, mgVBO::ELEMENT_TARGET target=mgVBO::SHADING) const
Shade the object in world coordinates.
Definition: Object.h:101
virtual void remove_appearance()=0
Remove the MGAppearance of this MGAttribedGel.
A container class to hold MGGLAttrib objects.
Definition: Appearance.h:33
MGisects defines a vector of MGisect.
Definition: isects.h:44
MGAppearance * appearance()
Definition: Object.h:77
virtual void ReadMembers(MGIfstream &buf)
Read all member data.
OpenGL 4 用描画のためのクラス, in other words, display list.
Definition: VBO.h:76
virtual MGGel * clone() const =0
virtual MGObject & operator=(const MGObject &obj2)
Definition: Object.h:60
virtual void make_display_list(MGCL::VIEWMODE vmode=MGCL::DONTCARE) const
Make a display list of this gel.
Definition: Gel.h:112
friend class MGObject
Definition: AttribedGel.h:34
MGObject * includes_object()
Test if this gel includes an object.
Definition: Object.h:123
virtual MGObject * object()
Return MGObject pointer if this MGGel is an MGObject, else return null.
Definition: Object.h:154
virtual void transform(double scale)
translation
Definition: Object.h:166
MGMatrix is a matix of m by m, where m is the space dimension.
Definition: Matrix.h:30