在PySide中嵌入VTK
来源:互联网 发布:SEO优化 编辑:程序博客网 时间:2024/05/18 16:35
在用C++时,作为官方搭配,Qt和VTK是一对好基友,本文试试python下这对基友是否暧昧依旧? 这里用的是Qt的python版本:PySide,下载官方编译好的python支持包:vtkpython-6.3.0-Windows-64bit.exe。
0.环境变量:
Path : D:\Program Files\VTK 6.3.0\bin;
PYTHONPATH : D:\Program Files\VTK 6.3.0\bin\Lib\site-packages;
1. 导入vtk包:
import vtk
from vtk import *
测试VTK是否可用:
print vtk.vtkVersion.GetVTKSourceVersion()
2. 测试代码:
import vtk cone_a=vtk.vtkConeSource() coneMapper = vtk.vtkPolyDataMapper() coneMapper.SetInputConnection(cone_a.GetOutputPort()) coneActor = vtk.vtkActor() coneActor.SetMapper(coneMapper) ren1= vtk.vtkRenderer() ren1.AddActor( coneActor ) ren1.SetBackground( 0.1, 0.2, 0.4 ) renWin = vtk.vtkRenderWindow() renWin.AddRenderer( ren1 ) renWin.SetSize( 300, 300 ) renWin.Render() iren=vtk.vtkRenderWindowInteractor() iren.SetRenderWindow(renWin) iren.Initialize() iren.Start()3. GUI,只贴出main.py,自动生成的ui.py就不贴了。这样写挺烦,不过之后应该能封装。嗯,先这样,一步一步来。
__author__ = 'winston-pc'from PySide import QtCore, QtGuifrom PySide.QtGui import QApplicationimport vtkfrom vtk.qt4.QVTKRenderWindowInteractor import QVTKRenderWindowInteractorimport sysclass MWindow(QMainWindow,Ui_MainWindow): def __init__(self, parent=None): super(MWindow,self).__init__(parent) self.ui = Ui_MainWindow() self.setupUi(self) self.ui.gridlayout = QtGui.QGridLayout(self.widget) self.ui.vtkWidget = QVTKRenderWindowInteractor(self.widget) self.ui.gridlayout.addWidget(self.ui.vtkWidget, 0, 0, 1, 1) self.ren = vtk.vtkRenderer() self.ui.vtkWidget.GetRenderWindow().AddRenderer(self.ren) self.iren = self.ui.vtkWidget.GetRenderWindow().GetInteractor()......# Create sourcesource = vtk.vtkConeSource()# Create a mappermapper = vtk.vtkPolyDataMapper()mapper.SetInputConnection(source.GetOutputPort())# Create an actoractor = vtk.vtkActor()actor.SetMapper(mapper)self.ren.AddActor(actor)self.ren.SetBackground( 0.1, 0.2, 0.4 )......# Main Functionif __name__=='__main__': app = QApplication(sys.argv) Window = MWindow() Window.show() Window.iren.Initialize()...... sys.exit(app.exec_()) #Program.exec_()
总是想做的太多,能做的太少,时间和精力只有那么多,所以整个故事的结果就又交给了选择,哎~~!
关键词:自律
参考文献:
1.http://www.cnblogs.com/21207-iHome/articles/6427253.html
2.http://www.vtk.org/Wiki/VTK/Examples/Python/Widgets/EmbedPyQt2
阅读全文
0 0
- 在PySide中嵌入VTK
- VTK:VTK嵌入MFC成功
- [PySide]在简易在线词典中使用多线程
- PySide 路在何方?
- 在wxPython中使用VTK
- 在VS中配置VTK
- pyside
- 在VTK中显示中文字符
- 在VTK中使用Opengl代码
- PCL嵌入VTK/QT显示
- VTK嵌入MFC同步显示
- 在MFC中嵌入Word
- 在网页中嵌入QQ
- 在桌面中嵌入窗体
- 在桌面中嵌入窗体
- 在桌面中嵌入窗体
- 在应用中嵌入Python
- 在桌面中嵌入窗体
- 如何下载谷歌地图指定日期的历史影像?
- wsimport 不是内部或外部命令,也不是可运行的程序或批处理文件
- 问题 G: 水果消除
- 彻底理解ThreadLocal
- Spring Boot学习记录(四)--问题记录
- 在PySide中嵌入VTK
- Web基础之JSP与EL表达式
- ionic 上拉加载更多详细步骤
- Logistic回归原理及公式推导
- 实现前后端分离的心得
- Linux基础命令学习笔记(一)
- linux中pip安装步骤与使用详解
- Web应用初体验——登录登出验证系统
- springMVC实现接收list