52 #if( defined( GLSGEN_EXPORT_GLSELLIPSE ) || defined( GLSGEN_IMPORT_GLSELLIPSE ) || defined( GLS_EXPORT_GENERATED ) || defined( GLS_IMPORT_GENERATED ) ) \ 
   53     && defined( _MSC_VER ) 
   54 #    if defined( GLSGEN_EXPORT_GLSELLIPSE ) || defined( GLS_EXPORT_GENERATED ) 
   55 #        define GLSGEN_GLSELLIPSE_EXPORT __declspec( dllexport ) 
   57 #        define GLSGEN_GLSELLIPSE_EXPORT __declspec( dllimport ) 
   60 #    define GLSGEN_GLSELLIPSE_EXPORT 
   64 #define LIB_BASE_NAME "gls_ellipse" 
   73     GLS_ELLIPSE_FIRST_VALUE = GLS_LAST_INITIALIZER + 1,
 
   75     GLS_ELLIPSE_THICKNESS,
 
   78     GLS_ELLIPSE_START_ANGLE,
 
   79     GLS_ELLIPSE_END_ANGLE,
 
   86     friend class GlsEllipseEditor;
 
   94     GLSGEN_GLSELLIPSE_EXPORT 
GlsEllipse( 
bool generateInstance = 
false );
 
   97     GLSGEN_GLSELLIPSE_EXPORT 
GlsEllipse( 
const GlsEllipse& that, 
const bool generateNames );
 
  102     static GLSGEN_GLSELLIPSE_EXPORT 
DisplayObject* CreateInstance();
 
  117     virtual GLSGEN_GLSELLIPSE_EXPORT 
void Draw( 
void );
 
  119     virtual GLSGEN_GLSELLIPSE_EXPORT 
void Scale( 
float px, 
float py, 
float pz, 
Vertex* anchor, 
int handleBar );
 
  120     virtual GLSGEN_GLSELLIPSE_EXPORT 
void Rotate( 
const Vector& orig, 
float angle, 
const Vector& axis );
 
  121     virtual GLSGEN_GLSELLIPSE_EXPORT 
bool Hit( 
float x, 
float y, 
float z, 
float scale, 
const Vector& directionVector, 
Vector* collisionPoint );
 
  125     virtual GLSGEN_GLSELLIPSE_EXPORT 
void    GetExtents( 
float& minx, 
float& miny, 
float& minz, 
float& maxx, 
float& maxy, 
float& maxz );
 
  147     virtual GLSGEN_GLSELLIPSE_EXPORT 
void SetValue( 
int spec, va_list& args );
 
  150     virtual GLSGEN_GLSELLIPSE_EXPORT 
bool SetupTexture( 
void );
 
  175     virtual GLSGEN_GLSELLIPSE_EXPORT 
void Interval( 
const unsigned int& value );
 
  179     virtual GLSGEN_GLSELLIPSE_EXPORT 
unsigned int Interval();
 
  184     virtual GLSGEN_GLSELLIPSE_EXPORT 
void Thickness( 
const float& value );
 
  188     virtual GLSGEN_GLSELLIPSE_EXPORT 
float Thickness();
 
  193     virtual GLSGEN_GLSELLIPSE_EXPORT 
void StartAngle( 
const float& value );
 
  197     virtual GLSGEN_GLSELLIPSE_EXPORT 
float StartAngle();
 
  202     virtual GLSGEN_GLSELLIPSE_EXPORT 
void EndAngle( 
const float& value );
 
  206     virtual GLSGEN_GLSELLIPSE_EXPORT 
float EndAngle();
 
  210     virtual GLSGEN_GLSELLIPSE_EXPORT 
void Magnitude( 
const float& value, 
unsigned int index );
 
  213     virtual GLSGEN_GLSELLIPSE_EXPORT 
float Magnitude( 
unsigned int index );
 
  218     virtual GLSGEN_GLSELLIPSE_EXPORT 
void Solid( 
const bool& value );
 
  222     virtual GLSGEN_GLSELLIPSE_EXPORT 
bool Solid();
 
  246     void ComputeArcSegment( 
bool textureObject );
 
  251     void ComputeSolidCircle( 
bool textureObject );
 
  281     void         GetSegmentIndices( 
const float startAngle, 
unsigned int& startIndex, 
const float endAngle, 
unsigned int& endIndex );
 
  282     unsigned int InnerIndex( 
const unsigned int index );
 
  283     unsigned int OuterIndex( 
const unsigned int index );
 
  313     bool         _needsRecalculate;
 
  319     GlsEllipse& operator=( 
const GlsEllipse& ) DISTI_SPECIAL_MEM_FUN_DELETE;
 
  320     GlsEllipse( const GlsEllipse& ) DISTI_SPECIAL_MEM_FUN_DELETE;
 
