# How to extract points(edges) from a 3D surface model?

**URL:** <https://discourse.slicer.org/t/how-to-extract-points-edges-from-a-3d-surface-model/25716>\
**Category:** Support\
**Created:** [October 15, 2022, 7:36am UTC](https://discourse.slicer.org/t/how-to-extract-points-edges-from-a-3d-surface-model/25716 "2022-10-15T07:36:35Z")\
**Posts on this page:** 7\
**Page:** 1

<div class="post-metadata">

**Author:** ![Chm](https://sea2.discourse-cdn.com/flex002/user_avatar/discourse.slicer.org/chm/32/16855_2.png) [@Chm](https://discourse.slicer.org/u/Chm)\
**Post date:** [October 15, 2022, 7:36am UTC](https://discourse.slicer.org/t/how-to-extract-points-edges-from-a-3d-surface-model/25716/1 "2022-10-15T07:36:35Z")

</div>

Dear all,

I have hollow 3D objects and i need to to extract all the points(edges) from their surfuces in order to calculate the mean distance.

How can i extract all these points ?

Thanks a lot,  
Chris

---

<div class="post-metadata">

**Author:** ![jumbojing](https://sea2.discourse-cdn.com/flex002/user_avatar/discourse.slicer.org/jumbojing/32/10811_2.png) [@jumbojing](https://discourse.slicer.org/u/jumbojing)\
**Post date:** [October 15, 2022, 12:45pm UTC](https://discourse.slicer.org/t/how-to-extract-points-edges-from-a-3d-surface-model/25716/2 "2022-10-15T12:45:32Z")

</div>

slicer.util.array(“modelName”)

---

<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:** [October 15, 2022, 5:20pm UTC](https://discourse.slicer.org/t/how-to-extract-points-edges-from-a-3d-surface-model/25716/3 "2022-10-15T17:20:30Z")

</div>

Do you yoy ant to compute distance between two surface meshes?

---

<div class="post-metadata">

**Author:** ![Chm](https://sea2.discourse-cdn.com/flex002/user_avatar/discourse.slicer.org/chm/32/16855_2.png) [@Chm](https://discourse.slicer.org/u/Chm)\
**Post date:** [October 15, 2022, 5:26pm UTC](https://discourse.slicer.org/t/how-to-extract-points-edges-from-a-3d-surface-model/25716/4 "2022-10-15T17:26:19Z")

</div>

Yes correct, the mean distance between all the surfaces points of the two models.  
Thanks  
Chris

---

<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:** [October 15, 2022, 6:41pm UTC](https://discourse.slicer.org/t/how-to-extract-points-edges-from-a-3d-surface-model/25716/5 "2022-10-15T18:41:33Z")

</div>

You can use ModelToModelDistance extension for this.

---

<div class="post-metadata">

**Author:** ![Chm](https://sea2.discourse-cdn.com/flex002/user_avatar/discourse.slicer.org/chm/32/16855_2.png) [@Chm](https://discourse.slicer.org/u/Chm)\
**Post date:** [October 15, 2022, 10:34pm UTC](https://discourse.slicer.org/t/how-to-extract-points-edges-from-a-3d-surface-model/25716/6 "2022-10-15T22:34:37Z")

</div>

Thanks a lot Andras  
I will check it

---

<div class="post-metadata">

**Author:** ![jumbojing](https://sea2.discourse-cdn.com/flex002/user_avatar/discourse.slicer.org/jumbojing/32/10811_2.png) [@jumbojing](https://discourse.slicer.org/u/jumbojing)\
**Post date:** [October 16, 2022, 12:31am UTC](https://discourse.slicer.org/t/how-to-extract-points-edges-from-a-3d-surface-model/25716/7 "2022-10-16T00:31:30Z")

</div>

e.g.:

```auto
mod1Arr = slicer.util.array("model1Name")
mod2Arr = slicer.util.array("model2Name")
# the mean distance can be calculated by the center of mass
mod1Cen = np.mean(mod1Arr, axis=0)
mod2Cen = np.mean(mod2Arr, axis=0)
meanDist = np.linalg.norm(mod2Cen - mod1Cen)

```

The nearest distance may be found by “ModelToModelDistance extension” as followed by @lassoan …
