CadCaeCam.com是目前CAD/CAE/CAM/PLM类专业网站中,用户最多,技术含量最高的网站之一, 涵盖目前所有常用的C3P类软件技术讨论。

C3P专业门户

 找回密码
 注册

QQ登录

只需一步,快速开始

扫一扫,访问微社区

查看: 51251|回复: 236

一个面绘制例子

  [复制链接]
发表于 2000-10-5 10:32:13 | 显示全部楼层 |阅读模式
一个面绘制例子-VTK
游客,如果您要查看本帖隐藏内容请回复
发表于 2000-10-5 10:42:12 | 显示全部楼层
顶 hongtong 斑竹, 很不错啊,给我们学习vtk提供莫大的帮忙,谢谢你
) Z. ^2 Z% K+ c以下是方便大家,贴出里面的关键代码
# n% K4 m3 j+ T' m" e//
) w1 ?/ M" U  n//知周. z/ `: _" A. m2 Q- A: ]- T# V
//
1 \: n' D6 [& K# G7 i/ A, X5 t  k4 [% d
#include "vtkRenderer.h"
. B' P' T: W" C5 K5 g! j#include "vtkRenderWindow.h"+ d+ l7 w' a/ ]' C$ D
#include "vtkRenderWindowInteractor.h"( l+ _  |1 S, [5 Z/ D/ v
#include "vtkProperty.h"4 |, [' G4 g; G1 `
#include "vtkCamera.h"  P8 X( d2 W1 _7 h& @1 u
#include "vtkPolyDataMapper.h"
  u" q( C/ V8 O' f$ J! p) n* G  H9 v#include "vtkPolyDataNormals.h"
+ g3 W4 w+ y0 |  |( M1 J#include "vtkContourFilter.h"
5 k5 B  w0 E4 W$ _0 m#include "vtkPLOT3DReader.h"6 A' @, Z/ d5 k$ ^
#include "vtkSLCReader.h"6 s3 U, p& `$ D

  c- D% ]# U8 q  U( G! ~
, c, Q! T8 A# a8 r, Q#pragma comment (lib, "vtkGraphics.lib")
! x. v) T* [7 `' O, @( B#pragma comment (lib, "vtkFiltering.lib")
0 A9 x$ e9 V8 F: t#pragma comment (lib, "vtkRendering.lib"): W4 P& v9 t6 ^& H2 E% N4 Q' `/ Q
#pragma comment (lib, "vtkIO.lib")
) y7 ]  E& Q" G1 Y# R/ I6 a2 I, W4 A! q: {  |; H
+ B# f: i9 D' \) H5 T9 y. S( a# B
int main (int argc, char **argv)6 Q& a. P2 V/ |
{, f8 j$ E1 x# Y" n5 C: V
  vtkRenderer *aRenderer = vtkRenderer::New();
2 C( Y- Y; r: w  vtkRenderWindow *renWin = vtkRenderWindow::New();; o$ \3 r5 d0 D1 J1 o
   renWin->AddRenderer(aRenderer);
9 ~0 _; ]. X3 ~& x2 Y) @: H  vtkRenderWindowInteractor *iren = vtkRenderWindowInteractor::New();
+ U) u, v( S* R' `   iren->SetRenderWindow(renWin);: Z, o: w; b$ H

/ W) Y  \: N' ~8 @! y% T3 \) v  F  vtkPLOT3DReader *pl3d = vtkPLOT3DReader::New();
2 n0 j7 s+ j1 d9 Z   pl3d->SetXYZFileName(".\\combxyz.bin");2 f5 O  _! t" x9 V
   pl3d->SetQFileName(".\\combq.bin");
