# Finding the displacement of a bone between neutral and condition

**URL:** <https://discourse.slicer.org/t/finding-the-displacement-of-a-bone-between-neutral-and-condition/19233>\
**Category:** Support\
**Created:** [August 17, 2021, 3:43pm UTC](https://discourse.slicer.org/t/finding-the-displacement-of-a-bone-between-neutral-and-condition/19233 "2021-08-17T15:43:27Z")\
**Posts on this page:** 2\
**Page:** 1

<div class="post-metadata">

**Author:** ![matsuba8](https://avatars.discourse-cdn.com/v4/letter/m/59ef9b/32.png) [@matsuba8](https://discourse.slicer.org/u/matsuba8)\
**Post date:** [August 17, 2021, 3:43pm UTC](https://discourse.slicer.org/t/finding-the-displacement-of-a-bone-between-neutral-and-condition/19233/1 "2021-08-17T15:43:27Z")

</div>

Hello!  
I’m still quite new to Slicer and wanted to post in this forum to see if someone could assist me.  
I am using Slicer to perform some analysis for a research project. Our objective is to examine the displacement of a bone graft placed in the femur at the knee, when subjected to specific loads (i.e. how much the bone graft moves from neutral to loaded).  
So far, I have registered the volumes based on the position of the femur, and now would like to compute the difference in positions of the femoral bone blocks between the neutral and loaded scans.

Based on what I’ve gathered, the best way to do this is to manually segment the bone block in each scan, export them to models, and use IGT Model Registration to find the displacement. While this was a successful method, we would like the outcome measures to be in terms of a axes system which is oriented based on the bone block rather than the global coordinate system. Please see images below.

 ![axes of global coordinate system](https://us1.discourse-cdn.com/flex002/uploads/slicer/original/3X/0/1/010147bea38170fff5263fc82655baec2f04c094.jpeg)  
 ![axes oriented based on bone block](https://us1.discourse-cdn.com/flex002/uploads/slicer/original/3X/c/f/cf9387b3b182c7a57a64aa87b2aae0982c00c6cf.jpeg)  
The reason for this is because we want the rotational values to be based off of the true axes of the bone block.

I have tried manually/visually rotating and translating the bone block in the global space, but I believe there is too much human error involved to make this a reliable method.  
I would greatly appreciate it if anybody could offer some advice.  
Thank you.

Michele

---

<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:** [September 3, 2021, 1:47am UTC](https://discourse.slicer.org/t/finding-the-displacement-of-a-bone-between-neutral-and-condition/19233/2 "2021-09-03T01:47:51Z")

</div>

For future reference the issue is discussed in this topic:

> [@Creating a new coordinate system](https://discourse.slicer.org/t/creating-a-new-coordinate-system/19446):
>
> Hello all, I am trying to create a local coordinate system within the global coordinate system in order to compute the displacement of a bone block between two different scans. The reason why the global coordinate system does not suffice is because I would like the rotational displacement of the bone block to be in terms of the orientation of the reference bone block rather than the global space. Could someone please provide some guidance on how to create a local coordinate system? Thank you …
