# How is orientation calculated in the ImageCPRMapper example?

**URL:** https://discourse.vtk.org/t/how-is-orientation-calculated-in-the-imagecprmapper-example/15782
**Category:** Web
**Created:** [July 3, 2025, 10:19am UTC](https://discourse.vtk.org/t/how-is-orientation-calculated-in-the-imagecprmapper-example/15782 "2025-07-03T10:19:44Z")
**Posts on this page:** 2
**Page:** 1

<div class="post-metadata">

### Author: ![Anultra](https://discourse.vtk.org/user_avatar/discourse.vtk.org/anultra/32/9428_2.png) [@Anultra](https://discourse.vtk.org/u/Anultra)
#### Post date: [July 3, 2025, 10:19am UTC](https://discourse.vtk.org/t/how-is-orientation-calculated-in-the-imagecprmapper-example/15782/1 "2025-07-03T10:19:44Z")

</div>

I build the orthogonal matrix according to the conventional calculation method of tangent, bitangent and normal, but the JSON format is different from the example.  
I also tried frenet-serret-frames, I don’t know if I did something wrong, please help me

---

<div class="post-metadata">

### Author: ![finetjul](https://discourse.vtk.org/user_avatar/discourse.vtk.org/finetjul/32/154_2.png) [@finetjul](https://discourse.vtk.org/u/finetjul)
#### Post date: [July 3, 2025, 1:52pm UTC](https://discourse.vtk.org/t/how-is-orientation-calculated-in-the-imagecprmapper-example/15782/2 "2025-07-03T13:52:38Z")

</div>

what happens is you swap tangent with bi-tangent ?
