File: motor.tcl

package info (click to toggle)
vtk7 7.1.1%2Bdfsg1-12
  • links: PTS, VCS
  • area: main
  • in suites: buster
  • size: 125,776 kB
  • sloc: cpp: 1,539,582; ansic: 106,521; python: 78,038; tcl: 47,013; xml: 8,142; yacc: 5,040; java: 4,439; perl: 3,132; lex: 1,926; sh: 1,500; makefile: 122; objc: 83
file content (147 lines) | stat: -rw-r--r-- 4,322 bytes parent folder | download | duplicates (12)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
package require vtk
package require vtkinteraction
package require vtktesting

# Create the RenderWindow, Renderer and both Actors
#
vtkRenderer ren1
vtkRenderWindow renWin
    renWin AddRenderer ren1
vtkRenderWindowInteractor iren
    iren SetRenderWindow renWin

# create cutting planes
vtkPlanes planes
vtkPoints points
vtkFloatArray norms
norms SetNumberOfComponents 3

points InsertPoint 0 0.0 0.0 0.0
norms InsertTuple3 0 0.0 0.0 1.0;
points InsertPoint 1 0.0 0.0 0.0
norms InsertTuple3 1 -1.0 0.0 0.0;

planes SetPoints points
planes SetNormals norms

# texture
vtkStructuredPointsReader texReader
    texReader SetFileName "$VTK_DATA_ROOT/Data/texThres2.vtk"
vtkTexture texture
    texture SetInputConnection [texReader GetOutputPort]
    texture InterpolateOff
    texture RepeatOff

# read motor parts...each part colored separately
#
vtkBYUReader byu
    byu SetGeometryFileName "$VTK_DATA_ROOT/Data/motor.g"
    byu SetPartNumber 1
vtkPolyDataNormals normals
    normals SetInputConnection [byu GetOutputPort]
vtkImplicitTextureCoords tex1
    tex1 SetInputConnection [normals GetOutputPort]
    tex1 SetRFunction planes
#    tex1 FlipTextureOn
vtkDataSetMapper byuMapper
    byuMapper SetInputConnection [tex1 GetOutputPort]
vtkActor byuActor
    byuActor SetMapper byuMapper
    byuActor SetTexture texture
    eval [byuActor GetProperty] SetColor $cold_grey

vtkBYUReader byu2
    byu2 SetGeometryFileName "$VTK_DATA_ROOT/Data/motor.g"
    byu2 SetPartNumber 2
vtkPolyDataNormals normals2
    normals2 SetInputConnection [byu2 GetOutputPort]
vtkImplicitTextureCoords tex2
    tex2 SetInputConnection [normals2 GetOutputPort]
    tex2 SetRFunction planes
#    tex2 FlipTextureOn
vtkDataSetMapper byuMapper2
    byuMapper2 SetInputConnection [tex2 GetOutputPort]
vtkActor byuActor2
    byuActor2 SetMapper byuMapper2
    byuActor2 SetTexture texture
    eval [byuActor2 GetProperty] SetColor $peacock

vtkBYUReader byu3
    byu3 SetGeometryFileName "$VTK_DATA_ROOT/Data/motor.g"
    byu3 SetPartNumber 3

vtkTriangleFilter triangle3
  triangle3 SetInputConnection [byu3 GetOutputPort]

vtkPolyDataNormals normals3
    normals3 SetInputConnection [triangle3 GetOutputPort]
vtkImplicitTextureCoords tex3
    tex3 SetInputConnection [normals3 GetOutputPort]
    tex3 SetRFunction planes
#    tex3 FlipTextureOn
vtkDataSetMapper byuMapper3
    byuMapper3 SetInputConnection [tex3 GetOutputPort]
vtkActor byuActor3
    byuActor3 SetMapper byuMapper3
    byuActor3 SetTexture texture
    eval [byuActor3 GetProperty] SetColor $raw_sienna

vtkBYUReader byu4
    byu4 SetGeometryFileName "$VTK_DATA_ROOT/Data/motor.g"
    byu4 SetPartNumber 4
vtkPolyDataNormals normals4
    normals4 SetInputConnection [byu4 GetOutputPort]
vtkImplicitTextureCoords tex4
    tex4 SetInputConnection [normals4 GetOutputPort]
    tex4 SetRFunction planes
#    tex4 FlipTextureOn
vtkDataSetMapper byuMapper4
    byuMapper4 SetInputConnection [tex4 GetOutputPort]
vtkActor byuActor4
    byuActor4 SetMapper byuMapper4
    byuActor4 SetTexture texture
    eval [byuActor4 GetProperty] SetColor $banana

vtkBYUReader byu5
    byu5 SetGeometryFileName "$VTK_DATA_ROOT/Data/motor.g"
    byu5 SetPartNumber 5
vtkPolyDataNormals normals5
    normals5 SetInputConnection [byu5 GetOutputPort]
vtkImplicitTextureCoords tex5
    tex5 SetInputConnection [normals5 GetOutputPort]
    tex5 SetRFunction planes
#    tex5 FlipTextureOn
vtkDataSetMapper byuMapper5
    byuMapper5 SetInputConnection [tex5 GetOutputPort]
vtkActor byuActor5
    byuActor5 SetMapper byuMapper5
    byuActor5 SetTexture texture
    eval [byuActor5 GetProperty] SetColor $peach_puff

# Add the actors to the renderer, set the background and size
#
ren1 AddActor byuActor
ren1 AddActor byuActor2
ren1 AddActor byuActor3
byuActor3 VisibilityOff
ren1 AddActor byuActor4
ren1 AddActor byuActor5
ren1 SetBackground 1 1 1
renWin SetSize 300 300

vtkCamera camera
    camera SetFocalPoint 0.0286334 0.0362996 0.0379685
    camera SetPosition 1.37067 1.08629 -1.30349
    camera SetViewAngle 17.673
    camera SetClippingRange 1 10
    camera SetViewUp  -0.376306 -0.5085 -0.774482

ren1 SetActiveCamera camera

# render the image
iren AddObserver UserEvent {wm deiconify .vtkInteract}
iren Initialize

# prevent the tk window from showing up then start the event loop
wm withdraw .