19 #ifndef OST_GFX_ENTITY_HH
20 #define OST_GFX_ENTITY_HH
27 #include <boost/ptr_container/ptr_map.hpp>
42 #endif //OST_IMG_ENABLED
51 namespace ost {
namespace gfx {
101 virtual void RefreshVA();
124 virtual void OnRenderModeChange();
144 virtual void SetVisible(
const String& sel,
bool visible);
147 virtual void SetOpacity(
float f);
149 virtual void SetOutlineWidth(
float f);
150 virtual void SetOutlineExpandFactor(
float f);
151 virtual void SetOutlineExpandColor(
const Color& c);
152 virtual void SetClipOffset(
float f);
174 void UpdatePositions();
186 void SetColorForAtom(
const Color& col,
190 void ColorByElement();
193 void ColorByElement(
const String& selection);
199 void ColorByChain(
const String& selection);
217 void SetBlur(
bool f);
221 void SetBlurFactors(
float bf1,
float bf2);
234 const Gradient& g,
float minv,
float maxv);
240 const Gradient& g,
float minv,
float maxv);
244 void ColorBy(
const String& prop,
246 float minv,
float maxv,
250 void ColorBy(
const String& prop,
252 float minv,
float maxv,
256 void DetailColorBy(
const String& prop,
258 float minv,
float maxv,
262 void ColorBy(
const String& prop,
267 void ColorBy(
const String& prop,
272 void ColorBy(
const String& prop,
274 float min,
float max,
278 void ColorBy(
const String& prop,
283 void RadiusBy(
const String& prop,
284 float rmin,
float rmax,
285 float vmin,
float vmax,
288 void RadiusBy(
const String& prop,
289 float rmin,
float rmax,
292 void ResetRadiusBy();
305 void CleanColorOps();
306 void ReapplyColorOps();
323 bool HasSelection()
const;
325 void SetSeqHack(
bool b);
326 bool GetSeqHack()
const;
332 virtual void CustomPreRenderGL(
bool flag);
333 virtual void CustomRenderPov(
PovState& pov);
334 void UpdateSelection();
335 bool UpdateIfNeeded()
const;
336 void CacheBoundingBox()
const;
342 mutable bool update_view_;
351 void set_static_max_rad();
352 void do_update_view()
const;
354 typedef boost::ptr_map<RenderMode::Type, impl::EntityRenderer> RendererMap;
355 mutable RendererMap renderer_;
361 mutable bool needs_update_;
std::vector< RenderMode::Type > RenderModeTypes
main class for all graphic objects
graphical rendering of mol::EntityHandle entites
#define DLLEXPORT_OST_GFX
Three dimensional vector class, using Real precision.
boost::shared_ptr< RenderOptions > RenderOptionsPtr
virtual float GetOpacity() const
returns a value smaller than 1.0 if transparency is used in this object
Manage shared instances of images.