Hot News:

Mit Unterstützung durch:

  Foren auf CAD.de (alle Foren)
  CATIA V5 Programmierung
  Benennung von Ebenen

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:  Benennung von Ebenen (514 mal gelesen)
X-O
Mitglied
Student


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

Beiträge: 12
Registriert: 18.08.2009

Catia v5 r18
Windows XP

erstellt am: 02. Okt. 2009 19:07    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 zusammen,

bei einem Makro soll eine Offsetebene und darauf eine neue Skizze erzeugt werden.
Mein Problem ist, dass bei der Erzeugung der Skizze folgende Zeilen auftauchen:

Dim reference2 As HybridShape
Set reference2 = hybridShapes1.Item("Ebene.1")

Das Programm bezieht sich also auf Ebene.1
Wenn es im Hauptkörper aber schon 5 Ebenen gibt, dann nennt das Makro die vorher neu erzeugte Ebene: Ebene.6
Der Bezug geht also verloren.

Meine Frage ist jetzt, was man dagegen tun kann.
Kann man ein frisch erzeugte Ebene fest bennen?

Ich habe einfach mal das Programm angehängt:

Language="VBSCRIPT"

Sub CATMain()

Dim partDocument1 As Document
Set partDocument1 = CATIA.ActiveDocument

Dim part1 As Part
Set part1 = partDocument1.Part

Dim hybridShapeFactory1 As Factory
Set hybridShapeFactory1 = part1.HybridShapeFactory

Dim originElements1 As OriginElements
Set originElements1 = part1.OriginElements

Dim hybridShapePlaneExplicit1 As AnyObject
Set hybridShapePlaneExplicit1 = originElements1.PlaneXY

Dim reference1 As Reference
Set reference1 = part1.CreateReferenceFromObject(hybridShapePlaneExplicit1)

Dim hybridShapePlaneOffset1 As HybridShapePlaneOffset
Set hybridShapePlaneOffset1 = hybridShapeFactory1.AddNewPlaneOffset(reference1, 20.000000, False)

Dim bodies1 As Bodies
Set bodies1 = part1.Bodies

Dim body1 As Body
Set body1 = bodies1.Item("Hauptkörper")

body1.InsertHybridShape hybridShapePlaneOffset1

part1.InWorkObject = hybridShapePlaneOffset1

part1.Update

Dim sketches1 As Sketches
Set sketches1 = body1.Sketches

Dim hybridShapes1 As HybridShapes
Set hybridShapes1 = body1.HybridShapes

Dim reference2 As HybridShape
Set reference2 = hybridShapes1.Item("Ebene.1")

Dim sketch1 As Sketch
Set sketch1 = sketches1.Add(reference2)

Dim arrayOfVariantOfDouble1(8)
arrayOfVariantOfDouble1(0) = 0.000000
arrayOfVariantOfDouble1(1) = 0.000000
arrayOfVariantOfDouble1(2) = 20.000000
arrayOfVariantOfDouble1(3) = 1.000000
arrayOfVariantOfDouble1(4) = 0.000000
arrayOfVariantOfDouble1(5) = 0.000000
arrayOfVariantOfDouble1(6) = 0.000000
arrayOfVariantOfDouble1(7) = 1.000000
arrayOfVariantOfDouble1(8) = 0.000000
sketch1.SetAbsoluteAxisData arrayOfVariantOfDouble1

part1.InWorkObject = sketch1

Dim factory2D1 As Factory2D
Set factory2D1 = sketch1.OpenEdition()

Dim geometricElements1 As GeometricElements
Set geometricElements1 = sketch1.GeometricElements

Dim axis2D1 As GeometricElement
Set axis2D1 = geometricElements1.Item("Absolute Achse")

Dim line2D1 As CATBaseDispatch
Set line2D1 = axis2D1.GetItem("H-Richtung")

line2D1.ReportName = 1

Dim line2D2 As CATBaseDispatch
Set line2D2 = axis2D1.GetItem("V-Richtung")

line2D2.ReportName = 2

sketch1.CloseEdition

part1.InWorkObject = sketch1

End Sub

Vielen Dank schonmal im Voraus

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


Ex-Mitglied



Sehen Sie sich das Profil von  an!

Beiträge: 4755
Registriert: 27.09.2000

