6 #ifndef _MGAppearance_HH_
7 #define _MGAppearance_HH_
12 #include "mgGL/RenderAttr.h"
57 iterator
begin(){
return m_glattribs.begin();};
58 const_iterator
begin()
const{
return m_glattribs.begin();};
59 void clear(){m_glattribs.clear();};
60 bool empty()
const{
return m_glattribs.empty();};
61 iterator
end(){
return m_glattribs.end();};
62 const_iterator
end()
const{
return m_glattribs.end();};
67 int size()
const{
return m_glattribs.size();};
75 bool can_be_removed()
const;
96 iterator
erase(iterator i){
return m_glattribs.erase(i);};
99 int get_draw_attrib_mask()
const;
100 int get_render_attrib_mask()
const;
117 void render(
mgVBO& vbo)
const;
124 const_iterator search(
const MGGLAttrib* atr)
const;
125 const_iterator search_by_id(
MGGEL_TID tid)
const;
138 void set_color(
const MGColor& color);
139 void set_color(
const float color[4]);
140 void set_color(
float red,
float green,
float blue,
float alpha=1.);
145 void set_light_disabled();
146 void set_light_enabled();
153 const float ambient[3],
154 const float diffuse[3],
155 const float specular[3],
156 const float emission[3],
158 float transparency=0.
165 void set_back_material(
166 const float ambient[3],
167 const float diffuse[3],
168 const float specular[3],
169 const float emission[3],
171 float transparency=0.
179 void setLineStipple(
short int factor,
unsigned short pattern);
181 void setLineWidth(
float width);
183 virtual std::string
whoami()
const{
return "Appearance";};
197 iterator insert(iterator i,
MGAttrib* atr){
return m_glattribs.
insert(i,atr);};
204 #endif //#ifndef _MGAppearance_HH_
virtual mgVBO * dlist_name() const
Definition: Appearance.h:89
iterator end()
Definition: Appearance.h:61
MGGroup::const_iterator const_iterator
Definition: Appearance.h:38
virtual std::string whoami() const
Definition: Appearance.h:183
bool m_no_display
True if not to display, false if to display.
Definition: Appearance.h:188
virtual MGAttrib & operator=(const MGAttrib &gel2)
Definition: Attrib.h:37
void push_back(MGGel *x)
push element x at the end.
MGGLAttrib is an abstract class which defines the enum of undefined or disabled.
Definition: GLAttrib.h:35
MGAttrib * front()
Definition: Appearance.h:63
int size() const
Definition: Appearance.h:67
virtual bool operator<(const MGGel &gel2) const
bool empty() const
Definition: Appearance.h:60
const MGAttrib * back() const
Definition: Appearance.h:56
bool no_display() const
Test this is no_display MGAppearance.
Definition: Appearance.h:110
RENDERSIDE
Definition: RenderAttr.h:32
const MGAttrib * front() const
Definition: Appearance.h:64
MGIfstream is a class to read the serialized data generated by MGOfstream.
Definition: Ifstream.h:30
virtual void ReadMembers(MGIfstream &buf)
Read all member data.
iterator erase(iterator i)
Definition: Appearance.h:96
iterator insert(iterator it, MGGel *x)
Definition: Group.h:214
iterator begin()
Definition: Appearance.h:57
MGAttrib * back()
Definition: Appearance.h:55
MGColor defines the OpenGL color (R,G,B,A).
Definition: Color.h:26
MGLight is an abstract base class for light sources.
Definition: Light.h:27
virtual std::ostream & out(std::ostream &) const =0
Output virtual function.
MGGel is an abstract class which represents a group element.
Definition: Gel.h:53
const_iterator begin() const
Definition: Appearance.h:58
MGPlist< MGGel >::iterator iterator
別名定義
Definition: Group.h:39
VIEWMODE
Definition: MGCL.h:271
const_iterator end() const
Definition: Appearance.h:62
int manifold_dimension() const
Definition: Appearance.h:107
MGOfstream is a class to serialize all of the subclasses of MGGel.
Definition: Ofstream.h:31
long identify_type() const
Return This object's typeID.
Definition: Appearance.h:103
virtual void WriteMembers(MGOfstream &buf) const
Write all member data.
void pop_back()
Definition: Appearance.h:65
void set_no_display()
Definition: Appearance.h:143
bool displayList_is_made(MGCL::VIEWMODE vmode) const
Judge if the display list for vmode is made or not.
Definition: Appearance.h:92
MGGroup is a class which constains MGGel elements.
Definition: Group.h:35
A container class to hold MGGLAttrib objects.
Definition: Appearance.h:33
MGPlist< MGGel >::const_iterator const_iterator
Definition: Group.h:40
void clear()
Definition: Appearance.h:59
void pop_front()
Definition: Appearance.h:66
MGAppearance()
Definition: Appearance.h:40
MGGroup::iterator iterator
Definition: Appearance.h:37
OpenGL 4 用描画のためのクラス, in other words, display list.
Definition: VBO.h:76
void push_front(MGGel *x)
Defines Vector of newed object pointers.
Definition: Pvector.h:27
virtual MGGel * clone() const =0
virtual void drawAttrib(mgVBO &vbo, bool no_color=false) const
draw attribute data.
Definition: Gel.h:106
void set_display()
Definition: Appearance.h:142
MGAttrib is an abstract class that defines attribute elements of MGGel.
Definition: Attrib.h:28