21 lines
900 B
Python
21 lines
900 B
Python
![]() |
class IntersectionComputedUseCase:
|
||
|
def call(parts):
|
||
|
import FreeCAD as App
|
||
|
|
||
|
App.activeDocument().addObject("Part::MultiCommon", "Common")
|
||
|
App.activeDocument().Common.Shapes = [parts[0], parts[1]]
|
||
|
App.activeDocument().getObject("Common").ViewObject.ShapeColor = getattr(
|
||
|
parts[0].getLinkedObject(True).ViewObject,
|
||
|
"ShapeColor",
|
||
|
App.activeDocument().getObject("Common").ViewObject.ShapeColor,
|
||
|
)
|
||
|
App.activeDocument().getObject("Common").ViewObject.DisplayMode = getattr(
|
||
|
parts[0].getLinkedObject(True).ViewObject,
|
||
|
"DisplayMode",
|
||
|
App.activeDocument().getObject("Common").ViewObject.DisplayMode,
|
||
|
)
|
||
|
App.ActiveDocument.recompute()
|
||
|
area = App.activeDocument().getObject("Common").Shape.Area
|
||
|
App.ActiveDocument.removeObject("Common")
|
||
|
return area
|