View Issue Details
|ID||Project||Category||View Status||Date Submitted||Last Update|
|0003743||Slicer4||Module Markups||public||2014-06-21 21:34||2014-06-24 06:32|
|Target Version||Fixed in Version|
|Summary||0003743: Markups under non-linear transform can break the slice viewer|
Non-linearly transformed markups may disappear and make the slice viewer unresponsive.
Probably the issue is that non-linear transforms are not always invertible and so when the user adds a transformed fiducial position in the RAS coordinate system then it may not be possible to find the non-transformed position (RAS coordinate transformed with the inverse of the transform).
A solution might be to check if TransformToWorld(TransformFromWorld(input_RAS)) == input_RAS. If not, then the inverse does not exist and we may refuse to add the fiducial at that requested RAS position (or refuse to move an existing fiducial to that RAS position).
It would be also useful to show a warning icon at the fiducial if TransformFromWorld(TransformToWorld(fiducialPosition_Local)) == fiducialPosition_Local fails for existing markup points, because it means that although the fiducial can be transformed, but the inverse transform is not available at that position. Availability of the inverse transform (TransformFromWorld) is important, because images are displayed by using that transform, so if it does not exist or not accurate then the displayed transformed fiducial position will inconsistent with the displayed transformed image.
|Tags||No tags attached.|
non-invertible-bspline.tfm (8,185 bytes)
Discussion at project week: