40 #ifndef INCLUDED_DISTI_GROUP_H 
   41 #define INCLUDED_DISTI_GROUP_H 
   64     bool _performGroupCullCheck;
 
   68     bool _cullTestChildren;
 
   73     virtual GLS_EXPORT 
void onVertexchanged( 
void );
 
   75     Group& operator=( 
const Group& ) DISTI_SPECIAL_MEM_FUN_DELETE;
 
   76     Group( 
const Group& that ) DISTI_SPECIAL_MEM_FUN_DELETE;
 
   91     friend class GroupEditor;
 
  163     unsigned int Count( 
void )
 const { 
return _objects.
Count(); }
 
  186     GLS_EXPORT 
explicit Group( 
int generateInstance = FALSE );
 
  192     GLS_EXPORT 
Group( 
const Group& group, 
bool generateNames );
 
  202     virtual GLS_EXPORT 
~Group();
 
  222     virtual GLS_EXPORT 
void Draw( 
void );
 
  228     virtual GLS_EXPORT 
bool Hit( 
float x, 
float y, 
float z, 
float scale, 
const Vector& directionVector, 
Vector* collisionPoint );
 
  232         const Vector&                                       logicalCoords,
 
  234         const Vector&                                       directionVector,
 
  244     virtual GLS_EXPORT 
void CalculateBoundingBox( 
void );
 
  250     virtual GLS_EXPORT 
void Location( 
const Vertex& v ) DISTI_METHOD_OVERRIDE;
 
  251     virtual GLS_EXPORT 
void Location( 
float x, 
float y, 
float z );
 
  254     virtual GLS_EXPORT 
void Translate( 
float x, 
float y, 
float z );
 
  257     virtual GLS_EXPORT 
void Translate( 
float transAmount[] );
 
  266     virtual GLS_EXPORT 
void GetExtents( 
float& x, 
float& y, 
float& z, 
float& x1, 
float& y1, 
float& z1 );
 
  275     virtual GLS_EXPORT 
void Rotate( 
const Vector& orig, 
float angle, 
const Vector& axis );
 
  281     virtual GLS_EXPORT 
void Scale( 
const float scale_x, 
const float scale_y );
 
  284     virtual GLS_EXPORT 
void Scale( 
float scale_x, 
float scale_y, 
float scale_z, 
Vertex* anchor = NULL, 
int handle = 0 );
 
  292     virtual GLS_EXPORT 
void InsertObject( 
DisplayObject* obj, 
bool reparent = 
true, 
bool recalculateBoundingbox = 
true, 
int loc = -1 );
 
  306     virtual GLS_EXPORT 
void ReorderObject( 
unsigned int oldIndex, 
unsigned int newIndex );
 
  320     virtual GLS_EXPORT 
void DeleteVertex( 
unsigned int index );
 
  328     virtual GLS_EXPORT 
void InsertVertex( 
unsigned int index );
 
  343     virtual GLS_EXPORT 
void  LineWidth( 
float width ) DISTI_METHOD_OVERRIDE;
 
  344     virtual GLS_EXPORT 
float LineWidth( 
void ) DISTI_METHOD_OVERRIDE;
 
  352     virtual GLS_EXPORT 
int  PolygonMode( 
void ) DISTI_METHOD_OVERRIDE;
 
  353     virtual GLS_EXPORT 
void PolygonMode( 
int mode ) DISTI_METHOD_OVERRIDE;
 
  355     virtual GLS_EXPORT 
void PolygonEnd( const 
int mode ) DISTI_METHOD_OVERRIDE;
 
  356     virtual GLS_EXPORT 
int  PolygonEnd( 
void ) DISTI_METHOD_OVERRIDE;
 
  358     virtual GLS_EXPORT 
void Shading( const 
int mode ) DISTI_METHOD_OVERRIDE;
 
  359     virtual GLS_EXPORT 
int  Shading( 
void ) DISTI_METHOD_OVERRIDE;
 
  361     virtual GLS_EXPORT 
