deleted…
Bad idea. removed until a good one comes.
denisT: fn lastbit7 bits = ( pivot = 1 while (p = (pivot + bits.count)/2) > pivot do ( bb = #{p+1..bits.count} * bits if not bb.isEmpty t…
denisT: c’mon, it slows down the algorithm Well, elegance has its price ;).
denisT: fn lastbit1 bits = ( arr = bits as array arr[arr.count] ) More elegant fn lastbit1 bits = amax (bits as array)
Ah, I misunderstood the comment. Yes, for figuring out if there are intersections, I just go thru all the edges and if a vertex appears more than twi…
The code I posted is much worse than that, trust me It is just a sketch as proof of concept. But the algorithm does work. So, the code has many bugs…
Here is one of the many “hard cases” to solve. It can be solved, but I can’t figure out a logic for a 1 or 2 passes solution for it. The challenging …
denisT: for picture #1 there two loops minimum… the algorithm mostly has to solve these loops: There are two loops on my picture The algorithm I…
@Denis, Did you find the algorithm I proposed useful? Do you have any other example it should handle? I got it to solve many complex situations, and…
Hello Sebastian, The reason the script doesn’t work on orthographic views is that it is meant to work only in isometric views. I’ve modified it to wo…
Not perfect and barely tested with default settings. The ‘border’ parameter was supposed to be in pixels, but I can’t make it fit perfectly. If objec…
Are these orthographic views or can you set them to orthographic?
For the cases I could test it works great and the speed is as you said on my end (39ms for the torus test). I wonder if it could be modified to work …
It is fast. I actually get 36ms for the torus test You may want to modify it to also work with this cases: ( delete objects obj = converttopoly (…