Autor
|
Thema: Länge von Kante in Draft messen-HILFE (1010 mal gelesen)
|
Sr.Herms Mitglied
Beiträge: 23 Registriert: 31.08.2006
|
erstellt am: 07. Sep. 2006 14:33 <-- editieren / zitieren --> Unities abgeben:
Hallo! Im Zuge meiner aufgabe versuche ich gerade in Draft eine Kante zu wählen und von dieser dann die Länge zu bestimmen! das das makro die selektierte Kante erkennt funzt schon mal, zumindestens kann ich sie z.B durch ein makro löschen etc, also sollte der code funktionieren. im 2.schritt muß ich nun die länge bemessen aber da bekomm ich immer eine fehlermeldung! ich hab nicht soviel ahnung davon aber ich denke es liegt daran das ich das irgendwie als reference übergeben muß und nicht so einfach direkt, aber ich weiß nicht wie, hab schon ne menge probiert. das habe ich bislang: ____________________________________ Sub CATMain() Set DrwDocument = CATIA.ActiveDocument Set DrwSheets = DrwDocument.Sheets Set Drwsheet = DrwSheets.ActiveSheet Set Drwviews = Drwsheet.Views Dim MySelection as Object Set MySelection = CATIA.ActiveDocument.Selection
Dim TheSPAWorkbench As SPAWorkbench Dim TheMeasurable As Measurable Set TheSPAWorkbench = CATIA.ActiveDocument.GetWorkbench("SPAWorkbench") Set TheMeasurable = TheSPAWorkbench.GetMeasurable(MySelection) ----hier bricht das makro ab
Dim dLength as Double dLength = TheMeasurable.Length End Sub __________________________ kann mir wer helfen und den code irgendwie ergänzen, korigieren? Eine Antwort auf diesen Beitrag verfassen (mit Zitat/Zitat des Beitrags) IP |
Proofin Mitglied Dpl.Ing
Beiträge: 208 Registriert: 24.11.2004
|
erstellt am: 11. Sep. 2006 10:05 <-- editieren / zitieren --> Unities abgeben: Nur für Sr.Herms
Hallo Sr.Herms ergänze dein Skript mal wie folgt: Dim MySelection as Object Set MySelection = CATIA.ActiveDocument.Selection '- Ergänzung Dim Ref1 as Reference set Ref1 = MySelection.Item(1).Value '---- Dim TheSPAWorkbench As SPAWorkbench Dim TheMeasurable As Measurable Set TheSPAWorkbench = CATIA.ActiveDocument.GetWorkbench("SPAWorkbench") '- Ergänzung Set TheMeasurable = TheSPAWorkbench.GetMeasurable(Ref1) ----hier bricht das makro ab '--- Dim dLength as Double dLength = TheMeasurable.Length Mfg Proofin Eine Antwort auf diesen Beitrag verfassen (mit Zitat/Zitat des Beitrags) IP |
Sr.Herms Mitglied
Beiträge: 23 Registriert: 31.08.2006
|
erstellt am: 11. Sep. 2006 11:38 <-- editieren / zitieren --> Unities abgeben:
Servus! Danke für den Tip Leider bricht er immer noch in der Zeile ab, also bei: Set TheMeasurable = TheSPAWorkbench.GetMeasurable(Ref1) kannst du mir vll nochmal weiterhelfen?
grüsse Herms [Diese Nachricht wurde von Sr.Herms am 11. Sep. 2006 editiert.] [Diese Nachricht wurde von Sr.Herms am 11. Sep. 2006 editiert.] Eine Antwort auf diesen Beitrag verfassen (mit Zitat/Zitat des Beitrags) IP |
Proofin Mitglied Dpl.Ing
Beiträge: 208 Registriert: 24.11.2004
|
erstellt am: 11. Sep. 2006 12:42 <-- editieren / zitieren --> Unities abgeben: Nur für Sr.Herms
|
Sr.Herms Mitglied
Beiträge: 23 Registriert: 31.08.2006
|
erstellt am: 11. Sep. 2006 12:46 <-- editieren / zitieren --> Unities abgeben:
|
Proofin Mitglied Dpl.Ing
Beiträge: 208 Registriert: 24.11.2004
|
erstellt am: 11. Sep. 2006 12:51 <-- editieren / zitieren --> Unities abgeben: Nur für Sr.Herms
Zitat: Original erstellt von Sr.Herms:
... das das makro die selektierte Kante erkennt funzt schon mal, zumindestens kann ich sie z.B durch ein makro löschen etc, also sollte der code funktionieren....
??? Ich hab im Moment das Problem das ich in der Selektion nur die View habe, obwohl ich die Kante selektiert habe. Ich werde noch einbißchen rumprobiern. Eine Antwort auf diesen Beitrag verfassen (mit Zitat/Zitat des Beitrags) IP |
Sr.Herms Mitglied
Beiträge: 23 Registriert: 31.08.2006
|
erstellt am: 11. Sep. 2006 13:14 <-- editieren / zitieren --> Unities abgeben:
|
Proofin Mitglied Dpl.Ing
Beiträge: 208 Registriert: 24.11.2004
|
erstellt am: 11. Sep. 2006 13:27 <-- editieren / zitieren --> Unities abgeben: Nur für Sr.Herms
|
Sr.Herms Mitglied
Beiträge: 23 Registriert: 31.08.2006
|
erstellt am: 11. Sep. 2006 13:36 <-- editieren / zitieren --> Unities abgeben:
Ich danke dir für deine vielen bemühungen! Ich werde jetzt wohl etwas anderes ausprobieren! und zwar das ganze in Part zu machen! das ganze ist ja erst der anfang eines Makros! Ziel ist nachher die Kante zu unterteilen und dann darauf Halbkreise in festem Abstand einzuzeichen! Soweit habe ich hier im Forum schon was gefunden, was ich gerade abwandlen muß! Aber die Punkte auf ein Projezierten Kante zu erzeugen funzt schon mal Danke für deine Hilfe Eine Antwort auf diesen Beitrag verfassen (mit Zitat/Zitat des Beitrags) IP |
Proofin Mitglied Dpl.Ing
Beiträge: 208 Registriert: 24.11.2004
|
erstellt am: 11. Sep. 2006 14:17 <-- editieren / zitieren --> Unities abgeben: Nur für Sr.Herms
|
Sr.Herms Mitglied
Beiträge: 23 Registriert: 31.08.2006
|
erstellt am: 11. Sep. 2006 14:22 <-- editieren / zitieren --> Unities abgeben:
|
Proofin Mitglied Dpl.Ing
Beiträge: 208 Registriert: 24.11.2004
|
erstellt am: 11. Sep. 2006 14:27 <-- editieren / zitieren --> Unities abgeben: Nur für Sr.Herms
|
Sr.Herms Mitglied
Beiträge: 23 Registriert: 31.08.2006
|
erstellt am: 11. Sep. 2006 14:50 <-- editieren / zitieren --> Unities abgeben:
also mal schnell skizziert ;-) Ich habe z.B. eine solche Kante, wobei es erstmal uninteressant ist ob ich die Kante komplett oder getrennt anwählen kann, also die 2 geraden und den halbkreis! Ziel des Makros soll sein, das er die Halbkreise auf die Kante legt! Wie gesagt habe ich dafür bereits im Part weiter programiert und ich kann zumindestens schon mal auf den einzelnen Kanten Punkte in einem definierten Abstand erzeugen. Nun muß ich halt nur noch hinbekommen das er durch die Punkte die Halbkreise zeichnet! Toll wäre es gewesen wenn das ganze unter Drawing machbar wäre um dafür nicht "neue 3D Objekte" zu erzeugen! Eine Antwort auf diesen Beitrag verfassen (mit Zitat/Zitat des Beitrags) IP |
Proofin Mitglied Dpl.Ing
Beiträge: 208 Registriert: 24.11.2004
|
erstellt am: 11. Sep. 2006 14:56 <-- editieren / zitieren --> Unities abgeben: Nur für Sr.Herms
|
Sr.Herms Mitglied
Beiträge: 23 Registriert: 31.08.2006
|
erstellt am: 11. Sep. 2006 15:11 <-- editieren / zitieren --> Unities abgeben:
im 3D unter Part! Nun ist nur noch die schwierigkeit die kleinen Halbkreise zu erzeugen. Dachte ich könnte die Punkte als mittelpunkte nehmen, nen festen radius geben und gut ist! aber 1.weiß ich nicht wie ich von Punkt zu Punkt springen soll, 2. weiß ich nicht wie ich den Halbkreis hinbekomme, weil ich ja eine Orientierung dafür brauche! Ich habe jetzt zusätzlich eine Pojezierte Ebene mit reingenommen, so dass man diese als Stützelement wählen kann, aber weiter komm ich noch nicht
Eine Antwort auf diesen Beitrag verfassen (mit Zitat/Zitat des Beitrags) IP |