00001
00002
00004
00005 #if !defined(AFX_TPARALLELKAM_H__E58CE341_EC14_422F_B61F_3D0DA616D687__INCLUDED_)
00006 #define AFX_TPARALLELKAM_H__E58CE341_EC14_422F_B61F_3D0DA616D687__INCLUDED_
00007
00008 #if _MSC_VER > 1000
00009 #pragma once
00010 #endif // _MSC_VER > 1000
00011
00012 #include "TKameraInterface.h"
00013 #include "TParallelKamSettings.h"
00014 class TParallelKam : public TKameraInterface
00015 {
00016 private:
00017 TKoo3d<float> relUpVector;
00018 TKoo3d<float> upVector;
00019 TKoo3d<float> perpUpView;
00020 TKoo3d<float> viewVector;
00021 TKoo3d<float> referencePoint;
00022 float resX;
00023 float resY;
00024 float viewDist;
00025 void recalcPerpUpView();
00026 public:
00027
00028 virtual QDialog* getSettingsWidget();
00029 TParallelKam(TKoo3d<float>& up, TKoo3d<float>& view, TKoo3d<float>& ref, float dist, float rx, float ry);
00030 virtual ~TParallelKam();
00031 virtual void setUpVector(TKoo3d<float>& up);
00032 virtual TKoo3d<float> getUpVector();
00033 virtual void setViewVektor(TKoo3d<float>& view);
00034 virtual TKoo3d<float> getViewVektor();
00035 virtual void setReferencePoint(TKoo3d<float>& ref);
00036 virtual TKoo3d<float> getReferencePoint();
00037 virtual void setViewPlaneDist(float d);
00038 virtual float getViewPlaneDist();
00039 virtual void setResolution(float x, float y);
00040 virtual void getResolution(float* dim);
00041 virtual TKoo3d<float> getViewRayAt(float x, float y);
00042 virtual TKoo3d<float> getRayStart(float x, float y);
00043 virtual QString getName();
00044 };
00045
00046 #endif // !defined(AFX_TPARALLELKAM_H__E58CE341_EC14_422F_B61F_3D0DA616D687__INCLUDED_)