MCPcopy Create free account
hub / github.com/Kitware/VTK / UpdateTransform

Method UpdateTransform

Common/DataModel/vtkAnnulus.cxx:183–200  ·  view source on GitHub ↗

------------------------------------------------------------------------------

Source from the content-addressed store, hash-verified

181
182//------------------------------------------------------------------------------
183void vtkAnnulus::UpdateTransform()
184{
185 const vtkVector3d yAxis(0., 1., 0.);
186
187 vtkVector3d cross = yAxis.Cross(this->Axis);
188 const double crossNorm = cross.Normalize();
189 const double dot = yAxis.Dot(this->Axis);
190 const double angle = vtkMath::DegreesFromRadians(std::atan2(crossNorm, dot));
191
192 vtkNew<vtkTransform> transform;
193 transform->Identity();
194 transform->Translate(this->Center.GetData());
195 transform->RotateWXYZ(angle, cross.GetData());
196 transform->Inverse();
197
198 this->SetTransform(transform.GetPointer());
199 this->Modified();
200}
201
202VTK_ABI_NAMESPACE_END

Callers 2

SetCenterMethod · 0.95
SetAxisMethod · 0.95

Calls 11

RotateWXYZMethod · 0.80
CrossMethod · 0.45
NormalizeMethod · 0.45
DotMethod · 0.45
IdentityMethod · 0.45
TranslateMethod · 0.45
GetDataMethod · 0.45
InverseMethod · 0.45
SetTransformMethod · 0.45
GetPointerMethod · 0.45
ModifiedMethod · 0.45

Tested by

no test coverage detected