vtkContourTopogramProjectFilter works with transforms

This commit is contained in:
2022-02-15 17:41:03 +01:00
parent 3bc86087b6
commit 98473126bc
2 changed files with 11 additions and 1 deletions

View File

@ -113,7 +113,7 @@ int vtkContourTopogramProjectionFilter::RequestData(
pp1[2] = -dSCD;
/** Points can be mapped back to LPS coordinates */
m_Transform->TransformPoint(pp1, pp2);
m_RefTransform->TransformPoint(pp1, pp2);
/** and back to 'real' LPS */
pp2[0] -= dProjectionLPSOffset [0];
@ -178,6 +178,14 @@ void vtkContourTopogramProjectionFilter::SetTransformMatrix( vtkMatrix4x4 *userM
}
void vtkContourTopogramProjectionFilter::SetReferenceTransformMatrix( vtkMatrix4x4 *userMatrix)
{
m_RefTransform = vtkSmartPointer<vtkTransform>::New();
m_RefTransform ->SetMatrix(userMatrix);
this->Modified();
}
void vtkContourTopogramProjectionFilter ::PrintSelf(ostream& os, vtkIndent indent)
{
this->Superclass::PrintSelf(os, indent);

View File

@ -19,6 +19,7 @@ public:
static vtkContourTopogramProjectionFilter * New();
void SetReferenceTransformMatrix( vtkMatrix4x4 *);
void SetTransformMatrix( vtkMatrix4x4 *);
void SetLPStoProjectionLPSGeometryOffset (const double * );
void SetSCD(const double dVal);
@ -43,6 +44,7 @@ private:
dImportOffsetLPS[3],
dSCD;
vtkSmartPointer<vtkTransform> m_RefTransform;
vtkSmartPointer<vtkTransform> m_Transform;
vtkSmartPointer<vtkPolyData> m_PrjPoly;
};