如何用python使用VTK

如何用python使用VTK,第1张

在Windows环境下用Python语言开发VTK程序

1.安装Python集成开发环境IDLE:下载地址:模肆基

2.然后到VTK官网下载vtkpythone-6.2.0-Windows-32bits.exe,下载地址:,然后直接安装,安装目录自行选择,比如:E:\Program Files\VTK 6.2.0。

3.添加系统环境变量

A.把VTK安装目录下的bin文件夹的路径添加到Path环旦谨境变量中,如下图所示:

B.新建一个PYTHONPATH系统环境变量,将VTK的所有的雹告python包所在的目录site-packages添加到新建的系统环境变量PYTHONPATH中,如下图所示:

4.然后就可以在Python的IDLE界面中导入VTK的模块和库了,如敲入以下指令,不能出现报错:

导入VTK库之后,可以测试VTK的版本:

5.新建一个testVTK.py文件:

[python] view plain copy

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()

保存之后运行结果如下:

官方文档地址

The Visualization Toolkit (VTK) is an open-source, freely available software system for 3D computer graphics, image processing, and visualization. 

可视化工具包(VTK)是一个开源、免费的软件系统,用于计算机3D图形、图像处理及可视化。

Its implementation consists of an ES6 JavaScript class library which can be integrated into any web application. 

它的实现包括一个ES6 JavaScript类库,该库可以集成到任何web应用程序中。

The toolkit leverages WebGL and supports a wide variety of visualization algorithms including scalar, vector, tensor, texture, and volumetric methods. 

该工具包利用WebGL,支持各种可视化算法,包括标量、矢量、张量、纹理和体积方法。

VTK is part of Kitware’s collection of commercially supported open-source platforms for software development. 

VTK是Kitware的商业支持的开源软件开发平台集合的一部分。

Welcome to the vtk.js documentation.

欢迎使用vtk.js文档。

 If you encounter any problems when using vtk.js, have a look at the  troubleshooting guide , raise an issue on  GitHub  or start a topic on the  Mailing list .

如果在使用vtk.js时遇到任何问题,请查看故障排除指南,在GitHub上提出问题,或者在邮件列表上开启一个主题。

vtk.js is a rendering library made for Scientific Visualization on the Web. 

vtk.js是一个用于在Web上进行科学可视化的渲染库。

It adapts the VTK structure and expertise to bring high performance rendering into your browser.

它调整了VTK结构和专业知识,将高性能渲染引入浏览器。

You can learn more about what vtk.js can do for you via the  examples .

您可以通过示例了简握陵解到,vtk.js可以为您做些什么。

Importing vtk.js as an external script  用加载外拦戚部脚本的方式引入vtk.js

Using vtk.js as an ES6 dependency

This guide illustrates how to build an application using vtk.js as a dependency using a modern toolsets such as Webpack, NPM.

本指南说明了如何使用Webpack、NPM等现代工具把vtk.js作皮悄为依赖项来构建应用程序。

