12#ifndef HEPVis_SoTubs_h
13#define HEPVis_SoTubs_h
15#include <Inventor/C/errors/debugerror.h>
16#include <Inventor/fields/SoSFFloat.h>
17#include <Inventor/fields/SoSFNode.h>
18#include <Inventor/fields/SoSFBool.h>
19#include <Inventor/fields/SoSFInt32.h>
20#include <Inventor/nodes/SoShape.h>
120 virtual void computeBBox(SoAction *action, SbBox3f &box, SbVec3f ¢er );
154 void inc(
double & sinPhi,
double & cosPhi,
double sinDeltaPhi,
double cosDeltaPhi)
const {
155 double oldSin=sinPhi,oldCos=cosPhi;
156 sinPhi = oldSin*cosDeltaPhi+oldCos*sinDeltaPhi;
157 cosPhi = oldCos*cosDeltaPhi-oldSin*sinDeltaPhi;
std::unique_ptr< SoChildList > m_children
ChildList. Required whenever the class has hidden children.
SoSFInt32 pOverrideNPhi
Override number of phi subdivision used for rendering shape (i.e.
virtual SoChildList * getChildren() const
GetChildList, required whenever the class has hidden children.
virtual void computeBBox(SoAction *action, SbBox3f &box, SbVec3f ¢er)
compute bounding Box, required
SoSFFloat pDz
Half-length in Z.
virtual void clearAlternateRep()
We better be able to clear it, too!
SoSFNode alternateRep
Alternate rep - required.
virtual void generatePrimitives(SoAction *action)
Generate Primitives, required.
SoSFFloat pDPhi
Delta-angle, in radians.
void inc(double &sinPhi, double &cosPhi, double sinDeltaPhi, double cosDeltaPhi) const
help with trigonometry. increments sines an cosines by an angle.
virtual void generateAlternateRep()
Generate AlternateRep, required.
SoSFFloat pSPhi
Starting angle, in radians.
static void initClass()
Class Initializer, required.
void updateChildren()
Used to modify hidden children when a data field is changed.
void generateChildren()
Generate Children.
SoTubs()
Constructor, required.
SoSFFloat pRMin
Inside radius of the tube.
SoSFFloat pRMax
Outside radius of the tube.