Inhalt | 6 |
Vorwort | 18 |
1 Grundlagen | 20 |
1.1 Definition von CATScript und CATVBS | 20 |
1.2 Definition der Nomenklatur | 22 |
1.3 Definition von Objekt, Klasse und Objektpfad | 23 |
1.3.1Objekt und Klasse | 23 |
1.3.2Objektpfad | 24 |
1.3.3Wurzelklasse und Grundklassen | 25 |
1.4 Grundbeispiel eines Makros | 25 |
1.5 Auswahl eines Makroeditors | 27 |
1.6 Ablage eines Makros | 29 |
1.6.1Ablage in einem CATIA-Dokument | 29 |
1.6.2Ablage in einer eigenständigen Datei | 30 |
1.7 Starten eines Makros über eine Schaltfläche | 31 |
1.7.1Zuordnung eines Schaltflächensymbols | 31 |
1.7.2Erzeugung einer Symbolleiste | 32 |
1.7.3Zuweisung einer Schaltfläche zu einer Symbolleiste | 33 |
1.8 Blöcke eines Makros | 34 |
1.8.1Kopf eines Makros | 34 |
1.8.2Deklaration globaler Variablen und Objekte | 36 |
1.8.3CATMain, Unterroutinen und Funktionen | 37 |
1.9 Verzweigungen und Schleifen | 39 |
1.9.1If-Then-Else | 39 |
1.9.2Select-Case-Else | 40 |
1.9.3For-Next | 41 |
1.9.4Do-While | 41 |
1.9.5Do-Until | 42 |
1.10 Ankerobjekte von CATScript | 43 |
1.10.1CATIA-Anwendung | 43 |
1.10.2CATIA-Dokumente „CATPart“ und „CATProduct“ | 44 |
1.10.3Geometriebehälter eines CATParts | 45 |
1.10.4Strukturinformation und Metadaten | 46 |
1.11 Verwendung des Makrorecorders | 48 |
1.12 Weiterführende Informationen | 49 |
2 Kommunikation mit der Umgebung | 50 |
2.1 Bildschirmausgabe und -eingabe | 50 |
2.1.1 Bildschirmausgabe | 50 |
2.1.2 Bildschirmeingabe | 52 |
2.2 Erzeugen, Laden und Speichern von CATIA-Dokumenten | 54 |
2.2.1 Dokumente erzeugen | 54 |
2.2.2 Dokumente laden | 55 |
2.2.3 Dokumente speichern | 56 |
2.3 Selektieren von CATIA-Elementen durch einen Anwender | 58 |
2.3.1 Selektion vor dem Start eines Makros | 58 |
2.3.2 Selektion während des Ausführens eines Makros | 59 |
2.4 Suchen und Erkennen von Elementen | 61 |
2.4.1 Suchen | 61 |
2.4.2 Erkennen | 62 |
2.5 Elemente einfärben und ausblenden | 64 |
2.5.1 Einfärben | 64 |
2.5.2 Ausblenden | 65 |
2.6 Lesen und Schreiben von Datensätzen | 66 |
2.6.1 Datei deklarieren oder erzeugen | 66 |
2.6.2 Lesen von Datensätzen | 67 |
2.6.3 Schreiben von Datensätzen | 68 |
2.7 Ausführen von externen Programmen und CATScripts | 68 |
2.7.1 Externes Programm | 69 |
2.7.2 Externes CATScript | 69 |
2.8 Lesen von Umgebungsvariablen | 70 |
3 Bestandteile eines CATParts | 72 |
3.1 Attribute | 72 |
3.1.1 Standardattribute | 73 |
3.1.2 Benutzerdefinierte Attribute | 73 |
3.2 Ursprungselemente | 74 |
3.3 Körper, geometrische Sets und geordnete geometrische Sets | 74 |
3.3.1 Körper | 75 |
3.3.2 Geometrisches Set | 77 |
3.3.3 Geordnetes geometrisches Set | 78 |
3.3.4 Boolesche Operationen zwischen Körpern | 80 |
3.4 Parameter und Beziehungen | 84 |
3.4.1 Parameter | 84 |
3.4.2 Konstruktionstabellen | 85 |
3.4.3 Formeln | 87 |
3.5 Referenzen | 88 |
3.5.1 Referenzen über Geometrie | 89 |
3.5.2 Referenzen über Objekte | 89 |
3.5.3 Referenzen über Objektnamen | 89 |
3.5.4 Referenzen über Namen der Boundary-Representation | 90 |
3.6 Richtungsdefinitionen | 93 |
3.6.1 Richtungsdefinition mittels eines Vektors | 94 |
3.6.2 Richtungsdefinition mittels eines Objektes | 94 |
4 Bestandteile eines CATProducts | 96 |
4.1 Attribute | 96 |
4.2 Parameter und Formeln | 97 |
4.3 Baugruppenstruktur | 97 |
4.3.1 Vorhandene Struktur analysieren | 97 |
4.3.2 Elemente hinzufügen | 98 |
4.3.3 Elemente ersetzen | 99 |
4.3.4 Elemente löschen | 99 |
4.4 Bedingungen | 100 |
5 2D-Drahtgeometrie | 102 |
5.1 Skizzenreferenz und Skizzenobjekt erzeugen | 102 |
5.2 Skizzengeometrie erzeugen | 104 |
5.3 Konstruktionselemente und Rotationsachse definieren | 107 |
5.4 Bedingungen erzeugen | 108 |
6 3D-Drahtgeometrie und Flächen | 110 |
6.1 Allgemeines Vorgehen | 110 |
6.2 Punkte | 112 |
6.2.1 Methoden zum Erzeugen von Punkten | 112 |
6.2.2 Fallbeispiele: Punkte | 114 |
6.3 Linien | 115 |
6.3.1 Methoden zum Erzeugen von Linien | 116 |
6.3.2 Fallbeispiele: Linien | 118 |
6.4 Ebenen | 120 |
6.4.1 Methoden zum Erzeugen von Ebenen | 120 |
6.4.2 Fallbeispiele: Ebenen | 121 |
6.5 Kurven | 123 |
6.5.1 Methoden zum Erzeugen von Kurven | 125 |
6.5.2 Fallbeispiele: Kurven | 128 |
6.6 Flächen | 129 |
6.6.1 Methoden zum Erzeugen von Flächen | 130 |
6.6.2 Fallbeispiele: Flächen | 132 |
6.7 Transformationen | 134 |
6.7.1 Methoden zum Erzeugen von Transformationen | 135 |
6.7.2 Fallbeispiele: Transformationen | 136 |
6.8 Operationen | 137 |
6.8.1 Methoden zum Erzeugen von Operationen | 138 |
6.8.2 Fallbeispiele: Operationen | 140 |
7 Volumenkörper | 142 |
7.1 Allgemeines Vorgehen | 143 |
7.2 Skizzenbasierte Volumenkörper | 144 |
7.2.1 Methoden zum Erzeugen von skizzenbasierten Volumenkörpern | 145 |
7.2.2 Fallbeispiele: Skizzenbasierte Volumenkörper | 147 |
7.3 Flächenbasierte Volumenkörper | 148 |
7.3.1 Methoden zum Erzeugen von flächenbasierten Volumenkörpern | 149 |
7.3.2 Fallbeispiele: Flächenbasierte Volumenkörper | 150 |
7.4 Transformationsbasierte Volumenkörper | 152 |
7.4.1 Methoden zum Erzeugen von transformationsbasierten Volumenkörpern | 153 |
7.4.2 Fallbeispiele: Transformationsbasierte Volumenkörper | 155 |
7.5 Operationen | 156 |
7.5.1 Methoden zum Erzeugen von Operationen | 158 |
7.5.2 Fallbeispiele: Operationen | 160 |
8 Ausgewählte Objektklassen | 162 |
8.1 Add | 162 |
8.2 Angle | 162 |
8.3 AngularRepartition | 163 |
8.4 AnyObject | 163 |
8.5 Application | 164 |
8.6 Assemble | 168 |
8.7 Axis2D | 168 |
8.8 Bodies | 169 |
8.9 Body | 169 |
8.10 BooleanShape | 171 |
8.11 BoolParam | 171 |
8.12 CATBaseDispatch | 172 |
8.13 Chamfer | 172 |
8.14 Circle2D | 173 |
8.15 CircPattern | 174 |
8.16 CloseSurface | 177 |
8.17 Collection | 177 |
8.18 ConstRadEdgeFillet | 178 |
8.19 Constraint | 179 |
8.20 Constraints | 183 |
8.21 ControlPoint2D | 184 |
8.22 Curve2D | 185 |
8.23 DesignTable | 187 |
8.24 Dimension | 189 |
8.25 Document | 189 |
8.26 Documents | 193 |
8.27 Draft | 194 |
8.28 DraftDomain | 195 |
8.29 DraftDomains | 196 |
8.30 DressUpShape | 197 |
8.31 EdgeFillet | 197 |
8.32 Ellipse2D | 198 |
8.33 FaceFillet | 199 |
8.34 Factory | 200 |
8.35 Factory2D | 200 |
8.36 File | 202 |
8.37 FileComponent | 203 |
8.38 Files | 203 |
8.39 FileSystem | 204 |
8.40 Fillet | 206 |
8.41 Folder | 206 |
8.42 Folders | 207 |
8.43 Formula | 207 |
8.44 GeometricElement | 207 |
8.45 GeometricElements | 208 |
8.46 Geometry2D | 208 |
8.47 Groove | 209 |
8.48 Hole | 209 |
8.49 HybridBodies | 213 |
8.50 HybridBody | 214 |
8.51 HybridShape | 215 |
8.52 HybridShape3DCurveOffset | 215 |
8.53 HybridShapeAffinity | 216 |
8.54 HybridShapeAssemble | 217 |
8.55 HybridShapeAxisLine | 222 |
8.56 HybridShapeAxisToAxis | 222 |
8.57 HybridShapeBlend | 223 |
8.58 HybridShapeBoundary | 230 |
8.59 HybridShapeCircle | 231 |
8.60 HybridShapeCircle2PointsRad | 233 |
8.61 HybridShapeCircle3Points | 235 |
8.62 HybridShapeCircleBitangentPoint | 237 |
8.63 HybridShapeCircleBitangentRadius | 239 |
8.64 HybridShapeCircleCenterAxis | 241 |
8.65 HybridShapeCircleCenterTangent | 242 |
8.66 HybridShapeCircleCtrPt | 244 |
8.67 HybridShapeCircleCtrRad | 245 |
8.68 HybridShapeCircleExplicit | 247 |
8.69 HybridShapeCircleTritangent | 248 |
8.70 HybridShapeCombine | 250 |
8.71 HybridShapeConic | 251 |
8.72 HybridShapeConnect | 256 |
8.73 HybridShapeCorner | 258 |
8.74 HybridShapeCurveExplicit | 260 |
8.75 HybridShapeCurvePar | 261 |
8.76 HybridShapeCurveSmooth | 264 |
8.77 HybridShapeCylinder | 267 |
8.78 HybridShapeDirection | 268 |
8.79 HybridShapeExtract | 270 |
8.80 HybridShapeExtractMulti | 272 |
8.81 HybridShapeExtrapol | 276 |
8.82 HybridShapeExtremum | 278 |
8.83 HybridShape-ExtremumPolar | 279 |
8.84 HybridShapeExtrude | 281 |
8.85 HybridShapeFactory | 282 |
8.86 HybridShapeFill | 313 |
8.87 HybridShapeFilletBiTangent | 316 |
8.88 HybridShapeFilletTriTangent | 319 |
8.89 HybridShapeHelix | 321 |
8.90 HybridShapeIntegratedLaw | 324 |
8.91 HybridShapeIntersection | 327 |
8.92 HybridShapeInverse | 328 |
8.93 HybridShapeLawDistProj | 329 |
8.94 HybridShapeLineAngle | 331 |
8.95 HybridShapeLineBisecting | 333 |
8.96 HybridShapeLineBiTangent | 335 |
8.97 HybridShapeLineExplicit | 336 |
8.98 HybridShapeLineNormal | 337 |
8.99 HybridShapeLinePtDir | 338 |
8.100 HybridShapeLinePtPt | 340 |
8.101 HybridShapeLineTangency | 342 |
8.102 HybridShapeLoft | 344 |
8.103 HybridShapeNear | 350 |
8.104 HybridShapeOffset | 351 |
8.105 HybridShapePlane1Curve | 352 |
8.106 HybridShapePlane1Line1Pt | 353 |
8.107 HybridShapePlane2Lines | 353 |
8.108 HybridShapePlane3Points | 354 |
8.109 HybridShapePlaneAngle | 355 |
8.110 HybridShapePlaneEquation | 356 |
8.111 HybridShapePlaneExplicit | 357 |
8.112 HybridShapePlaneMean | 357 |
8.113 HybridShapePlaneNormal | 358 |
8.114 HybridShapePlaneOffset | 359 |
8.115 HybridShapePlaneOffsetPt | 360 |
8.116 HybridShapePlaneTangent | 360 |
8.117 HybridShapePointBetween | 361 |
8.118 HybridShapePointCenter | 362 |
8.119 HybridShapePointCoord | 362 |
8.120 HybridShapePointExplicit | 363 |
8.121 HybridShapePointOnCurve | 364 |
8.122 HybridShapePointOnPlane | 365 |
8.123 HybridShapePointOnSurface | 367 |
8.124 HybridShapePointTangent | 368 |
8.125 HybridShapePolyline | 368 |
8.126 HybridShapePositionTransfo | 369 |
8.127 HybridShapeProject | 372 |
8.128 HybridShapeReflectLine | 374 |
8.129 HybridShapeRevol | 375 |
8.130 HybridShapeRotate | 376 |
8.131 HybridShapes | 378 |
8.132 HybridShapeScaling | 379 |
8.133 HybridShapeSection | 380 |
8.134 HybridShapeSphere | 380 |
8.135 HybridShapeSpine | 382 |
8.136 HybridShapeSpiral | 384 |
8.137 HybridShapeSpline | 386 |
8.138 HybridShapeSplit | 391 |
8.139 HybridShapeSurfaceExplicit | 394 |
8.140 HybridShapeSweep | 394 |
8.141 HybridShapeSweepCircle | 396 |
8.142 HybridShapeSweepConic | 402 |
8.143 HybridShapeSweepExplicit | 408 |
8.144 HybridShapeSweepLine | 414 |
8.145 HybridShapeSymmetry | 423 |
8.146 HybridShapeThickness | 424 |
8.147 HybridShapeTranslate | 425 |
8.148 HybridShapeTrim | 427 |
8.149 Hyperbola2D | 430 |
8.150 Intersect | 431 |
8.151 IntParam | 432 |
8.152 KnowledgeObject | 433 |
8.153 KnowledgeActivateObject | 433 |
8.154 Length | 434 |
8.155 Limit | 434 |
8.156 Line | 435 |
8.157 Line2D | 436 |
8.158 LinearRepartition | 437 |
8.159 Loft | 437 |
8.160 Mirror | 438 |
8.161 OrderedGeometricalSet | 439 |
8.162 OrderedGeometricalSets | 440 |
8.163 OriginElements | 440 |
8.164 Pad | 441 |
8.165 Parabola2D | 441 |
8.166 Parameter | 442 |
8.167 Parameters | 444 |
8.168 Part | 446 |
8.169 PartDocument | 450 |
8.170 Pattern | 451 |
8.171 Plane | 451 |
8.172 Pocket | 453 |
8.173 Point | 454 |
8.174 Point2D | 454 |
8.175 Prism | 455 |
8.176 Product | 457 |
8.177 ProductDocument | 460 |
8.178 Products | 460 |
8.179 RealParam | 462 |
8.180 RectPattern | 464 |
8.181 Reference | 466 |
8.182 References | 467 |
8.183 Relation | 467 |
8.184 Relations | 468 |
8.185 Remove | 470 |
8.186 RemoveFace | 470 |
8.187 Repartition | 471 |
8.188 ReplaceFace | 472 |
8.189 Revolution | 473 |
8.190 Rib | 473 |
8.191 Rotate | 474 |
8.192 Scaling | 475 |
8.193 Scaling2 | 475 |
8.194 SelectedElement | 476 |
8.195 Selection | 477 |
8.196 SewSurface | 482 |
8.197 Shaft | 483 |
8.198 Shape | 483 |
8.199 ShapeFactory | 484 |
8.200 Shapes | 498 |
8.201 Shell | 499 |
8.202 Sketch | 500 |
8.203 SketchBasedShape | 502 |
8.204 Sketches | 502 |
8.205 Slot | 503 |
8.206 SolidCombine | 504 |
8.207 Spline2D | 504 |
8.208 Split | 505 |
8.209 Stiffener | 506 |
8.210 StrParam | 507 |
8.211 SurfaceBasedShape | 508 |
8.212 Sweep | 508 |
8.213 Symmetry | 510 |
8.214 SystemService | 511 |
8.215 TextStream | 512 |
8.216 Thickness | 513 |
8.217 ThickSurface | 515 |
8.218 Thread | 516 |
8.219 TransformationShape | 517 |
8.220 Translate | 518 |
8.221 Trim | 518 |
8.222 TritangentFillet | 520 |
8.223 UserPattern | 520 |
8.224 VarRadEdgeFillet | 521 |
8.225 VisPropertySet | 523 |
9 Ausgewählte VBScript-Befehle | 530 |
9.1 Abs | 530 |
9.2 Asc | 530 |
9.3 Boolean | 531 |
9.4 Byte | 531 |
9.5 CBool | 531 |
9.6 CByte | 531 |
9.7 CDate | 532 |
9.8 CDbl | 532 |
9.9 Chr | 532 |
9.10 CInt | 533 |
9.11 CLng | 533 |
9.12 Const | 534 |
9.13 Cos | 534 |
9.14 CSng | 534 |
9.15 CStr | 535 |
9.16 Date | 535 |
9.17 Day | 535 |
9.18 Dim | 536 |
9.19 Dim () | 536 |
9.20 Double | 536 |
9.21 Do-Until | 536 |
9.22 Do-While | 537 |
9.23 Empty | 537 |
9.24 End | 537 |
9.25 Err | 537 |
9.26 Exit | 538 |
9.27 Exp | 538 |
9.28 Fix | 538 |
9.29 For-Next | 539 |
9.30 Function | 539 |
9.31 Hour | 539 |
9.32 If-Then-Else | 539 |
9.33 InputBox | 539 |
9.34 InStr | 540 |
9.35 Int | 540 |
9.36 Integer | 540 |
9.37 IsDate | 541 |
9.38 IsEmpty | 541 |
9.39 IsNull | 541 |
9.40 IsNumeric | 542 |
9.41 Join | 542 |
9.42 LCase | 543 |
9.43 Left | 543 |
9.44 Len | 543 |
9.45 Log | 544 |
9.46 Long | 544 |
9.47 LTrim | 544 |
9.48 Mid | 544 |
9.49 Minute | 545 |
9.50 Mod | 545 |
9.51 Month | 545 |
9.52 MsgBox | 546 |
9.53 Now | 546 |
9.54 Null | 546 |
9.55 On Error Resume Next | 546 |
9.56 Randomize | 547 |
9.57 ReDim | 547 |
9.58 Rem | 547 |
9.59 Right | 548 |
9.60 Rnd | 548 |
9.61 RTrim | 548 |
9.62 Second | 549 |
9.63 Select Case | 549 |
9.64 Set | 549 |
9.65 Sin | 549 |
9.66 Single | 550 |
9.67 Sgn | 550 |
9.68 Sqr | 550 |
9.69 StrReverse | 550 |
9.70 String | 551 |
9.71 Sub | 551 |
9.72 Tan | 551 |
9.73 Time | 551 |
9.74 Timer | 552 |
9.75 TimeValue | 552 |
9.76 Trim | 553 |
9.77 UCase | 553 |
9.78 Year | 553 |
Index | 554 |