View Issue Details

IDProjectCategoryView StatusLast Update
0003818Slicer4Module Transformspublic2014-08-26 15:24
ReportermatthieuheitzAssigned Tolassoan 
Status resolvedResolutionduplicate 
Product VersionSlicer 4.3.1 
Target VersionFixed in Version 
Summary0003818: Problem with hardening 4th diagonal value (scaling) of the transform matrix

There are 2 problems I think here, or only one, but there are two different and non consistent behaviors.
I'll call the "scaling value" the 4th diagonal value in the transform matrix.

1st : With a volume

  • Visualize a volume in the 3D window
  • Create a new transform, and put the volume in the Transformed column.
  • If you change the scaling value, nothing changes in the visualization.
  • If you change any of the 3 other diag values, it changes something.

--> Hardened transform consistent with visualized transform, but both doesn't take in account the scaling value (4th diag value). I think they should.

2nd : With a model

  • Visualize a model in the 3D window
  • Create a new transform, and put the model in the Transformed column.
  • If you change the scaling value, it changes in the visualization, as it should : value "10" downscale the model by 10.
  • Now put 10 for every diagonal values. The visualization shows the same thing as if it was an identity matrix, which appears normal.
  • Now harden this transform, the model is upscaled by 10, so it means that the scaling value hasn't been taken in account.

--> Hardened transform non consistent with visualized transform :

  • Visualized : takes in account the scaling value
  • Hardened : doesn't take in account the scaling value
TagsNo tags attached.


duplicate of 0001915 assignedjcfr Effect of matrix bottom row in Transforms module 




2014-08-26 15:24

developer   ~0012424

Thanks for reporting this. I agree that inconsistency is not acceptable. As effectively we cannot have anything else than (0,0,0,1) in the last row of the transformation matrix (see some explanation in 0001915), we should prevent setting these values. The last row should not be editable from the GUI and maybe few checks could be added at critical places (but make sure performance is not impacted; in IGT applications each linear transform may be updated at 30-50 per second).

I think this issue is a duplicate of 0001915, reopen or add comments if you don't agree.

Issue History

Date Modified Username Field Change
2014-08-26 05:40 matthieuheitz New Issue
2014-08-26 05:40 matthieuheitz Status new => assigned
2014-08-26 05:40 matthieuheitz Assigned To => lassoan
2014-08-26 15:24 lassoan Note Added: 0012424
2014-08-26 15:24 lassoan Relationship added duplicate of 0001915
2014-08-26 15:24 lassoan Duplicate ID 0 => 1915
2014-08-26 15:24 lassoan Status assigned => resolved
2014-08-26 15:24 lassoan Resolution open => duplicate