00001
00002
00003
00004
00005
00006
00007
00008
00009
00010
00011
00012
00013
00014
00015
00016
00017
00018
00019
00020
#ifndef COIN_SOCOMPUTEBOUNDINGBOX_H
00021
#define COIN_SOCOMPUTEBOUNDINGBOX_H
00022
00023
#include <Inventor/engines/SoSubEngine.h>
00024
#include <Inventor/engines/SoEngineOutput.h>
00025
#include <Inventor/fields/SoSFNode.h>
00026
#include <Inventor/fields/SoSFPath.h>
00027
#include <Inventor/SbViewportRegion.h>
00028
00029
class SoGetBoundingBoxAction;
00030
00031
00032 class COIN_DLL_API SoComputeBoundingBox :
public SoEngine {
00033
typedef SoEngine inherited;
00034
00035 SO_ENGINE_HEADER(SoComputeBoundingBox);
00036
00037
public:
00038
SoSFNode node;
00039
SoSFPath path;
00040
00041
SoEngineOutput min;
00042
SoEngineOutput max;
00043
SoEngineOutput boxCenter;
00044
SoEngineOutput objectCenter;
00045
00046 SoComputeBoundingBox(
void);
00047
static void initClass(
void);
00048
00049
void setViewportRegion(
const SbViewportRegion & vpr);
00050
const SbViewportRegion & getViewportRegion(
void)
const;
00051
00052
protected:
00053
virtual ~SoComputeBoundingBox();
00054
00055
private:
00056
virtual void evaluate(
void);
00057
SoGetBoundingBoxAction * bboxaction;
00058 };
00059
00060
#endif // !COIN_SOCOMPUTEBOUNDINGBOX_H