OpenStructure
|
#include <gfx_object.hh>
Inherits GfxObjBase.
Inherited by Entity, GfxTestObj, MapIso, MapSlab, PrimList, PyGfxObj, and Surface.
Public Member Functions | |
GfxObj (const String &name) | |
virtual GfxNodeP | Copy () const |
virtual void | DeepSwap (GfxObj &go) |
virtual void | RenderGL (RenderPass pass) |
virtual void | RenderPov (PovState &pov) |
virtual void | Export (Exporter *ex) |
virtual void | Apply (GfxNodeVisitor &v, GfxNodeVisitor::Stack st) |
virtual int | GetType () const |
virtual void | SetMatAmb (const Color &c) |
virtual void | SetMatDiff (const Color &c) |
virtual void | SetMatSpec (const Color &c) |
virtual void | SetMatShin (float s) |
virtual void | SetMatEmm (const Color &c) |
virtual void | ContextSwitch () |
virtual void | SetRenderMode (RenderMode::Type m) |
virtual RenderMode::Type | GetRenderMode () const |
virtual geom::Vec3 | GetCenter () const |
virtual void | SetLineWidth (float w) |
virtual void | SetPolyMode (unsigned int m) |
virtual void | SetAALines (bool f) |
virtual void | SetLineHalo (float f) |
virtual void | SetOutline (bool f) |
virtual bool | GetOutline () const |
virtual void | SetOutlineMode (int m) |
virtual int | GetOutlineMode () const |
virtual void | SetOutlineWidth (float f) |
virtual float | GetOutlineWidth () const |
virtual void | SetOutlineExpandFactor (float f) |
virtual float | GetOutlineExpandFactor () const |
virtual void | SetOutlineExpandColor (const Color &c) |
virtual Color | GetOutlineExpandColor () const |
virtual void | SetOpacity (float f) |
virtual float | GetOpacity () const |
virtual void | SetSolid (bool f) |
virtual bool | GetSolid () const |
virtual void | SetSolidColor (const Color &c) |
virtual Color | GetSolidColor () const |
virtual void | ColorBy (const mol::EntityView &ev, const String &prop, const Gradient &g, float minv, float maxv) |
virtual geom::AlignedCuboid | GetBoundingBox (bool use_tf=false) const |
virtual void | ProcessLimits (geom::Vec3 &minc, geom::Vec3 &maxc, const geom::Transform &tf) const |
virtual void | CustomRenderGL (RenderPass pass) |
virtual void | CustomPreRenderGL (bool rebuild) |
virtual void | InitGL () |
virtual void | CustomRenderPov (PovState &pov) |
virtual bool | OnSelect (const geom::Line3 &l, geom::Vec3 &result, float zlim, bool pick_flag) |
virtual void | OnInput (const InputEvent &e) |
virtual void | OnRenderModeChange () |
virtual void | OnGLCleanup () |
void | Clear () |
const geom::Transform & | GetTF () const |
void | SetTF (const geom::Transform &tf) |
void | AddLabel (const String &s, const geom::Vec3 &pos, const Color &col, float psize) |
void | AddLabel (const String &s, const geom::Vec3 &pos, const Color &col) |
void | AddLabel (const String &s, const geom::Vec3 &pos, float psize) |
void | AddLabel (const String &s, const geom::Vec3 &pos) |
void | ClearLabels () |
void | FlagRebuild () |
void | FlagRefresh () |
bool | GetAALines () const |
float | GetLineWidth () const |
float | GetLineHalo () const |
void | SetNormalSmoothFactor (float smoothf) |
float | GetNormalSmoothFactor () const |
Material | GetMaterial () const |
void | SetMaterial (const Material &m) |
void | SmoothVertices (float smoothf) |
void | GLCleanup () |
void | Debug (unsigned int flags) |
Public Member Functions inherited from GfxObjBase | |
GfxObjBase (const String &name) | |
Public Member Functions inherited from GfxNode | |
GfxNode (const String &name) | |
virtual | ~GfxNode () |
virtual void | DeepSwap (GfxNode &n) |
String | GetName () const |
void | RemoveAll () |
void | Rename (const String &name) |
void | Add (GfxObjP obj) |
bool | IsNameAvailable (const String &name) const |
void | Remove (GfxObjP obj) |
void | Add (GfxNodeP node) |
void | Remove (GfxNodeP node) |
void | Remove (const String &name) |
size_t | GetChildCount () const |
void | Hide () |
void | Show () |
bool | IsVisible () const |
bool | IsAttachedToScene () const |
gfx::GfxNodeP | GetParent () const |
const GfxNodeVector & | GetChildren () const |
GfxNodeVector & | GetChildren () |
Static Public Member Functions | |
static Color | Ele2Color (const String &ele) |
Protected Member Functions | |
void | PreRenderGL (bool flag) |
void | AppendColorOp (gfx::ColorOp *op) |
void | CleanColorOps () |
void | ReapplyColorOps () |
void | render_labels () const |
void | render_depth_only () |
Protected Attributes | |
IndexedVertexArray | va_ |
RenderMode::Type | render_mode_ |
unsigned int | debug_flags_ |
geom::Transform | transform_ |
bool | rebuild_ |
bool | refresh_ |
float | line_width_ |
unsigned int | poly_mode_ |
bool | aalines_flag_ |
float | line_halo_ |
Material | mat_ |
unsigned int | mat_dlist_ |
bool | mat_update_ |
float | opacity_ |
float | smoothf_ |
bool | outline_flag_ |
int | outline_mode_ |
bool | solid_ |
Color | solid_color_ |
boost::ptr_vector< gfx::ColorOp > | c_ops_ |
TextPrimList | labels_ |
bool | use_occlusion_ |
main class for all graphic objects
Definition at line 50 of file gfx_object.hh.
void AddLabel | ( | const String & | s, |
const geom::Vec3 & | pos, | ||
const Color & | col, | ||
float | psize | ||
) |
void AddLabel | ( | const String & | s, |
const geom::Vec3 & | pos, | ||
const Color & | col | ||
) |
void AddLabel | ( | const String & | s, |
const geom::Vec3 & | pos, | ||
float | psize | ||
) |
void AddLabel | ( | const String & | s, |
const geom::Vec3 & | pos | ||
) |
|
protected |
|
virtual |
Reimplemented from GfxNode.
void Clear | ( | ) |
removes all graphical elements
Reimplemented in PrimList.
void ClearLabels | ( | ) |
|
virtual |
color each component based on the gradient-mapped property of the given entity
Implements GfxObjBase.
|
virtual |
rendering context switch, some things need to be regenerated
Implements GfxObjBase.
|
virtual |
|
virtual |
|
virtual |
void Debug | ( | unsigned int | flags | ) |
|
virtual |
void FlagRebuild | ( | ) |
void FlagRefresh | ( | ) |
|
inline |
Definition at line 194 of file gfx_object.hh.
|
virtual |
returns the bounding box of this object
The bounding box, i.e. the left-bottom-front and the right-top-back corner of the object, is obtained with this method. The single boolean parameter denotes whether to return local coordinates or global scene coordinates; global scene coordinates are local coordinates with the object's transformation (if present) applied. The default is false, i.e. return local coordinates.
Reimplemented in Entity, MapSlab, PrimList, Surface, and MapIso.
|
virtual |
get geometric center
Implements GfxObjBase.
Reimplemented in PrimList, MapSlab, MapIso, and GfxTestObj.
|
inline |
Definition at line 196 of file gfx_object.hh.
|
inline |
Definition at line 195 of file gfx_object.hh.
Material GetMaterial | ( | ) | const |
float GetNormalSmoothFactor | ( | ) | const |
|
inlinevirtual |
returns a value smaller than 1.0 if transparency is used in this object
Implements GfxObjBase.
Reimplemented in Entity.
Definition at line 90 of file gfx_object.hh.
|
inlinevirtual |
|
virtual |
get current outline color (mode 3)
Implements GfxObjBase.
|
virtual |
get current outline expand factor (mode 3)
Implements GfxObjBase.
|
inlinevirtual |
|
virtual |
get current outline width
Implements GfxObjBase.
|
virtual |
current render mode
Implements GfxObjBase.
|
inlinevirtual |
Implements GfxObjBase.
Definition at line 92 of file gfx_object.hh.
|
inlinevirtual |
Implements GfxObjBase.
Definition at line 94 of file gfx_object.hh.
const geom::Transform& GetTF | ( | ) | const |
get transform
|
virtual |
Reimplemented from GfxNode.
void GLCleanup | ( | ) |
|
virtual |
|
virtual |
|
virtual |
Reimplemented in MapIso.
|
virtual |
Reimplemented in Entity.
|
protected |
|
virtual |
adjust minimum and maximum extent based on graphical object
this routine will adjust the provided minimum and maximum points based on the vertices of the underlying graphical representation, combining the given Transform with the object transform.
If derived classes do not implement this method then the limits will be adjusted based on the Cuboid returned by GetBoundingBox(true)
Reimplemented in PrimList.
|
protected |
|
protected |
|
virtual |
Reimplemented from GfxNode.
|
virtual |
turn on sophisticated line anti-aliasing, requires shader
Implements GfxObjBase.
|
virtual |
turn on line halo of given strength
Implements GfxObjBase.
|
virtual |
|
virtual |
material ambient color
Implements GfxObjBase.
|
virtual |
material diffuse color
Implements GfxObjBase.
|
virtual |
material emmissive color
Implements GfxObjBase.
void SetMaterial | ( | const Material & | m | ) |
|
virtual |
material shininess
Implements GfxObjBase.
|
virtual |
material specular color
Implements GfxObjBase.
void SetNormalSmoothFactor | ( | float | smoothf | ) |
|
virtual |
|
virtual |
turn outline rendering on or off
Implements GfxObjBase.
|
virtual |
|
virtual |
set outline expansion factor (mode 3) this scales with resolution
Implements GfxObjBase.
Reimplemented in Entity.
|
virtual |
set outline mode, 1, 2 or 3
Implements GfxObjBase.
|
virtual |
set outline width in pixels (modes 1 + 2) this does not scale with resolution
Implements GfxObjBase.
Reimplemented in Entity.
|
virtual |
set polygon mode
Implements GfxObjBase.
|
virtual |
|
virtual |
Implements GfxObjBase.
|
virtual |
Implements GfxObjBase.
void SetTF | ( | const geom::Transform & | tf | ) |
set transform
void SmoothVertices | ( | float | smoothf | ) |
|
protected |
Definition at line 238 of file gfx_object.hh.
|
protected |
Definition at line 253 of file gfx_object.hh.
|
protected |
Definition at line 231 of file gfx_object.hh.
|
protected |
Definition at line 255 of file gfx_object.hh.
|
protected |
Definition at line 239 of file gfx_object.hh.
|
protected |
Definition at line 236 of file gfx_object.hh.
|
protected |
Definition at line 241 of file gfx_object.hh.
|
protected |
Definition at line 242 of file gfx_object.hh.
|
protected |
Definition at line 243 of file gfx_object.hh.
|
protected |
Definition at line 245 of file gfx_object.hh.
|
protected |
Definition at line 247 of file gfx_object.hh.
|
protected |
Definition at line 248 of file gfx_object.hh.
|
protected |
Definition at line 237 of file gfx_object.hh.
|
protected |
Definition at line 234 of file gfx_object.hh.
|
protected |
Definition at line 235 of file gfx_object.hh.
|
protected |
Definition at line 230 of file gfx_object.hh.
|
protected |
Definition at line 246 of file gfx_object.hh.
|
protected |
Definition at line 250 of file gfx_object.hh.
|
protected |
Definition at line 251 of file gfx_object.hh.
|
protected |
Definition at line 233 of file gfx_object.hh.
|
protected |
Definition at line 257 of file gfx_object.hh.
|
protected |
Definition at line 229 of file gfx_object.hh.