Dell precision M4300, 4GB Arbeitsspeicher
NVidia FX360M
Windows XP professional SP3
CATIA V5 R16SP9, R17SP8, R18SP8, R19SP4
Adobe Acrobat 8
Linux: Ubuntu 8.04LTS

erstellt am: 02. Okt. 2009 19:53    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 X-O 10 Unities + Antwort hilfreich

Du kannst einer Ebene einen Namen geben. Näheres findest du in der V5Automation.chm im Installationspfad von CATIA.

Du kannst auch mehreren Ebenen den gleichen Namen geben. 

Ansonsten solltest du dir mal ein (allgemeines) Buch über VBA-Progrogrammierung besorgen und den Ziethen.

------------------
Meine Firma  |  Website zum Buch Technisches Zeichnen mit CATIA V5 | Mein CATIA-Blog

Wie stelle ich meine Fragen richtig?

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

tberger
Mitglied
Application Manager CATIA V5 / V6


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

Beiträge: 1385
Registriert: 13.01.2007

WIN 7 64bit
V5R21SP3HF49
3DX/V6 R2016x

erstellt am: 02. Okt. 2009 19:55    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 X-O 10 Unities + Antwort hilfreich

Inden du in deinem Fall nach erklären der reference2 diese mit z.B.
reference2.Name = "EBENE_umbenannt"
umbenennst.

------------------
Grüße aus dem Rheinland

Thomas

+++++++++++++++++++++++++++++++++

CATIA - eine Laune der Natur ...

"Phase 2 in CATIA V5"  - www.tobeplus.de

   tberger@tobeplus.de

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

X-O
Mitglied
Student


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

Beiträge: 12
Registriert: 18.08.2009

Catia v5 r18
Windows XP

erstellt am: 03. Okt. 2009 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

Hallo zusammen,

es funktioniert super, vielen Dank.
Ich wollte sowieso das Forum loben, da man hier immer schnell eine gute Antwort erhält.

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

X-O
Mitglied
Student


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

Beiträge: 12
Registriert: 18.08.2009

Catia v5 r18
Windows XP

erstellt am: 07. Okt. 2009 10:16    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,

ich habe wohl noch ein Verständnissproblem.
Folgendes Programm soll mit userselection einen Punkt einlesen und in "Test" unbennen. Mit "Line" und "Pad" klappt es wunderbar,aber nicht mit "Vertex". Kann mir das jemand erklären?

Sub CATMain()

Dim Was(4)
  Was(0) = "Line"
  Was(1) = "Pad"
  Was(2) = "Vertex" 'Hier klappt die Namensgebung nicht!
  Was(3) = "Edge" 'Hier auch nicht
  Was(4) = "Bodies" 'Hier auch nicht

    MsgBox ("Objekt auswählen") 
    Dim Benauswahl As selection
    Set Benauswahl = CATIA.ActiveDocument.Selection
    Benauswahl.Clear
    Dim Auswahl 'As CATBStr
    Auswahl = Benauswahl.SelectElement2(Was, "Linie wählen!", False)
    MsgBox("Objekt ausgewählt")

    Dim ref6 As Object
    Set ref6 = Benauswahl.Item(1).Value
    ref6.Name = "Test"
 

End Sub

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

X-O
Mitglied
Student


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

Beiträge: 12
Registriert: 18.08.2009

Catia v5 r18
Windows XP

erstellt am: 07. Okt. 2009 13:12    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

Wenn man Was(2)= "Point" nennt dann klappt es.
Aber es wäre trozdem schön zu wissen, warum das mit vertex edge und bodies nicht klappt

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

tberger
Mitglied
Application Manager CATIA V5 / V6


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

Beiträge: 1385
Registriert: 13.01.2007

WIN 7 64bit
V5R21SP3HF49
3DX/V6 R2016x

erstellt am: 07. Okt. 2009 13:15    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 X-O 10 Unities + Antwort hilfreich

Vielleicht liegt es daran, dass es sich bei "Vertex" nur um "interne Elemente" handelt, also um Elemente ohne Baumeintrag (BREPS). Das würde auch erklären, warum es bei "Edge" auch nicht geht.

------------------
Grüße aus dem Rheinland

Thomas

+++++++++++++++++++++++++++++++++

CATIA - eine Laune der Natur ...

"Phase 2 in CATIA V5"  - www.tobeplus.de

   tberger@tobeplus.de

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