Page MenuHomePhabricator

Allow contouring for rotated slices
Closed, DuplicatePublic

Description

The main idea behind this feature is to be more flexible in describing an objects shape or in drawing contours by drawing them in arbitrary oriented slices.

This is currently not working.

Event Timeline

[SVN revision 28550]
ENH (#6417): branching andreas fetzer project surface interpolation

[SVN revision 28576]
ADD (#6417): Added a new Filterclass which can extract a arbitrary oriented slice out of a 3D volume

[SVN revision 28577]
ADD (#6417): Added a new Filterclass which can write a arbitrary oriented slice into a 3D volume

[SVN revision 28578]
ENH (#6417): Added a checkbox called "Remember Contour Positions". If activated, for every drawn contour, a node called "contourmarker" is added to the DataStorage, which has as data a PlanarFigure. The geometry of the PlanarFigure is same as the one of current slice, the contour is drawn in.

[SVN revision 28579]
ENH (#6417): Added a new method, which is invoked if a node with the name "contourmarker" is selected. The nodes data is a PlanarFigure. The method reorients the planes according to the geometry of the PlanarFigure.
In this way the positions of each contour is saved. This alleviates it to navigate in a rotated position, in which a contour already exists, in order to edit this contour.
I commented out markus`s fix which disables the segmentation tools if the planes are rotated, so that I can test my changes.
And I added a method which sets the bool flag m_RememberContourPosition in the ToolManager if the checkbox "Remember Contour Position" is activated.

[SVN revision 28580]
ENH (#6417): I added the bool flag m_RememberContourPosition and a Get- and Set - Method for it. Now the SegTool2D class can check whether this flag is on and decide whether a contourmarker shall be added or not.

[SVN revision 28581]
ENH (#6417): I changed the method OnMouseReleased so that it can now work with arbitrary oriented slices. Furthermore is the contour positions shall be saved, this will be done now.

[SVN revision 28582]
ENH (#6417): Changed the GetAffectedImageSliceAs2DImage method so that now arbitrary oriented slices can be extracted.
Additional i wrote a new method which adds a new contourmarker to the DataStorage.

[SVN revision 28583]
ENH (#6417): Now the region grower works with arbitrary oriented slices too. Therefor I changed the OnMouseReleased method

[SVN revision 28584]
ENH (#6417): modified the cmake file so that the necessary includes work for slice rotation

[SVN revision 28925]
ENH (#6417): Added a workaround for T6505 which caused a wrong conversion of the coordinates. Some optimization and code cleaning

[SVN revision 28926]
ENH (#6417): Some optimization and code cleaning

[SVN revision 28927]
STYLE (#6417): Some optimization and code cleaning

[SVN revision 28928]
ENH (#6417): Started writing a method which checks whether a contourmarker at a specific geometry already exists or not. If it is so no marker should be added.

[SVN revision 28932]
ENH (#6417): merge from trunk mixed with some fixes

[SVN revision 28933]
ENH (#6417): merge from trunk

[SVN revision 28941]
FIX (#6417): try to fix the mergeinfo svn props

[SVN revision 28944]
FIX (#6417): more merge properties fixed

[SVN revision 28945]
FIX (#6417): merge property fix

[SVN revision 28955]
ADD (#6417): Now drawing contours in rotated planes is possible. I wrote filterclasses which are able to extract and overwrite rotated planes out of 3D and 4D images.

Granting core modification for merge commit: no text change, just svn properties.

[SVN revision 28959]
ENH (#6417): merge from branch surface-interpolation.

Now the functionality is provided to navigate between the rotated planes. There is now a check box in the segmentation bundle, called "Remember Contour Positions". If checked for each drawn contour a marker node will be added to the data storage and by selecting this node the planes will be reoriented according to the node`s geometry.
Additional the tools region growing, erase, fill, add and subtract were adapted so that they can be used with rotated slices. Some bug fixes related to rotated contours were delete too.

[SVN revision 28961]
COMP (#6417): Fixes for build errors occurred on the continuous dartclients

[SVN revision 28962]
COMP (#6417): Fixes for build errors occurred on the continuous dartclients

[SVN revision 29015]
CHG (#6417): If drawing contours on rotated slices a warning appeared on the console that we applied a geometry to an image which is no image geometry. Now the geometry which is applied to the extracted slice is an image geometry and there is no more warning.

[SVN revision 29016]
STYLE (#6417): Deleted an unused member

[SVN revision 29479]
CHG (#6417): Changed the initialization of an extracted slice. Now every pixel outside of the underlying 3D image is set black. Before those pixel were not at all and therefore appeared white

Resetting all bugs without active assignee flag to "CONFIRMED". Change status to IN_PROGRESS if you are working on it.

Andi, do you still work on this bug? Is it already fixed?