Skip to content

Commit

Permalink
ENH: Allow incoming transform messages to be handled by vtkMRMLTransf…
Browse files Browse the repository at this point in the history
…ormNode

- Previously, all incoming transform nodes were handled by, and assumed to be vtkMRMLLinearTransformNode
- Now, transform nodes are assumed to be vtkMRMLTransformNode
- Incoming nodes that have no matching vtkMRMLTransformNode with the same name in the scene are still created as vtkMRMLLinearTransformNode
  • Loading branch information
Sunderlandkyl committed Aug 23, 2019
1 parent 86de941 commit 36041a4
Showing 1 changed file with 5 additions and 5 deletions.
10 changes: 5 additions & 5 deletions OpenIGTLinkIF/MRML/vtkMRMLIGTLConnectorNode.cxx
Original file line number Diff line number Diff line change
Expand Up @@ -189,11 +189,11 @@ unsigned int vtkMRMLIGTLConnectorNode::vtkInternal::AssignOutGoingNodeToDevice(v
{
igtlioTransformDevice* transformDevice = static_cast<igtlioTransformDevice*>(device.GetPointer());
vtkSmartPointer<vtkMatrix4x4> mat = vtkSmartPointer<vtkMatrix4x4>::New();
vtkMRMLLinearTransformNode* transformNode = vtkMRMLLinearTransformNode::SafeDownCast(node);
vtkMRMLTransformNode* transformNode = vtkMRMLTransformNode::SafeDownCast(node);
transformNode->GetMatrixTransformToParent(mat);
igtlioTransformConverter::ContentData content = { mat, transformNode->GetName(), "", "" };
transformDevice->SetContent(content);
modifiedEvent = vtkMRMLLinearTransformNode::TransformModifiedEvent;
modifiedEvent = vtkMRMLTransformNode::TransformModifiedEvent;
}
else if (device->GetDeviceType().compare("POLYDATA") == 0)
{
Expand Down Expand Up @@ -329,7 +329,7 @@ void vtkMRMLIGTLConnectorNode::vtkInternal::ProcessIncomingDeviceModifiedEvent(
igtlioTransformDevice* transformDevice = reinterpret_cast<igtlioTransformDevice*>(modifiedDevice);
if (strcmp(modifiedNode->GetName(), deviceName.c_str()) == 0)
{
vtkMRMLLinearTransformNode* transformNode = vtkMRMLLinearTransformNode::SafeDownCast(modifiedNode);
vtkMRMLTransformNode* transformNode = vtkMRMLTransformNode::SafeDownCast(modifiedNode);
vtkSmartPointer<vtkMatrix4x4> transfromMatrix = vtkSmartPointer<vtkMatrix4x4>::New();
transfromMatrix->DeepCopy(transformDevice->GetContent().transform);
transformNode->SetMatrixTransformToParent(transfromMatrix.GetPointer());
Expand Down Expand Up @@ -683,8 +683,8 @@ vtkMRMLNode* vtkMRMLIGTLConnectorNode::vtkInternal::GetMRMLNodeforDevice(igtlioD
}
else if (strcmp(device->GetDeviceType().c_str(), "TRANSFORM") == 0)
{
vtkSmartPointer<vtkMRMLLinearTransformNode> transformNode =
vtkMRMLLinearTransformNode::SafeDownCast(this->External->GetScene()->GetFirstNode(deviceName.c_str(), "vtkMRMLLinearTransformNode"));
vtkSmartPointer<vtkMRMLTransformNode> transformNode =
vtkMRMLTransformNode::SafeDownCast(this->External->GetScene()->GetFirstNode(deviceName.c_str(), "vtkMRMLTransformNode"));
if (transformNode)
{
this->External->RegisterIncomingMRMLNode(transformNode, device);
Expand Down

0 comments on commit 36041a4

Please sign in to comment.