Fem: correctly handle python filters if vtk python is not available

This commit is contained in:
Stefan Tröger
2025-04-14 21:56:28 +02:00
parent bbf5695562
commit f20852e7e1
2 changed files with 15 additions and 12 deletions

View File

@@ -44,6 +44,8 @@
#ifdef FC_USE_VTK_PYTHON
#include <vtkPythonUtil.h>
#else
#include <Base/PyObjectBase.h>
#endif
#include <App/Application.h>

View File

@@ -652,19 +652,20 @@ def makePostVtkFilterContours(doc, base_vtk_result, name="VtkFilterContours"):
base_vtk_result.addObject(obj)
return obj
def makePostFilterGlyph(doc, base_vtk_result, name="Glyph"):
"""makePostVtkFilterGlyph(document, [name]):
creates a FEM post processing filter that visualizes vector fields with glyphs
"""
obj = doc.addObject("Fem::PostFilterPython", name)
from femobjects import post_glyphfilter
if "BUILD_FEM_VTK_PYTHON" in FreeCAD.__cmake__:
def makePostFilterGlyph(doc, base_vtk_result, name="Glyph"):
"""makePostVtkFilterGlyph(document, [name]):
creates a FEM post processing filter that visualizes vector fields with glyphs
"""
obj = doc.addObject("Fem::PostFilterPython", name)
from femobjects import post_glyphfilter
post_glyphfilter.PostGlyphFilter(obj)
base_vtk_result.addObject(obj)
if FreeCAD.GuiUp:
from femviewprovider import view_post_glyphfilter
view_post_glyphfilter.VPPostGlyphFilter(obj.ViewObject)
return obj
post_glyphfilter.PostGlyphFilter(obj)
base_vtk_result.addObject(obj)
if FreeCAD.GuiUp:
from femviewprovider import view_post_glyphfilter
view_post_glyphfilter.VPPostGlyphFilter(obj.ViewObject)
return obj
def makePostVtkResult(doc, result_data, name="VtkResult"):
"""makePostVtkResult(document, base_result, [name]):