# Can I adjust the center of orientation when using 'transform module'?

**URL:** <https://discourse.slicer.org/t/can-i-adjust-the-center-of-orientation-when-using-transform-module/857>\
**Category:** Support\
**Created:** [August 11, 2017, 4:08pm UTC](https://discourse.slicer.org/t/can-i-adjust-the-center-of-orientation-when-using-transform-module/857 "2017-08-11T16:08:52Z")\
**Posts on this page:** 4\
**Page:** 1

<div class="post-metadata">

**Author:** ![Ramttoong](https://avatars.discourse-cdn.com/v4/letter/r/edb3f5/32.png) [@Ramttoong](https://discourse.slicer.org/u/Ramttoong)\
**Post date:** [August 11, 2017, 4:08pm UTC](https://discourse.slicer.org/t/can-i-adjust-the-center-of-orientation-when-using-transform-module/857/1 "2017-08-11T16:08:52Z")

</div>

Casue I don’t know where the center of rotation is, I can’t predict the movement of them. (When using ‘transform module’)

---

<div class="post-metadata">

**Author:** ![pieper](https://sea2.discourse-cdn.com/flex002/user_avatar/discourse.slicer.org/pieper/32/8_2.png) [@pieper](https://discourse.slicer.org/u/pieper)\
**Post date:** [August 11, 2017, 7:50pm UTC](https://discourse.slicer.org/t/can-i-adjust-the-center-of-orientation-when-using-transform-module/857/2 "2017-08-11T19:50:09Z")

</div>

True, we don’t have that feature now. Best suggestion might be to write a small python script to implement rotation around a point (the necessary math is in any computer graphics book).

It could be generally useful to allow people to select a mrml node to use as the rotation point. You could add this as a feature request at [issues.slicer.org](http://issues.slicer.org).

---

<div class="post-metadata">

**Author:** ![lassoan](https://sea2.discourse-cdn.com/flex002/user_avatar/discourse.slicer.org/lassoan/32/13_2.png) [@lassoan](https://discourse.slicer.org/u/lassoan)\
**Post date:** [August 11, 2017, 8:13pm UTC](https://discourse.slicer.org/t/can-i-adjust-the-center-of-orientation-when-using-transform-module/857/3 "2017-08-11T20:13:33Z")

</div>

Manual alignment with subsequent rotations and translations is a long, iterative process. We have not invested time into trying to make it a bit less painful because there are much better methods for manual registration.

I recommend using landmark-based registration: you specify corresponding point locations in the objects that you need to align and Slicer computes the optimal transform automatically, in real-time. It is not an iterative process, but a fast, direct method that optimizes translation and rotation simultaneously (and you may also allow scaling, shearing, or local warping).

If you need to register slightly misaligned images then use `Landmark registration` module. If you need to register highly misaligned images or other objects then use `Fiducial registration wizard` module in `SlicerIGT` extension.

---

<div class="post-metadata">

**Author:** ![Michael\_Hardisty](https://sea2.discourse-cdn.com/flex002/user_avatar/discourse.slicer.org/michael_hardisty/32/1593_2.png) [@Michael\_Hardisty](https://discourse.slicer.org/u/Michael_Hardisty)\
**Post date:** [August 11, 2017, 8:48pm UTC](https://discourse.slicer.org/t/can-i-adjust-the-center-of-orientation-when-using-transform-module/857/4 "2017-08-11T20:48:11Z")

</div>

Hi Woo-ram,

We have done something similar to what you are suggesting by nesting  
transforms. We created ‘local’ rotations by rotating an object that was  
already translated to the origin. We then put the rotating transform  
within another transform that translated it back to position. The effect  
is that rotations appear to be local, when adjusting the sliders in the  
transform editor.

Michael
