I am trying to get the points of a joined wall, and as can be seen in the pic, the geometry doesn’t exactly give the exact connection as I would expect. I have thought of a way to find which wall would give me the corner point based on comparing the sinus of the wall vector and the additive of the two consecutive walls (which works with code) and I tried further developing it but it seems pretty complicated when considering also the direction in which the wall has been sketched and then choosing the wall to select the point from.
I was wondering if anyone has an idea of a more simple way to do it manually and not by a custom package.
Maybe there is a code/node that returns the line connecting between the to sides of the connection (as shown in the pic)? Maybe there is an easier way?
Thanks for the quick response!
Do you have an idea of a way to filter the corner points specifically? I’m trying to end up with the two points as shown in the pic.
The complication comes as the corners change between the walls when the angles change. I’ll attach a pic to show.
As can be seen, the top and bottom points change between the walls depending on the angle connection of the wall. I managed to find a way to know which wall will end up giving the points based on the sinus if the wall vector and the additive of the the wall’s vector - when left wall’s sinus is greater, then the top points is receive by the second wall. But that is when the wall has been sketched from right to left. It changes the order changes when the wall are sketched from left to right (as in the following pic). So it gets quite complicated quite fast
How about, don’t get the points; or at least not directly asking for them.
Your geometry isn’t conductive to that form as you haven’t ensured that all walls have a miter join type so it will be ineffective.
Try this instead:
- Get the wall’s solid geometry.
- Join the many solids into one solid.
- Pull the edges from the resulting topology.
- Convert the edges to curve geometry.
- Intersect with a plane at the mid point of the level.
- Project the points down or up to the level you are trying to work with.
Thanks Jacob that sounds much simpler than what I am trying to do.
I finished the code I started working on prior and managed to grab the points of the wall as well, in a pretty elegant way if I may say.
I did it by determining the order of the wall joints based on the cross product of the wall direction vector of each paired sequential wall vectors. Once determined I select the points on the curve suited.
Here is the file for whoever may want to test it out.
Get Wall Joint and Corner Points.dyn (63.5 KB)