[IGSTK-Users] How to get the ImageSpatialObject from an ImageSpatialObjectRepresentation

Luis Ibanez luis.ibanez at kitware.com
Thu Mar 13 10:58:59 EDT 2008


Hi Vincent,

You will need a single ImageSpatialObject, and you will need
one ImageObjectRepresentation *for each* View where you want
to display the image.

About creating bug,
please create your account in the MANTIS bug tracker
(just need to provide your email)

    http://public.kitware.com/Bug/my_view_page.php


Then do the following:

   * Login in the NANTIS system
   * Select the IGSTK project on the upper right menu
   * Click on "Report Issue"



Please let us know if you run into any difficulty while
reporting the bug.


    Thanks


       Luis



------------------------
Vincent Gratsac wrote:
> Hi Luis,
> 
> Thank you for your help.
> 
> The solutions you described here seems to be a right way to do.
> However, this means that we still have to store the corresponding 
> ImageSpatialObject for each ImageObjectRepresentation, isn't it ?
> 
> I don't know where to log it as a bug. Could you tell me how to do ?
> 
> Vincent.
> 
> Luis Ibanez wrote:
> 
>>
>>
>> Hi Vincent,
>>
>>
>> Thanks for pointing this out.
>>
>>
>> What we are planning to do here is the following:
>>
>> 1) Views, in response to picking events will throw
>>    IGSTK PointEvents, that will contain both a Point
>>    and a reference to a coordinate system (the one
>>    of the View).
>>
>> 2) You will be able to request the Transform between
>>    the View CoordinateSystem and the ImageSpatialObject
>>    pixel data coordinate system.
>>
>> 3) With the Transform you will get from (2), you will
>>    be able to convert the point from the View coordinate
>>    system to the ImageSpatialObject pixel data coordinate
>>    system
>>
>> 4) Once you have the point in image space, you will be
>>    able to map it to pixel indices and access (read only)
>>    pixel data.
>>
>>
>> Pieces (1),(3) and (4) need to be implemented.
>> Piece (2) is currently functional
>>
>>
>> Could you please log a bug, for this topic ?
>>
>> You could describe it as "fixing the coordinate system
>> framework for picking events".
>>
>> ... or something along those lines...
>>
>>
>> BTW: Breaking the encapsulation of the ImageObjectRepresentation
>>      is probably not the best way to solve this issue.
>>
>>
>>
>>    Thanks
>>
>>
>>       Luis
>>
>>
>>
>> ---------------------
>> Vincent Gratsac wrote:
>>
>>> Hi all,
>>>
>>> First of all, thanks for the great effort of the IGSTK team to bring 
>>> us this new release !
>>>
>>> I did not receive any answer to my last mail about how to get the 
>>> ImageSpatialObject from an ImageObjectRepresentation.
>>>
>>> Did you understand my problem, and do you think that adding a 
>>> RequestGetImageSpatialObject() method to the 
>>> ImageObjectRepresentation class would be possible ?
>>>
>>> Vincent
>>>
>>>> Hi all,
>>>>
>>>> I'm currently working on slicing of displayed objects by giving a 
>>>> picked point.
>>>> The NeedleBiopsy example is helpful to learn how to do that !
>>>> Here is my problem : my software can display some 
>>>> ObjectRepresentations for more than one SpatialObjects, but I'm not 
>>>> able to know to which ImageSpatialObject an 
>>>> ImageSpatialObjectRepresentation is related.
>>>>
>>>> This is a problem when we try to convert a physical point to image 
>>>> indexes ( that's why I submitted the idea to add a 
>>>> ResliceToPhysicalPoint method in the 
>>>> ImageSpatialObjectRepresentation class).
>>>>
>>>> This is also a problem if the transformation between one of the 
>>>> ImageSpatialObjects and the View object differs from Identity. In 
>>>> this case, I need to get this transformation and multiply its 
>>>> inverse to the picked point's coordinates, in order to express the 
>>>> picked point's coordinates in the ImageSpatialObject coordinate 
>>>> system. Next, I will have to convert the physical point to image index.
>>>>
>>>> To conclude, I found some cases in which getting the 
>>>> ImageSpatialObject from an ImageSpatialObjectRepresentation is very 
>>>> useful. Is there a way to do it , or would it be unsafe to add such 
>>>> a method ?
>>>>
>>>> Vincent
>>>
>>>
>>>
> 



More information about the IGSTK-Users mailing list