亚洲香蕉成人av网站在线观看_欧美精品成人91久久久久久久_久久久久久久久久久亚洲_热久久视久久精品18亚洲精品_国产精自产拍久久久久久_亚洲色图国产精品_91精品国产网站_中文字幕欧美日韩精品_国产精品久久久久久亚洲调教_国产精品久久一区_性夜试看影院91社区_97在线观看视频国产_68精品久久久久久欧美_欧美精品在线观看_国产精品一区二区久久精品_欧美老女人bb

首頁 > 學院 > 開發設計 > 正文

vtk在Java2中的使用

2019-11-18 13:19:18
字體:
來源:轉載
供稿:網友

  VTK(Visualization ToolKit)是一個開放源碼、自由獲取的軟件系統,全世界的數以千計的研究人員和開發人員用它來進行3D計算機圖形,圖像處理,可視化。VTK包含一個c++類庫,眾多的翻譯接口層,包括Tcl/Tk,java,Python。
  
  Visualization Toolkit 是一個用于可視化應用程序構造與運行的支撐環境,它是在三維函數庫OpenGL 的基礎上采用面向對象的設計方法發展起來的,它將我們在可視化開發過程中會經常碰到的細節屏蔽起來,并將一些常用的算法封裝起來。比如Visualization Toolkit 將我們在表面重建中比較常見的Marching Cubes 算法封裝起來,以類的形式給我們以支持,這樣我們在對三維規則點陣數據進行表面重建時就不必再重復編寫MarchingCubes 算法的代碼,而直接使用Visualization Toolkit 中已經提供的vtkMarchingCubes 類
  
  Visualization Toolkit 是給從事可視化應用程序開發工作的研究人員提供直接的技術支持的一個強大的可視化開發工具,它以用戶使用的方便性和靈活性為主要原則,具有如下的特點:
  
  1) 具有強大的三維圖形功能。Visualization Toolkit 既支持基于體素Voxel-basedrendering 的體繪制Volume Rendering又保留了傳統的面繪制,從而在極大的改善可視化效果的同時又可以充分利用現有的圖形庫和圖形硬件
  
  2) Visualization Toolkit 的體系結構使其具有非常好的流streaming 和高速緩存caching 的能力,在處理大量的數據時不必考慮內存資源的限制
  
  3) Visualization Toolkit 能夠更好的支持基于網絡的工具比如Java 和VRML 隨著Web 和Internet 技術的發展Visualization Toolkit 有著很好的發展前景
  
  4) 能夠支持多種著色如OpenGL 等
  
  5) Visualization Toolkit 具有設備無關性使其代碼具有良好的可移植性
  
  6) Visualization Toolkit 中定義了許多宏,這些宏極大的簡化了編程工作并且加強了一致的對象行為
  
  7) Visualization Toolkit 具有更豐富的數據類型,支持對多種數據類型進行處理
  
  8) 既可以工作于Windows 操作系統又可以工作于Unix 操作系統極大的方便了用戶
  
  下面介紹一下VTK在JDK1.4.1_02下的使用方法,
  
  1) 從vtk的網站(http://www.vtk.org/)上下載最新的軟件包,版本是4.2。然后把它安裝到C:/vtk42/目錄下
  
  2) 從Sun官方下載鏈接,版本1.4.1_02,然后安裝到C:/j2sdk1.4.1_02上
  
  3) 設置環境變量,系統->高級->環境變量->path,設置為C:/j2sdk1.4.1_02/bin;C:/PRogramFiles/Java/j2re1.4.1_02/bin;C:/j2sdk1.4.1_02/jre/bin;C:/vtk42/bin
  
  4) 拷貝C:/vtk42/bin/*java.dll到系統目錄
  
  5) 編譯,運行,為了方便起見,拷貝C:/vtk42/Examples/Tutorial/Step1/Java目錄下的Cone.java到d盤,當前目錄為d盤
  
  D:/>javac -classpath c:/vtk42/bin/vtk.jar Cone.java
  
  D:/>java -classpath .;c:/vtk42/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 360 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( 3.0 );
  
    cone.SetRadius( 1.0 );
  
    cone.SetResolution( 10 );
  
     //
  
    // In this example we terminate the pipeline with a mapper process object.
  
    // (Intermediate filters such as vtkShrinkPolyData could be inserted in
  
    // between 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 ren1 = new vtkRenderer();
  
    ren1.AddActor( coneActor );
  
    ren1.SetBackground( 0.1, 0.2, 0.4 );
  
    //
  
    // 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 300 pixels by 300
  
    //
  
    vtkRenderWindow renWin = new vtkRenderWindow();
  
    renWin.AddRenderer( ren1 );
  
    renWin.SetSize( 300, 300 );
  
    //
  
    // now we loop over 360 degreeees and render the cone each time
  
    //
  
    int i;
  
    for (i = 0; i < 360; ++i)
  
     {
  
     // render the image
  
     renWin.Render();
  
     // rotate the active camera by one degree
  
     ren1.GetActiveCamera().Azimuth( 1 );
  
     }
  
    }
  }

發表評論 共有條評論
用戶名: 密碼:
驗證碼: 匿名發表
亚洲香蕉成人av网站在线观看_欧美精品成人91久久久久久久_久久久久久久久久久亚洲_热久久视久久精品18亚洲精品_国产精自产拍久久久久久_亚洲色图国产精品_91精品国产网站_中文字幕欧美日韩精品_国产精品久久久久久亚洲调教_国产精品久久一区_性夜试看影院91社区_97在线观看视频国产_68精品久久久久久欧美_欧美精品在线观看_国产精品一区二区久久精品_欧美老女人bb
国产一区二区三区毛片| 中文字幕免费国产精品| 中国日韩欧美久久久久久久久| 久久精品欧美视频| 亚洲欧美日韩在线一区| 亚洲国产一区二区三区在线观看| 97av在线视频免费播放| 亚洲一二三在线| 亚洲精品美女在线| 久久精品中文字幕电影| 欧美激情在线视频二区| 亚洲影影院av| 庆余年2免费日韩剧观看大牛| 亚洲免费视频网站| 都市激情亚洲色图| 国产69精品久久久久9| 亚洲欧美日韩爽爽影院| 亚洲成人av资源网| 亚洲欧美制服另类日韩| 奇米一区二区三区四区久久| 国产日本欧美一区二区三区| 欧美一级片一区| 亚洲福利视频专区| 2019中文字幕全在线观看| 欧美成人h版在线观看| 91久久精品在线| 国产精品久久久久久久久男| 日本免费久久高清视频| 亚洲曰本av电影| 黑人巨大精品欧美一区二区| 97色在线播放视频| 在线视频欧美日韩精品| 欧美日韩成人在线视频| 欧美一级bbbbb性bbbb喷潮片| 久久av资源网站| 欧美成人午夜激情视频| 色综合五月天导航| 欧美性xxxxxxxxx| 日韩av大片免费看| 国产成人午夜视频网址| 精品国产一区二区三区久久狼5月| 国产精品影片在线观看| 欧美午夜激情在线| 国产精品wwwwww| 色爱精品视频一区| 国产精品一区二区久久精品| 欧美激情在线视频二区| 欧美在线国产精品| 中文字幕视频在线免费欧美日韩综合在线看| 国产成人综合精品| 亚洲一区二区久久久久久| 美女久久久久久久| 久久久噜久噜久久综合| 国产99视频精品免视看7| 日韩精品视频免费专区在线播放| 亚洲影院高清在线| 精品福利在线看| 91爱视频在线| 26uuu另类亚洲欧美日本老年| 日韩av免费在线观看| 丝袜亚洲欧美日韩综合| 久久久久久噜噜噜久久久精品| 色综合色综合久久综合频道88| 欧美性受xxx| 亚洲精品午夜精品| 欧美黑人xxxx| 欧美午夜性色大片在线观看| 日韩精品免费观看| 91性高湖久久久久久久久_久久99| 欧美肥臀大乳一区二区免费视频| 国产精品免费久久久| 亚洲精品美女在线观看播放| 亚洲精品自拍第一页| 亚洲国产成人在线播放| 中文字幕亚洲色图| 日韩美女视频免费在线观看| 中国人与牲禽动交精品| 国产精品日韩欧美| 亚洲伊人久久综合| 不卡av在线播放| 国产亚洲美女精品久久久| 一区二区三区国产在线观看| 国产精品自拍偷拍| 国产精品久久久久999| 97香蕉久久夜色精品国产| 国产精品青青在线观看爽香蕉| 亚洲福利视频免费观看| 热99精品只有里视频精品| 欧美黄色三级网站| 亚洲专区中文字幕| 亚洲黄一区二区| 欧美成人精品h版在线观看| 国产成人一区二区在线| 欧美电影免费观看大全| 97视频在线观看免费高清完整版在线观看| 国产精品欧美久久久| 搡老女人一区二区三区视频tv| 日本久久91av| 国产精品啪视频| 亚洲图片在线综合| 国产精品视频久久久| 在线a欧美视频| 北条麻妃在线一区二区| 亚洲欧美日韩第一区| 色噜噜久久综合伊人一本| 日韩av免费看网站| 国产精品久久婷婷六月丁香| 亚洲国产精品嫩草影院久久| 91在线高清视频| 精品香蕉一区二区三区| 成人女保姆的销魂服务| 日韩中文理论片| 91成人精品网站| 91在线观看欧美日韩| 91av在线播放视频| 亚洲欧美另类国产| 亚洲欧洲在线免费| 久久天天躁夜夜躁狠狠躁2022| 久久男人av资源网站| 亚洲精品日韩av| 亚洲视频欧洲视频| 亚洲新中文字幕| 免费99精品国产自在在线| 久久精品在线播放| 国产精品综合网站| 中文字幕在线国产精品| 91性高湖久久久久久久久_久久99| 日韩久久精品电影| 国产欧亚日韩视频| 亚洲a级在线播放观看| 一道本无吗dⅴd在线播放一区| www高清在线视频日韩欧美| 国产人妖伪娘一区91| 亚洲福利在线看| 国产视频精品一区二区三区| 国产欧美精品一区二区三区-老狼| 亚洲视频在线观看| 亚洲精品美女久久久久| 亚洲免费视频一区二区| 亚洲在线www| 日韩中文字幕视频在线观看| 亚洲精品自拍视频| 超碰日本道色综合久久综合| 日本精品一区二区三区在线播放视频| 日韩av在线直播| 国产丝袜一区二区| 亚洲乱码一区av黑人高潮| 91九色单男在线观看| 欧美午夜美女看片| 国产日产欧美a一级在线| 夜夜嗨av一区二区三区免费区| 国产成人精品免费视频| 欧美激情视频在线观看| www.欧美免费| 激情亚洲一区二区三区四区| 国产精品成人免费电影| 欧美午夜宅男影院在线观看| 国产一区二区三区久久精品| 成人网欧美在线视频| 国产美女高潮久久白浆| 欧美性生交xxxxx久久久| 日本成人免费在线| 国产视频在线观看一区二区| 中文字幕综合在线|