+ k! r, x# {2 Y* }# g   pl3d->SetScalarFunctionNumber(100);
. G2 E1 Y/ {% {9 e2 Y  G7 [   pl3d->SetVectorFunctionNumber(202);
7 `+ h  i* I1 T! M/ e   pl3d->Update();
. [# t# Z+ f2 j4 S6 {# Y4 u$ V' v) N; a9 D% I% m2 l  D* I2 V
  vtkContourFilter *filter = vtkContourFilter::New();
! M& B/ `3 ~1 x7 s* J6 a   filter->SetInputConnection(pl3d->GetOutputPort());8 s. i$ Z* [3 F; t
   filter->SetValue(0,.22);, y- L, C, X/ {/ a
  vtkPolyDataNormals *normals = vtkPolyDataNormals::New();* D6 F  ?* O) u, [8 \
   normals->SetInputConnection(filter->GetOutputPort());5 T$ @5 T. n: ]1 r) r8 t* a: c9 u! [
   normals->SetFeatureAngle(45);5 B( {$ g% q4 g2 V
  vtkPolyDataMapper *Mapper = vtkPolyDataMapper::New();' Z( m7 D; v" d" b3 s
   Mapper->SetInputConnection(normals->GetOutputPort());) E6 g5 A$ A' ^0 i/ W% E! f; }
   Mapper->ScalarVisibilityOff();% {$ j; p* R$ _3 m. S2 d
  vtkActor *Actor = vtkActor::New();/ p9 G: d/ P5 O9 N0 t0 p. i+ t0 i
   Actor->SetMapper(Mapper);
! O: h( C5 i- q  J1 e   Actor->GetProperty()->SetDiffuse(.8);9 `5 u% o# P: I$ e1 z4 p
   Actor->GetProperty()->SetSpecular(.5);% \0 T- P! ^; B) S+ T3 A# f
   Actor->GetProperty()->SetSpecularPower(30);& H; R7 W/ N' V4 g& t8 s+ {
  2 i4 W# D7 \/ g
  aRenderer->AddActor(Actor);3 V  p: E* l, t4 s
  aRenderer->SetBackground(1,1,1);
2 F) d( ?3 j4 u+ n; ?+ d$ f  renWin->SetSize(320,240);2 k; ^3 P9 j2 p2 X! N7 a
  aRenderer->ResetCameraClippingRange();1 M* `/ W7 U# P/ @% @$ D7 t5 {" h
  iren->Initialize();
1 x# E7 _8 a1 F# T1 N- E) i  iren->Start();
  D7 B8 B: o  S, A" i1 s" [% h* V; j0 }# H% o
  aRenderer->Delete();
% x/ c6 J# h+ a3 ], j, s  renWin->Delete();
2 T- h" ]+ H0 [7 u+ H# \  iren->Delete();1 A1 ]: p; F$ E  V1 P1 _3 r
  
9 L- f% i$ H- Y- o4 V' K  return 0;
6 f5 ~! I& f( D% {1 @8 }, Q}
发表于 2000-10-5 10:43:16 | 显示全部楼层
如果有图片显示运行结果更好5 v5 n* E1 H; o" J
我们看的更直观哦
发表于 2000-10-17 17:18:21 | 显示全部楼层
来了就顶
发表于 2000-10-17 18:13:42 | 显示全部楼层
我也来支持一下hongtong斑竹。
发表于 2000-10-18 22:31:44 | 显示全部楼层
谢谢呀。期望着更多的共享。
发表于 2000-10-19 09:18:59 | 显示全部楼层
谢谢哦!
发表于 2000-10-30 10:38:49 | 显示全部楼层
非常感谢
发表于 2000-11-11 16:28:06 | 显示全部楼层
不错啊
发表于 2000-11-11 16:28:25 | 显示全部楼层
不错啊
您需要登录后才可以回帖 登录 | 注册

本版积分规则

QQ|手机版|小黑屋|CadCaeCamPlm专业门户网站 ( 蜀ICP备05008798号 ) 网站速度测试

GMT+8, 2019-8-20 21:01 , Processed in 0.095562 second(s), 23 queries .

Powered by Discuz! X3.4 Licensed

© 2001-2017 Comsenz Inc.

快速回复 返回顶部 返回列表