Help with making a simple 3D shape with curved and straight edges

Hi there, for my school project I am wanting to create this 3D shape on grasshopper, however I have no idea where to start due to some edges being curved and some straight. Would anyone be able to help?

I’ve uploaded a photo of the shape I am wanting to achieve.


  1. Make the top of the front face from an arc and straight line in the XZ plane.
  2. Make the bottom by placing 6 - 8 points in the XZ plane in what look like the correct places. You can use Gumballs to position them. Create the points in order from left to right.
  3. Use the point from 2 to make a Nurbs curve.
  4. Connect all 3 curves and use this to make a 2D surface in the XZ plane.
  5. Extrude the surface in the Y direction to get the thickness you want.

Hello @
Birk_Binnard proposed you to make this shape with Rhino and its seems the good way. For “THIS” shape so use Rhinoceros with history enabled so you will be able to change the shape.

Reading your description there is no reason to use Grasshopper. Grasshopper is useful for parametric design and so you need parameters and algorithm.

Hi Laurent,
Thanks for your response, this is only part of my overall design of a pavilion. We are required to use grasshopper for the project to create a parametric pavilion, therefore I am seeking help with creating a script for this shape, which I will later incorporate into my design. Thanks

Nobody is required to help you if you don’t give the information necessary. You just gave vague shape. It is not clear if it is 3d or 2d.

Hi Laurent, I understand where you are coming from. I did mention in both the title and the description that it is a 3D shape. I am only asking for guidance on where to start, as I haven’t worked with a shape that has both straight and curved edges before. Thanks

I think you don’t know what you want, if you can’t explain it with words, or if you can’t do it with Rhinoceros you will have some difficulties with Grasshopper. Straight curves are still curves !!!

I think you must use Boundary surfaces this component accept curves (as curve they can be curved or straight)

For the curve you have the choice between theses component, most of the times if points are not aligned curves will be curved.

Here a script that do what you ask ! It is in Grasshopper and it looks like your drawing.
forum not clear (4.9 KB)