Yes. Unfortunately, it is still failing with the added purple group.
Yes, but if you have no idea, you’re already in too deep.
I won’t do any more unless you post a GH file showing the problem. Please start with the latest version: ‘May25d’
P.S. Looks like adjusting the ‘Floor height’ slider to 3.39 demos the problem?
I have that file open and the screenshot from above is when floor height is set to 4.31.
Here is an approach:
Facade_Isotrim_vr1.gh (52.4 KB)
Don’t know if it helps. Not really a friend of the surface splits I used.
The file you just posted is not based on version ‘May25d’, which has all three buildings at once, no Value List or Stream Filter. This file has floor height = 2.60, not 4.31.
Still, I see the issue in my own copy, perhaps related again to trimmed surfaces?
No. My testing and the screen shot I made were on the basis of May25d. The solution I posted contains an earlier version of your solution as well as my own solution. The version of your solution in that file was current when I started working.
Perhaps it would have been better if I had just had deleted your part so that that would have been clearer.
My solution:
Facade_Isotrim_vr2.gh (31.7 KB)
May25d with floor height set to 4.31:
Facade_Isotrim_2025May25d_FloorHeight-4.31.gh (41.2 KB)
It would have been better to use version ‘May25d’. I’m curious but have already spent too much time on this today. 8 hours Like a real job.
I understand. It’s your own decision how much time you spend on this.
Yeah. I’ve had enough. It’s been almost 12 hours since my first reply on this thread. I’ve looked at this with all my favorite tools (included in this post, version ‘May25e’) and trimmed surfaces are still a problem, as far as I can tell.
@marc.schmailzl has painted himself into a corner and ultimately must own it. The issue raised by @Volker_Rakow when “building heights are not a multiple of the floor heights” is somewhat of a wild goose chase. Culling ‘Trimmed Surfaces’, as I did “by force” in the gray group confirms they are part of the problem but doesn’t solve it.
Facade_Isotrim_2025May25e.gh (69.6 KB)
Good luck!
The problem is mostly a lack of information on the part of the OP of what is supposed to happen with the windows when a horizontal offset of the facade in its outer profile occurs. Are the windows supossed to maintain rank and file across the different widths of the different stories, or are they supposed to shift? In the real world, these decisions have justification based on the inner structure of the building which is not immediately discernable. Here, I would go on the basis of his first image posted by the OP as to what he wants, and the assumption that all building heights will be a multiple of a set story height, which means your accepted solution suffices his needs.
I only mentioned the building heights because sometimes there is just that bit extra that is normally the attica of the top floor, and that does not need to be interpreted as a full floor.
That is probably a valid assumption. A little extra at the top can be culled, as the purple group does. As to trimmed surfaces, I think you suggested the solution (?) that they be split into two (or more?) rectangles, which can be untrimmed surfaces. Writing GH that’s supposed to handle all possible cases can be very difficult!
Dividing the horizontal surfaces is another can or worms.
Yes, and have been appreciating your statement:
more and more. Alot of times I will write a script that works on a single object, but disintegrates when it is passed a list or tree. (Even if I avoid using flatten as much as I can)
This image shows my ‘Tree/List Viewer’ tool set at ‘{1;0;4}[3]
’ (the yellow surface), which the adjacent text panel (coming from sFace) shows as ‘Trimmed Surface’, but I don’t see trim Looks like an untrimmed rectangular surface to me. Mysterious. I wonder if the building is slightly askew, creating a very tiny triangle to be trimmed off?
I don’t know.
I don’t mean to frustrate you, but here is a working version of what I was doing before:
Facade_Isotrim_vr3.gh (35.2 KB)
which is just a script that searches for valid full-story surfaces on the facades of the BREP. These faces would then be further split vertically…
Good Night!
Sorry, will check it out tomorrow. One last thought for tonight…
This started as a test for one trimmed surface, then I applied it to all surfaces from sFace (Shrink Faces). Compare the two text panels. Some appear as “Trimmed Surface” in the right panel, then as “Untrimmed Surface” in the left panel after Disc and PLine Some of the discontinuity points for a single surface differ very slightly in the fourth decimal place.
TBC (To Be Continued)
Good morning,
After exploring the curious alternative to sFace in my last post, I abandoned it. Cleaned up the code, fixed extrude direction of windows by going back to the original vertical surfaces from VH_srfs and looked again briefly at the issue when “building heights are not a multiple of the floor heights” before deciding that it wasn’t relevant to the main problem.
Facade_Isotrim_2025May26a.gh (43.0 KB)
I looked at it, understand the code but don’t get the point.
I know this is unresolved but wonder how dividing floors works with multiple buildings
I am still dubious about any value in dividing horizontal surfaces (floors) like this. Have you considered locations for stairwells and elevators
However, the challenge is intriguing and I’ve done it. Data trees got very difficult
I divided the surfaces I used earlier for splitting the walls (PxS - Plane Through Shape), then used RInt (Region Intersection) to trim the Isotrim fragments with the floor edges (contour curves / walls). Not for beginners, even if I explained all the gory details Easily broken so be careful.
Facade_Isotrim_2025May26b.gh (59.7 KB)