45 if (m_Renderer.IsNull())
46 itkExceptionMacro(<<
"Renderer was not properly set");
49 unsigned int numberOfInputs = this->GetNumberOfInputs();
50 for (
unsigned int i = 0; i < numberOfInputs ; ++i)
66 Point3D cameraPosition = navigationData->GetPosition();
69 static itk::QuaternionRigidTransform<double>::Pointer quatTransform = itk::QuaternionRigidTransform<double>::New();
73 vnl_quaternion<double> doubleQuaternion(orientation.x(), orientation.y(), orientation.z(), orientation.r());
74 quatTransform->SetIdentity();
75 quatTransform->SetRotation(doubleQuaternion);
76 quatTransform->Modified();
80 static AffineTransform3D::MatrixType m;
82 m = navigationData->GetOrientation().rotation_matrix_transpose();
85 Vector3D directionOfProjection = m*m_DirectionOfProjectionInToolCoordinates;
86 directionOfProjection.Normalize();
87 Point3D focalPoint = cameraPosition + m_FocalLength*directionOfProjection;
89 Vector3D viewUp = m*m_ViewUpInToolCoordinates;
91 m_Renderer->GetVtkRenderer()->GetActiveCamera()->SetPosition(cameraPosition[0],cameraPosition[1],cameraPosition[2]);
92 m_Renderer->GetVtkRenderer()->GetActiveCamera()->SetFocalPoint(focalPoint[0],focalPoint[1],focalPoint[2]);
93 m_Renderer->GetVtkRenderer()->GetActiveCamera()->SetViewUp(viewUp[0],viewUp[1],viewUp[2]);
94 m_Renderer->GetVtkRenderer()->ResetCameraClippingRange();
96 m_Renderer->RequestUpdate();
117 if (p->GetPropertyValue<mitk::Vector3D>(
"CameraVisualization_DirectionOfProjectionInToolCoordinates", doP) ==
true)
118 this->SetDirectionOfProjectionInToolCoordinates(doP);
120 if (p->GetPropertyValue<mitk::Vector3D>(
"CameraVisualization_ViewUpInToolCoordinates", vUp) ==
true)
121 this->SetViewUpInToolCoordinates(vUp);
123 if (p->GetPropertyValue<
float>(
"CameraVisualization_FocalLength", fL) ==
true)
124 this->SetFocalLength(fL);
126 if (p->GetPropertyValue<
float>(
"CameraVisualization_ViewAngle", vA) ==
true)
127 this->SetFocalLength(vA);
133 mitk::PropertyList::Pointer p = mitk::PropertyList::New();
134 p->SetProperty(
"CameraVisualization_DirectionOfProjectionInToolCoordinates", mitk::Vector3DProperty::New(this->GetDirectionOfProjectionInToolCoordinates()));
135 p->SetProperty(
"CameraVisualization_ViewUpInToolCoordinates", mitk::Vector3DProperty::New(this->GetViewUpInToolCoordinates()));
136 p->SetProperty(
"CameraVisualization_FocalLength", mitk::Vector3DProperty::New(this->GetFocalLength()));
137 return mitk::PropertyList::ConstPointer(p);