void DepthTest( 
unsigned char mode ) DISTI_METHOD_OVERRIDE;
 
  362     virtual GLS_EXPORT 
int  DepthTest( 
void ) DISTI_METHOD_OVERRIDE;
 
  364     virtual GLS_EXPORT 
void AntiAlias( 
bool mode ) DISTI_METHOD_OVERRIDE;
 
  365     virtual GLS_EXPORT 
bool AntiAlias( 
void ) DISTI_METHOD_OVERRIDE;
 
  367     virtual GLS_EXPORT 
void AlphaMode( 
int mode ) DISTI_METHOD_OVERRIDE;
 
  368     virtual GLS_EXPORT 
int  AlphaMode( 
void ) DISTI_METHOD_OVERRIDE;
 
  370     virtual GLS_EXPORT 
void CullBackFace( const 
bool mode ) DISTI_METHOD_OVERRIDE;
 
  371     virtual GLS_EXPORT 
bool CullBackFace( 
void ) DISTI_METHOD_OVERRIDE;
 
  374     virtual GLS_EXPORT 
void LightingEnabled( 
bool lighting ) DISTI_METHOD_OVERRIDE;
 
  379     virtual GLS_EXPORT 
void SetBlendColor( const 
GlsColor& color );
 
  384     virtual GLS_EXPORT 
GlsColor GetBlendColor( 
void );
 
  389     virtual GLS_EXPORT 
void SetColor( const 
GlsColor& color );
 
  394     virtual GLS_EXPORT 
GlsColor GetColor( 
void );
 
  399     virtual GLS_EXPORT 
void SetFillColor( const 
GlsColor& color );
 
  404     virtual GLS_EXPORT 
GlsColor GetFillColor( 
void );
 
  421     virtual GLS_EXPORT 
void Calculate( 
double time );
 
  433         GLS_EXPORT CompatabilityListItem();
 
  435         GLS_EXPORT CompatabilityListItem* Next();
 
  437         GLS_EXPORT CompatabilityListItem* Prev();
 
  441         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:163
virtual GlsColor GetBlendColor(void)
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:175
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:278
void GrowBoundingBox(DisplayObject *obj)
virtual void Calculate(double time)
virtual int DepthTest(void)
virtual int TextureMagnificationFilter(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:148
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 GlsColor GetFillColor(void)
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:166
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:115
CompatabilityListItem * First()
virtual bool DeleteObject(DisplayObject *obj, bool recalculateBoundingbox=true)
virtual void PreDraw(const OpenGLMatrices ¤t, Culler &culler)
virtual GlsColor GetColor(void)
virtual int TextureMinificationFilter(void)
int Position(DisplayObject *obj)
CompatabilityListItem * Last()
bool CullTestChildren(void) const 
Definition: group.h:157
DisplayObject * FindByName(const char *name)
virtual void SetFillColor(const GlsColor &color)
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:151
virtual bool AntiAlias(void)
Definition: gls_color.h:53
virtual void GetCppInterfaceDescriptionFree(InterfaceListType *array)
virtual void Rotate(float angle, int axis=Z_AXIS)
char * InstanceName(void)
virtual bool LightingEnabled()
virtual void SetColor(const GlsColor &color)
virtual void SetAvailableAttributes(unsigned int value)
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:125
DisplayObject * FindByQualifiedName(const char *name)
void Scale(int handleBar, float px, float py, Vertex *anchor=NULL)
Definition: display.h:1111
virtual int LineStipplePattern(void)
virtual void GetResources(std::ostream &outstr, GlsResourceFilter *filter=NULL)
virtual void TranslateVertices(float x, float y, float z)
virtual void SetBlendColor(const GlsColor &color)
virtual void Rotate(const Vector &orig, float angle, const Vector &axis)
virtual DisplayObject * FindByNameSameFrame(const char *name)
Definition: gls_resources.h:50
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:145
virtual void CopyProperties(DisplayObject *src)
virtual DisplayObject * handle(DisplayEvent *ev)