00001
00011 #ifndef __TVU_CALIBRATION_H__
00012 #define __TVU_CALIBRATION_H__
00013
00014 #ifndef __TVU_3DOBJECT_H__
00015 #include "tvu_3dobject.h"
00016 #endif
00017
00018 #ifndef __TVU_VISU3D_APPLICATION_H__
00019 #include "tvu_visu3d.application.h"
00020 #endif
00021
00022
00023 #define CLASSNAME_CALIBRATION "Calibration"
00024 #define CLASSNAME_CALIBRATION_ID 10100
00025 #define CLASSNAME_STICK "Stick"
00026 #define CLASSNAME_STICK_ID 10101
00027
00028 #define ENAME_CALIBRATION_CONTEXT "context"
00029 #define ENAME_CALIBRATION_STICKNAME "stick"
00030 #define ENAME_CALIBRATION_ZONE "zone"
00031 #define ENAME_CALIBRATION_LINES "lines"
00032 #define ENAME_CALIBRATION_CAMERA "camera"
00033 #define ENAME_CALIBRATION_ECHO "echo"
00034
00035 #define ENAME_STICK_POINTZ "pointz"
00036
00038 class CTStick : public CT3DObject
00039 {
00040 public:
00042 CTStick();
00043 virtual ~CTStick() { Delete(); };
00044 DEFINE_ID_FUNCTIONS(CTStick, CT3DObject, CLASSNAME_STICK_ID, CLASSNAME_STICK)
00045 public:
00047 virtual CTList GetSaveLoadObjects(TBOOL bOnLoad = TTRUE);
00049 virtual TBOOL ReferTo(CTReferableObject* lpObject);
00050 public:
00052 virtual void Delete();
00053 public:
00055 virtual CTStick& operator = (CTStick& AStick);
00056 public:
00058 CTList GetPointZ() { return m_PointZ;};
00059 protected:
00062 CTList m_PointZ;
00063 };
00065 typedef CTStick* LPCTStick;
00066
00068 class CTCalibration : public CTObject
00069 {
00070 public:
00072 CTCalibration();
00073 virtual ~CTCalibration() { Delete(); };
00074 DEFINE_ID_FUNCTIONS(CTCalibration, CTObject, CLASSNAME_CALIBRATION_ID, CLASSNAME_CALIBRATION)
00075 public:
00077 virtual CTList GetSaveLoadObjects(TBOOL bOnLoad = TTRUE);
00078 public:
00080 virtual TBOOL Init();
00082 virtual TBOOL Execute(TLPCSTR lpSaveFormat = TNULL);
00083 public:
00085 virtual void Delete();
00086 public:
00088 virtual CTCalibration& operator = (CTCalibration& ACalibration);
00089 protected:
00093 CTList m_Context;
00094 CTString m_ContextName;
00096 CTStick* m_pStick;
00097 CTString m_StickName;
00099 CTRectangle m_Zone;
00101 CTSize2D m_Lines;
00103 CTString m_CameraName;
00105 CTInt m_Echo;
00106 };
00108 typedef CTCalibration* LPCTCalibration;
00109
00110 #endif