<br>Hi.<br><br>ITK transforms are usually one-way transforms, no matter&nbsp;which&nbsp;direction&nbsp;you&nbsp;use&nbsp;them&nbsp;for. Transform just takes point from input space and returns corresponding point from output space. So, if you use CartesianToPolar transform (
<a href="http://insight-journal.org/InsightJournalManager/view_reviews.php?back=publications.php%3Fjournalid%3D6%26order%3Drating%26revision_display%3Dcombined&amp;pubid=130" target="_blank" onclick="return top.js.OpenExtLink(window,event,this)">
http://insight-journal.org/InsightJournalManager/view_reviews.php?back=publications.php%3Fjournalid%3D6%26order%3Drating%26revision_display%3Dcombined&amp;pubid=130</a>), you can transform POINTS from cartesian space to polar space.
<br><br>The other thing is how transforms are used in registration framework and by ResampleImageFilter to resample IMAGES. In these cases, transforms are used to map points from output image space to input image space to guarantee that the output image space is fully covered. Input space of a transform corresponds to output image&#39;s space and output space of transform corresponds to input image&#39;s space.
<br><br>So if you want to transform image from cartesian coordinates to polar coordinates, you need to use ResampleImageFilter with PolarToCartesian transform. As resample filter is filling values into output image, it asks transform to give for the current voxel of the output image coordinates of corresponding point in the input image. This is what is called BACKWARD MAPPING. If we would like to use FORWARD mapping, we would result with output with discontinuities.
<br><br>HTH<br><br>&nbsp;&nbsp;&nbsp; Jakub<br><br><br><br><div><span class="gmail_quote">2007/3/11, Ali - &lt;
<a href="mailto:saveez@hotmail.com" target="_blank" onclick="return top.js.OpenExtLink(window,event,this)">saveez@hotmail.com</a>&gt;:</span><blockquote class="gmail_quote" style="border-left: 1px solid rgb(204, 204, 204); margin: 0pt 0pt 0pt 0.8ex; padding-left: 1ex;">

<div><div style="text-align: left;">Hi,<br><br>For whatever reason, itk::Transform only likes backward transforms (mapping from<br>output to input). This is not just confusing for newbies, but sort of a bad base for many
<br>
other things.<br><br>Assume you want to do a Cartesian-to-polar transform. One way is to sub-class from<br>itk::Transform and call the class like itk::CartesianToPolarTransform and, in a funny way,<br>ask your users with a big notice to use this class for the *backward* transform.
<br><br>One more serious problem with this is that the backward transform does not always work<br>the way that it is expected to.<br><br>How is it possible to the itk::transform in a FORWARD way?<br></div><br><hr>Get news, entertainment and everything you care about at 
<a href="http://Live.com" target="_blank" onclick="return top.js.OpenExtLink(window,event,this)">Live.com</a>.  <a href="http://www.live.com/getstarted.aspx+" target="_blank" onclick="return top.js.OpenExtLink(window,event,this)">

Check it out!</a></div><br>_______________________________________________<br>Insight-users mailing list<br><a href="mailto:Insight-users@itk.org" target="_blank" onclick="return top.js.OpenExtLink(window,event,this)">Insight-users@itk.org
</a><br><a href="http://www.itk.org/mailman/listinfo/insight-users" target="_blank" onclick="return top.js.OpenExtLink(window,event,this)">http://www.itk.org/mailman/listinfo/insight-users</a><br><br></blockquote></div><br>