Autor
|
Thema: Dimension texts im Drafting (4156 mal gelesen)
|
LocalError Mitglied Dipl. Ing
Beiträge: 166 Registriert: 26.06.2008 Solidworks 2020 SP5 Solidworks PDM Professional 2020 SP5 Win 10<P>AutoCAD Machanical 2010 / 2013 Inventor 2010 / 2013 Vault 2010 / 2013 CATIA V5 Win7 64 XP 64
|
erstellt am: 23. Jun. 2009 13:38 <-- editieren / zitieren --> Unities abgeben:
Grüße Euch! Kann mir jemand sagen, wie ich die Texte anspreche, die als Prä- oder Postfix mit Insert before oder Insert after an eine Bemaßung gesetzt werden?? Das sind keine Texte der View und auch nicht direkt der Dimension zugehörig. Bin da ratlos!
Eine Antwort auf diesen Beitrag verfassen (mit Zitat/Zitat des Beitrags) IP |
bgrittmann Moderator Konstrukteur
Beiträge: 11780 Registriert: 30.11.2006 CATIA V5R19
|
erstellt am: 23. Jun. 2009 13:52 <-- editieren / zitieren --> Unities abgeben: Nur für LocalError
Servus Sieh Doku: DrawingDimValue (SetPSText bzw GetPSText) zB: MyValue.SetPSText(iIndex, iPrefix, iSuffix) Gruß Bernd ------------------ Warum einfach, wenn es auch kompliziert geht.
[Diese Nachricht wurde von bgrittmann am 23. Jun. 2009 editiert.] Eine Antwort auf diesen Beitrag verfassen (mit Zitat/Zitat des Beitrags) IP |
LocalError Mitglied Dipl. Ing
Beiträge: 166 Registriert: 26.06.2008
|
erstellt am: 23. Jun. 2009 14:39 <-- editieren / zitieren --> Unities abgeben:
|
Tim2007 Mitglied Konstrukteur
Beiträge: 143 Registriert: 02.01.2007 Catia V5R19SP3 XP64<P>"Was wir wissen, ist ein Tropfen; was wir nicht wissen, ein Ozean." Sir Isaac Newton
|
erstellt am: 20. Mai. 2011 17:16 <-- editieren / zitieren --> Unities abgeben: Nur für LocalError
Hallo Jungs, könnt ihr hier noch ein komplettes Bsp. einstellen, so dass wir DAUs nur noch die rauskopieren können und dzulernen können? Also ein Drawing, dass eine dimensionierung hat und dann das Prefix und / oder das Suffix geändert wird?! Danke
Eine Antwort auf diesen Beitrag verfassen (mit Zitat/Zitat des Beitrags) IP |
bgrittmann Moderator Konstrukteur
Beiträge: 11780 Registriert: 30.11.2006 CATIA V5R19
|
erstellt am: 20. Mai. 2011 19:55 <-- editieren / zitieren --> Unities abgeben: Nur für LocalError
Servus Anbei ein Beispiel, dass dir den Text vor und nach dem Wert, der ersten Bemaßung in der aktuellen Ansicht, verändert und ausgibt. Code: Sub CATMain()Dim oDoc As DrawingDocument Dim Ansicht As DrawingView Dim oDimension As DrawingDimension Dim wert As DrawingDimValue Dim prefix As String Dim postfix As String 'Start If (Right(CATIA.ActiveDocument.Name, 10) <> "CATDrawing") Then Exit Sub End If Set oDoc = CATIA.ActiveDocument Set Ansicht = oDoc.Sheets.ActiveSheet.Views.ActiveView Set oDimension = Ansicht.Dimensions.Item(1) Set wert = oDimension.GetValue 'Präfix setzen wert.SetBaultText 1, "Test", "", "", "" 'Postfix + Präfix setzen wert.SetBaultText 1, "Test", "Text", "", "" 'Präfix auslesen wert.GetBaultText 1, prefix, "", "", "" MsgBox prefix 'Post auslesen wert.GetBaultText 1, "", postfix, "", "" MsgBox postfix End Sub
Die Funktionen GetPSText/SetPSText sind für das PräPostfix (zB Durchmesserzeichen, Envelope, ...)Gruß Bernd ------------------ Warum einfach, wenn es auch kompliziert geht. Eine Antwort auf diesen Beitrag verfassen (mit Zitat/Zitat des Beitrags) IP |
Tim2007 Mitglied Konstrukteur
Beiträge: 143 Registriert: 02.01.2007 Catia V5R19SP3 XP64<P>"Was wir wissen, ist ein Tropfen; was wir nicht wissen, ein Ozean." Sir Isaac Newton
|
erstellt am: 23. Mai. 2011 11:53 <-- editieren / zitieren --> Unities abgeben: Nur für LocalError
|
Hokay Mitglied
Beiträge: 143 Registriert: 27.07.2004 Win7-Enterprice Catia V5 R24 SP1
|
erstellt am: 30. Mai. 2011 11:17 <-- editieren / zitieren --> Unities abgeben: Nur für LocalError
Hi Leute, ich bekomme einfach das Durchmesserzeichen nicht extrahiert bzw. gepackt. Ich will dieses Sonderzeichen (%%c) umwandeln nach Unicode ChrW(8960) Wie kann ich dies realisieren. Nach der Umwandlung will ich die Zeichnung per Script als dxf abspeichern. Kann mir jemand dabei helfen? MFG Heiko Eine Antwort auf diesen Beitrag verfassen (mit Zitat/Zitat des Beitrags) IP |
HoBLila Mitglied Dipl.-Ing. (BA) praktische Informatik - Senior Entwickler CAx
Beiträge: 1118 Registriert: 29.05.2008 DELL PRECISION T3500 Intel(R) Xeon(R) CPU W3540 @ 2.93GHz 12285 MB RAM NVIDIA Quadro FX 1800 Microsoft Windows 7 Enterprise Service Pack 1 CATIA V5 R19 SP09 HF69 VB6.5 CAA RADE CDC
|
erstellt am: 30. Mai. 2011 11:26 <-- editieren / zitieren --> Unities abgeben: Nur für LocalError
Hallo Heiko, ich vermute das Problem liegt daran, dass das Durchmesserzeichen in CATIA in einer anderen Schriftart (CATIA-Stroke) vorliegt und in dieser ein normales Zeichen ist. Siehe Symboltabelle. Also auf die Schriftart für das Zeichen achten. Hoffe das geht in die richtige Richtung. ------------------ Mit freundlichen Grüßen, Henry Schneider alias Lila Es gibt einen ewigen Wettkampf zwischen der Natur und den Ingenieuren: Die Ingenieure versuchen, immer idioten-sicherere Systeme zu bauen, die Natur versucht, immer bessere Idioten zu bauen Xing Eine Antwort auf diesen Beitrag verfassen (mit Zitat/Zitat des Beitrags) IP |
Hokay Mitglied
Beiträge: 143 Registriert: 27.07.2004 Win7-Enterprice Catia V5 R24 SP1
|
erstellt am: 30. Mai. 2011 12:05 <-- editieren / zitieren --> Unities abgeben: Nur für LocalError
Hi HoBLila Hi Rest der Welt Ja ich denke auch, dass das mit der Schriftart zusammen hängt. Genau desshalb will ich es ja vor dem dxf-Export konvertieren nach Unicode. Aber ich muss es erst einmal packen können. MFG Heiko Eine Antwort auf diesen Beitrag verfassen (mit Zitat/Zitat des Beitrags) IP |
HoBLila Mitglied Dipl.-Ing. (BA) praktische Informatik - Senior Entwickler CAx
Beiträge: 1118 Registriert: 29.05.2008 DELL PRECISION T3500 Intel(R) Xeon(R) CPU W3540 @ 2.93GHz 12285 MB RAM NVIDIA Quadro FX 1800 Microsoft Windows 7 Enterprise Service Pack 1 CATIA V5 R19 SP09 HF69 VB6.5 CAA RADE CDC
|
erstellt am: 30. Mai. 2011 12:40 <-- editieren / zitieren --> Unities abgeben: Nur für LocalError
Code:
'Präfix auslesen wert.GetBaultText 1, prefix, "", "", "" MsgBox prefix
ist also leer bei Dir? ------------------ Mit freundlichen Grüßen, Henry Schneider alias Lila Es gibt einen ewigen Wettkampf zwischen der Natur und den Ingenieuren: Die Ingenieure versuchen, immer idioten-sicherere Systeme zu bauen, die Natur versucht, immer bessere Idioten zu bauen Xing Eine Antwort auf diesen Beitrag verfassen (mit Zitat/Zitat des Beitrags) IP |
Hokay Mitglied
Beiträge: 143 Registriert: 27.07.2004 Win7-Enterprice Catia V5 R24 SP1
|
erstellt am: 30. Mai. 2011 12:48 <-- editieren / zitieren --> Unities abgeben: Nur für LocalError
Ja ist leer... Wenn ich mit Text befor (rotes Dreieck) was davor schreibe dann sehe ich das. Aber Das Durchmesserzeichen hehört irgendwie direkt zur Maßzahl. brauche dringend Hilfe Heiko [Diese Nachricht wurde von Hokay am 30. Mai. 2011 editiert.] Eine Antwort auf diesen Beitrag verfassen (mit Zitat/Zitat des Beitrags) IP |
bgrittmann Moderator Konstrukteur
Beiträge: 11780 Registriert: 30.11.2006 CATIA V5R19
|
erstellt am: 30. Mai. 2011 13:06 <-- editieren / zitieren --> Unities abgeben: Nur für LocalError
|
Hokay Mitglied
Beiträge: 143 Registriert: 27.07.2004 Win7-Enterprice Catia V5 R24 SP1
|
erstellt am: 30. Mai. 2011 13:13 <-- editieren / zitieren --> Unities abgeben: Nur für LocalError
Das habe ich auch schon probiert aber das klappt nicht. hier mal mein Testcode: Language="VBSCRIPT" Sub CATMain() On Error Resume Next Dim intIndexLng As Long Dim intBeforeStr As String Dim intAfterStr As String Dim intUpperStr As String Dim intLowerStr As String intIndexLng = 1 'MAIN VAULE 'intIndexLng = 2 'DUAL VALUE Dim drawingDocument1 As Document Set drawingDocument1 = CATIA.ActiveDocument Dim selection1 As Object 'Selection for CATScript Set selection1 = drawingDocument1.Selection selection1.Search "CATDrwSearch.DrwDimension,all" Dim DRWDimension As DrawingDimension Dim I As Integer Dim MyDimValue As Object For I = 1 To selection1.Count Set DRWDimension = selection1.Item(I).Value Set MyDimValue = DRWDimension.GetValue Set wert = DRWDimension.GetValue 'Präfix setzen 'wert.SetBaultText 1, "Test", "", "", "" 'Postfix + Präfix setzen 'wert.SetBaultText 1, "Test", "Text", "", "" 'Präfix auslesen 'wert.GetBaultText 1, prefix, "", "", "" 'MsgBox prefix,,1 'Post auslesen 'wert.GetBaultText 1, "", postfix, "", "" 'MsgBox postfix,,2 'Post auslesen wert.GetPSText 1, "", postfix, "", "" MsgBox postfix,,1 wert.GetPSText 1, prefix, "", "", "" MsgBox prefix,,2 Next End Sub Eine Antwort auf diesen Beitrag verfassen (mit Zitat/Zitat des Beitrags) IP |
bgrittmann Moderator Konstrukteur
Beiträge: 11780 Registriert: 30.11.2006 CATIA V5R19
|
erstellt am: 30. Mai. 2011 13:27 <-- editieren / zitieren --> Unities abgeben: Nur für LocalError
Servus AFAIK gibt es dein diesem Post/Präfix nur zwei Parameter. Der Aufruf sollte: wert.GetPSText 1, prefix, ""lauten. Bei einem Durchmesserzeichen wird <DIAMETER> zurückgeliefert. Gruß Bernd ------------------ Warum einfach, wenn es auch kompliziert geht. Eine Antwort auf diesen Beitrag verfassen (mit Zitat/Zitat des Beitrags) IP |
Hokay Mitglied
Beiträge: 143 Registriert: 27.07.2004 Win7-Enterprice Catia V5 R24 SP1
|
erstellt am: 30. Mai. 2011 13:50 <-- editieren / zitieren --> Unities abgeben: Nur für LocalError
Hallo Bernd, vielen vielen Dank für den Hinweis auf die "nur" Zwei Parameter So klappt das jetzt. hier mein Code, falls es mal jemand anderes interessiert: Sub CATMain() On Error Resume Next Dim drawingDocument1 As Document Dim selection1 As Object Dim DRWDimension As DrawingDimension
Set drawingDocument1 = CATIA.ActiveDocument Set selection1 = drawingDocument1.Selection selection1.Search "CATDrwSearch.DrwDimension,all" For I = 1 To selection1.Count Set DRWDimension = selection1.Item(I).Value Set Wert = DRWDimension.GetValue Wert.GetPSText 1, prefix, "" MsgBox prefix,,1 Wert.SetPSText 1, ChrW(8960), "" Wert.GetPSText 1, "", postfix MsgBox postfix,,2 Next End Sub
Eine Antwort auf diesen Beitrag verfassen (mit Zitat/Zitat des Beitrags) IP |
shoutz000 Mitglied Techn. Produktdesigner
Beiträge: 168 Registriert: 19.08.2013 CatiaV5 R19 CatiaV5 R24 Windows 7 Professional
|
erstellt am: 27. Jun. 2015 18:28 <-- editieren / zitieren --> Unities abgeben: Nur für LocalError
Hi, also ich versuch per Makro ein "conical taper" vor die Dimension zu setzen. Allerdings weiß ich nicht wie man dieses Symbol aufruft. Ich versteh aber auch nicht ganz wie das mit dem Unicode funktionieren soll... zumindest kann mein Catia damit nichts anfangen. ChrW(8960) soll ja das Durchmesserzeichen sein, aber egal welchen Code ich eingebe, Catia setzt immer ein "_" vor die Dimension... Eine Antwort auf diesen Beitrag verfassen (mit Zitat/Zitat des Beitrags) IP |
shoutz000 Mitglied Techn. Produktdesigner
Beiträge: 168 Registriert: 19.08.2013 CatiaV5 R19 CatiaV5 R24 Windows 7 Professional
|
erstellt am: 27. Jun. 2015 18:43 <-- editieren / zitieren --> Unities abgeben: Nur für LocalError
Oh war ja ganz einfach Code:
If sStatus = "Normal" Then For i = 1 To oSel.Count Set oDim = oSel.Item(i).Value Set oDimValue = oDim.GetValue oDimValue.SetPSText 1, "<CONICALTAPER>", ""
[Diese Nachricht wurde von shoutz000 am 27. Jun. 2015 editiert.] Eine Antwort auf diesen Beitrag verfassen (mit Zitat/Zitat des Beitrags) IP |
joehz Moderator Freiberuflicher Konstrukteur
Beiträge: 1057 Registriert: 25.11.2006 Win7 Pro 64 + Ubuntu + Irix6.5.20 Dell Precision M6600 i7-2960XM 2.7GHz 16GB NVidia Quadro M5010 Catia V5R19 VB6Pro.SP6/VBA 6.5.1053
|
erstellt am: 27. Jun. 2015 21:33 <-- editieren / zitieren --> Unities abgeben: Nur für LocalError
Die anderen möglichen PS-Typen stehen in der Datei: \B19\win_b64\resources\msgcatalog\CATDrwEngineeringSymbolsIconBox.CATNls Tschau, Joe ------------------ The problem with the world is that the intelligent people are full of doubts, while the stupid ones are full of confidence. ~Charles Bukowski Eine Antwort auf diesen Beitrag verfassen (mit Zitat/Zitat des Beitrags) IP |