Difference between revisions of "IGTView"

From NAMIC Wiki
Jump to: navigation, search
(Created page with '=Timeline= {|style="border-collapse: collapse; border-width: 1px; border-style: solid; border-color: #000" cellpadding="1" width="40%" ! align="center" style="border-style: solid…')
 
 
(2 intermediate revisions by the same user not shown)
Line 14: Line 14:
 
|-
 
|-
 
| align="center" style="border-style: solid; border-width: 1px"| Add 3D camera control
 
| align="center" style="border-style: solid; border-width: 1px"| Add 3D camera control
 +
| style="border-style: solid; border-width: 1px; background-color:green"|
 +
| align="center" style="border-style: solid; border-width: 1px"| -
 +
|-
 +
| align="center" style="border-style: solid; border-width: 1px"| Implement trajectory
 
| style="border-style: solid; border-width: 1px; background-color:orange"|
 
| style="border-style: solid; border-width: 1px; background-color:orange"|
 
| align="center" style="border-style: solid; border-width: 1px"| -
 
| align="center" style="border-style: solid; border-width: 1px"| -
Line 29: Line 33:
 
* 3D camera control has been implemented, but a minor issue still remain:
 
* 3D camera control has been implemented, but a minor issue still remain:
 
** When we deselect the 3D camera control, the camera is not going back to original position, it only stays where it was at the end of the motion (identity matrix is not working because at the beginning camera is not at 0,0,0).
 
** When we deselect the 3D camera control, the camera is not going back to original position, it only stays where it was at the end of the motion (identity matrix is not working because at the beginning camera is not at 0,0,0).
 
+
*** <b>Fixed</b> by creating a temp matrix to store TransformationNode, then set TransformationNode to identity, stop observing node, then restore TransformationNode
 +
** Camera is not updated when setting transformation matrix
 +
*** <b>Fixed</b> by calling vtkMRMLLinearTransformNode::TransformModifiedEvent on the transformation matrix
 +
*Bug: When selecting 3D probe when no transformation selected -> Segfault
 
=Tips=
 
=Tips=
* Orientation of EM and Optical system are different because coordinate system are different (not possible to "fix it"), so I created a model flipped, and use it to display EM tracker
 
* Aurora configuration (from IGSTK):
 
 
  communication->SetBaudRate(SerialCommunication::BaudRate9600);                  // Baud: 9600
 
  communication->SetDataBits(SerialCommunication::DataBits8);                      // DataBits: 8
 
  communication->SetParity(SerialCommunication::NoParity);                        // Parity: 0
 
  communication->SetStopBits(SerialCommunication::StopBits1);                      // StopBits: 1
 
  communication->SetHardwareHandshake(SerialCommunication::HandshakeOff);          // HandShake: 0
 

Latest revision as of 22:39, 10 February 2012

Home < IGTView

Timeline

Task Status Deadline
Create module to replace OpenIGTLink Slice control -
Add views -
Add 3D camera control -
Implement trajectory -

Development

Create IGTView Module

  • This module is make to avoid copying OpenIGTLink source code in several module when needed to manipulate 2D or 3D views. By extracting slices control from OpenIGTLink, every module could use it without copying source code (not optimal).
  • 2D views control has been implemented
  • Reslicing is implemented

Add views

  • As BrainLab system, we added some views (InPlane 0, InPlane 90 and camera view)

Add 3D camera control

  • 3D camera control has been implemented, but a minor issue still remain:
    • When we deselect the 3D camera control, the camera is not going back to original position, it only stays where it was at the end of the motion (identity matrix is not working because at the beginning camera is not at 0,0,0).
      • Fixed by creating a temp matrix to store TransformationNode, then set TransformationNode to identity, stop observing node, then restore TransformationNode
    • Camera is not updated when setting transformation matrix
      • Fixed by calling vtkMRMLLinearTransformNode::TransformModifiedEvent on the transformation matrix
  • Bug: When selecting 3D probe when no transformation selected -> Segfault

Tips