# Move Point to reach Surface

**URL:** https://forum.dynamobim.com/t/move-point-to-reach-surface/68285
**Category:** Revit
**Tags:** revit, dynamo
**Created:** [September 16, 2021, 4:05pm UTC](https://forum.dynamobim.com/t/move-point-to-reach-surface/68285 "2021-09-16T16:05:29Z")
**Posts on this page:** 5
**Page:** 1

<div class="post-metadata">

### Author: ![TCKEAHY](https://avatars.discourse-cdn.com/v4/letter/t/7993a0/32.png) [@TCKEAHY](https://forum.dynamobim.com/u/TCKEAHY)
#### Post date: [September 16, 2021, 4:05pm UTC](https://forum.dynamobim.com/t/move-point-to-reach-surface/68285/1 "2021-09-16T16:05:29Z")

</div>

Greeting. I am working a task that need to move points so they are placed at corresponded surfaces.

(Some Points are already on the surface as you can see some of the distance are 0).

What I only know is to obtain their distance while I dont know how to move it by the correct direction/vector.

So my question is how to obtain the vector between points and surfaces? Do I need to do something first (e.g. change Surface to Plane.etc.) ? Thanks for your help

P.S. the z coordinates of points are not needed to change.

 ![image](https://us1.discourse-cdn.com/flex022/uploads/dynamobim/original/3X/f/a/fa3b335a87bfb30b0a31c40eedc75bda6cb468dd.png)

---

<div class="post-metadata">

### Author: ![Nick\_Boyts](https://sea2.discourse-cdn.com/flex022/user_avatar/forum.dynamobim.com/nick_boyts/32/76313_2.png) [@Nick\_Boyts](https://forum.dynamobim.com/u/Nick_Boyts)
#### Post date: [September 16, 2021, 5:42pm UTC](https://forum.dynamobim.com/t/move-point-to-reach-surface/68285/2 "2021-09-16T17:42:37Z")

</div>

You actually want to be using `Surface.ProjectInputOnto`. As long as the direction for all points is along the same axis, you don’t actually need to know the specifics of positive or negative. Dynamo will still move the points onto the surface in the appropriate direction. If you don’t know the axis, or it can change, you can try pulling the geometry perpendicular to the surface. This requires you to convert the points to curves, but then you can convert them back.

 ![image](https://us1.discourse-cdn.com/flex022/uploads/dynamobim/original/3X/f/9/f9082e274d93b3cdae6759ffd19276f98e90390a.png)

---

<div class="post-metadata">

### Author: ![Steven](https://sea2.discourse-cdn.com/flex022/user_avatar/forum.dynamobim.com/steven/32/112504_2.png) [@Steven](https://forum.dynamobim.com/u/Steven)
#### Post date: [September 16, 2021, 6:02pm UTC](https://forum.dynamobim.com/t/move-point-to-reach-surface/68285/3 "2021-09-16T18:02:50Z")

</div>

If your points are all over the place and need to be projected at different angles you can also try _ClosestPointTo_.

[https://dictionary.dynamobim.com/#/Geometry/Geometry/Action/ClosestPointTo](https://dictionary.dynamobim.com/#/Geometry/Geometry/Action/ClosestPointTo)

---

<div class="post-metadata">

### Author: ![honeyjain619](https://sea2.discourse-cdn.com/flex022/user_avatar/forum.dynamobim.com/honeyjain619/32/121215_2.png) [@honeyjain619](https://forum.dynamobim.com/u/honeyjain619)
#### Post date: [September 17, 2021, 4:54am UTC](https://forum.dynamobim.com/t/move-point-to-reach-surface/68285/4 "2021-09-17T04:54:21Z")

</div>

Hello @TCKEAHY ,  
You can find the closest point on the surface from a particular points, then you can extract the direction also, (direction between 2 points)

 ![image](https://us1.discourse-cdn.com/flex022/uploads/dynamobim/original/3X/2/6/26f00f9af383c8c54e91ed3edd4875e6d940f49c.png)

---

<div class="post-metadata">

### Author: ![TCKEAHY](https://avatars.discourse-cdn.com/v4/letter/t/7993a0/32.png) [@TCKEAHY](https://forum.dynamobim.com/u/TCKEAHY)
#### Post date: [September 17, 2021, 3:08pm UTC](https://forum.dynamobim.com/t/move-point-to-reach-surface/68285/5 "2021-09-17T15:08:42Z")

</div>

Thank you all. It works
