Yikes: there’s a new build that fixes some oops in V1A (recycle that ASAP) and adds a 3rd option (in results) that alows you to see the skin deep nurbs Breps (in plain English: BrepFaces straight from the Morph that are NOT solids) in real-time.
Morph_VoronoiPolylinesAndThicken_V1B.gh (91.3 KB)
NOTE: The Morph requires a Surface (NOT a BrepFace or a PolySurface) as the target. If you input a BrepFace it uses the Underlying Surface. If you input a PolySurface … well … better avoid doing that.There’s no Rhino Morph method that works with PolySurfaces “as a whole” … meaning that your 5km long (and a bit faulty) thing is rather useless for that type of game.
And this … er … is an intro to K2 and planar matters (Planarity in real-life is a chimera, but that’s another story). Note: the more rational is the Mesh … the easier and faster K2 does the job. As a general guideline AVOID at any cost doing business with K2 (or any Physics Engine) when you have stupid/ugly meshes. Stupid goals add to the pleasure as well.
Ugly news: Mesh Machine fails to deal with your 5km thingy > blame Murphy
And this (I can’t post the C# for that since it flirts with reality (of some sort)) … is what K2 can do in 50 milliseconds (max):
Arrange your spaces in space. Then create some sort of flat region that engulfs the footprint (any region, any N of holes etc etc). Then do some flat mesh via the MeshMachine (take care of the size of edges since it would be a critical factor later):
Then mastermind an anchor points policy (many to choose: from every naked vertex to randomly selected ones either naked or clothed … OR interactively pick mesh vertices [requires code] ). Then relax the flat mesh via K2 into some sort of vault trying to engulf (by varying the K2 Goal(s) parameter values) the spaces available:
Using things the likes of WB PictureFrame you can turn the mesh into some conceptual LBS system (then you’ll need to thicken that mimicking some steel members - or far better do a W truss out of the mesh [that’s the rational - by a huge margin - engineering solution for that type of things ]):
So … if your attempts with the Voronoi concept on Polysurfaces come into a halt … and your nerves are broken (for good reason) and you are running out of time (and/or espresso) … just change root and spend just a few milliseconds for any solution.
Of course planarity is not an issue … since we are dealing with triads. Why people spend so much effort and time (and lot’s of dollars) to achive higher order planarity is beyond my imagination: maybe blame that YAS Hotel.
To the trained eye things like these have a very strong reason of existence … since in some “inverse” way they are tensile membrane structures. And this virtue is what makes any AEC thingy capable to last over time.
Why not just use a Sub-D modeler, pretty sure that project was made in maya or max, also the image you refer to does not seem like a voronoi to me, and it is for sure not planar.
Here is a 5 minute test with Maya:
Sure the basic workflow for that quick test was to have a mesh (either make it or import it). Delete some mesh edges to create some ngon pattern of faces. Chamfer the face vertices to get an even more ngon look. Then move some vertices around randomly along the mesh to create a bit of randomness to the pattern. Then do a series of scaling and inward extruding operations on the faces by the face normals. Delete some faces for the holes (or glass). Lastly, smooth and deform the overall shape till you like how it looks. (you can probably achieve the same workflow with T-Splines, haven’t used T-Splines in years)
Well … as i said many times the Morth this to that works ONLY if that is a single surface (you can use a BrepFace as well: the Morth uses the underlying Surface and then you must ask questions about if something (say: the polyline center) is inside the BrepFace).
To be honest with you this task of yours (Blob > planar Vor polylines) is - more or less - achievable but I estimate that requires at least 3-4 days full work (AND some/several C# that are classified) … meaning that posting a full solution related with that it’s out of question.
That said … well … planarizing higher order polylines is a fine balance between several Goals (In Kangaroo a Goal is something that you want to achieve):
Node min/max Angles,
Edge min/max Lengths,
Pull to something Strength (the blob or a mesh),
Diagonal min/max Lengths and some other stuff…
Mess with the “optimum” values on the above Goals … and get a terrible/freaky result. It’s all about Physics Engine matters you know. Mess with the OEM Mesh as input to K2 … and get bananas as well. Kinda powersliding a proper sports car: is all about balance.
I have C# stuff that does that … but is strictly internal. Why ? Well … because of the way that an optimum balance between a lot of factors is recursively approximated. Think of it as some sort of “learning machine” thingy (well … add some “” more, he he).
That said planarity for a glass panel and planarity for some sort of roof panel ARE not the same kind of animals. Remind me to erase the YAS Hotel from existence … meaning erasing other things as well.
Ugly news: Even if you had the FacetDome solution for a blob on hand (I can’t promise any ETA for that NOR that I could post it IF sensitive portions of code would probably being used) … without planarization it could be 100% useless - even within an Academic way of evaluating design proposals.
Warning: This design of yours violates 2 critical things: Form follows function and Less is More.
The first that could do that > Nobel/Pulitzer/EMI/Oscar/Whatever
BTW: A Surface is like a piece of paper. A BrepFace is a Surface against a Magnum 45. A Brep is several (or one) BrepFaces “stichted” together. Brep means Boundary Representation.Any Brep is a mini database holding info about what is connected to what (Vertices, Edges, Faces, cats and dogs) - kinda a Mesh.
I found a definition and it seems to work, It isn’t perfect but will do the work. But the problem here is I can’t find a way to loft the faces or create picture frame or offset them to create structure.
and do a mesh out of it … well … I have (I think not internal) stuff to do it. Works with classic graph connectivity (vertex to vertex) and does a mesh.
But how you got that graph:? Out of a TSpline blob VS MeshMachine? If so why the reverse engineering?
Moral: you are more and more into the rabbit hole. That’s a thing with many entries and not a single exit, I mean since you have the C# (I’m talking about the Voronoi3d_V1C posted several posts above) that does the Voronoi Surfaces why bother trying things with ExoW?
WAIT A MINUTE: You mean that you want to run V1C against a blob (option: Surfaces meaning in fact BrepFaces) … then make polylines using the outer BrepFaces Loops (easy) … and then … well … actually what? Since the polylines would NEVER be planar … what’s the purpose of all that? Or you want to make quad and/or tri meshes out of them? If yes … why not use MeshMachine > compromise into triads (the rational and clever way to go) and forget all that mess?
You know it’s way better to claim that the Voronoi word used was a typo.
Well I’m not thinking about going with ExoW, I like the line segment pattern. And I have no other options. I’m really running out of time, only one week to do everything.
I just want to create panels on these line boundaries (surfaces would be non planer but by further triangulation, flip edges will be where the surfaces will fold). Generated result is just a set of lines. I don’t know how to prepare them to create picture frames or to extrude them.
Lol I would prefer prefer saying it is a typo now, but thing is I added several photos too…
I’m not sure I can do that in this limited time,It’s a whole new software to me. I searched but I couldn’t find any video result that can be related to. ( maybe I’m not using the correct keywords)
Well, you won’t really get results like the image without sub-D. Look up Delete Edge, Chamfer Vertices, Extrude, Scale, Smooth Mesh Faces. These are the tools name and what you will need. Also, why wait until one week left to solve a very complex thing
Imagine V1C against a blob (closed). It does stuff like in the image below (shown with keepPercentage = some value != 1). Then the little C# in the red group does polylines out of the decomposed BrepFaces Loops (i.e. 3d curves) sampling all points from curves AtStart. Like this:
Now if you are happy with these out of this world polylines I could add a few lines more and create a mesh window thingy out of these (out of this world) polylines … making an envelope out (out (out of this world))).
This is kinda tuning a Harley Davidson: dollars spend for no reason … but … well …
Of course with the right dose of the wrong Karma you’ll arrive into rabbit holes like this one:
I’m not going to use this ExoW thing. I can create a structure using WB’s pitureframe and meshthicken components, but it’s basic. Any suggetions on how I could apply a structural profile and possibley create chamfered corners and stuff (tools or plugins)?
I like the option, but no time to learn maya and go with it. Next time for sure…
I’ve been experimenting and wasting about 2 months with tutorials and stuff, came for help from the forum at last when all that didn’t work