66 bool _performGroupCullCheck;
70 bool _cullTestChildren;
76 virtual GLS_EXPORT
void onVertexchanged(
void);
78 Group& operator=(
const Group& ) DISTI_SPECIAL_MEM_FUN_DELETE;
79 Group(
const Group& that ) DISTI_SPECIAL_MEM_FUN_DELETE;
94 friend class GroupEditor;
189 GLS_EXPORT
explicit Group(
int generateInstance = FALSE );
195 GLS_EXPORT
Group(
const Group& group,
bool generateNames );
205 virtual GLS_EXPORT
~Group();
225 virtual GLS_EXPORT
void Draw(
void);
231 virtual GLS_EXPORT
bool Hit(
float x,
float y,
float z,
float scale,
const Vector& directionVector,
Vector *collisionPoint);
235 const Vector& logicalCoords,
237 const Vector& directionVector,
248 virtual GLS_EXPORT
void CalculateBoundingBox(
void);
254 virtual GLS_EXPORT
void Location(
const Vertex &v) DISTI_METHOD_OVERRIDE;
255 virtual GLS_EXPORT
void Location(
float x,
float y,
float z);
258 virtual GLS_EXPORT
void Translate(
float x,
float y,
float z);
261 virtual GLS_EXPORT
void Translate(
float transAmount[]);
270 virtual GLS_EXPORT
void GetExtents(
float &x,
float &y,
float &z,
float &x1,
float &y1,
float &z1);
285 virtual GLS_EXPORT
void Scale(
const float scale_x,
const float scale_y);
288 virtual GLS_EXPORT
void Scale(
float scale_x,
float scale_y,
float scale_z,
Vertex *anchor = NULL,
int handle = 0);
296 virtual GLS_EXPORT
void InsertObject(
DisplayObject *obj,
bool reparent=
true,
bool recalculateBoundingbox =
true,
int loc=-1);
310 virtual GLS_EXPORT
void ReorderObject(
unsigned int oldIndex,
unsigned int newIndex);
324 virtual GLS_EXPORT
void DeleteVertex(
unsigned int index);
332 virtual GLS_EXPORT
void InsertVertex(
unsigned int index);
347 virtual GLS_EXPORT
void LineWidth(
float width) DISTI_METHOD_OVERRIDE;
348 virtual GLS_EXPORT
float LineWidth(
void) DISTI_METHOD_OVERRIDE;
356 virtual GLS_EXPORT
int PolygonMode(
void) DISTI_METHOD_OVERRIDE;
357 virtual GLS_EXPORT
void PolygonMode(
int mode) DISTI_METHOD_OVERRIDE;
359 virtual GLS_EXPORT
void PolygonEnd(const
int mode) DISTI_METHOD_OVERRIDE;
360 virtual GLS_EXPORT
int PolygonEnd(
void) DISTI_METHOD_OVERRIDE;
362 virtual GLS_EXPORT
void Shading(const
int mode) DISTI_METHOD_OVERRIDE;
363 virtual GLS_EXPORT
int Shading(
void) DISTI_METHOD_OVERRIDE;
365 virtual GLS_EXPORT
void DepthTest(
unsigned char mode) DISTI_METHOD_OVERRIDE;
366 virtual GLS_EXPORT
int DepthTest(
void) DISTI_METHOD_OVERRIDE;
368 virtual GLS_EXPORT
void AntiAlias(
bool mode) DISTI_METHOD_OVERRIDE;
369 virtual GLS_EXPORT
bool AntiAlias(
void) DISTI_METHOD_OVERRIDE;
371 virtual GLS_EXPORT
void AlphaMode(
int mode) DISTI_METHOD_OVERRIDE;
372 virtual GLS_EXPORT
int AlphaMode(
void) DISTI_METHOD_OVERRIDE;
374 virtual GLS_EXPORT
void CullBackFace(const
bool mode) DISTI_METHOD_OVERRIDE;
375 virtual GLS_EXPORT
bool CullBackFace(
void) DISTI_METHOD_OVERRIDE;
378 virtual GLS_EXPORT
void LightingEnabled(
bool lighting) DISTI_METHOD_OVERRIDE;
383 virtual GLS_EXPORT
void SetBlendColor(const
glsColor &color);
388 virtual GLS_EXPORT
glsColor GetBlendColor(
void);
393 virtual GLS_EXPORT
void SetColor(const
glsColor &color);
398 virtual GLS_EXPORT
glsColor GetColor(
void);
403 virtual GLS_EXPORT
void SetFillColor(const
glsColor &color);
408 virtual GLS_EXPORT
glsColor GetFillColor(
void);
425 virtual GLS_EXPORT
void Calculate(
double time);
437 GLS_EXPORT CompatabilityListItem();
439 GLS_EXPORT CompatabilityListItem* Next();
441 GLS_EXPORT CompatabilityListItem* Prev();
445 static GLS_EXPORT
void RecalcCompatabilityList(
Group* whichGroup);
DisplayObject * FindNonRecursive(DisplayObject *obj)
Definition: display_frame.h:83
virtual int PolygonEnd(void)
virtual const Vertex & Location(void) const
unsigned int Count(void) const
Definition: group.h:166
virtual void InsertVertex(unsigned int index)
virtual float LineWidth(void)
virtual void GetTransformedExtents(Vector &min, Vector &max, const GlsMatrixType &matrix, bool resetMinMax=true)
virtual bool CullBackFace(void)
bool IsEmpty() const
Definition: group.h:178
virtual void InsertObject(DisplayObject *obj, bool reparent=true, bool recalculateBoundingbox=true, int loc=-1)
The disti::DynamicArray class. A templated array of objects capable of dynamically growing...
Class to contain current OpenGL view, projection and draw matrices.
Definition: util.h:281
void GrowBoundingBox(DisplayObject *obj)
virtual void Calculate(double time)
virtual int DepthTest(void)
virtual int TextureMagnificationFilter(void)
virtual glsColor GetBlendColor(void)
virtual void GetExtents(float &x, float &y, float &z, float &x1, float &y1, float &z1)
DisplayFrame * Parent(void) const
Definition: display.h:897
DisplayObject * Item(unsigned int index)
Definition: group.h:151
virtual int TextureMappingTechnique(void)
virtual int PolygonMode(void)
virtual DisplayObject * CloneObject(bool generateNames=false)
virtual void DeleteAllChildren()
virtual bool TextureRepeat(void)
DisplayObject * FirstObject()
virtual bool Hit(float x, float y, float z, float scale, const Vector &directionVector, Vector *collisionPoint)
virtual DisplayObject * Pick3D(const Vector &winLoc, const Vector &logicalCoords, float scale, const Vector &directionVector, Vector &collisionWinLoc, const OpenGLMatrices &drawnMatrices)
virtual void CopyGeometry(DisplayObject *src)
The disti::DisplayObject class and global enumerations.
virtual InterfaceListType * GetCppInterfaceDescription(InterfaceListType *addToThisList=NULL)
virtual int AlphaMode(void)
virtual void DeleteVertex(unsigned int index)
DisplayObjectPtr operator[](unsigned int index)
Definition: group.h:169
virtual void ReorderObject(unsigned int oldIndex, unsigned int newIndex)
virtual void PushObject(DisplayObject *obj)
virtual int Shading(void)
void Count(const unsigned int count)
Definition: dynamic_array.h:120
CompatabilityListItem * First()
virtual bool DeleteObject(DisplayObject *obj, bool recalculateBoundingbox=true)
virtual void PreDraw(const OpenGLMatrices ¤t, Culler &culler)
virtual int TextureMinificationFilter(void)
int Position(DisplayObject *obj)
CompatabilityListItem * Last()
bool CullTestChildren(void) const
Definition: group.h:160
DisplayObject * FindByName(const char *name)
void InitialGroupCount(unsigned int cnt)
virtual void InsertVertex(unsigned int index)
virtual void Translate(float x, float y, float z)
bool PerformGroupCullCheck(void) const
Definition: group.h:154
virtual bool AntiAlias(void)
virtual void GetCppInterfaceDescriptionFree(InterfaceListType *array)
virtual void Rotate(float angle, int axis=Z_AXIS)
char * InstanceName(void)
virtual bool LightingEnabled()
virtual void SetAvailableAttributes(unsigned int value)
Definition: gls_color.h:54
virtual void SetGroupLocation(const Vertex &v)
DisplayObject * LastObject(void)
virtual void DeleteVertex(unsigned int index)
virtual void CalculateTextureCoordinates(void)
DisplayObject * FindByName(DisplayObject *obj)
Definition: group.h:128
DisplayObject * FindByQualifiedName(const char *name)
void Scale(int handleBar, float px, float py, Vertex *anchor=NULL)
Definition: display.h:1111
virtual glsColor GetFillColor(void)
virtual int LineStipplePattern(void)
virtual void GetResources(std::ostream &outstr, GlsResourceFilter *filter=NULL)
virtual void TranslateVertices(float x, float y, float z)
virtual void Rotate(const Vector &orig, float angle, const Vector &axis)
virtual DisplayObject * FindByNameSameFrame(const char *name)
virtual glsColor GetColor(void)
virtual void SetFillColor(const glsColor &color)
Definition: gls_resources.h:50
virtual void SetColor(const glsColor &color)
Macros and helper code to determine what subset of C++11/14/17 is available.
Definition: bmpimage.h:46
virtual int LineStippleMultiplier(void)
virtual void AddAvailableAttributes(unsigned int availableAttributes)
DisplayObjectArray & Objects(void)
Definition: group.h:148
virtual void SetBlendColor(const glsColor &color)
virtual void CopyProperties(DisplayObject *src)
virtual DisplayObject * handle(DisplayEvent *ev)