WorkingVolume.h
上传用户:kellyonhid
上传日期:2013-10-12
资源大小:932k
文件大小:1k
源码类别:

3D图形编程

开发平台:

Visual C++

  1. #ifndef _WORKING_VOLUME_
  2. #define _WORKING_VOLUME_
  3. #include "RigidScan.h"
  4. #include "DrawObj.h"
  5. extern DrawObjects draw_other_things;
  6. class CyberWorkingVolume : public DrawObj {
  7. private:
  8.    float        scanVertical;
  9.    unsigned int scanConfig;
  10.    Xform<float> scanXform;
  11.    float wvVert;
  12.    float wvHorInc, wvHorMin, wvHorMax;
  13.    float wvRotMin, wvRotMax;
  14.    float wvMotMin, wvMotMax;
  15.    Pnt3 corner[50][50][2];
  16.    int wvNumShells, wvNumRots, wvNumMots;
  17.    float wvHorTransX, wvHorTransY, wvHorTransZ;
  18.    int wvDrawMode;
  19. public:
  20.    CyberWorkingVolume(void) {
  21.       draw_other_things.add(this);
  22.       off();
  23.       wvDrawMode = 0;
  24.    }
  25.    ~CyberWorkingVolume(void) {
  26.       draw_other_things.remove(this);
  27.    }
  28.    void off(void) {disable();}
  29.    void on(void) {enable();}
  30.    void drawMode(int mode) {wvDrawMode = mode;}
  31.    void use(RigidScan *scan);
  32.    void bounds(float vert, float hor_inc, float hor_min, float hor_max,
  33.                float rot_min, float rot_max, float mot_min, float mot_max);
  34.    void drawthis(void);
  35. };
  36. CyberWorkingVolume *GetCyberWorkingVolume(void);
  37. #endif