CATIA V5 Macro Programming With Visual Basic Script
CATIA V5 Macro Programming With Visual Basic Script
Macro
Programming with
Visual Basic Script
Dieter R. Ziethen
Translated
by Kyle
E. Brand
Mc
Graw
Hill
New York
Lisbon
Chicago
London
Milan
Seoul
San Francisco
Madrid
Mexico
New Delhi
Singapore Sydney
City
San Juan
Toronto
Contents
Preface
xvii
Basics
1.1
Definition of
1.2
Definition of Nomenclature
1.3
1.3.1
1.3.2
1.3.3
1.4
Basic
1.5
Selecting
1.6
Storage of a Macro
1.6.1
1.6.2
1.7
Starting
1.7.1
Example
of
Object Path
Macro
Macro Editor
8
9
Storage
in
CATIA Document
10
Storage
in
Separate File
10
Macro from
Button
11
12
a Macro to a Button
1.7.2
Assigning
Creating a Toolbar
1.7.3
Assigning
1.8
Blocks of a Macro
1.8.1
Head of
1.8.2
16
1.8.3
17
1.9
Branches and
1.9.1
If-Then-Else
1.9.2
Select-Case-Else
Button to
12
a
Toolbar
14
14
15
Macro
19
Loops
,
19
20
vi
Contents
1.9.3
For-Next
21
1.9.4
Do-While
21
1.9.5
Do Until
22
1.10
23
CATIA-Application
23
1.10.1
Geometry Containers
24
25
in CATParts
26
1.11
28
1.12
Additional Information
29
Communicating
2.1
31
2.1.1
Screen
Output
31
2.1.2
Screen
Input
33
2.2
2.2.1
2.2.2
31
34
35
Documents
Creating
Loading Documents
36
37
Documents
2.2.3
Saving
2.3
38
2.3.1
Selection before
Starting a
39
2.3.2
Selection
during
the Execution of
2.4
Searching
and
2.4.1
Search
41
2.4.2
Recognize
42
2.5
44
2.5.1
Coloring Elements
44
2.5.2
Hiding
2.6
2.6.1
Create
2.6.2
Reading Data
2.6.3
Writing
2.7
48
2.7.1
External Program
49
2.7.2
External CATScript
49
2.8
Reading
Recognizing
Macro
a
Macro
Elements
Elements
or
Declare
40
41
45
Data
File
Data
Environment Variables
46
46
47
48
50
Components of CATParts
3.1
Attributes
3.1.1
Standard Attributes
54
3.1.2
Custom Attributes
54
3.2
Origin
3.3
Bodies,
3.3.1
Bodies
3.3.2
Geometrical Sets
3.3.3
Ordered Geometrical
3.3.4
Boolean
3.4
65
3.4.1
Parameter
65
3.4.2
Design
3.4.3
Formulas
68
3.5
References
69
3.5.1
References
3.5.2
References to
3.5.3
53
53
Elements
55
Geometrical
Sets,
55
56
58
Operations
59
Sets
between Bodies
Table
61
66
Geometry
70
70
References to
Objects
Object Names
3.5.4
References
3.6
Direction Definition
74
3.6.1
Direction Denned
by
75
3.6.2
Direction Defined
by
an
Components of CATProducts
4.1
Attributes
77
4.2
78
4.3
Assembly Structure
4.3.1
Analyzing
Adding Elements
4.3.2
to
to
an
70
Boundary Representation
Vector
Object
71
75
77
78
Existing Structure
78
79
Replacing
Deleting Elements
80
4.4
Constraints
81
2D Wireframe
5.1
5.2
4.3.3
4.3.4
Elements
80
Geometry
Objects
83
83
85
iii
Contents
5.3
Defining
88
5.4
Creating
Constraints
89
3D Wireframe
6.1
General Procedure
6.2
Points
6.2.1
Methods for
6.2.2
91
91
93
Creating Points
6.3
Lines
6.3.1
Methods for
6.3.2
93
95
96
Creating Lines
97
99
6.4
Planes
6.4.1
Methods for
6.4.2
6.5
Curves
6.5.1
106
6.5.2
109
6.6
Surfaces
6.6.1
Methods for
6.6.2
6.7
Transformations
6.7.1
Methods for
6.7.2
6.8
Operations
6.8.1
119
6.8.2
Case Studies:
121
Solids
7.1
General Procedure
7.2
Sketch-Based Solids
7.2.1
Methods for
7.2.2
7.3
Surface-Based Solids
7.3.1
Methods for
7.3.2
Case
101
Planes
Creating
101
102
104
111
Surfaces
Creating
112
113
115
Creating Transformations
116
117
118
Operations
123
124
125
Creating
126
127
129
Surface-Based Solids
129
130
7.4
Transformation-Based Solids
7.4.1
Methods for
7.4.2
7.5
Operations
7.5.1
Methods for
7.5.2
Case
Featured
8.1
Creating
132
Transformation-Based Solids
133
135
137
Creating Operations on
Studies: Operations
Object
Classes
Solids
138
139
143
Add
143
8.2
Angle
143
8.3
AngularRepartition
144
8.4
AnyObject
144
8.5
Application
145
8.6
Assemble
149
8.7
Axis2D
149
8.8
Bodies
150
8.9
Body
150
8.10
BooleanShape
151
8.11
BoolParam
152
8.12
CATBaseDispatch
152
8.13
Chamfer
152
8.14
Circle2D
154
8.15
CircPattern
155
8.16
CloseSurface
157
8.17
Collection
157
8.18
ConstRadEdgeFillet
158
8.19
Constraint
159
8.20
Constraints
163
8.21
ControlPoint2D
164
8.22
Curve2D
165
8.23
DesignTable
167
8.24
Dimension
169
8.25
Document
169
8.26
Documents
173
8.27
Draft
174
8.28
DraftDomain
175
8.29
DraftDomains
176
8.30
DressUpShape
177
8.31
EdgeFillet
177
8.32
Ellipse2D
178
Contents
8.33
FaceFillet
179
8.34
Factory
179
8.35
Factory2D
180
8.36
File
182
8.37
FileComponent
182
8.38
Files
183
8.39
FileSystem
183
8.40
Fillet
185
8.41
Folder
186
8.42
Folders
186
8.43
Formula
186
8.44
GeometricElement
187
8.45
GeometricElements
187
8.46
Geometry2D
187
8.47
Groove
188
8.48
Hole
188
8.49
HybridBodies
192
8.50
HybridBody
192
8.51
HybridShape
193
8.52
HybridShape3DCurveOffset
194
8.53
HybridShapeAffinity
195
8.54
HybridShapeAssemble
196
8.55
HybridShapeAxisLine
200
8.56
HybridShapeAxisToAxis
201
8.57
HybridShapeBlend
202
8.58
HybridShapeBoundary
208
8.59
HybridShapeCircle
209
8.60
HybridShapeCircle2PointsRad
211
8.61
HybridShapeCircle3Points
213
8.62
HybridShapeCircleBitangentPoint
214
8.63
HybridShapeCircleBitangentRadius
216
8.64
HybridShapeCircleCenterAxis
218
8.65
HybridShapeCircleCenterTangent
219
8.66
HybridShapeCircleCtrPt
221
8.67
HybridShapeCircleCtrRad
223
8.68
HybridShapeCircleExplicit
224
8.69
HybridShapeCircleTritangent
225
8.70
HybridShapeCombine
227
8.71
HybridShapeConic
228
8.72
HybridShapeConnect
232
8.73
HybridShapeCorner
234
8.74
HybridShapeCurveExplicit
237
8.75
HybridShapeCurvePar
237
8.76
HybridShapeCurveSmooth
240
8.77
HybridShapeCylinder
243
8.78
HybridShapeDirection
244
8.79
HybridShapeExtract
246
8.80
HybridShapeExtractMuIti
248
8.81
HybridShapeExtrapol
252
8.82
HybridShapeExtremum
254
8.83
HybridShapeExtremumPolar
255
8.84
HybridShapeExtrude
257
8.85
HybridShapeFactory
258
8.86
HybridShapeFill
288
8.87
HybridShapeFilletBiTangent
292
8.88
HybridShapeFilletTriTangent
295
8.89
HybridShapeHelix
296
8.90
HybridShapelntegratedLaw
299
8.91
HybridShapelntersection
302
8.92
HybridShapelnverse
303
8.93
HybridShapeLawDistProj
304
8.94
HybridShapeLineAngle
306
8.95
HybridShapeLineBisecting
308
8.96
HybridShapeLineBiTangent
310
8.97
HybridShapeLineExplicit
311
8.98
HybridShapeLineNormal
312
8.99
HybridShapeLinePtDir
313
8.100
HybridShapeLinePtPt
315
8.101
HybridShapeLineTangency
317
8.102
HybridShapeLoft
319
8.103
HybridShapeNear
325
8.104
HybridShapeOffset
326
8.105
HybridShapePlanel Curve
327
8.106
HybridShapePlanel LinelPt
328
8.107
HybridShapePlane2Lines
328
8.108
HybridShapePlane3Points
329
8.109
HybridShapePlaneAngle
329
8.110
HybridShapePlaneEquation
331
8.111
HybridShapePlaneExplicit
332
8.112
HybridShapePlaneMean
332
8.113
HybridShapePlaneNormal
333
8.114
HybridShapePlaneOffset
334
8.115
HybridShapePlaneOffser.pt
335
8.116
HybridShapePlaneTangent
335
8.117
HybridShapePointBetween
336
8.118
HybridShapePointCenter
337
xii
Contents
8.119
HybridShapePointCoord
337
8.120
HybridShapePointExplicit
338
8.121
HybridShapePointOnCurve
338
8.122
HybridShapePointOnPlane
340
8.123
HybridShapePointOnSurface
341
8.124
HybridShapePointTangent
342
8.125
HybridShapePolyline
343
8.126
HybridShapePositionTransfo
344
8.127
HybridShapeProject
347
8.128
HybridShapeReflectLine
348
8.129
HybridShapeRevol
350
8.130
HybridShapeRotate
351
8.131
HybridShapes
353
8.132
HybridShapeScaling
353
8.133
HybridShapeSection
354
8.134
HybridShapeSphere
354
8.135
HybridShapeSpine
356
8.136
HybridShapeSpiral
358
8.137
HybridShapeSpline
360
8.138
HybridShapeSplit
365
8.139
HybridShapeSurfaceExplicit
368
8.140
HybridShapeSweep
368
8.141
HybridShapeSweepCircle
369
8.142
HybridShapeSweepConic
375
8.143
HybridShapeSweepExplicit
380
8.144
HybridShapeSweepLine
386
8.145
HybridShapeSymmetry
395
8.146
HybridShapeThickness
396
8.147
HybridShapeTranslate
397
8.148
HybridShapeTrim
399
8.149
Hyperbola2D
402
8.150
Intersect
403
8.151
IntParam
404
8.152
KnowledgeObject
405
8.153
KnowledgeActivateObject
405
8.154
Length
406
8.155
Limit
406
8.156
Line
407
8.157
Line2D
408
8.158
LinearRepartition
408
8.159
Loft
409
8.160
Mirror
409
8.161
OrderedGeometricalSet
410
Contents
8.162
OrderedGeometricalSets
411
8.163
OriginElements
412
8.164
Pad
412
8.165
Parabola2D
413
8.166
Parameter
413
8.167
Parameters
415
8.168
Part
417
8.169
PartDocument
421
8.170
Pattern
422
8.171
Plane
423
8.172
424
8.173
Point
425
8.174
Point2D
425
8.175
Prism
426
8.176
Product
427
8.177
ProductDocument
430
8.178
Products
431
8.179
RealParam
433
8.180
RectPattern
434
8.181
Reference
437
8.182
References
437
8.183
Relation
437
8.184
Relations
439
8.185
Remove
440
8.186
RemoveFace
441
8.187
Repartition
442
8.188
ReplaceFace
442
8.189
Revolution
443
8.190
Rib
443
8.191
Rotate
444
8.192
Scaling
445
8.193
Scaling2
445
8.194
SelectedElement
446
8.195
Selection
447
8.196
SewSurface
452
8.197
Shaft
453
8.198
Shape
453
8.199
ShapeFactory
453
8.200
Shapes
467
8.201
Shell
468
8.202
Sketch
469
8.203
SketchBasedShape
471
8.204
Sketches
471
xiii
xiv
Contents
8.205
Slot
472
8.206
SolidCombine
472
8.207
Spline2D
473
8.208
Split
474
8.209
Stiffener
474
8.210
StrParam
475
8.211
SurfaceBasedShape
476
8.212
Sweep
476
8.213
Symmetry
479
8.214
SystemService
479
8.215
TextStream
481
8.216
Thickness
482
8.217
ThickSurface
483
8.218
Thread
484
8.219
TransformationShape
485
8.220
Translate
486
8.221
Trim
486
8.222
TritangentFillet
487
8.223
UserPattern
488
8.224
VarRadEdgeFillet
489
8.225
VisPropertySet
490
Featured
9.1
Abs
9.2
Asc
497
9.3
Boolean
498
9.4
Byte
498
9.5
CBool
498
9.6
CByte
498
9.7
CDate
499
9.8
CDbl
499
9.9
Chr
499
9.10
Clnt
500
9.11
CLng
500
9.12
Const
500
9.13
Cos
501
9.14
CSng
501
9.15
CStr
501
9.16
Date
502
9.17
Day
502
9.18
Dim
502
9.19
DimO
503
VBScript Commands
497
497
Contents
9.20
Double
503
9.21
Do-Until
503
9.22
Do-While
503
9.23
Empty
503
9.24
End
504
9.25
Err
504
9.26
Exit
504
9.27
Exp
504
9.28
Fix
505
9.29
For-Next
505
9.30
Function
505
9.31
Hour
505
9.32
If-Then-Else
506
9.33
InputBox
506
9.34
InStr
506
9.35
Int
506
9.36
Integer
507
9.37
IsDate
507
9.38
IsEmpty
507
9.39
IsNull
508
9.40
IsNumeric
508
9.41
Join
508
9.42
LCase
509
9.43
Left
509
9.44
Len
509
9.45
Log
510
9.46
Long
510
9.47
LTrim
510
9.48
Mid
511
9.49
Minute
511
9.50
Mod
511
9.51
Month
512
9.52
MsgBox
512
9.53
Now
512
9.54
Null
512
9.55
513
9.56
Randomize
513
9.57
ReDim
513
9.58
Rem
514
9.59
Right
514
9.60
Rnd
514
9.61
RTrim
514
9.62
Second
515
9.63
Select Case
515
xv
xvi
Contents
9.64
Set
515
9.65
Sin
515
9.66
Single
516
9.67
Sgn
516
9.68
Sqr
516
9.69
StrReverse
517
9.70
String
517
9.71
Sub
517
9.72
Tan
517
9.73
Time
518
9.74
Timer
518
9.75
TimeValue
518
9.76
Trim
519
9.77
UCase
519
9.78
Year
519
Index
521