Geometry
Unia provides some CSG utilities for working with geometry.
writeGeometry will update the object's geometry.
If you are doing multiple, consecutive operations it's more efficient to set this as false.
Note that after any geometry operation, the object's position, quaternion and scale will be set to:
(0,0,0), (0,0,0,1) and (1,1,1)
Union
Geometry.Union(targetObject, object or [objects..], writeGeometry = true)
Intersect
Geometry.Intersect(targetObject, object or [objects..], writeGeometry = true)
Subtract
Geometry.Subtract(targetObject, object or [objects..], writeGeometry = true)
Merge
Similar to Union but will not combine close vertices
Geometry.Merge(targetObject, object or [objects..], writeGeometry = true)
SmoothNormals
Similar to Blender's smooth
Geometry.SmoothNormals(geometry, smoothAngle : optional)