News on the Project |
6.28.03 - The Beginning |
Today I started learning about BSP trees in order to familiarize myself
with the methods that Blender currently uses for Boolean operations. It
seems that BSP trees will not be the way to go for this project.
I also realized why Blender's CSG operations do not work well for doing
a "knife" operation; it's fairly obvious after a moment's thought
(and a smidge of knowledge about binary space partitioning). BSP (in this
case) divides 3-space into two half-spaces using a plane. Since Blender
merges two BSP trees in a boolean operation, it must generate a BSP tree
for the object to be knifed, and the knife plane. Here the problem emerges:
A plane cannot be effectively parsed by a BSP tree algorithm; the plane
is the shape that should be doing the subdivision.
CONCLUSIONS: If it doesn't bloat the code too much, a special case should
be added to the boolean operation menu to handle an object containing
planes, or add a separate knife tool.
|
Announcements and Information |
Check back often; it's the summer so I'll be able to do a ton of work
on this! Don't bother checking the LDRAW page; Blender's Python implementation
is getting turned upside down. |