|
Drawings (Zeichnungen)


Dokumenten-Eigenschaften von Drawings
auslesen
| |
Sub
CATMain()
set Dok
= CATIA.ActiveDocument
MsgBox Dok.Name
' Dateiname + Endung
MsgBox Dok.FullName
' Dateiname + Pfad
End Sub |

Blattgröße
ermitteln
Blattgröße in mm vom
aktuellen Blatt ermitteln.
| |
Sub
CATMain()
set ActSheet =
CATIA.ActiveDocument.Sheets.ActiveSheet
Hoehe = ActSheet.GetPaperHeight
Breite = ActSheet.GetPaperWidth
s = "?"
if Hoehe =
210
then s = "A4"
if Hoehe =
297 then s =
"A3"
if Hoehe =
420
then s = "A2"
if Hoehe =
594
then s = "A1"
if Hoehe =
841
then s = "A0"
MsgBox Hoehe &"x"
&Breite &" mm -
das entspricht einem " &s &"-Format"
End Sub |

Blattgröße ändern
| |
Sub
CATMain()
set ActSheet =
CATIA.ActiveDocument.Sheets.ActiveSheet
ActSheet.PaperSize = catPaperUser
' auf A3-Format
ActSheet.SetPaperHeight 297
ActSheet.SetPaperWidth 420
End Sub |

Prüfen auf
Detail-Sheet
Prüfen ob das aktuelle
Blatt ein Detail-Sheet ist, über "IsDetail".
| |
Sub
CATMain()
if
CATIA.ActiveDocument.Sheets.ActiveSheet.IsDetail
then
MsgBox "Current sheet is a Detail Sheet!"
end if
End Sub |

Drawing Text
Texte sind immer einer
View zugeordnet. Catia kennt allerdings neben der
klassischen View ebenfalls die MainView und
BackgroundView (2) (Sheet Background). In den
Beispielen wird die MainView (1) benutzt.
Erzeugen und
Positionieren
| |
Sub
CATMain()
set oSheet =
CATIA.ActiveDocument.Sheets.ActiveSheet
set oTexts = oSheet.Views.Item(1).Texts
' 1 = MainView
set MeinText = oTexts.Add("Egal",
0,
0) ' 2D-Test erzeugen
MeinText.Name = "#MeinText"
' Name ändern
MeinText.Text = "anderer Text"
' Text ändern
MeinText.AnchorPosition = 3
' Ausrichtungspunkt bestimmen
(links/unten) - siehe Tabelle
MeinText.x = 100: MeinText.y
= 50
' Position ändern - 100 mm rechts, 50 mm hoch
End Sub |
AnchorPosition Tabelle:
 |
=
1 |
 |
=
4 |
 |
=
7 |
 |
= 2 |
 |
= 5 |
 |
= 8 |
 |
= 3 |
 |
= 6 |
 |
= 9 |
Text mit Parameter verlinken (Attribute Link)
| |
Sub
CATMain()
set
oTexts = CATIA.ActiveDocument.Sheets.ActiveSheet.Views.Item(1).Texts
' Text erzeugen
set TextA = oTexts.Add("egal",
25,
25)
set TextB = oTexts.Add("davor
", 25,
35)
set TextC = oTexts.Add("
dahinter", 25,
45)
' Parameter erzeugen
set oParameter =
CATIA.ActiveDocument.Parameters.CreateString("MeinParameter",
"Text")
' verlinken
TextA.InsertVariable 0,
50 , oParameter
' 50 Zeichen überschreiben
TextB.InsertVariable 0,
0 , oParameter
' hinterm Text anfangen, nichts
überschreiben
TextC.InsertVariable 1,
0 , oParameter
' vorm Text anfangen, nichts
überschreiben
End Sub |
2D-Text über Namen ansprechen - GetTextByName
2D-Texte lassen sich nur über den Counter, nicht aber
über den Namen ansprechen. Hier eine Function um ein
2D-Text innerhalb einer View mit Namen anzusprechen.
| |
Function
GetTextByName(oView,TextName)
i = 0:
set oTexts = oView.Texts
if oTexts.Count =
0 then
exit function
do
i = i +1
set oText = oTexts.Item(i)
if oText.Name = TextName
then i = oTexts.Count
loop until i = oTexts.Count
set GetTextByName = oText
End Function |
Aufruf:
| |
Sub
CATMain()
set
oSheet = CATIA.ActiveDocument.Sheets.ActiveSheet
set oView = oSheet.Views.Item(1)
' 1 = MainView
MsgBox GetTextByName(oView, "Text.1").Name
End Sub |
|