Hot News:

Mit Unterstützung durch:

  Foren auf CAD.de (alle Foren)
  CATIA V5 Programmierung
  Punkt kopieren

Antwort erstellen  Neues Thema erstellen
CAD.de Login | Logout | Profil | Profil bearbeiten | Registrieren | Voreinstellungen | Hilfe | Suchen

Anzeige:

Darstellung des Themas zum Ausdrucken. Bitte dann die Druckfunktion des Browsers verwenden. | Suche nach Beiträgen nächster neuer Beitrag | nächster älterer Beitrag
Autor Thema:  Punkt kopieren (1239 mal gelesen)
Gilga210
Mitglied
Diplomingenieur Maschinenbau

Sehen Sie sich das Profil von Gilga210 an!   Senden Sie eine Private Message an Gilga210  Schreiben Sie einen Gästebucheintrag für Gilga210

Beiträge: 9
Registriert: 10.12.2003

erstellt am: 26. Jan. 2004 17:40    Editieren oder löschen Sie diesen Beitrag!  <-- editieren / zitieren -->   Antwort mit Zitat in Fett Antwort mit kursivem Zitat    Unities abgeben: 1 Unity (wenig hilfreich, aber dennoch)2 Unities3 Unities4 Unities5 Unities6 Unities7 Unities8 Unities9 Unities10 Unities

Hallo alle zusammen!!!

Ich steh mal wieder vor einem kleinen Problem. Ich würde gerne während des Ablaufs eines Makros einen Punkt selektieren und diesen dann kopieren und im gleichen Part in einem anderen Open_body wieder einfügen.
Das Selektieren klappt ohne Probleme.Nur das Kopieren funktioniert nicht.

Selektion
MsgBox "Bitte waehlen Sie den Startpunkt aus:"

' Auswahl festlegen

Dim Wo1(0)
Wo1(0) = "Point"

' Selektion definieren und leeren

Dim UserSel1 As Selection
Set UserSel1 = CATIA.ActiveDocument.Selection
UserSel1.Clear

' Selektion vornehmen lassen

Dim E1 As CATBSTR
E1 = UserSel1.SelectElement(Wo1, "Point waehlen.", true)

If E1 = "Normal" Then

Dim y1 As String
y1 = UserSel1.Item(1).Value.Name

Else

MsgBox "Abbruch"

End If

Selektion freigeben

UserSel1.EndSelectElement
UserSel1.Clear

Wenn ich mir die Open_body mitausgeben könnte,in dem sich der Punkt befindet, wäre mein Problem gelöst. Dann könnte ich über die Funktoin Copy/Paste den Punkt bearbeiten.

Vielleicht kann mir ja jemand weiterhelfen. Ich bin für jeden Vorschlag sehr dankbar.

Gruss Gila

Eine Antwort auf diesen Beitrag verfassen (mit Zitat/Zitat des Beitrags) IP

Lima
Mitglied
CAD Konstrukteur


Sehen Sie sich das Profil von Lima an!   Senden Sie eine Private Message an Lima  Schreiben Sie einen Gästebucheintrag für Lima

Beiträge: 17
Registriert: 02.10.2001

CATIA V5 R10 SP5 (win2K SP4)
Z Pro / Xeon 3,06 / 1,5GB / Quadro4 XGL 980

erstellt am: 27. Jan. 2004 08:03    Editieren oder löschen Sie diesen Beitrag!  <-- editieren / zitieren -->   Antwort mit Zitat in Fett Antwort mit kursivem Zitat    Unities abgeben: 1 Unity (wenig hilfreich, aber dennoch)2 Unities3 Unities4 Unities5 Unities6 Unities7 Unities8 Unities9 Unities10 Unities Nur für Gilga210 10 Unities + Antwort hilfreich

Hallo!
Wenn Du lediglich den Open_Body benötigst, indem sich der selektierte Punkt befindet, versuch's doch mal mit der .parent-Variante. Bei mir funktioniert zum Beispiel folgende Syntax:


Dim selection1 As Selection
Set selection1 = partDocument1.selection

' Punkt auswählen
selection1.clear
selection1.SelectElement (Filter),"Bitte Punkt auswählen!", True

' Auswahl an Variable übergeben
Dim ausgewaehlterPunkt As Point
Set ausgewaehlterPunkt = selection1.Item(1).Value

selection1.EndSelectElement
selection1.Clear

' Name und zugehörigen OpenBody des Punktes ausgeben
MsgBox ausgewaehlterPunkt.Name
MsgBox ausgewaehlterPunkt.parent.parent.name

Hoffe, ich konnte Dir damit helfen....

Mark

Eine Antwort auf diesen Beitrag verfassen (mit Zitat/Zitat des Beitrags) IP

Gilga210
Mitglied
Diplomingenieur Maschinenbau

Sehen Sie sich das Profil von Gilga210 an!   Senden Sie eine Private Message an Gilga210  Schreiben Sie einen Gästebucheintrag für Gilga210

Beiträge: 9
Registriert: 10.12.2003

erstellt am: 27. Jan. 2004 10:22    Editieren oder löschen Sie diesen Beitrag!  <-- editieren / zitieren -->   Antwort mit Zitat in Fett Antwort mit kursivem Zitat    Unities abgeben: 1 Unity (wenig hilfreich, aber dennoch)2 Unities3 Unities4 Unities5 Unities6 Unities7 Unities8 Unities9 Unities10 Unities

