/[escript]/trunk/doc/user/pyvisi.tex
ViewVC logotype

Contents of /trunk/doc/user/pyvisi.tex

Parent Directory Parent Directory | Revision Log Revision Log


Revision 1076 - (show annotations)
Wed Apr 4 06:40:33 2007 UTC (13 years, 11 months ago) by jongui
File MIME type: application/x-tex
File size: 22455 byte(s)
Some updates.
1 \chapter{The module \pyvisi}
2 \label{PYVISI CHAP}
3 \declaremodule{extension}{esys.pyvisi}
4 \modulesynopsis{Python Visualization Interface}
5
6 \section{Introduction}
7 \pyvisi is a Python module that is used to generate 2D and 3D visualization
8 for escript and its PDE solvers: finley and bruce. This module provides
9 an easy to use interface to the \VTK library (\VTKUrl). There are three forms
10 of rendering an object. (1) Online - object is rendered on-screen with
11 interaction (i.e. zoom and rotate) capability, (2) Offline - object is rendered
12 off-screen with no interation capability and (3) Display - object is rendered
13 on-screen but with no interaction capability (able to procude on-the-fly
14 animation). All three approaches has the option to save the rendered object as
15 an image.
16
17 The following points outlines the general guidelines when using \pyvisi:
18
19 \begin{enumerate}
20 \item Create a \Scene instance, a window in which objects are to be rendered on.
21 \item Create a data input instance (i.e. \DataCollector or \ImageReader), which
22 reads and loads the source data for visualization.
23 \item Create a data visualization instance (i.e. \Map, \Velocity, \Ellipsoid,
24 \Contour, \Carpet, \StreamLine or \Image), which proccesses and manipulates the
25 source data.
26 \item Create a \Camera or \Light instance, which controls the viewing angle and
27 lighting effects.
28 \item Lastly, render the object using either the Online, Offline or Display
29 option.
30 \end{enumerate}
31 \begin{center}
32 \begin{math}
33 scene \rightarrow data input \rightarrow data visualization \rightarrow
34 camera/light \rightarrow render
35 \end{math}
36 \end{center}
37
38 The sequence in which instances are created is very important due to
39 to the dependencies among them. For example, a data input instance must
40 always be created BEFORE a data visualisation instance.
41 If the sequence is switched, the program will throw an error because a
42 source data must to be specified before it can be
43 manipulated. Similarly, a camera and light instance must always be created
44 AFTER an input instance, otherwise the program will throw
45 an error because the camera and light instance needs to calculates its
46 position based on the source data.
47
48 \section{\pyvisi Classes}
49 The following subsections give a brief overview of the important classes
50 and some of their corresponding methods. Please refer to \ReferenceGuide for
51 full details.
52
53
54 %#############################################################################
55
56
57 \subsection{Scene Classes}
58 This subsection details the instances used to setup the viewing environment.
59
60 \subsubsection{\Scene class}
61
62 \begin{classdesc}{Scene}{renderer = Renderer.ONLINE, num_viewport = 1,
63 x_size = 1152, y_size = 864}
64 A scene is a window in which objects are to be rendered on. Only
65 one scene needs to be created and can display data from one source. However,
66 a scene may be divided into four smaller windows called viewports (if needed).
67 The four viewports in turn can display data from four different sources.
68 \end{classdesc}
69
70 The following are some of the methods available:
71 \begin{methoddesc}[Scene]{setBackground}{color}
72 Set the background color of the scene.
73 \end{methoddesc}
74
75 \begin{methoddesc}[Scene]{saveImage}{image_name}
76 Save the rendered object as an image offline. No interaction can occur.
77 \end{methoddesc}
78
79 \begin{methoddesc}[Scene]{animate}{}
80 Animate the rendered object on-the-fly. No interaction can occur.
81 \end{methoddesc}
82
83 \begin{methoddesc}[Scene]{render}{}
84 Render the object online. Interaction can occur.
85 \end{methoddesc}
86
87 \subsubsection{\Camera class}
88
89 \begin{classdesc}{Camera}{scene, data_collector, viewport = Viewport.SOUTH_WEST}
90 A camera controls the display angle of the rendered object and one is
91 usually created for a \Scene. However, if a \Scene has four viewports, then a
92 separate camera may be created for each viewport.
93 \end{classdesc}
94
95 The following are some of the methods available:
96 \begin{methoddesc}[Camera]{setFocalPoint}{position}
97 Set the focal point of the camera.
98 \end{methoddesc}
99
100 \begin{methoddesc}[Camera]{setPosition}{position}
101 Set the position of the camera.
102 \end{methoddesc}
103
104 \begin{methoddesc}[Camera]{setClippingRange}{near_clipping, far_clipping}
105 Set the near and far clipping plane of the camera.
106 \end{methoddesc}
107
108 \begin{methoddesc}[Camera]{setViewUp}{position}
109 Set the view up direction of the camera.
110 \end{methoddesc}
111
112 \begin{methoddesc}[Camera]{azimuth}{angle}
113 Rotate the camera to the left and right.
114 \end{methoddesc}
115
116 \begin{methoddesc}[Camera]{elevation}{angle}
117 Rotate the camera to the top and bottom (only between -90 and 90).
118 \end{methoddesc}
119
120 \begin{methoddesc}[Camera]{backView}{}
121 Rotate the camera to view the back of the rendered object.
122 \end{methoddesc}
123
124 \begin{methoddesc}[Camera]{topView}{}
125 Rotate the camera to view the top of the rendered object.
126 \end{methoddesc}
127
128 \begin{methoddesc}[Camera]{bottomView}{}
129 Rotate the camera to view the bottom of the rendered object.
130 \end{methoddesc}
131
132 \begin{methoddesc}[Camera]{leftView}{}
133 Rotate the camera to view the left side of the rendered object.
134 \end{methoddesc}
135
136 \begin{methoddesc}[Camera]{rightView}{position}
137 Rotate the camera to view the right side of the rendered object.
138 \end{methoddesc}
139
140 \begin{methoddesc}[Camera]{isometricView}{position}
141 Rotate the camera to view the isometric angle of the rendered object.
142 \end{methoddesc}
143
144 \begin{methoddesc}[Camera]{dolly}{distance}
145 Move the camera towards (greater than 1) and away (less than 1) from
146 the rendered object.
147 \end{methoddesc}
148
149 \subsubsection{\Light class}
150
151 \begin{classdesc}{Light}{scene, data_collector, viewport = Viewport.SOUTH_WEST}
152 A light controls the source of light for the rendered object and works in
153 a similar way to \Camera.
154 \end{classdesc}
155
156 The following are some of the methods available:
157 \begin{methoddesc}[Light]{setColor}{color}
158 Set the light color.
159 \end{methoddesc}
160
161 \begin{methoddesc}[Light]{setFocalPoint}{position}
162 Set the focal point of the light.
163 \end{methoddesc}
164
165 \begin{methoddesc}[Light]{setPosition}{position}
166 Set the position of the camera.
167 \end{methoddesc}
168
169 \begin{methoddesc}[Light]{setAngle}{elevation = 0, azimuth = 0}
170 An alternative to set the position and focal point of the light using the
171 elevation and azimuth degrees.
172 \end{methoddesc}
173
174
175 %##############################################################################
176
177
178 \subsection{Input Classes}
179 This subsection details the instances used to read and load the source data
180 for visualization.
181
182 \subsubsection{\DataCollector class}
183
184 \begin{classdesc}{DataCollector}{source = Source.XML}
185 % need to say something about the escript object not just d xml file.
186 A data collector is used to read data from an XML file or from
187 an escript object directly. Please note that a separate data collector needs
188 to be created when two or more attributes of the same type from
189 the same file needs to be specified (i.e.two scalar attributes from a file).
190 \end{classdesc}
191
192 The following are some of the methods available:
193 \begin{methoddesc}[DataCollector]{setFileName}{file_name}
194 Set the XML source file name to be read.
195 \end{methoddesc}
196
197 \begin{methoddesc}[DataCollector]{setData}{**args}
198 Create data using the \textless name\textgreater=\textless data\textgreater
199 pairing. Assumption is made that the data will be given in the
200 appropriate format.
201 \end{methoddesc}
202
203 \begin{methoddesc}[DataCollector]{setActiveScalar}{scalar}
204 Specify the scalar field to load.
205 \end{methoddesc}
206
207 \begin{methoddesc}[DataCollector]{setActiveVector}{vector}
208 Specify the vector field to load.
209 \end{methoddesc}
210
211 \begin{methoddesc}[DataCollector]{setActiveTensor}{tensor}
212 Specify the tensor field to load.
213 \end{methoddesc}
214
215 \subsubsection{\ImageReader class}
216
217 \begin{classdesc}{ImageReader}{format}
218 An image reader is used to read data from an image in a variety of formats.
219 \end{classdesc}
220
221 The following are some of the methods available:
222 \begin{methoddesc}[ImageReader]{setImageName}{image_name}
223 Set the image name to be read.
224 \end{methoddesc}
225
226 \subsubsection{\TextTwoD class}
227
228 \begin{classdesc}{Text2D}{scene, text, viewport = Viewport.SOUTH_WEST}
229 2D text is used to annotate the rendered object (i.e. adding titles, authors
230 and labels).
231 \end{classdesc}
232
233 The following are some of the methods available:
234 \begin{methoddesc}[Text2D]{setFontSize}{size}
235 Set the 2D text size.
236 \end{methoddesc}
237
238 \begin{methoddesc}[Text2D]{boldOn}{}
239 Bold the 2D text.
240 \end{methoddesc}
241
242 \begin{methoddesc}[Text2D]{setColor}{color}
243 Set the color of the 2D text.
244 \end{methoddesc}
245
246 Including methods from \ActorTwoD.
247
248
249 %##############################################################################
250
251
252 \subsection{Data Visualization Classes}
253 This subsection details the instances used to process and manipulate the source
254 data.
255 \subsubsection{\Map class}
256
257 \begin{classdesc}{Map}{scene, data_collector,
258 viewport = Viewport.SOUTH_WEST, lut = Lut.COLOR, cell_to_point = False,
259 outline = True}
260 Class that shows a scalar field on a domain surface. The domain surface
261 can either be colored or grey-scaled, depending on the lookup table used.
262 \end{classdesc}
263
264 The following are some of the methods available:\\
265 Methods from \ActorThreeD.
266
267 \subsubsection{\MapOnPlaneCut class}
268
269 \begin{classdesc}{MapOnPlaneCut}{scene, data_collector,
270 viewport = Viewport.SOUTH_WEST, lut = Lut.COLOR, cell_to_point = False,
271 outline = True}
272 This class works in a similar way to \Map, except that it shows a scalar
273 field on a plane. The plane can be translated and rotated along the X, Y and
274 Z axes.
275 \end{classdesc}
276
277 The following are some of the methods available:\\
278 Methods from \ActorThreeD and \Transform.
279
280 \subsubsection{\MapOnPlaneClip class}
281
282 \begin{classdesc}{MapOnPlaneClip}{scene, data_collector,
283 viewport = Viewport.SOUTH_WEST, lut = Lut.COLOR, cell_to_point = False,
284 outline = True}
285 This class works in a similar way to \MapOnPlaneCut, except that it shows a
286 scalar field clipped using a plane.
287 \end{classdesc}
288
289 The following are some of the methods available:\\
290 Methods from \ActorThreeD, \Transform and \Clipper.
291
292 \subsubsection{\MapOnScalarClip class}
293
294 \begin{classdesc}{MapOnScalarClip}{scene, data_collector,
295 viewport = Viewport.SOUTH_WEST, lut = Lut.COLOR, cell_to_point = False,
296 outline = True}
297 This class works in a similar way to \Map, except that it shows a scalar
298 field clipped using a scalar value.
299 \end{classdesc}
300
301 The following are some of the methods available:\\
302 Methods from \ActorThreeD and \Clipper.
303
304 \subsubsection{\Velocity class}
305
306 \begin{classdesc}{Velocity}{scene, data_collector,
307 viewport = Viewport.SOUTH_WEST, color_mode = ColorMode.VECTOR,
308 arrow = Arrow.TWO_D, lut = Lut.COLOR, outline = True}
309 Class that shows a vector field using arrows. The arrows can either be
310 colored or grey-scaled, depending on the lookup table used. If the arrows
311 are colored, there are two possible coloring modes, either using vector data or
312 scalar data. Similarly, there are two possible types of arrows, either
313 using two-dimensional or three-dimensional.
314 \end{classdesc}
315
316 The following are some of the methods available:\\
317 Methods from \ActorThreeD, \GlyphThreeD and \StructuredPoints.
318
319 \subsubsection{\VelocityOnPlaneCut class}
320
321 \begin{classdesc}{VelocityOnPlaneCut}{scene, data_collector,
322 arrow = Arrow.TWO_D, color_mode = ColorMode.VECTOR,
323 viewport = Viewport.SOUTH_WEST, lut = Lut.COLOR, outline = True}
324 This class works in a similar way to \MapOnPlaneCut, except that
325 it shows a vector field using arrows on a plane.
326 \end{classdesc}
327
328 The following are some of the methods available:\\
329 Methods from \ActorThreeD, \GlyphThreeD, \Transform and \StructuredPoints.
330
331 \subsubsection{\VelocityOnPlaneClip class}
332
333 \begin{classdesc}{VelocityOnPlaneClip}{scene, data_collector,
334 arrow = Arrow.TWO_D, color_mode = ColorMode.VECTOR,
335 viewport = Viewport.SOUTH_WEST, lut = Lut.COLOR, online = True}
336 This class works in a similar way to \MapOnPlaneClip, except that it shows a
337 vector field using arrows clipped using a plane.
338 \end{classdesc}
339
340 The following are some of the methods available:\\
341 Methods from \ActorThreeD, \GlyphThreeD, \Transform, \Clipper and
342 \StructuredPoints.
343
344 \subsubsection{\Ellipsoid class}
345
346 \begin{classdesc}{Ellipsoid}{scene, data_collector,
347 viewport = Viewport = SOUTH_WEST, lut = Lut.COLOR, outline = True}
348 Class that shows a tensor field using ellipsoids. The ellipsoids can either be
349 colored or grey-scaled, depending on the lookup table used.
350 \end{classdesc}
351
352 The following are some of the methods available:\\
353 Methods from \ActorThreeD, \Sphere, \TensorGlyph and \StructuredPoints.
354
355 \subsubsection{\EllipsoidOnPlaneCut class}
356
357 \begin{classdesc}{EllipsoidOnPlaneCut}{scene, data_collector,
358 viewport = Viewport.SOUTH_WEST, lut = Lut.COLOR, outline = True}
359 This class works in a similar way to \MapOnPlaneCut, except that it shows
360 a tensor field using ellipsoids cut using a plane.
361 \end{classdesc}
362
363 The following are some of the methods available:\\
364 Methods from \ActorThreeD, \Sphere, \TensorGlyph, \Transform and
365 \StructuredPoints.
366
367 \subsubsection{\EllipsoidOnPlaneClip class}
368
369 \begin{classdesc}{EllipsoidOnPlaneClip}{scene, data_collector,
370 viewport = Viewport.SOUTH_WEST, lut = Lut.COLOR, outline = True}
371 This class works in a similar way to \MapOnPlaneClip, except that it shows a
372 tensor field using ellipsoids clipped using a plane.
373 \end{classdesc}
374
375 The following are some of the methods available:\\
376 Methods from \ActorThreeD, \Sphere, \TensorGlyph, \Transform, \Clipper
377 and \StructuredPoints.
378
379 \subsubsection{\Contour class}
380
381 \begin{classdesc}{Contour}{scene, data_collector,
382 viewport = Viewport.SOUTH_WEST, lut = Lut.COLOR, cell_to_point = False,
383 outline = True}
384 Class that shows a scalar field by contour surfaces. The contour surfaces can
385 either be colored or grey-scaled, depending on the lookup table used. This
386 class can also be used to generate iso surfaces.
387 \end{classdesc}
388
389 The following are some of the methods available:\\
390 Methods from \ActorThreeD and \ContourModule.
391
392 \subsubsection{\ContourOnPlaneCut class}
393
394 \begin{classdesc}{ContourOnPlaneCut}{scene, data_collector,
395 viewport = Viewport.SOUTH_WEST, lut = Lut.COLOR, cell_to_point = False,
396 outline = True}
397 This class works in a similar way to \MapOnPlaneCut, except that it shows a
398 scalar field by contour surfaces on a plane.
399 \end{classdesc}
400
401 The following are some of the methods available:\\
402 Methods from \ActorThreeD, \ContourModule and \Transform.
403
404 \subsubsection{\ContourOnPlaneClip class}
405
406 \begin{classdesc}{ContourOnPlaneClip}{scene, data_collector,
407 viewport = Viewport.SOUTH_WEST, lut = Lut.COLOR, cell_to_point = False,
408 outline = True}
409 This class works in a similar way to \MapOnPlaneClip, except that it shows a
410 scalar field by contour surfaces clipped using a plane.
411 \end{classdesc}
412
413 The following are some of the methods available:\\
414 Methods from \ActorThreeD, \ContourModule, \Transform and \Clipper.
415
416 \subsubsection{\StreamLine class}
417
418 \begin{classdesc}{StreamLine}{scene, data_collector,
419 viewport = Viewport.SOUTH_WEST, color_mode = ColorMode.VECTOR, lut = Lut.COLOR,
420 outline = True}
421 Class that shows the direction of particles of a vector field using streamlines.
422 The streamlines can either be colored or grey-scaled, depending on the lookup
423 table used. If the streamlines are colored, there are two possible coloring
424 modes, either using vector data or scalar data.
425 \end{classdesc}
426
427 The following are some of the methods available:\\
428 Methods from \ActorThreeD, \PointSource, \StreamLineModule and \Tube.
429
430 \subsubsection{\Carpet class}
431
432 \begin{classdesc}{Carpet}{scene, data_collector,
433 viewport = Viewport.Viewport.SOUTH_WEST, warp_mode = WarpMode.SCALAR,
434 lut = Lut.COLOR, outline = True}
435 This class works in a similar way to \MapOnPlaneCut, except that it shows a
436 scalar field on a plane deformated (warp) along the normal. The plane can
437 either be colored or grey-scaled, depending on the lookup table used.
438 Similarly, the plane can be deformated either using scalar data or vector data.
439 \end{classdesc}
440
441 The following are some of the methods available:\\
442 Methods from \ActorThreeD, \Warp and \Transform.
443
444 \subsubsection{\Image class}
445
446 \begin{classdesc}{Image}{scene, image_reader, viewport = Viewport.SOUTH_WEST}
447 Class that displays an image which can be scaled (upwards and downwards). The
448 image can also be translated and rotated along the X, Y and Z axes.
449 \end{classdesc}
450
451 The following are some of the methods available:\\
452 Methods from \ActorThreeD, \PlaneSource and \Transform.
453
454
455 %##############################################################################
456
457
458 \subsection{Coordinate Classes}
459 This subsection details the instances used to position the rendered object.
460
461 \begin{classdesc}{LocalPosition}{x_coor, y_coor}
462 Class that defines the local positioning coordinate system (2D).
463 \end{classdesc}
464
465 \begin{classdesc}{GlobalPosition}{x_coor, y_coor, z_coor}
466 Class that defines the global positioning coordinate system (3D).
467 \end{classdesc}
468
469
470 %##############################################################################
471
472
473 \subsection{Supporting Classes}
474 This subsection details the supporting classes inherited by the data
475 visualization classes. These supporting
476
477 \subsubsection{\ActorThreeD class}
478
479 The following are some of the methods available:
480
481 \begin{methoddesc}[Actor3D]{setOpacity}{opacity}
482 Set the opacity (transparency) of the 3D actor.
483 \end{methoddesc}
484
485 \begin{methoddesc}[Actor3D]{setColor}{color}
486 Set the color of the 3D actor.
487 \end{methoddesc}
488
489 \begin{methoddesc}[Actor3D]{setRepresentationToWireframe}{}
490 Set the representation of the 3D actor to wireframe.
491 \end{methoddesc}
492
493 \subsubsection{\ActorTwoD class}
494
495 The following are some of the methods available:
496
497 \begin{methoddesc}[Actor2D]{setPosition}{position}
498 Set the position (XY) of the 2D actor. Default position is the lower left hand
499 corner of the window / viewport.
500 \end{methoddesc}
501
502 \subsubsection{\Clipper class}
503
504 The following are some of the methods available:
505
506 \begin{methoddesc}[Clipper]{setInsideOutOn}{}
507 Clips one side of the rendered object.
508 \end{methoddesc}
509
510 \begin{methoddesc}[Clipper]{setInsideOutOff}{}
511 Clips the other side of the rendered object.
512 \end{methoddesc}
513
514 \begin{methoddesc}[Clipper]{setClipValue}{value}
515 Set the scalar clip value.
516 \end{methoddesc}
517
518 \subsubsection{\ContourModule class}
519
520 The following are some of the methods available:
521
522 \begin{methoddesc}[ContourModule]{generateContours}{contours,
523 lower_range = None, upper_range = None}
524 Generate the specified number of contours within the specified range.
525 \end{methoddesc}
526
527 \subsubsection{\GlyphThreeD class}
528
529 The following are some of the methods available:
530
531 \begin{methoddesc}[Glyph3D]{setScaleModeByVector}{}
532 Set the 3D glyph to scale according to the vector data.
533 \end{methoddesc}
534
535 \begin{methoddesc}[Glyph3D]{setScaleModeByScalar}{}
536 Set the 3D glyph to scale according to the scalar data.
537 \end{methoddesc}
538
539 \begin{methoddesc}[Glyph3D]{setScaleFactor}{scale_factor}
540 Set the 3D glyph scale factor.
541 \end{methoddesc}
542
543 \subsubsection{\TensorGlyph class}
544
545 The following are some of the methods available:
546
547 \begin{methoddesc}[TensorGlyph]{setScaleFactor}{scale_factor}
548 Set the scale factor for the tensor glyph.
549 \end{methoddesc}
550
551 \subsubsection{\PlaneSource class}
552
553 The following are some of the methods available:
554
555 \begin{methoddesc}[PlaneSource]{setPoint1}{position}
556 Set the first point from the origin of the plane source.
557 \end{methoddesc}
558
559 \begin{methoddesc}[PlaneSource]{setPoint2}{position}
560 Set the second point from the origin of the plane source.
561 \end{methoddesc}
562
563 \subsubsection{\PointSource class}
564
565 The following are some of the methods available:
566
567 \begin{methoddesc}[PointSource]{setPointSourceRadius}{radius}
568 Set the radius of the sphere.
569 \end{methoddesc}
570
571 \begin{methoddesc}[PointSource]{setPointSourceNumberOfPoints}{points}
572 Set the number of points to generate within the sphere (the larger the
573 number of points, the more streamlines are generated).
574 \end{methoddesc}
575
576 \subsubsection{\StructuredPoints class}
577
578 The following are some of the methods available:
579
580 \begin{methoddesc}[StructuredPoints]{setDimension}{x, y, z}
581 Set the dimension on the x, y and z axes. The smaller the dimension,
582 the more points are populated.
583 \end{methoddesc}
584
585 \subsubsection{\Sphere class}
586
587 The following are some of the methods available:
588
589 \begin{methoddesc}[Sphere]{setThetaResolution}{resolution}
590 Set the theta resolution of the sphere.
591 \end{methoddesc}
592
593 \begin{methoddesc}[Sphere]{setPhiResolution}{resolution}
594 Set the phi resoluton of the sphere.
595 \end{methoddesc}
596
597 \subsubsection{\StreamLineModule class}
598
599 The following are some of the methods available:
600
601 \begin{methoddesc}[StreamLineModule]{setMaximumPropagationTime}{time}
602 Set the maximum length of the streamline expressed in elapsed time.
603 \end{methoddesc}
604
605 \begin{methoddesc}[StreamLineModule]{setIntegrationToBothDirections}{}
606 Set the integration to occur both sides: forward (where the streamline
607 goes) and backward (where the streamline came from).
608 \end{methoddesc}
609
610 \subsubsection{\Transform class}
611
612 \begin{methoddesc}[Transform]{translate}{x_offset, y_offset, z_offset}
613 Translate the rendered object along the x, y and z-axes.
614 \end{methoddesc}
615
616 \begin{methoddesc}[Transform]{rotateX}{angle}
617 Rotate the plane along the x-axis.
618 \end{methoddesc}
619
620 \begin{methoddesc}[Transform]{rotateY}{angle}
621 Rotate the plane along the y-axis.
622 \end{methoddesc}
623
624 \begin{methoddesc}[Transform]{rotateZ}{angle}
625 Rotate the plane along the z-axis.
626 \end{methoddesc}
627
628 \begin{methoddesc}[Transform]{setPlaneToXY}{offset = 0}
629 Set the plane orthogonal to the z-axis.
630 \end{methoddesc}
631
632 \begin{methoddesc}[Transform]{setPlaneToYZ}{offset = 0}
633 Set the plane orthogonal to the x-axis.
634 \end{methoddesc}
635
636 \begin{methoddesc}[Transform]{setPlaneToXZ}{offset = 0}
637 Set the plane orthogonal to the y-axis.
638 \end{methoddesc}
639
640 \subsubsection{\Tube class}
641
642 \begin{methoddesc}[Tube]{setTubeRadius}{radius}
643 Set the radius of the tube.
644 \end{methoddesc}
645
646 \begin{methoddesc}[Tube]{setTubeRadiusToVaryByVector}{}
647 Set the radius of the tube to vary by vector data.
648 \end{methoddesc}
649
650 \begin{methoddesc}[Tube]{setTubeRadiusToVaryByScalar}{}
651 Set the radius of the tube to vary by scalar data.
652 \end{methoddesc}
653
654 \subsubsection{\Warp class}
655
656 \begin{methoddesc}[Warp]{setScaleFactor}{scale_factor}
657 Set the displacement scale factor.
658 \end{methoddesc}
659
660
661 \section{Online Rendering Mechnism}
662
663
664
665 same word on rendering, off-line, on-line, how to rotate, zoom, close the window, ...
666
667 %==============================================
668 \section{How to Make a Movie}

  ViewVC Help
Powered by ViewVC 1.1.26