# How to compute bifurcation angles in Slicer?

**URL:** https://discourse.slicer.org/t/how-to-compute-bifurcation-angles-in-slicer/25577
**Category:** VMTK
**Created:** [October 6, 2022, 2:31pm UTC](https://discourse.slicer.org/t/how-to-compute-bifurcation-angles-in-slicer/25577 "2022-10-06T14:31:07Z")
**Posts on this page:** 3
**Page:** 1

<div class="post-metadata">

### Author: ![tim](https://avatars.discourse-cdn.com/v4/letter/t/ce73a5/32.png) [@tim](https://discourse.slicer.org/u/tim)
#### Post date: [October 6, 2022, 2:31pm UTC](https://discourse.slicer.org/t/how-to-compute-bifurcation-angles-in-slicer/25577/1 "2022-10-06T14:31:07Z")

</div>

Hi,

my goal is to compute centerlines, diameters and bifurcation angles of a vascular tree using Slicer and its Python interactor.

I managed to compute both centerlines and diameters using the vmtk scripted modules.  
However, I am not sure how to extract the bifurcation angles. Here’s what I’ve tried so far:

Following the vmtk [tutorial](http://www.vmtk.org/tutorials/GeometricAnalysis.html) I set up the following workflow:

1. Compute centerlines using ExtractCenterline scripted module → Output: centerline
2. Split up centerline into separate branches using branch extractor script → Output: branchCenterlines
3. Compute bifurcation reference systems using branchCenterlines → Output: reference systems
4. Compute bifurcation vectors using branchCenterlines and reference systems

For steps 2-4, I use the code found in the “Execute()” method of the respective vmtk script (e.g. from [here](https://github.com/vmtk/vmtk/blob/master/vmtkScripts/vmtkbifurcationreferencesystems.py))

My code runs without any errors but I cannot really make sense of the output (-\> centerlineBifurcationVectors.GetOutput()) so I am wondering if what I am doing is correct.

My questions are:

1. Is my workflow / approach for computing the bifurcation angles correct?
2. If yes, how can I use the output of the bifurcation vectors computation to find the bifurcation angles?

Thanks a lot in advance!

---

<div class="post-metadata">

### Author: ![Bob\_Cieri](https://sea2.discourse-cdn.com/flex002/user_avatar/discourse.slicer.org/bob_cieri/32/69417_2.png) [@Bob\_Cieri](https://discourse.slicer.org/u/Bob_Cieri)
#### Post date: [February 20, 2024, 11:02pm UTC](https://discourse.slicer.org/t/how-to-compute-bifurcation-angles-in-slicer/25577/2 "2024-02-20T23:02:31Z")

</div>

Hi Tim,

Did you ever get this to work? I’m interested in doing something similar and have been playing around with VMTK.

Bob

---

<div class="post-metadata">

### Author: ![aabrown100-git](https://sea2.discourse-cdn.com/flex002/user_avatar/discourse.slicer.org/aabrown100-git/32/82187_2.png) [@aabrown100-git](https://discourse.slicer.org/u/aabrown100-git)
#### Post date: [September 4, 2026, 7:39pm UTC](https://discourse.slicer.org/t/how-to-compute-bifurcation-angles-in-slicer/25577/3 "2026-09-04T19:39:48Z")

</div>

Hi all, I just made a PR that addresses this need: [Add junction angle quantification to Centerline disassembly by aabrown100-git · Pull Request #195 · vmtk/SlicerExtension-VMTK · GitHub](https://github.com/vmtk/SlicerExtension-VMTK/pull/195/commits). Please try it out and let me know if it needs any modifications or extensions
