def recompute(self): obj = self.Object say("Recompute ", obj.Label) instance = pfwrap.getInstance() instance.graphManager.get().clear() a = PyFlowGraph() data = eval(a.graph) instance.loadFromData(data) pfwrap.getInstance().show()
def run_visualize(self,*args, **kwargs): say(self._rawNode) say("create vid3d object in graph") gg=self.graph() x,y=-150,-100 nodeClass='FreeCAD_view3D' #t3 = pfwrap.createNode('PyFlowFreeCAD',nodeClass,"MyPolygon") #t3.setPosition(x,y) #gg.addNode(t3) #uinode=createUINode(t3) #say(uinode) aa=self.canvasRef().spawnNode(nodeClass, x, y) say(aa.__class__) say("connect Shape withj vie3d.shape ...") FreeCAD.aa=aa FreeCAD.aa=self._rawNode['outExec'] pfwrap.connect(self._rawNode,'Shape_out',aa._rawNode,'Shape_in') aa._rawNode.setData('name','View_'+self._rawNode.name) if self._rawNode["outExec"].hasConnections(): for pin in self._rawNode["outExec"].affects: pfwrap.connect(self._rawNode,'outExec',aa._rawNode,'inExec') pfwrap.connect(aa._rawNode,'outExec',pin.owningNode(),pin.name) pfwrap.connect(self._rawNode,'outExec',aa._rawNode,'inExec') #refrehs view instance=pfwrap.getInstance() data = instance.graphManager.get().serialize() instance.graphManager.get().clear() instance.loadFromData(data)
def run_PF_APP_WindowNOMinimized(app,event): '''triggered from PyFlow.App''' pf=pfwrap.getInstance() for node in pfwrap.getInstance().graphManager.get().getAllNodes(): node.kill() pfwrap.deleteInstance() del(FreeCAD.PF) try: pf.hide() except: pass pf=pfwrap.getInstance() pf.show() instance=pfwrap.getInstance() pf.graphManager.get().clear() pf.loadFromData(FreeCAD.savePFData) say("DONE")
##################################### import nodeeditor import nodeeditor.pfwrap as pfwrap instance = pfwrap.getInstance() gg = pfwrap.getGraphManager().getAllGraphs()[0] _FreeCAD_ImportFile = pfwrap.createNode('PyFlowFreeCAD', 'FreeCAD_ImportFile', 'FreeCAD_ImportFile') _FreeCAD_ImportFile.setPosition(-463.0, -97.0) gg.addNode(_FreeCAD_ImportFile) _FreeCAD_Elevation = pfwrap.createNode('PyFlowFreeCAD', 'FreeCAD_Elevation', 'FreeCAD_Elevation') _FreeCAD_Elevation.setPosition(-292.0, -209.0) gg.addNode(_FreeCAD_Elevation) _FreeCAD_BSplineSurface = pfwrap.createNode('PyFlowFreeCAD', 'FreeCAD_BSplineSurface', 'FreeCAD_BSplineSurface') _FreeCAD_BSplineSurface.setPosition(-77.0, -244.0) gg.addNode(_FreeCAD_BSplineSurface) _FreeCAD_Polygon = pfwrap.createNode('PyFlowFreeCAD', 'FreeCAD_Polygon', 'FreeCAD_Polygon') _FreeCAD_Polygon.setPosition(-266.0, 12.0) gg.addNode(_FreeCAD_Polygon) pfwrap.connect(_FreeCAD_ImportFile, 'points', _FreeCAD_Polygon, 'points') pfwrap.connect(_FreeCAD_ImportFile, 'points', _FreeCAD_Elevation, 'points') pfwrap.connect(_FreeCAD_Elevation, 'outExec', _FreeCAD_BSplineSurface, 'inExec')
#--end hack import blinker import docutils import nodeeditor from nodeeditor.utils import * if not pv3: os.environ["QT_PREFERRED_BINDING"] = os.pathsep.join([ "PyQt4"]) import Qt import nodeeditor.pfwrap as pfwrap pfwrap.getInstance().show() #pfwrap.getInstance().hide() import os import re global __dir__ __dir__ = os.path.dirname(nodeeditor.__file__) #import sys #if sys.version_info[0] !=2: # from importlib import reload import FreeCAD, FreeCADGui
def run_PF_APP_WindowMinimized(app,event): '''triggered from PyFlow.App''' FreeCAD.savePFData = pfwrap.getInstance().graphManager.get().serialize()
def clearGraph(self): instance = pfwrap.getInstance() instance.graphManager.get().clear()
def showPyFlow(self): try: FreeCAD.PF.hide() except: pass pfwrap.getInstance().show()