Power Solids Boolean Tree Editing Operations

Because PowerBoolTree saves the original objects there are many ways to use it to
effect major Editing changes on the final result.  It is possible for example to use the
PowerFillet command to fillet edges of the primitives and apply fillets to the input
objects.  You can do any editing operation that does not change the ID of the object.
Boolean operations can be undone by selecting the operation in the tree view of the 
PowerBoolTree dialog and then clicking on the "Remove Operation" button.  Using the
Rhino Undo command on the PowerBoolTree command should be avoided at this point.

  1. Add, Remove, Change and Reorder Operands
  2. Add and Remove Objects (Surfaces and Polysurfaces) to/from Operands
  3. Edit Object Positions and Update Boolean Result
  4. Automatic Filleting applied to Operands (See Automatic Filleting)
  5. Merging Surfaces to create a Solid (See Merge Function)
  6. Change the Tolerance (See Booleans)
  7. Change Operation History (See Booleans)

 


There are three ways to see the original objects to edit them.  You can select
Show Objects in the PowerBoolTree dialog or you can use the Edit/Visibility/Show
in the main menu bar or Rhino.  The "Show" menu is faster because it does not
require the evaluation of the Boolean tree.  Even better, you can use the docked PowerBoolTree
dialog to select the objects in the tree view.  If you click on the object in the tree view
of the PowerBoolTree dialog it will highlight the object in the graphics window.  Once the 
object is selected you can move it to a new location.  Then if you click on the "OK"
button in the PowerBoolTree dialog, it will update the Boolean result.

 


The Original objects are shown here in their original position.

 


We can use Rhino transformation commands to change the position of the objects.  In this
case we have moved two of the cylinders from the corners to the middle.

 


If the "Automatic Update" option is checked, you will see the result above (the holes will be
regenerated as you move the cutting cylinders).  If "Automatic Update" is not checked, click
on the "Update Boolean" button to see the result change.  This evaluates all operations in the 
tree.  

 


To change the Operation Type performed you need to first select the operation in the
list box.  Then use the Operation pull down to change it.  In this case we change
from a Difference to a Union of the large cylinder.

 


The change produces this result.  Note that the Chamfer is still applied even though the Operation
type has changed.

 


Another useful operation is to change the order of the Operations.  The order
number is the first number in each line.  Notice that we have changed the
order of this operation from 4 to 2 in the dialog.  The result is shown below.

 


Here we have changed the Cylinder Difference operation from 4th to 2nd so that it gets applied
before the top Union of the Extrusion.  We have also changed the operation back to a Difference
so that the result may be seen.  Note that the cylinder only drills a hole in the objects before
it in the Tree.

 


Replacing one or more objects in an Operation is simple.  Just open the [+] at
the beginning of the line and you will see a list of objects.  As you select the
objects they will be highlighted on the Rhino screen.  This will enable you to
easily determine which object you wish to remove.  Once you have the correct
object you can remove it using the "Remove Object" button. 

 


Adding a new object into an existing operator requires that you first select the
operation and then hit the "Add Object" button. 

 


In this case we select the Blue Box to replace the Cylinder.

 


You can see the results of our edits here from below.  Note that the filleting still gets applied
automatically to the Box edges because it is inside of an operation that has filleting turned on.

 


It is possible to change the accuracy of the operations.  In some cases this may
make a case work that fails otherwise.  Here we have selected "Very Low" which
sets the accuracy to 1/1000th of the size of the object. This accuracy effects
non-analytical fillets.  Fillets which are not cylinders or torii will have more or less
knots depending upon the Boolean and Fillet Accuracy.

 


Fillet between a Cylinder and a NURB at "Very Low" accuracy.

 


Fillet with "Medium" accuracy.

 


Fillet with "Very High" accuracy.

You can find out more about modifying the Automatic Filleting Operations Here.