virtual Vector UnitVector(unsigned int index)
virtual void GetTransformedExtents(Vector &min, Vector &max, const GlsMatrixType &matrix, bool resetMinMax)
virtual void CopyGeometry(DisplayObject *srcArg)
float _magnitude[2]
Definition: gls_ellipse.h:306
void Invalidate(void)
Definition: gls_display_list.h:82
float _startAngle
Definition: gls_ellipse.h:306
Vector _normal
Definition: gls_ellipse.h:292
Definition: dynamic_array.h:62
virtual void UpdateBoundingVolume(void)
Class to contain current OpenGL view, projection and draw matrices. 
Definition: util.h:278
GlsEllipse(bool generateInstance=false)
Vector _start[2]
Definition: gls_ellipse.h:292
virtual void Rotate(const Vector &orig, float angle, const Vector &axis)
The Polygon class. Implements Polygons. 
Definition: glpolygon.h:55
virtual void SetAvailableAttributes(unsigned int value)
GlsColor _objectColor
Definition: gls_ellipse.h:304
virtual void SetFillColor(const GlsColor &color)
virtual float Thickness()
The disti::GLPolygon class. Implements Polygons. 
void GetSegmentIndices(const float startAngle, unsigned int &startIndex, const float endAngle, unsigned int &endIndex)
virtual void GetCppInterfaceDescriptionFree(InterfaceListType *array)
void RecomputeVertices(void)
virtual void Scale(float px, float py, float pz, Vertex *anchor, int handleBar)
void DrawArcSegment(bool textureObject)
Vector _end[2]
Definition: gls_ellipse.h:292
Definition: gls_display_list.h:50
virtual void GetExtents(float &minx, float &miny, float &minz, float &maxx, float &maxy, float &maxz)
Definition: gls_glo_file.h:835
void InvalidateGeometry(void)
Definition: gls_ellipse.h:229
bool _solid
Definition: gls_ellipse.h:312
virtual unsigned int Interval()
virtual Vector RadiusVector(unsigned int index)
virtual GlsColor GetFillColor(void)
void CalculateRadiiUnit(void)
GlsDisplayList & DisplayList(void)
Definition: gls_ellipse.h:232
unsigned int _interval
Definition: gls_ellipse.h:311
float _thickness
Definition: gls_ellipse.h:306
Vector _radii[2]
Definition: gls_ellipse.h:292
virtual float StartAngle()
virtual DisplayObject * CloneObject(bool generateNames=false)
Definition: gls_vertex_array.h:58
Vector _startTex[2]
Definition: gls_ellipse.h:292
float _endAngle
Definition: gls_ellipse.h:306
Vector _centerTex
Definition: gls_ellipse.h:292
Definition: gls_color.h:53
virtual void SetValue(int spec, va_list &args)
virtual void RadiusVectors(const Vector &r1, const Vector &r2)
void DrawSolidCircle(bool textureObject)
void CalculateEndVertices(void)
Vector _endTex[2]
Definition: gls_ellipse.h:292
GlsDisplayList _displayList
Definition: gls_ellipse.h:287
virtual void PreDraw(const OpenGLMatrices &parentMatrices, Culler &culler)
virtual void CalculateTextureCoordinates()
virtual InterfaceListType * GetCppInterfaceDescription(InterfaceListType *addToThisList=NULL)
An object for managing vertices, texture coordinates, colors and normals for GLPolygon and other disp...
GlsMatrixType _world2tex
Definition: gls_ellipse.h:315
virtual GlsColor GetFillColor(void)
DisplayObject * handle(DisplayEvent *ev)
virtual void Magnitude(const float &value, unsigned int index)
Definition: gls_ellipse.h:84
virtual bool Hit(float x, float y, float z, float scale, const Vector &directionVector, Vector *collisionPoint)
Macros and helper code to determine what subset of C++11/14/17 is available. 
virtual Vertex * Vertices()
The disti::GlsIndexArray class, for managing index buffers. 
void CalculateStartVertices(void)
Definition: bmpimage.h:46
void SetFillColor(unsigned char r, unsigned char g, unsigned char b, unsigned char a)
Definition: display.h:663
The disti::GlsDisplayList class. 
virtual void CopyProperties(DisplayObject *src)
void SetNeedsRecalculate(void)
Vector _radiiUnit[2]
Definition: gls_ellipse.h:292