00001 #ifndef IG_OPEN_INVENTOR_IG_SO_JET_H 00002 # define IG_OPEN_INVENTOR_IG_SO_JET_H 00003 00004 //<<<<<< INCLUDES >>>>>> 00005 00006 # include "Iguana/Inventor/interface/IgSoShapeKit.h" 00007 # include <Inventor/fields/SoSFFloat.h> 00008 # ifdef WIN32 00009 # include <SoWinLeaveScope.h> 00010 # endif 00011 00012 //<<<<<< PUBLIC DEFINES >>>>>> 00013 //<<<<<< PUBLIC CONSTANTS >>>>>> 00014 //<<<<<< PUBLIC TYPES >>>>>> 00015 //<<<<<< PUBLIC VARIABLES >>>>>> 00016 //<<<<<< PUBLIC FUNCTIONS >>>>>> 00017 //<<<<<< CLASS DECLARATIONS >>>>>> 00018 00020 class IG_OPEN_INVENTOR_API IgSoJet : public IgSoShapeKit 00021 { 00022 SO_KIT_HEADER (IgSoJet); 00023 SO_KIT_CATALOG_ENTRY_HEADER (body); 00024 SO_KIT_CATALOG_ENTRY_HEADER (bodyTrans); 00025 SO_KIT_CATALOG_ENTRY_HEADER (bodyCone); 00026 SO_KIT_CATALOG_ENTRY_HEADER (hat); 00027 SO_KIT_CATALOG_ENTRY_HEADER (hatTrans); 00028 SO_KIT_CATALOG_ENTRY_HEADER (hatCone); 00029 00030 public: 00031 IgSoJet (void); 00032 static void initClass (void); 00033 00034 SoSFFloat energy; //< Energy of the jet 00035 SoSFFloat theta; //< Theta of the jet axis 00036 SoSFFloat phi; //< Phi of the jet axis 00037 SoSFFloat thrust; //< Thrust of the jet 00038 SoSFFloat maxZ; //< Half length of cylinder outside of which jet does not extend 00039 SoSFFloat maxR; //< Radius of cylinder outside of which jet does not extend 00040 SoSFFloat maxEnergy; //< Maximum energy used to scale jet size 00041 00042 protected: 00043 virtual void refresh (void); 00044 00045 // dimensions and angles for various things in the IgSoJet object 00046 void setParameters (); 00047 }; 00048 00049 //<<<<<< INLINE PUBLIC FUNCTIONS >>>>>> 00050 //<<<<<< INLINE MEMBER FUNCTIONS >>>>>> 00051 00052 # ifdef WIN32 00053 # include <SoWinEnterScope.h> 00054 # endif 00055 #endif // IG_OPEN_INVENTOR_IG_SO_JET_H