polygon, not just triangles. This helps to avoid needless
splitting. Also test if an entire triangle got inserted in multiple
pieces; if yes, back things out, and just insert the triangle.
Also remove the extra partition stuff, since it didn't seem to help
consistently, and this does.
Still could do some better merging, in the case where an inserted
triangle does not get fully inserted, but we can find a better
triangulation than what the BSP naturally gives.
[git-p4: depot-paths = "//depot/solvespace/": change = 1739]
zero-area triangles, apparently. And make the number of line
segments used to approximate a triangle depend on its scale on
screen.
[git-p4: depot-paths = "//depot/solvespace/": change = 1738]
while building it. That may improve performance, by building a more
balanced tree and actually reducing splitting. Not dramatic
improvements, though; half the triangles for some parts, but no
change or slightly worse for others.
[git-p4: depot-paths = "//depot/solvespace/": change = 1737]
set of coplanar faces. The polygon count still gets stupid fast;
I'm thinking I can fix that by adding some extra test planes at the
top of the 3d BSP, to quickly cull out stuff that doesn't intersect
us.
[git-p4: depot-paths = "//depot/solvespace/": change = 1736]
a triangle mesh in a BSP. That works, although it splits too often,
the initial triangulations are not good quality, and coplanar faces
are not yet handled. I'll do the coplanar thing tomorrow.
[git-p4: depot-paths = "//depot/solvespace/": change = 1735]