Split Slabs Not Working

Good Day All,
I am trying to replicate Marcello Sgambelluri’s graph for splitting a slab with model lines, and it seems to be failing in at the Geometry.IntersectAll node, where it gives an empty list. I have changed the lacing to cross product as well as other posts have suggested. I am at a loss of what it could be. Any help would be much appreciated.
Slab Break for 4D.dyn (16.6 KB)

I tried googling Marcello’s graph but could not find it. Do you have a link or picture reference?
Anyways are you trying to achieve this?

If yes this is how I modified your script (I added some general notes but you should correct the red boxes)



1 Like

Thank you GregX. I am trying to make your adjustments, and I am still coming up with an empty list. Here is the page from the handout at Marcello’s AU class a few years back. Do you have a working script that you can share?

Sorry I closed the file without saving it!
Anyways try opening a new file (I was using millimeters), create a floor near the centerpoint of the project,give it a slight offset (something like 100mm), create a line on top of it (without changin view) and run the script I showed in my previous post.

I am afraid that the intersection method with the XY plane can give errors: if the floor is at an elevation of 0.0 then the XY plane (at 0.0 elevation) maybe won’t intersect it (that’s why I suggested you give it a slight offset)
Another problem I encountered was that when the floor was far away from the project origin the XY would not intersect it…

Try this method and see if it works, in case you could also post your model

OK thank you. The model is away from the “0,0” mark just because of point layout purposes. I will try your suggestions and see what happens. Thanks again for your assistance.

My suggestions were to get the script working in a “controlled environment”. Once it works try moving the floor and the line away and seeing if this is the problem. Then maybe you could “scale” the XY plane (if this does even make sense in a geometric sense. The first time I ran your script my floor was far away but I could see it partially intersected a circle,which represented the XYplane in dynamo…)
If you manage to solve the distance problem then you should try to change the floor level: now you will also have to move the XY plane to intersect the floor, etc etc
Little steps from easy to hard (:slight_smile:

Even with the graph changes. I am still getting the empty list right at the beginning.

That is probably because your floor are far away from the XY plane. the XY plane is at an eleveation of 0.0, your floor might be on different levels!
As I said in my previous post try starting out with a test model with a floor on a level with elevation=0 and set a slight offset

Does anyone out there know how to expand the XY Plane? When running the graph it seems to be only going out so far. I have tried specifing a certain location, but that was not working either.

Thank you in advance

Huh… I always kind of assumed the planes would be effectively infinite in size, but they’re not. Additionally, they’re round. That’s interesting… 200’000 units across is the maximum size, by the looks of it. Scaling doesn’t work, nor does creating it with points much further apart.

I would recommend just creating a surface as an intersector instead, just with a rectangle and Surface.ByPatch :slight_smile:

Another way would be to get the faces from a solid, then see which surface has a normal vector with the Z component >0 (meaning that it’s pointing upwards)

1 Like