mirror of
https://github.com/OpenFOAM/ThirdParty-6.git
synced 2025-12-08 06:57:43 +00:00
71 lines
1.7 KiB
Python
71 lines
1.7 KiB
Python
import os
|
|
import PythonQt
|
|
from PythonQt import QtGui, QtCore
|
|
import paraview.simple as smp
|
|
|
|
|
|
|
|
def getPVApplicationCore():
|
|
return PythonQt.paraview.pqPVApplicationCore.instance()
|
|
|
|
|
|
def getPVSettings():
|
|
return getPVApplicationCore().settings()
|
|
|
|
|
|
def getServerManagerModel():
|
|
return getPVApplicationCore().getServerManagerModel()
|
|
|
|
|
|
def getPQView(view):
|
|
model = app.getServerManagerModel()
|
|
return PythonQt.paraview.pqPythonQtMethodHelpers.findProxyItem(model, view.SMProxy)
|
|
|
|
|
|
def getRenderView():
|
|
renderView = smp.GetRenderView()
|
|
return getPQView(renderView)
|
|
|
|
|
|
def findQObjectByName(widgets, name):
|
|
for w in widgets:
|
|
if w.objectName == name:
|
|
return w
|
|
|
|
|
|
def getMainWindow():
|
|
topLevelWidgets = QtGui.QApplication.topLevelWidgets()
|
|
for widget in QtGui.QApplication.topLevelWidgets():
|
|
if isinstance(widget, PythonQt.private.ParaViewMainWindow)
|
|
return widget
|
|
#
|
|
# alternate implementation:
|
|
#return findQObjectByName(QtGui.QApplication.topLevelWidgets(), 'pqClientMainWindow')
|
|
|
|
|
|
def testButton():
|
|
def makeSphere():
|
|
smp.Sphere()
|
|
smp.Show()
|
|
smp.ResetCamera()
|
|
smp.Render()
|
|
global button
|
|
button = QtGui.QPushButton('sphere')
|
|
button.connect('clicked()', makeSphere)
|
|
button.show()
|
|
# note, the button was assigned to a global variable so that the
|
|
# reference is not deleted when this function returns
|
|
|
|
|
|
def sayHello():
|
|
QtGui.QMessageBox.information(getMainWindow(), 'Hello PythonQt!')
|
|
|
|
|
|
def testUserInput():
|
|
fileName = QtGui.QFileDialog.getOpenFileName(getMainWindow(), 'Open file',)
|
|
if fileName:
|
|
smp.OpenDataFile(fileName, guiName=os.path.basename(fileName))
|
|
smp.Show()
|
|
smp.ResetCamera()
|
|
smp.Render()
|