19 #ifndef OST_GFX_OBJ_BASE_HH
20 #define OST_GFX_OBJ_BASE_HH
41 namespace ost {
namespace gfx {
57 virtual void SetMatAmb(
const Color& c) = 0;
59 virtual void SetMatDiff(
const Color& c) = 0;
61 virtual void SetMatSpec(
const Color& c) = 0;
63 virtual void SetMatShin(
float s) = 0;
65 virtual void SetMatEmm(
const Color& c) = 0;
68 virtual void ContextSwitch() = 0;
79 virtual void SetLineWidth(
float w) = 0;
82 virtual void SetPolyMode(
unsigned int m) = 0;
85 virtual void SetAALines(
bool f) = 0;
88 virtual void SetLineHalo(
float f) = 0;
91 virtual void SetOutline(
bool f) = 0;
93 virtual bool GetOutline()
const = 0;
95 virtual void SetOutlineMode(
int m) = 0;
97 virtual int GetOutlineMode()
const = 0;
100 virtual void SetOutlineWidth(
float f) = 0;
102 virtual float GetOutlineWidth()
const = 0;
105 virtual void SetOutlineExpandFactor(
float f) = 0;
107 virtual float GetOutlineExpandFactor()
const = 0;
109 virtual void SetOutlineExpandColor(
const Color& c) = 0;
111 virtual Color GetOutlineExpandColor()
const = 0;
114 virtual void SetOpacity(
float f) = 0;
116 virtual float GetOpacity()
const = 0;
118 virtual void SetSolid(
bool f) = 0;
119 virtual bool GetSolid()
const = 0;
120 virtual void SetSolidColor(
const Color& c) = 0;
121 virtual Color GetSolidColor()
const = 0;
123 virtual void SetClip(
bool f) = 0;
124 virtual bool GetClip()
const = 0;
125 virtual void SetClipPlane(
const geom::Vec4&) = 0;
127 virtual void SetClipOffset(
float f) = 0;
128 virtual float GetClipOffset()
const = 0;
134 const Gradient& g,
float minv,
float maxv) = 0;
139 const Gradient& g,
float minv,
float maxv) = 0;
#define DLLEXPORT_OST_GFX
main interface for all graphic objects, both in C++ and Python
Three dimensional vector class, using Real precision.
GfxObjBase(const String &name)
Manage shared instances of images.