Dank fürdeine Antwort, aber irgend wie funktioniert das bei mir nicht.
Bei mir kommt die Fehlermeldung
Cannot use parents when calling a Sub

Dim part1 As Document
Set part1 = CATIA.ActiveDocument

Dim Filter(0)
Filter(0) = "Point"

Dim Sel1 As Selection
Set Sel1 = part1.Selection

Sel1.Clear
Sel1.SelectElement(Filter,"Bitte Punkt waehlen",true)

Dim Punkt As AnyObject
Set Punkt = Sel1.Item(1).Value

Sel1.EndSelectElement
Sel1.Clear

MsgBox Punkt.Name
MsgBox Punkt.Parent.Parent.Name

Wenn ich die Selection über das Makro, das ich zu erst verwendet habe, laufen lasse, bekomme ich die Fehlermeldung in der MsgBox Object Punkt required.

Das kann doch nicht so schwierig sein oder seh ich den Wald vor lauter Bäumen nicht.

Gruss Gilga

Eine Antwort auf diesen Beitrag verfassen (mit Zitat/Zitat des Beitrags) IP

Gilga210
Mitglied
Diplomingenieur Maschinenbau

Sehen Sie sich das Profil von Gilga210 an!   Senden Sie eine Private Message an Gilga210  Schreiben Sie einen Gästebucheintrag für Gilga210

Beiträge: 9
Registriert: 10.12.2003

erstellt am: 27. Jan. 2004 11:09    Editieren oder löschen Sie diesen Beitrag!  <-- editieren / zitieren -->   Antwort mit Zitat in Fett Antwort mit kursivem Zitat    Unities abgeben: 1 Unity (wenig hilfreich, aber dennoch)2 Unities3 Unities4 Unities5 Unities6 Unities7 Unities8 Unities9 Unities10 Unities

Hab meinen Fehler gefunden.
Wenn ich die Klammer bei SelectElement weglasse Funktioniert es.
Weis zwar nicht warum, ist aber auch egal.

Gruss Gilga

Eine Antwort auf diesen Beitrag verfassen (mit Zitat/Zitat des Beitrags) IP

Lima
Mitglied
CAD Konstrukteur


Sehen Sie sich das Profil von Lima an!   Senden Sie eine Private Message an Lima  Schreiben Sie einen Gästebucheintrag für Lima

Beiträge: 17
Registriert: 02.10.2001

CATIA V5 R10 SP5 (win2K SP4)
Z Pro / Xeon 3,06 / 1,5GB / Quadro4 XGL 980

erstellt am: 27. Jan. 2004 11:37    Editieren oder löschen Sie diesen Beitrag!  <-- editieren / zitieren -->   Antwort mit Zitat in Fett Antwort mit kursivem Zitat    Unities abgeben: 1 Unity (wenig hilfreich, aber dennoch)2 Unities3 Unities4 Unities5 Unities6 Unities7 Unities8 Unities9 Unities10 Unities Nur für Gilga210 10 Unities + Antwort hilfreich

Ja.... das ist eine ziemlich konfuse Sache. manchmal geht's, manchmal nicht!
Auf dieses Problem wird auch in der Online-Doku von CATIA hingewiesen. Wenn's Dich interessiert, sieh doch mal auf der "Automation Documentation Homepage" unter "Guides" (CAA Automation Rules and Standards) nach. Dort gibt es unter "Coding Rules" den Punkt [p5] "Don't use parentheses when using CAA V5 Sub methods".

Grüße,
Mark

Eine Antwort auf diesen Beitrag verfassen (mit Zitat/Zitat des Beitrags) IP

Stoffel
Mitglied
Student


Sehen Sie sich das Profil von Stoffel an!   Senden Sie eine Private Message an Stoffel  Schreiben Sie einen Gästebucheintrag für Stoffel

Beiträge: 322
Registriert: 09.10.2002

R6/V2010

erstellt am: 27. Jan. 2004 17:27    Editieren oder löschen Sie diesen Beitrag!  <-- editieren / zitieren -->   Antwort mit Zitat in Fett Antwort mit kursivem Zitat    Unities abgeben: 1 Unity (wenig hilfreich, aber dennoch)2 Unities3 Unities4 Unities5 Unities6 Unities7 Unities8 Unities9 Unities10 Unities Nur für Gilga210 10 Unities + Antwort hilfreich

TIPP:
Die Verwendung von Klammern hat was mit dem Rückgabewert von Funktionen zu tun!

Eine Antwort auf diesen Beitrag verfassen (mit Zitat/Zitat des Beitrags) IP

Anzeige.:

Anzeige: (Infos zum Werbeplatz >>)

Darstellung des Themas zum Ausdrucken. Bitte dann die Druckfunktion des Browsers verwenden. | Suche nach Beiträgen

nächster neuerer Beitrag | nächster älterer Beitrag
Antwort erstellen


Diesen Beitrag mit Lesezeichen versehen ... | Nach anderen Beiträgen suchen | CAD.de-Newsletter

Administrative Optionen: Beitrag schliessen | Archivieren/Bewegen | Beitrag melden!

Fragen und Anregungen: Kritik-Forum | Neues aus der Community: Community-Forum

(c)2023 CAD.de | Impressum | Datenschutz