9 #include "mg/Pvector.h"
10 #include "mg/Object.h"
12 #include "mg/AttribedGel.h"
56 MGGroup(
const TCHAR* file,
int& error);
92 const_iterator
begin()
const{
return m_gels.begin();}
93 iterator
begin(){
return m_gels.begin();}
127 bool empty()
const{
return m_gels.empty();};
130 const_iterator
end()
const{
return m_gels.end();};
131 iterator
end(){
return m_gels.end();};
135 iterator
erase(iterator x){
return m_gels.erase(x);};
139 iterator
erase(iterator first, iterator last){
return m_gels.erase(first,last);};
162 int getMemberGroupNumber()
const;
166 const MGGroup* get_i_th_MemberGroup(
int i)
const;
167 MGGroup* get_i_th_MemberGroup(
int i);
172 const_iterator search_by_id(
MGGEL_TID tid)
const;
189 const MGGroup*& groupIncluding,
214 iterator
insert(iterator it,
MGGel* x){
return m_gels.insert(it,x);};
222 int make_file(
const TCHAR* file);
234 void delete_displayList(
239 void delete_displayList(
240 const_iterator first, const_iterator last
244 void delete_displayList(
245 const std::vector<const MGGel*>& gels_to_delete
255 int max_size()
const{
return int(m_gels.max_size());};
258 int num_of_objects()
const;
263 int SubordinateEntitySwitch=0
267 virtual std::ostream&
out(std::ostream&)
const;
279 void push_back(
MGGel* x);
290 void push_front(
MGGel* x);
293 const_reverse_iterator
rbegin()
const{
return m_gels.rbegin();};
294 reverse_iterator
rbegin(){
return m_gels.rbegin();};
297 const_reverse_iterator
rend()
const{
return m_gels.rend();};
298 reverse_iterator
rend(){
return m_gels.rend();};
302 iterator
release(iterator i){
return m_gels.release(i);};
341 int size()
const{
return int(m_gels.size());};
344 void getSmallGroupData(
345 std::vector<MGObject*>& outputObjects
350 std::vector<MGObject*>& allObjects
356 template<
class Traits>
357 void sort(Traits _Comp){m_gels.sort(_Comp);}
373 virtual std::string
whoami()
const{
return "Group";};
391 void search_by_nameSub(
MGTransf represents a transformation of a space dimension.
Definition: Transf.h:35
reverse_iterator rend()
Definition: Group.h:298
MGGLAttrib is an abstract class which defines the enum of undefined or disabled.
Definition: GLAttrib.h:35
virtual int out_to_IGES(MGIgesOfstream &igesfile, int SubordinateEntitySwitch=0) const
Definition: Gel.h:93
int size() const
Return the number of items that are in the list.
Definition: Group.h:341
virtual bool operator<(const MGGel &gel2) const
virtual void WriteMembers(MGOfstream &buf) const
Write all member data.
virtual void display_curvatures(mgSysGL &sgl, double scale, int density, bool use_radius) const
Definition: Gel.h:195
iterator erase(iterator first, iterator last)
Definition: Group.h:139
virtual std::string whoami() const
Definition: Group.h:373
Defines List of newed object pointers.
Definition: Plist.h:31
reverse_iterator rbegin()
Definition: Group.h:294
MGIfstream is a class to read the serialized data generated by MGOfstream.
Definition: Ifstream.h:30
virtual int manifold_dimension() const
Definition: Group.h:231
void reverse()
reverse sequence.
Definition: Group.h:317
virtual MGAppearance * ensure_appearance()=0
iterator insert(iterator it, MGGel *x)
Definition: Group.h:214
bool empty() const
Definition: Group.h:127
MGGel * front()
Definition: Group.h:197
Is an abstract class which represents a whole geometry and a topology.
Definition: Object.h:42
iterator end()
Definition: Group.h:131
Vector of a general n space dimension.
Definition: Vector.h:26
const_iterator end() const
Return const_iterator at the end of MGGel.
Definition: Group.h:130
MGContext defines the attributes of a document.
Definition: Context.h:33
Defines a Box of any space dimendion.
Definition: Box.h:34
virtual void display_break_points(mgSysGL &sgl) const
Definition: Gel.h:193
void clear()
clear list, that is, erase(delete) all the elements in the MGGel.
Definition: Group.h:100
MGGel is an abstract class which represents a group element.
Definition: Gel.h:53
Is an abstract class which provides interfaces of MGGel that has MGAppearance.
Definition: AttribedGel.h:32
Defines MGAttribedGel's Name data.
Definition: Name.h:29
virtual void transform(const MGVector &v)
Transform the gel by the argument.
Definition: Gel.h:176
virtual void set_appearance(const MGAppearance &appr2)=0
const_iterator begin() const
Return const_iterator at the beginning of list.
Definition: Group.h:92
MGPlist< MGGel >::const_reverse_iterator const_reverse_iterator
Definition: Group.h:42
virtual MGAttribedGel & operator=(const MGAttribedGel &gel2)
iterator begin()
Definition: Group.h:93
MGPlist< MGGel >::iterator iterator
別名定義
Definition: Group.h:39
const MGGroup * group() const
Definition: Group.h:201
virtual MGAppearance * appearance()=0
VIEWMODE
Definition: MGCL.h:271
virtual std::ostream & out(std::ostream &) const =0
Output virtual function.
virtual const MGObject * includes_object() const =0
Test if this gel includes an object.
const MGGel * front() const
Definition: Group.h:196
void sort()
Equivalent to call std::list::sort().
Definition: Group.h:354
MGOfstream is a class to serialize all of the subclasses of MGGel.
Definition: Ofstream.h:31
MGGel * removeAt(iterator x)
Definition: Group.h:314
MGOgesIfstream write out to *.iges file, transforming MGCL objects to IGES objects.
Definition: IgesOfstream.h:26
const_reverse_iterator rend() const
Return const_reverse_iterator at the end of list.
Definition: Group.h:297
friend class MGGroup
Definition: AttribedGel.h:33
int max_size() const
Returns the size of maximum size.
Definition: Group.h:255
virtual void drawAttrib(mgVBO &vbo, bool no_color=false) const
Process of draw or render attributes.
void pop_front()
pop first element.
Definition: Group.h:273
iterator erase(iterator x)
Definition: Group.h:135
virtual void remove_appearance()=0
Remove the MGAppearance of this MGAttribedGel.
MGGroup is a class which constains MGGel elements.
Definition: Group.h:35
iterator release(iterator i)
Definition: Group.h:302
A container class to hold MGGLAttrib objects.
Definition: Appearance.h:33
void pop_back()
pop last element.
Definition: Group.h:270
const MGGel * back() const
Judge if the display list for vmode is made or not.
Definition: Group.h:88
MGPlist< MGGel >::const_iterator const_iterator
Definition: Group.h:40
virtual long identify_type() const
Return This object's typeID.
Definition: Group.h:204
MGGel * back()
Definition: Group.h:89
virtual void ReadMembers(MGIfstream &buf)
Read all member data.
const_reverse_iterator rbegin() const
Return const_reverse_iterator at the beginning of list.
Definition: Group.h:293
MGGroup * group()
Return MGGroup pointer if this MGGel is an MGGroup, else return null.
Definition: Group.h:200
mgSysGL is a class to provide a facility to draw temporal pictures.
Definition: sysGL.h:26
OpenGL 4 用描画のためのクラス, in other words, display list.
Definition: VBO.h:76
Defines Vector of newed object pointers.
Definition: Pvector.h:27
virtual void display_control_polygon(mgSysGL &sgl) const
Definition: Gel.h:194
virtual MGGel * clone() const =0
void sort(Traits _Comp)
Definition: Group.h:357
virtual void make_display_list(MGCL::VIEWMODE vmode=MGCL::DONTCARE) const
Make a display list of this gel.
Definition: Gel.h:112
MGPlist< MGGel >::reverse_iterator reverse_iterator
Definition: Group.h:41
MGAttrib is an abstract class that defines attribute elements of MGGel.
Definition: Attrib.h:28
virtual void display_arrows(mgSysGL &sgl) const
Definition: Gel.h:192
MGMatrix is a matix of m by m, where m is the space dimension.
Definition: Matrix.h:30