00001
00002
00003
00004
00005
00006
00007
00008
00009
00010
00011
00012
00013
00014
00015
00016
00017
00018
00019
00020 #ifndef COIN_SOUNITS_H
00021 #define COIN_SOUNITS_H
00022
00023 #include <Inventor/nodes/SoSubNode.h>
00024 #include <Inventor/nodes/SoTransformation.h>
00025 #include <Inventor/fields/SoSFEnum.h>
00026
00027
00028 class COIN_DLL_API SoUnits : public SoTransformation {
00029 typedef SoTransformation inherited;
00030
00031 SO_NODE_HEADER(SoUnits);
00032
00033 public:
00034 static void initClass(void);
00035 SoUnits(void);
00036
00037
00038
00039 enum Units {
00040 METERS,
00041 CENTIMETERS,
00042 MILLIMETERS,
00043 MICROMETERS,
00044 MICRONS,
00045 NANOMETERS,
00046 ANGSTROMS,
00047 KILOMETERS,
00048 FEET,
00049 INCHES,
00050 POINTS,
00051 YARDS,
00052 MILES,
00053 NAUTICAL_MILES
00054 };
00055
00056 SoSFEnum units;
00057
00058 virtual void doAction(SoAction * action);
00059 virtual void callback(SoCallbackAction * action);
00060 virtual void getBoundingBox(SoGetBoundingBoxAction * action);
00061 virtual void getMatrix(SoGetMatrixAction * action);
00062 virtual void GLRender(SoGLRenderAction * action);
00063 virtual void pick(SoPickAction * action);
00064 virtual void getPrimitiveCount(SoGetPrimitiveCountAction * action);
00065
00066 protected:
00067 virtual ~SoUnits();
00068 };
00069
00070 #endif // !COIN_SOUNITS_H