# Interaction Handle for one Fiducial connected to a Model

**URL:** <https://discourse.slicer.org/t/interaction-handle-for-one-fiducial-connected-to-a-model/14483>\
**Category:** Support\
**Created:** [November 7, 2020, 10:07pm UTC](https://discourse.slicer.org/t/interaction-handle-for-one-fiducial-connected-to-a-model/14483 "2020-11-07T22:07:07Z")\
**Posts on this page:** 13\
**Page:** 1

<div class="post-metadata">

**Author:** ![mau\_igna\_06](https://sea2.discourse-cdn.com/flex002/user_avatar/discourse.slicer.org/mau_igna_06/32/9056_2.png) [@mau\_igna\_06](https://discourse.slicer.org/u/mau_igna_06)\
**Post date:** [November 7, 2020, 10:07pm UTC](https://discourse.slicer.org/t/interaction-handle-for-one-fiducial-connected-to-a-model/14483/1 "2020-11-07T22:07:07Z")

</div>

I connected the PointModifiedEvent of a fiducial list to a function to update a transform that is applied to a model so that the model’s origin is the position of the first fiducial point on the list. In other words, I made the model follow the 1st fiducial point position.

I have seen the Interaction handles on the display collapsable botton of the Markups module.  
And I’d like to use it but only to move the 1st fiducial of the list, not all the fiducials on the list (I’d like the interaction handles to be positioned over the 1st fiducial of the list, not over the gravity center of the list). Also I’d like to use the rotation handles to rotate the model around the 1st fiducial on the list.  
Can all these things be done? I suspect there is signal send by the interaction handles that I could use

---

<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:** [November 8, 2020, 5:10am UTC](https://discourse.slicer.org/t/interaction-handle-for-one-fiducial-connected-to-a-model/14483/2 "2020-11-08T05:10:51Z")

</div>

We’ll add a transform widget that will support the features that you describe, probably within a few months. Until then, I would recommend to use a markups plane node to specify position/orientation using the interaction handles (you can hide the plane itself). You can get the transform corresponding to the position/orientation of the plane using [GetPlaneToWorldMatrix](https://apidocs.slicer.org/master/classvtkMRMLMarkupsPlaneNode.html#aee11e275c748479d7a7232f36e291563) method.

---

<div class="post-metadata">

**Author:** ![mau\_igna\_06](https://sea2.discourse-cdn.com/flex002/user_avatar/discourse.slicer.org/mau_igna_06/32/9056_2.png) [@mau\_igna\_06](https://discourse.slicer.org/u/mau_igna_06)\
**Post date:** [November 16, 2020, 10:51pm UTC](https://discourse.slicer.org/t/interaction-handle-for-one-fiducial-connected-to-a-model/14483/3 "2020-11-16T22:51:40Z")

</div>

It’s a good workaround but at last the interaction handles didn’t give me the fine adjustment I was looking for. So I’ll have to wait for the new widget to come

---

<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:** [November 16, 2020, 11:19pm UTC](https://discourse.slicer.org/t/interaction-handle-for-one-fiducial-connected-to-a-model/14483/4 "2020-11-16T23:19:17Z")

</div>

What kind of fine adjustment were you looking for?

---

<div class="post-metadata">

**Author:** ![mau\_igna\_06](https://sea2.discourse-cdn.com/flex002/user_avatar/discourse.slicer.org/mau_igna_06/32/9056_2.png) [@mau\_igna\_06](https://discourse.slicer.org/u/mau_igna_06)\
**Post date:** [November 16, 2020, 11:44pm UTC](https://discourse.slicer.org/t/interaction-handle-for-one-fiducial-connected-to-a-model/14483/5 "2020-11-16T23:44:19Z")

</div>

I have to ask for permission to upload a video to show you Andras

---

<div class="post-metadata">

**Author:** ![mau\_igna\_06](https://sea2.discourse-cdn.com/flex002/user_avatar/discourse.slicer.org/mau_igna_06/32/9056_2.png) [@mau\_igna\_06](https://discourse.slicer.org/u/mau_igna_06)\
**Post date:** [November 17, 2020, 1:59am UTC](https://discourse.slicer.org/t/interaction-handle-for-one-fiducial-connected-to-a-model/14483/6 "2020-11-17T01:59:59Z")

</div>

A widget like the one with arrows in the [video](https://youtu.be/bxgalMFUhLg) would be great. It is good because every touch just makes a small movement to the model

---

<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:** [November 17, 2020, 2:48am UTC](https://discourse.slicer.org/t/interaction-handle-for-one-fiducial-connected-to-a-model/14483/7 "2020-11-17T02:48:13Z")

</div>

I’m not sure what of that is shown in the video looks appealing to you. Pushbuttons that make the object position small amount may be OK on a touchscreen (because it may be hard to slide the finger in gloves and the finger may also occlude the image), but it would be terrible to use with a mouse. If you mean translation/rotation along world axis (instead of object axis), we plan to have that option in the transform widget.

---

<div class="post-metadata">

**Author:** ![mau\_igna\_06](https://sea2.discourse-cdn.com/flex002/user_avatar/discourse.slicer.org/mau_igna_06/32/9056_2.png) [@mau\_igna\_06](https://discourse.slicer.org/u/mau_igna_06)\
**Post date:** [November 17, 2020, 1:30pm UTC](https://discourse.slicer.org/t/interaction-handle-for-one-fiducial-connected-to-a-model/14483/8 "2020-11-17T13:30:19Z")

</div>

Your points are very valid Andras. I forgot to mention that I found somewhat of a bug in the Interaction Handle: If you make very small movements very slowly it recoils and incorporates unacceptable errors to the intended translation/rotation. You can place a fiducial, turn on the interaction handles and recreate this bug very easely.

---

<div class="post-metadata">

**Author:** ![mau\_igna\_06](https://sea2.discourse-cdn.com/flex002/user_avatar/discourse.slicer.org/mau_igna_06/32/9056_2.png) [@mau\_igna\_06](https://discourse.slicer.org/u/mau_igna_06)\
**Post date:** [November 17, 2020, 9:27pm UTC](https://discourse.slicer.org/t/interaction-handle-for-one-fiducial-connected-to-a-model/14483/9 "2020-11-17T21:27:42Z")

</div>

Andras were you able to reproduce the bug?

---

<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:** [November 17, 2020, 10:00pm UTC](https://discourse.slicer.org/t/interaction-handle-for-one-fiducial-connected-to-a-model/14483/10 "2020-11-17T22:00:31Z")

</div>

Yes, I know about this bug (markups jumps when translated using the arrows in the interaction widget), it is a minor thing but still annoying.

@Sunderlandkyl do you know about this problem? I think somebody reported this before, but I could not find an issue on github. It would be nice if you could fix it. Thank you!

---

<div class="post-metadata">

**Author:** ![Sunderlandkyl](https://sea2.discourse-cdn.com/flex002/user_avatar/discourse.slicer.org/sunderlandkyl/32/79987_2.png) [@Sunderlandkyl](https://discourse.slicer.org/u/Sunderlandkyl)\
**Post date:** [November 17, 2020, 10:04pm UTC](https://discourse.slicer.org/t/interaction-handle-for-one-fiducial-connected-to-a-model/14483/11 "2020-11-17T22:04:08Z")

</div>

Sure, the issue tracking the bug is here: [https://github.com/Slicer/Slicer/issues/5257](https://github.com/Slicer/Slicer/issues/5257)

---

<div class="post-metadata">

**Author:** ![manjula](https://sea2.discourse-cdn.com/flex002/user_avatar/discourse.slicer.org/manjula/32/80981_2.png) [@manjula](https://discourse.slicer.org/u/manjula)\
**Post date:** [October 24, 2021, 4:49pm UTC](https://discourse.slicer.org/t/interaction-handle-for-one-fiducial-connected-to-a-model/14483/12 "2021-10-24T16:49:34Z")

</div>

> [@lassoan](#):
>
> We’ll add a transform widget that will support the features that you describe, probably within a few months.

Is SetHandlesInteractive for Models implemented yet?

Is there an easier way of enabling interactive handles for models?

thank you

---

<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:** [October 24, 2021, 5:17pm UTC](https://discourse.slicer.org/t/interaction-handle-for-one-fiducial-connected-to-a-model/14483/13 "2021-10-24T17:17:56Z")

</div>

For now you could just put the model in a transform.
