Splitting curves with planes created from hosted element geometry

Hello everyone, I feel I may be in over my head as a Grasshopper beginner.

My goal is to automate the layout of studs in a wall system. For starters, I need to know where a wall starts and ends, as well as where hosted elements start and end along the wall curve.

I suspect I might access this information with the following


I am a bit stuck now, because I do not know how to

a) create planes on the face outputs of the Breps,
b) correspond the Breps with their host and finally
c) filter out any planes which are not perpendicular to the host wall’s location curve, so that when I split a wall’s location curve, it is indeed split only with planes related to elements hosted within it.

After a long day of trying to figure stuff out, I have come for advice and guidance, hoping someone can point me in the right direction and offer some knowledge to this beginner. Cheers!

Noah, What is the final output of this exercise? If you are doing to to learn that’s great, but if not there are some existing methods out there worth looking at.

Beam Systems could do the job here. Note some of the tips in the comments as well. Cold-Formed Metal Framing (or wood stud) in Revit Tutorial (Quick Tip Edition) - YouTube

There are many framing plugins that do a great job of this with lots of the documentation and details included.

Hi Japhy, I’d like to achieve something similar to the youtube link you have shared

But by building the logic into grasshopper so the process is nearly automated. The guy in this video does a lot of manual placement. I realize this is a big project, but I am trying to take things one step at a time and am learning much in the process!

Today I realized I might use the Area component to obtain a Centroid point. Now I am trying to figure out how I can create a plane on a point, or perhaps a face which is parallel to that face.

I wonder if I am asking for too much help here. Continuing to research. I have been working on this for a few hours a day.

To do something like this, would I do best to learn Python scripting within Grasshopper?

To get a the normal or plane of a Brep Face you can test if its planar, or evaluate the surface for a UV point.

The more variables you are trying to automate the more combinatorially explosive in logic its going to be.

Learning Grasshopper as well as automating a complex process is going to take a while and will lead you down many paths that you’ll need to abandon, but in the end will be better for it.

1 Like

Well, as it goes, after posting this I did figure out how to create planes on each face.

Now I am concerned with how to sort the planes so the planes created from a surface stay related to the surface, and in turn the location curve/wall in which they are relevant. Not sure if that makes sense

Hmmmmmm

Thanks for sharing this, I am going to try it out now

Since you are working in RiR and probably using Feet or Meters as a Rhino Template your Plane previews are huge, you can change this in the GH document here.

1 Like

This works much better. Thank you for sharing Japhy

Hey @nglynn ,

Interestingly enough, this was also my very first thing to try doing in grasshopper and was learning through it. Sadly, I didn’t complete this project because I got busy.

But if this is something you are pursuing or looking for more guidance on, please leave me a message and I will be glad to help you out.

TimberFraming

1 Like

Hi Japhy, A general question came up while I was exploring the Is Planar component outputs.

Is it possible/does it make sense to access only the Z data displayed in the left panel, to obtain a similar data tree as in the middle panel?

I also notice Is Planar - Plane output is the same as Eval Srf - Frame output. Can you help me understand what, if any, difference exists between the two outputs? Thanks!

Hi Noah, You can deconstruct the Plane to get just the Z value.

The isPlanar component is a quick plane on a flat surface. The Evaluate Surface will provide a plane on non-planar surface as well.

1 Like

Thank you Japhy

I am continually impressed by the depth of information conveyed by the component icons! They represent what you describe so well

@Japhy Just curious, is there a way to split wall other than rebuild from curves?

Splitting a wall is not exposed in the Revit API

Oh well…

Hi Mohamed,

This one is promising stuff! I am interested to explore this definition more and would it be okay to share it, thanks.

This is where I had it left off, back when I first started using GH, haven’t checked it since then so let me know if you have any questions

Wall_Framing.gh (166.1 KB)

Thank you Mohamed, this is awesome! kind regards.