190 static int maxCoords;
200 int curParts, numSides, numSections;
211 int &numSides,
int &numSections,
216 void getSize(
float &rad,
float &hHeight)
const;
220 bool sendNormals,
bool doTextures);
225 bool sendNormals,
bool doTextures);
228 bool intersectInfiniteCone(
const SbLine &ray,
#define SoEXTENDER
Provide inline template functions for abs, swap, min, max, and clamp.
#define INVENTOR_API
Disable some annoying warnings on MSVC 6.
#define SO_NODE_HEADER(className)
Non-abstract classes have everything abstract classes have, plus a way to create an instance.
Abstract base class for all actions.
virtual void rayPick(SoRayPickAction *action)
Implements picking along a ray by intersecting the ray with each primitive generated by subclass.
SoSFFloat height
Size in y dimension.
bool hasPart(SoCone::Part part) const
Returns whether a given part is on or off. (Convenience function)
virtual void GLRender(SoGLRenderAction *action)
Implements actions.
void addPart(SoCone::Part part)
Turns on/off a part of the cone. (Convenience functions)
SoSFFloat bottomRadius
Radius of bottom circular face.
virtual void generatePrimitives(SoAction *action)
Generates triangles representing a cone.
SoCone()
Creates a cone node with default settings.
SoSFInt32 sides
Defines how many sides are used for tesselation.
SoSFBitMask parts
Visible parts of cone.
void removePart(SoCone::Part part)
SoSFInt32 sections
Defines how many sections are used for tesselation.
virtual void computeBBox(SoAction *action, SbBox3f &box, SbVec3f ¢er)
Computes bounding box of cone.
Renders a scene graph using OpenGL.
Intersects objects with a ray cast into scene.
Single-value field containing a set of bit flags.
Field containing a floating-point value.
Field containing a int32_t integer.
Abstract base class for all shape nodes.
Helper struct used by primitive types like cube, sphere, ...