38 #include "vtkRenderingCoreModule.h"
48 class vtkCameraCallbackCommand;
68 void SetPosition(
double x,
double y,
double z);
70 this->SetPosition(a[0], a[1], a[2]); };
71 vtkGetVector3Macro(Position,
double);
79 void SetFocalPoint(
double x,
double y,
double z);
81 this->SetFocalPoint(a[0], a[1], a[2]);};
82 vtkGetVector3Macro(FocalPoint,
double);
90 void SetViewUp(
double vx,
double vy,
double vz);
92 this->SetViewUp(a[0], a[1], a[2]); }
93 vtkGetVector3Macro(ViewUp,
double);
101 void OrthogonalizeViewUp();
107 void SetDistance(
double);
114 vtkGetMacro(Distance,
double);
123 vtkGetVector3Macro(DirectionOfProjection,
double);
132 void Dolly(
double value);
138 void SetRoll(
double angle);
146 void Roll(
double angle);
154 void Azimuth(
double angle);
163 void Yaw(
double angle);
171 void Elevation(
double angle);
178 void Pitch(
double angle);
205 vtkBooleanMacro(UseHorizontalViewAngle,
vtkTypeBool);
220 void SetViewAngle(
double angle);
221 vtkGetMacro(ViewAngle,
double);
234 void SetParallelScale(
double scale);
235 vtkGetMacro(ParallelScale ,
double);
245 void Zoom(
double factor);
261 void SetClippingRange(
double dNear,
double dFar);
263 { this->SetClippingRange(a[0], a[1]); }
264 vtkGetVector2Macro(ClippingRange,
double);
275 void SetThickness(
double);
276 vtkGetMacro(Thickness,
double);
289 void SetWindowCenter(
double x,
double y);
290 vtkGetVector2Macro(WindowCenter,
double);
306 void SetObliqueAngles(
double alpha,
double beta);
321 vtkGetVector3Macro(ViewPlaneNormal,
double);
333 void SetViewShear(
double dxdz,
double dydz,
double center);
334 void SetViewShear(
double d[3]);
335 vtkGetVector3Macro(ViewShear,
double);
343 vtkSetMacro(EyeAngle,
double);
344 vtkGetMacro(EyeAngle,
double);
354 vtkSetMacro(FocalDisk,
double);
355 vtkGetMacro(FocalDisk,
double);
370 vtkBooleanMacro(UseOffAxisProjection,
vtkTypeBool);
379 vtkSetVector3Macro(ScreenBottomLeft,
double);
380 vtkGetVector3Macro(ScreenBottomLeft,
double);
389 vtkSetVector3Macro(ScreenBottomRight,
double);
390 vtkGetVector3Macro(ScreenBottomRight,
double);
399 vtkSetVector3Macro(ScreenTopRight,
double);
400 vtkGetVector3Macro(ScreenTopRight,
double);
409 vtkSetMacro(EyeSeparation,
double);
410 vtkGetMacro(EyeSeparation,
double);
420 void SetEyePosition(
double eyePosition[3]);
421 void GetEyePosition(
double eyePosition[3]);
428 void GetEyePlaneNormal(
double normal[3]);
447 void SetEyeTransformMatrix(
const double elements[16]);
464 void SetModelTransformMatrix(
const double elements[16]);
502 virtual void SetExplicitProjectionTransformMatrix(
vtkMatrix4x4*);
503 vtkGetObjectMacro(ExplicitProjectionTransformMatrix,
vtkMatrix4x4)
511 vtkSetMacro(UseExplicitProjectionTransformMatrix,
bool)
512 vtkGetMacro(UseExplicitProjectionTransformMatrix,
bool)
513 vtkBooleanMacro(UseExplicitProjectionTransformMatrix,
bool)
525 virtual vtkMatrix4x4 *GetProjectionTransformMatrix(
double aspect,
552 virtual vtkMatrix4x4 *GetCompositeProjectionTransformMatrix(
double aspect,
601 void ViewingRaysModified();
612 virtual void GetFrustumPlanes(
double aspect,
double planes[24]);
626 void ComputeViewPlaneNormal();
644 vtkSetMacro(LeftEye,
int);
645 vtkGetMacro(LeftEye,
int);
670 vtkSetMacro(FreezeFocalPoint,
bool);
671 vtkGetMacro(FreezeFocalPoint,
bool);
678 vtkSetMacro(UseScissor,
bool);
679 vtkGetMacro(UseScissor,
bool);
686 void SetScissorRect(
vtkRecti scissorRect);
687 void GetScissorRect(
vtkRecti& scissorRect);
698 void ComputeDistance();
699 virtual void ComputeViewTransform();
705 virtual void ComputeProjectionTransform(
double aspect,
712 void ComputeCompositeProjectionTransform(
double aspect,
716 void ComputeCameraLightTransform();
723 void ComputeWorldToScreenMatrix();
728 void ComputeOffAxisProjectionFrustum();
733 void ComputeModelViewMatrix();
743 double WindowCenter[2];
744 double ObliqueAngles[2];
745 double FocalPoint[3];
749 double ClippingRange[2];
757 double DirectionOfProjection[3];
758 double ViewPlaneNormal[3];
764 double ScreenBottomLeft[3];
765 double ScreenBottomRight[3];
766 double ScreenTopRight[3];
793 friend class vtkCameraCallbackCommand;
807 void operator=(
const vtkCamera&) =
delete;