HDK
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Friends Macros Groups Pages
GT_PrimCircleMesh.h
Go to the documentation of this file.
1 /*
2  * PROPRIETARY INFORMATION. This software is proprietary to
3  * Side Effects Software Inc., and is not to be reproduced,
4  * transmitted, or disclosed in any way without written permission.
5  *
6  * NAME: GT_PrimCircleMesh.h ( GT Library, C++)
7  *
8  * COMMENTS:
9  */
10 
11 #ifndef __GT_PrimCircleMesh__
12 #define __GT_PrimCircleMesh__
13 
14 #include "GT_API.h"
15 #include "GT_PrimCircle.h"
16 #include "GT_PrimQuadricMesh.h"
17 
19 {
20 public:
23  {}
25  : GT_PrimQuadricMesh(src)
26  {
27  }
28 
30  const GT_AttributeListHandle &detail,
31  const GT_TransformArrayHandle &xforms)
32  : GT_PrimQuadricMesh(vertex, detail, xforms)
33  {}
35  : GT_PrimQuadricMesh(circle)
36  {}
37  ~GT_PrimCircleMesh() override {}
38 
39  const char *className() const override
40  { return "GT_PrimCircleMesh"; }
41  bool save(UT_JSONWriter &w) const override
42  { return saveQuadricMesh(w, "CircleMesh"); }
43  GT_PrimitiveHandle doSoftCopy() const override
44  { return new GT_PrimCircleMesh(*this); }
45  GT_PrimitiveHandle doHarden() const override;
46 
47  /// @{
48  /// Methods from GT_Primitive
49  int getPrimitiveType() const override;
50  /// @}
51 
52 protected:
53  /// @{
54  /// Methods from GT_PrimQuadricMesh
55  void getQBounds(UT_BoundingBox &box) const override;
58  const GT_TransformHandle &x,
59  const GT_RefineParms *parms) const override;
60  /// @}
61 private:
62 };
63 
64 #endif
65 
SIM_API const UT_StringHolder vertex
A circle primitive.
Definition: GT_PrimCircle.h:31
virtual GT_PrimitiveHandle makeQuadric(GT_Size index, const GT_AttributeListHandle &h, const GT_TransformHandle &x, const GT_RefineParms *parms) const =0
Sub-class method to make an individual primitive.
#define GT_API
Definition: GT_API.h:13
Class which writes ASCII or binary JSON streams.
Definition: UT_JSONWriter.h:37
bool save(UT_JSONWriter &w) const override
const char * className() const override
~GT_PrimCircleMesh() override
GT_PrimitiveHandle doSoftCopy() const override
virtual void getQBounds(UT_BoundingBox &box) const =0
A virtual container used by sphere, circle and tube meshes.
bool saveQuadricMesh(UT_JSONWriter &w, const char *name) const
GLint GLenum GLint x
Definition: glcorearb.h:409
virtual GT_PrimitiveHandle doHarden() const
int64 GT_Size
Definition: GT_Types.h:128
GLfloat GLfloat GLfloat GLfloat h
Definition: glcorearb.h:2002
int getPrimitiveType() const override=0
GLuint index
Definition: glcorearb.h:786
GT_PrimCircleMesh(const GT_AttributeListHandle &vertex, const GT_AttributeListHandle &detail, const GT_TransformArrayHandle &xforms)
GLubyte GLubyte GLubyte GLubyte w
Definition: glcorearb.h:857
GT_PrimCircleMesh(const GT_PrimCircle *circle)
GT_PrimCircleMesh(const GT_PrimCircleMesh &src)
GLenum src
Definition: glcorearb.h:1793