# Centroid determination

**URL:** <https://discourse.slicer.org/t/centroid-determination/3541>\
**Category:** Support\
**Tags:** segmentation\
**Created:** [July 20, 2018, 12:59pm UTC](https://discourse.slicer.org/t/centroid-determination/3541 "2018-07-20T12:59:52Z")\
**Posts on this page:** 1\
**Showing post:** 7

<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 23, 2020, 2:16am UTC](https://discourse.slicer.org/t/centroid-determination/3541/7 "2020-09-23T02:16:44Z")

</div>

Thank you for sharing the solution! You can use `slicer.util` helper functions to simplify things a bit:

```auto
modelNode = slicer.util.getNode(‘ModelX’)
pointCoordinates = slicer.util.arrayFromModelPoints(modelNode)
import numpy as np
print(np.average(vtk_to_numpy(pd), axis=0))

```

or even shorter (a bit less explicit, so I would only recommend for testing and troubleshooting, not in modules):

```auto
import numpy as np
print(np.average(array('ModelX'), axis=0))

```

---

_[View the full topic](https://discourse.slicer.org/t/centroid-determination/3541)._
