# PullCurve fails miserably on that one

**URL:** <https://discourse.mcneel.com/t/pullcurve-fails-miserably-on-that-one/173043>\
**Category:** Grasshopper\
**Tags:** windows\
**Created:** [January 10, 2024, 4:54pm UTC](https://discourse.mcneel.com/t/pullcurve-fails-miserably-on-that-one/173043 "2024-01-10T16:54:07Z")\
**Posts on this page:** 20\
**Page:** 1

<div class="post-metadata">

**Author:** ![osuire](https://sea3.discourse-cdn.com/mcneel/user_avatar/discourse.mcneel.com/osuire/32/656689_2.png) [@osuire](https://discourse.mcneel.com/u/osuire)\
**Post date:** [January 10, 2024, 4:54pm UTC](https://discourse.mcneel.com/t/pullcurve-fails-miserably-on-that-one/173043/1 "2024-01-10T16:54:07Z")

</div>

Only half of that SIMPLE curve is pulled to that SIMPLE surface.

 ![240110_IMG_Pull pulls half of curve only](https://global.discourse-cdn.com/mcneel/uploads/default/original/4X/e/f/7/ef723df1dbd0214eef90288591b48d35dcc78e5e.jpeg)  
[240110\_PROG\_Pull pulls half of curve only.gh](https://discourse.mcneel.com/uploads/short-url/yla2st5DSyf0BbxnSwoMayfknmQ.gh) (6.7 KB)

---

<div class="post-metadata">

**Author:** ![Joseph\_Oster](https://sea3.discourse-cdn.com/mcneel/user_avatar/discourse.mcneel.com/joseph_oster/32/549124_2.png) [@Joseph\_Oster](https://discourse.mcneel.com/u/Joseph_Oster)\
**Post date:** [January 10, 2024, 5:40pm UTC](https://discourse.mcneel.com/t/pullcurve-fails-miserably-on-that-one/173043/2 "2024-01-10T17:40:47Z")

</div>

And if you project it, you get two “intersections” instead of one,

 ![missing](https://global.discourse-cdn.com/mcneel/uploads/default/original/4X/4/1/b/41bc4e340c83df6d6770c900e32b7cbf2b6c0b94.png)

---

<div class="post-metadata">

**Author:** ![osuire](https://sea3.discourse-cdn.com/mcneel/user_avatar/discourse.mcneel.com/osuire/32/656689_2.png) [@osuire](https://discourse.mcneel.com/u/osuire)\
**Post date:** [January 10, 2024, 5:41pm UTC](https://discourse.mcneel.com/t/pullcurve-fails-miserably-on-that-one/173043/3 "2024-01-10T17:41:47Z")

</div>

Hi Joseph !

I also pulled it to the surface in Rhino ; result : 2 curves.  
Can’t make a reliable tool with this kind of whacky behavior…

---

<div class="post-metadata">

**Author:** ![Joseph\_Oster](https://sea3.discourse-cdn.com/mcneel/user_avatar/discourse.mcneel.com/joseph_oster/32/549124_2.png) [@Joseph\_Oster](https://discourse.mcneel.com/u/Joseph_Oster)\
**Post date:** [January 10, 2024, 5:50pm UTC](https://discourse.mcneel.com/t/pullcurve-fails-miserably-on-that-one/173043/4 "2024-01-10T17:50:07Z")

</div>

![pull_crv_2024Jan10a](https://global.discourse-cdn.com/mcneel/uploads/default/original/4X/c/f/9/cf947ce68169bfea9f9cffc8903b102f4591404f.png)  
[pull\_crv\_2024Jan10a.gh](https://discourse.mcneel.com/uploads/short-url/57N2TrTpICFSOfCyaBzlEIPdTpq.gh) (14.0 KB)

---

<div class="post-metadata">

**Author:** ![dale](https://sea3.discourse-cdn.com/mcneel/user_avatar/discourse.mcneel.com/dale/32/685184_2.png) [@dale](https://discourse.mcneel.com/u/dale)\
**Post date:** [January 10, 2024, 7:54pm UTC](https://discourse.mcneel.com/t/pullcurve-fails-miserably-on-that-one/173043/5 "2024-01-10T19:54:38Z")

</div>

Hi @osuire,

I can repeat the issue, thanks.

[https://mcneel.myjetbrains.com/youtrack/issue/RH-79623](https://mcneel.myjetbrains.com/youtrack/issue/RH-79623)

There is a workaround until this is fixed.

[240110\_PROG\_Pull pulls half of curve only.gh](https://discourse.mcneel.com/uploads/short-url/19AN9sDs5y5eOgaYCZCK5dXs7O2.gh) (12.8 KB)

– Dale

---

<div class="post-metadata">

**Author:** ![osuire](https://sea3.discourse-cdn.com/mcneel/user_avatar/discourse.mcneel.com/osuire/32/656689_2.png) [@osuire](https://discourse.mcneel.com/u/osuire)\
**Post date:** [January 11, 2024, 7:22am UTC](https://discourse.mcneel.com/t/pullcurve-fails-miserably-on-that-one/173043/6 "2024-01-11T07:22:27Z")

</div>

Well, thanks, but…

 ![RhinoCodePlugin](https://global.discourse-cdn.com/mcneel/uploads/default/original/4X/3/4/c/34ca1c5d467ef487cc29adcb40214c7c39defccd.jpeg)

---

<div class="post-metadata">

**Author:** ![dale](https://sea3.discourse-cdn.com/mcneel/user_avatar/discourse.mcneel.com/dale/32/685184_2.png) [@dale](https://discourse.mcneel.com/u/dale)\
**Post date:** [January 11, 2024, 4:08pm UTC](https://discourse.mcneel.com/t/pullcurve-fails-miserably-on-that-one/173043/7 "2024-01-11T16:08:13Z")

</div>

@osuire - here is a V7-compatible version.

[test\_pull\_v7.gh](https://discourse.mcneel.com/uploads/short-url/hELnkznS3gOhEWPEfNhNeHlfVVs.gh) (7.1 KB)

– Dale

---

<div class="post-metadata">

**Author:** ![osuire](https://sea3.discourse-cdn.com/mcneel/user_avatar/discourse.mcneel.com/osuire/32/656689_2.png) [@osuire](https://discourse.mcneel.com/u/osuire)\
**Post date:** [January 11, 2024, 4:12pm UTC](https://discourse.mcneel.com/t/pullcurve-fails-miserably-on-that-one/173043/8 "2024-01-11T16:12:13Z")

</div>

Yeah, I did just that : pull points instead of the curve, then build a curve from these and pull the new curve to the surface.

---

<div class="post-metadata">

**Author:** ![Joseph\_Oster](https://sea3.discourse-cdn.com/mcneel/user_avatar/discourse.mcneel.com/joseph_oster/32/549124_2.png) [@Joseph\_Oster](https://discourse.mcneel.com/u/Joseph_Oster)\
**Post date:** [January 11, 2024, 4:16pm UTC](https://discourse.mcneel.com/t/pullcurve-fails-miserably-on-that-one/173043/9 "2024-01-11T16:16:51Z")

</div>

> [@osuire](#):
>
> I did just that : pull points instead of the curve, then build a curve from these and pull the new curve to the surface.

That’s not what I did _(were you talking to me?)_. I used points on the curve to find a plane, then projected the curve using the plane’s Z vector.

---

<div class="post-metadata">

**Author:** ![osuire](https://sea3.discourse-cdn.com/mcneel/user_avatar/discourse.mcneel.com/osuire/32/656689_2.png) [@osuire](https://discourse.mcneel.com/u/osuire)\
**Post date:** [January 11, 2024, 4:30pm UTC](https://discourse.mcneel.com/t/pullcurve-fails-miserably-on-that-one/173043/10 "2024-01-11T16:30:29Z")

</div>

> [@Joseph\_Oster](#):
>
> That’s not what I did

Right ! I meant “the idea” to use points.  
In my case, I really need to use “Pull”, not “project”.

---

<div class="post-metadata">

**Author:** ![jeremy5](https://sea3.discourse-cdn.com/mcneel/user_avatar/discourse.mcneel.com/jeremy5/32/493741_2.png) [@jeremy5](https://discourse.mcneel.com/u/jeremy5)\
**Post date:** [January 11, 2024, 5:08pm UTC](https://discourse.mcneel.com/t/pullcurve-fails-miserably-on-that-one/173043/11 "2024-01-11T17:08:06Z")

</div>

You can also (as a workaround) make a copy of the cylinder, trim a longitudinal section out of the far side so it no longer has an internal edge and pull the curve to that. Then delete the helper surface, leaving the curve lying on the original cylinder.

---

<div class="post-metadata">

**Author:** ![osuire](https://sea3.discourse-cdn.com/mcneel/user_avatar/discourse.mcneel.com/osuire/32/656689_2.png) [@osuire](https://discourse.mcneel.com/u/osuire)\
**Post date:** [January 12, 2024, 8:34am UTC](https://discourse.mcneel.com/t/pullcurve-fails-miserably-on-that-one/173043/12 "2024-01-12T08:34:10Z")

</div>

> [@jeremy5](#):
>
> You can also (as a workaround)

Ho Jeremy. Thanks.  
It works indeed.

 ![Half pipe](https://global.discourse-cdn.com/mcneel/uploads/default/original/4X/3/3/c/33c06ad8e895581f974c59354df02b822bb1f605.jpeg)

Automating this is going to be a bit of a pain in the neck though…

---

<div class="post-metadata">

**Author:** ![Joseph\_Oster](https://sea3.discourse-cdn.com/mcneel/user_avatar/discourse.mcneel.com/joseph_oster/32/549124_2.png) [@Joseph\_Oster](https://discourse.mcneel.com/u/Joseph_Oster)\
**Post date:** [January 12, 2024, 10:33am UTC](https://discourse.mcneel.com/t/pullcurve-fails-miserably-on-that-one/173043/13 "2024-01-12T10:33:37Z")

</div>

> [@osuire](#):
>
> Automating this is going to be a bit of a pain in the neck though…

Wouldn’t it be easier to re-evaluate the method for creating the curve you want to pull?

Use a line for project direction _(and position)_ and a perp frame to create a section curve to be projected?

> [@osuire](#):
>
> In my case, I really need to use “Pull”, not “project”.

How is the result of “pull” different from “project”?

---

<div class="post-metadata">

**Author:** ![osuire](https://sea3.discourse-cdn.com/mcneel/user_avatar/discourse.mcneel.com/osuire/32/656689_2.png) [@osuire](https://discourse.mcneel.com/u/osuire)\
**Post date:** [January 12, 2024, 12:41pm UTC](https://discourse.mcneel.com/t/pullcurve-fails-miserably-on-that-one/173043/14 "2024-01-12T12:41:49Z")

</div>

> [@Joseph\_Oster](#):
>
> How is the result of “pull” different from “project”?

I suppose you know that they are not the same beast…  
Here, pull is selected, vs project in red.

 ![240110_IMG_Puss vs project](https://global.discourse-cdn.com/mcneel/uploads/default/original/4X/c/8/0/c80036deee42b11d3c4bada8cae3e7f0e07726a9.jpeg)

---

<div class="post-metadata">

**Author:** ![Joseph\_Oster](https://sea3.discourse-cdn.com/mcneel/user_avatar/discourse.mcneel.com/joseph_oster/32/549124_2.png) [@Joseph\_Oster](https://discourse.mcneel.com/u/Joseph_Oster)\
**Post date:** [January 12, 2024, 12:52pm UTC](https://discourse.mcneel.com/t/pullcurve-fails-miserably-on-that-one/173043/15 "2024-01-12T12:52:00Z")

</div>

> [@osuire](#):
>
> I suppose you know that they are not the same beast…  
> Here, pull is selected, vs project in red.

No, I don’t know the difference. That’s why I asked. I’m surprised I didn’t post version 10b two days ago, which is the same as [version 10a](https://discourse.mcneel.com/t/pullcurve-fails-miserably-on-that-one/173043/4) with code added to pick the nearest intersection. The difference between pull and project is very slight.

 ![pull_crv_2024Jan10b2](https://global.discourse-cdn.com/mcneel/uploads/default/original/4X/5/7/a/57a9deb632f7228771b3e23d3a8abc67d068ea43.png)  
[pull\_crv\_2024Jan10b.gh](https://discourse.mcneel.com/uploads/short-url/pLUszWgmSxajNXsO545bZQ9uGqS.gh) (24.0 KB)

---

<div class="post-metadata">

**Author:** ![osuire](https://sea3.discourse-cdn.com/mcneel/user_avatar/discourse.mcneel.com/osuire/32/656689_2.png) [@osuire](https://discourse.mcneel.com/u/osuire)\
**Post date:** [January 12, 2024, 12:55pm UTC](https://discourse.mcneel.com/t/pullcurve-fails-miserably-on-that-one/173043/16 "2024-01-12T12:55:07Z")

</div>

> [@Joseph\_Oster](#):
>
> The difference between pull and project is very slight.

Yes, in this case, I agree.  
This is part of a tool that deals with steel pipe intersections and the means to oxy-cut them properly for coping. It needs to be quite precise.

---

<div class="post-metadata">

**Author:** ![Joseph\_Oster](https://sea3.discourse-cdn.com/mcneel/user_avatar/discourse.mcneel.com/joseph_oster/32/549124_2.png) [@Joseph\_Oster](https://discourse.mcneel.com/u/Joseph_Oster)\
**Post date:** [January 12, 2024, 12:57pm UTC](https://discourse.mcneel.com/t/pullcurve-fails-miserably-on-that-one/173043/17 "2024-01-12T12:57:49Z")

</div>

> [@osuire](#):
>
> This is part of a tool that deals with steel pipe intersections and the means to oxy-cut them properly for coping. It needs to be quite precise.

How can pull possibly be more precise than intersection _(BBX)_ ❓ Which is also included in version 10b that I just posted?

The pull error is ridiculous but this whole issue is starting to sound absurd.

---

<div class="post-metadata">

**Author:** ![osuire](https://sea3.discourse-cdn.com/mcneel/user_avatar/discourse.mcneel.com/osuire/32/656689_2.png) [@osuire](https://discourse.mcneel.com/u/osuire)\
**Post date:** [January 12, 2024, 1:04pm UTC](https://discourse.mcneel.com/t/pullcurve-fails-miserably-on-that-one/173043/18 "2024-01-12T13:04:51Z")

</div>

> [@Joseph\_Oster](#):
>
> The pull error is ridiculous but this whole issue is starting to sound absurd.

Are you trying to take my job as the angry lad on this forum ?  
🙂

---

<div class="post-metadata">

**Author:** ![Joseph\_Oster](https://sea3.discourse-cdn.com/mcneel/user_avatar/discourse.mcneel.com/joseph_oster/32/549124_2.png) [@Joseph\_Oster](https://discourse.mcneel.com/u/Joseph_Oster)\
**Post date:** [January 12, 2024, 1:12pm UTC](https://discourse.mcneel.com/t/pullcurve-fails-miserably-on-that-one/173043/19 "2024-01-12T13:12:03Z")

</div>

> [@osuire](#):
>
> Are you trying to take my job as the angry lad on this forum ?

“angry”, no. Contemptuous and condescending, yes, once in awhile. 😉

---

<div class="post-metadata">

**Author:** ![maje90](https://sea3.discourse-cdn.com/mcneel/user_avatar/discourse.mcneel.com/maje90/32/762888_2.png) [@maje90](https://discourse.mcneel.com/u/maje90)\
**Post date:** [January 12, 2024, 1:18pm UTC](https://discourse.mcneel.com/t/pullcurve-fails-miserably-on-that-one/173043/20 "2024-01-12T13:18:22Z")

</div>

> [@Joseph\_Oster](#):
>
> How is the result of “pull” different from “project”?

![2024-01-12 14_17_01-Window](https://global.discourse-cdn.com/mcneel/uploads/default/original/4X/8/2/b/82bf1fe7c87b5b6688ea03a3cce0905793ee2acd.png)

If the object to project is near to the “target” the difference is small, but otherwise the difference is huge…

[Next page](https://discourse.mcneel.com/t/pullcurve-fails-miserably-on-that-one/173043.md?page=2)
