19 #ifndef OST_GFX_ENTITY_HH
20 #define OST_GFX_ENTITY_HH
27 #include <boost/ptr_container/ptr_map.hpp>
48 namespace ost {
namespace gfx {
98 virtual void RefreshVA();
121 virtual void OnRenderModeChange();
141 virtual void SetVisible(
const String& sel,
bool visible);
144 virtual void SetOpacity(
float f);
146 virtual void SetOutlineWidth(
float f);
147 virtual void SetOutlineExpandFactor(
float f);
148 virtual void SetOutlineExpandColor(
const Color& c);
149 virtual void SetClipOffset(
float f);
171 void UpdatePositions();
183 void SetColorForAtom(
const Color& col,
187 void ColorByElement();
190 void ColorByElement(
const String& selection);
196 void ColorByChain(
const String& selection);
214 void SetBlur(
bool f);
218 void SetBlurFactors(
float bf1,
float bf2);
231 const Gradient& g,
float minv,
float maxv);
236 const Gradient& g,
float minv,
float maxv);
239 void ColorBy(
const String& prop,
241 float minv,
float maxv,
245 void ColorBy(
const String& prop,
247 float minv,
float maxv,
251 void DetailColorBy(
const String& prop,
253 float minv,
float maxv,
257 void ColorBy(
const String& prop,
262 void ColorBy(
const String& prop,
267 void ColorBy(
const String& prop,
269 float min,
float max,
273 void ColorBy(
const String& prop,
278 void RadiusBy(
const String& prop,
279 float rmin,
float rmax,
280 float vmin,
float vmax,
283 void RadiusBy(
const String& prop,
284 float rmin,
float rmax,
287 void ResetRadiusBy();
296 void CleanColorOps();
297 void ReapplyColorOps();
314 bool HasSelection()
const;
316 void SetSeqHack(
bool b);
317 bool GetSeqHack()
const;
323 virtual void CustomPreRenderGL(
bool flag);
324 virtual void CustomRenderPov(
PovState& pov);
325 void UpdateSelection();
326 bool UpdateIfNeeded()
const;
327 void CacheBoundingBox()
const;
333 mutable bool update_view_;
342 void set_static_max_rad();
343 void do_update_view()
const;
345 typedef boost::ptr_map<RenderMode::Type, impl::EntityRenderer> RendererMap;
346 mutable RendererMap renderer_;
352 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.