Parameterization of the highest point of curve

Hi, I am new to grasshopper and I would like some help with my design.

I have a set of curves that rise towards the z axis up from the xy plane.

I would like to know if there is a way to adjust the highest point of the curves along the length of the curve so that I end up with a set of curves that have varying highest point.

Something along the sketch I have attached above

Do you want to deform an existing curve, or do you want to create a new curve based on end-points and apex-point?

A new curve using the 3 points but I would like to be able to control it’s deformity similiar to a berzier curve component

custom arch curves.gh (32.8 KB)

Since there’s lots of ways to create curves which satisfy your stated constraints, I opted for the following:

  1. Each arch is constrained to two end-points. (In this file, those end-points are created by dividing two axis lines.)
  2. Each arch is a planar curve, whose normal vector is horizontal. I.e. all arches are fully upright.
  3. The apex point of each arch is found by intersecting the vertical section plane with a custom drawn curve. (In this file, that curve is defined via control-points in the upper-left most group.)
  4. The sharpness/flatness of each arch curve at the apex is controlled via a custom graph whose values range from zero to one. A value of zero results in a sharp tip, while a value of one yields the flattest possible curve which an unweighted degree=3, 5-point nurbs curve allows, without the tangents at either end surpassing the vertical.

This is probably not exactly what you had in mind, but hopefully it serves as a decent starting point.

1 Like

Here is a different approach that assumes straight edges and constant width:


high_point_2020Dec31b.gh (10.4 KB)