VTK(Visualization ToolKit)是一个开放源码 自由获取的软件系统 全世界的数以千计的研究人员和开发人员用它来进行 D计算机图形 图像处理 可视化 VTK包含一个c++类库 众多的翻译接口层 包括Tcl/Tk Java Python Visualization Toolkit 是一个用于可视化应用程序构造与运行的支撑环境 它是在三维函数库OpenGL 的基础上采用面向对象的设计方法发展起来的 它将我们在可视化开发过程中会经常遇到的细节屏蔽起来 并将一些常用的算法封装起来 比如Visualization Toolkit 将我们在表面重建中比较常见的Marching Cubes 算法封装起来 以类的形式给我们以支持 这样我们在对三维规则点阵数据进行表面重建时就不必再重复编写MarchingCubes 算法的代码 而直接使用Visualization Toolkit 中已经提供的vtkMarchingCubes 类Visualization Toolkit 是给从事可视化应用程序开发工作的研究人员提供直接的技术支持的一个强大的可视化开发工具 它以用户使用的方便性和灵活性为主要原则 具有如下的特点 ) 具有强大的三维图形功能 Visualization Toolkit 既支持基于体素Voxel basedrendering 的体绘制Volume Rendering又保留了传统的面绘制 从而在极大的改善可视化效果的同时又睁简戚可以充分利用现有的图形库和图形硬件 ) Visualization Toolkit 的体系结构使其具有非常好的流streaming 和高速缓存caching 的能力 在处理大量的数据时不必考虑内存资源的限制 ) Visualization Toolkit 能够更好的支持咐哗基于网络的工具比如Java 和VRML 随着Web 和Internet 技术的发展Visualization Toolkit 有着很好的发展前景 ) 能够支持多种着色如OpenGL 等 ) Visualization Toolkit 具有设备无关性使其代码具有良好的可移植性 ) Visualization Toolkit 中定义了许多宏 这些宏极大的简化了编程工作并且加强了一致的对象行为 ) Visualization Toolkit 具有更丰富的数据类型 支持对多种数据类型进行处理 悉陵  ) 既可以工作于Windows *** 作系统又可以工作于Unix *** 作系统极大的方便了用户下面介绍一下VTK在JDK _ 下的使用方法 ) 从vtk的网站()上下载最新的软件包 版本是 然后把它安装到C:\vtk \目录下 ) 从Sun官方下载链接 版本 _ 然后安装到C:\j sdk _ 上 ) 设置环境变量 系统 >高级 >环境变量 >path 设置为C:\j sdk _ \binC:\ProgramFiles\Java\j re _ \binC:\j sdk _ \jre\binC:\vtk \bin ) 拷贝C:\vtk \bin\*java dll到系统目录 ) 编译 运行 为了方便起见 拷贝C:\vtk \Examples\Tutorial\Step \Java目录下的Cone java到d盘 当前目录为d盘D:\>javac classpath c:\vtk \bin\vtk jar Cone javaD:\>java classpath c:\vtk \bin\vtk jar Cone源码如下 //// This example creates a polygonal model of a cone and then renders it to// the screen It will rotate the cone degrees and then exit The basic// setup of source >mapper >actor >renderer >renderwindow is // typical of most VTK programs //// We import the vtk wrapped classes first import vtk *// Then we define our class public class Cone { // In the static contructor we load in the native code  // The libraries must be in your path to work  static { System loadLibrary( vtkCommonJava )System loadLibrary( vtkFilteringJava )System loadLibrary( vtkIOJava )System loadLibrary( vtkImagingJava )System loadLibrary( vtkGraphicsJava )System loadLibrary( vtkRenderingJava ) } // now the main program public static void main (String []args) {// // Next we create an instance of vtkConeSource and set some of its// properties The instance of vtkConeSource cone is part of a// visualization pipeline (it is a source process object)it produces data// (output type is vtkPolyData) which other filters may process //vtkConeSource cone = new vtkConeSource()cone SetHeight( )cone SetRadius( )cone SetResolution( )// // In this example we terminate the pipeline with a mapper process object // (Intermediate filters such as vtkShrinkPolyData could be inserted in// beeen the source and the mapper ) We create an instance of// vtkPolyDataMapper to map the polygonal data into graphics primitives We// connect the output of the cone souece to the input of this mapper //vtkPolyDataMapper coneMapper = new vtkPolyDataMapper()coneMapper SetInput( cone GetOutput() )// // Create an actor to represent the cone The actor orchestrates rendering// of the mapper s graphics primitives An actor also refers to properties// via a vtkProperty instance and includes an internal transformation// matrix We set this actor s mapper to be coneMapper which we created// above //vtkActor coneActor = new vtkActor()coneActor SetMapper( coneMapper )//// Create the Renderer and assign actors to it A renderer is like a// viewport It is part or all of a window on the screen and it is// responsible for drawing the actors it has  We also set the background// color here//vtkRenderer ren = new vtkRenderer()ren AddActor( coneActor )ren SetBackground( )//// Finally we create the render window which will show up on the screen// We put our renderer into the render window using AddRenderer We also// set the size to be pixels by //vtkRenderWindow renWin = new vtkRenderWindow()renWin AddRenderer( ren )renWin SetSize( )//// now we loop over degreeees and render the cone each time//int ifor (i = i <++i) { // render the image renWin Render() // rotate the active camera by one degree ren GetActiveCamera() Azimuth( ) }} } lishixinzhi/Article/program/Java/JSP/201311/19769


欢迎分享,转载请注明来源:内存溢出

原文地址: http://outofmemory.cn/yw/8222309.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2023-04-14
下一篇 2023-04-14

发表评论

登录后才能评论

评论列表(0条)

保存