HDK
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Friends Macros Groups Pages
GT_PrimSphereMesh.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_PrimSphereMesh.h ( GT Library, C++)
7  *
8  * COMMENTS:
9  */
10 
11 #ifndef __GT_PrimSphereMesh__
12 #define __GT_PrimSphereMesh__
13 
14 #include "GT_API.h"
15 #include "GT_PrimSphere.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(sphere)
36  {}
37  ~GT_PrimSphereMesh() override {}
38 
39  const char *className() const override
40  { return "GT_PrimSphereMesh"; }
41  bool save(UT_JSONWriter &w) const override
42  { return saveQuadricMesh(w, "SphereMesh"); }
43 
44  /// @{
45  /// Methods from GT_Primitive
46  int getPrimitiveType() const override;
47  GT_PrimitiveHandle doSoftCopy() const override
48  { return new GT_PrimSphereMesh(*this); }
49  GT_PrimitiveHandle doHarden() const override;
50  /// @}
51 
52 protected:
53  /// @{
54  /// Methods from GT_PrimQuadricMesh
55  void getQBounds(UT_BoundingBox &box) const override;
57  GT_Size index,
59  const GT_TransformHandle &x,
60  const GT_RefineParms *parms) const override;
61  /// @}
62 private:
63 };
64 
65 #endif
66 
SIM_API const UT_StringHolder vertex
A sphere primitive.
Definition: GT_PrimSphere.h:31
const char * className() const override
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
~GT_PrimSphereMesh() override
GT_PrimSphereMesh(const GT_AttributeListHandle &vertex, const GT_AttributeListHandle &detail, const GT_TransformArrayHandle &xforms)
Class which writes ASCII or binary JSON streams.
Definition: UT_JSONWriter.h:37
GT_PrimSphereMesh(const GT_PrimSphereMesh &src)
virtual void getQBounds(UT_BoundingBox &box) const =0
A virtual container used by sphere, circle and tube meshes.
GT_PrimSphereMesh(const GT_PrimSphere *sphere)
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
GLubyte GLubyte GLubyte GLubyte w
Definition: glcorearb.h:857
GT_PrimitiveHandle doSoftCopy() const override
bool save(UT_JSONWriter &w) const override
GLenum src
Definition: glcorearb.h:1793