Do these solids intersect? how are they generated? I found something similar but not identical in the tutorial file but would just love to double check - would be great to take a look at the file that generated this image.
Hi Petras, thanks for the response!
But as you project edges to each panel’s respective average plane, there is no guarantee that the projected panels don’t intersect one another right?
A collision test on a similar(?) routine in your example file is attached. Examples_MeshLibrary180824_collision.gh (20.4 KB)
In the example attached you missed important part - planarization.
Before projection you need to extrude mesh edges and planarize them.
Planarization can be done either with ngon or kangaroo, which way is preferable to you.
After planarization they will not interesect but touch each other side by side.
I think grasshopper collision detection will return true even objects are exactly on the same surface.
I still don’t really quite get the workflow.
I also don’t understand why projected panels based on average planes are guaranteed not to intersect one another - doesn’t it depend on the projection direction and the curvature of the base surface?
If possible, seeing the entire workflow of what the NGon plugin is able to do would be great!
This is what I have now (also attached Examples_MeshLibrary180824_workflow.gh (15.6 KB)):
Thanks again!
Because projection is just additional step, planarization of sides guarantees planarity.
So it depends how well you can planarize you geometry.
And then you take edges lines and cut it with plane. That cut points you connect as a polyline which is flat because it sits on the plane. And how you define that plane so that you have better connection surface at sides it depends on either straight forward averaging of points or optimization methods by averaging plane to adjacent planes.
ah, i finally understand it now…when you said projection i didn’t realize it was projecting onto each individual plane ALONG the vector derived from the planarized edge planes (I thought it was a simple projection along the normal of the average plane itself). Thanks again for the help and the file! Any thoughts on how to keep the boundary (or at least the two edges that supposedly touch the ground in the example here) not jagged? I guess the simplest way would be to just trim everything with a plane…
Yes so far I seen examples either they make foundation to make the foot fit or planarized elements are cut. In coding it can be done more clean, but basically the same concept.
All the mehtods in gh components are wrapped inside NGonsCore.dll incase you are used to coding.
Might you be able to elaborate a bit more on the step of planarizing the extruded edges?
Is this similar to the dynamic relaxation technique in K2? I couldnt seem to find any documentation online to get a deeper understanding of the component/plugin. Thanks a lot!
Hello
have you a reason not using curve instead of a Ngon ?
Using polyline curve is very easy and you could easily obtain what is on you image
But what is you aim, making a stepped pyramid or a pyramid ? What you show uses a texture.
Where is your definition ?
From what I understand what you need is a polygon, a point (sort of center) and a vector (sort of normal). With that you will be able to scale the polygon (you need a point) and move it (you need a normal). When you have all your polygons you can loft them to Brep or Mesh.
Some of the edges aren’t displaying. I think this may be corrected if I have the steps slanted up to a ridge rather than creating flat steps, as you showed in the blue picture.
Edit - the edge visibility is a function of the view angle in revit. If I can’t get them all to display, I can simply pipe in the polylines as another model and they will display. I will have to investigate how to only keep the step profile curves. But I need to revise the script to have the steps come to a point.
Hard to say without a script. If you continue by posting just images we can continue a long time without having your questions solved. Your problem, you move.