Hot News:

Mit Unterstützung durch:

  Foren auf CAD.de
  CATIA V5 Programmierung
  Punkte auf einer Kurve zwischen Anfangs- und Endpunkt verteilen

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
  
CATIA V5 Grundkurs | Einsteiger - 5 Std. 15 Min 48
  
KISTERS 3DViewStation: 3D-Visualisierung für After Sales, Service und Ersatzteile, eine Pressemitteilung
Autor Thema:  Punkte auf einer Kurve zwischen Anfangs- und Endpunkt verteilen (2504 mal gelesen)
F.lix
Mitglied
Student


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

Beiträge: 15
Registriert: 10.10.2014

erstellt am: 17. Nov. 2014 15:26    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


PunkteaufKurve.PNG

 
Hallo liebe Community,

dank des Buches von Jens Hansen ("Kochbuch - Catia V5 automatisieren") bin ich als Catia Programmieranfänger schon ziemlich weit allein gekommen. Jetzt stehe ich jedoch in einer Sackgasse. Hier mein Problem:

Ich würde gerne automatisiert Punkte auf einer Kurve verteilen. Es existieren schon zwei Punkte auf der Kurve die automatisch konstruiert 50mm vom Anfangs und 50mm vom Endpunkt der Kurve entfernt liegen. Dazwischen sollen nun die x Punkte erstellt werden. Manuell mache ich es wie im Bild mit dem Befehl "Points & Planes Repetition". Ganz einfach eigentlich, nur nicht ganz so schön für tausende von Kurven (:

Übrigens mit dem Makrorekorder habe ich es schon probiert, der haut mir aber für jede Wiederholung eines Punktes eine extra erstellte Formel raus. Ziemlich unflexibel also.

Hat jemand vielleicht eine einfachere Idee?

Grüße
F.lix

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

bgrittmann
Moderator
Konstrukteur


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

Beiträge: 12054
Registriert: 30.11.2006

CATIA V5R19

erstellt am: 17. Nov. 2014 15: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 F.lix 10 Unities + Antwort hilfreich

Servus
meine Idee dazu:
- 1.Punkt mit Formel erstellen
- Punkt mit "AddNewPointDatum" isolieren
- Formel für 2. Punkt anpassen
- isolieren ...
oder:
Mit einer Schleife die punkte über "AddNewPointOnCurveFromPercent" anlegen dabei "Ratio" entsprechend hochzählen.

Gruß
Bernd

------------------
Warum einfach, wenn es auch kompliziert geht.

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

F.lix
Mitglied
Student


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

Beiträge: 15
Registriert: 10.10.2014

erstellt am: 17. Nov. 2014 17:17    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,

ersten Frage: was macht den "AddNewDatum" genau?

Meine Lösung war jetzt:
- erster und letzter Punkt schon per Makro konstruiert und vorhanden
- Abstand zwischen den gleichverteilten Punkten bestimmen, in dem man die Kurvenlänge nimmt und den Anfangs- und Endabschnitt abzieht
dazu die Anzahl der gleichverteilten Punkte, die letztlich den Abstand vorgeben
Abstand  = (Länge der Kurve - Anfangs/Endabschnitt) / Anzahl der Abschnitte zwischen gleichverteilten Punkten
- und den Abstand nimmt man dann und setzt ihn in .AddNewPointOnCurveWithReferenceFromDistance(reference1, reference2, Abstand, False)

sieht jetzt so aus (Ausschnitt)

Code:
              'Erster Punkt 30 mm vom Anfang
                    Set hybridShapePointOnCurve1 = hybridShapeFactory1.AddNewPointOnCurveFromDistance(reference1, 30#, False)
                    hybridBody7.AppendHybridShape hybridShapePointOnCurve1
                    hybridShapePointOnCurve1.Name = Shape.Name & "_1"
                                                         
                    'Referenz zwischen dem die Punkte eingefügt werden sollen
                    Set reference2 = part1.CreateReferenceFromObject(hybridShapePointOnCurve1)
                   
                    'Abstand zwischen den gleichverteilten Punkten bestimmen, mit Kurvenänge weniger Anfangs- und Endpunkt, geteilt durch die gleichgroßen Abschnitte
                    Abstand = Kurvenlaenge / (k - 1) 'k Anzahl der Punkte insgesamt
                   
                    'Punkte dazwischen gleichverteilt
                    For j = 3 To k
                   
                        Set hybridShapePointOnCurve2 = hybridShapeFactory1.AddNewPointOnCurveWithReferenceFromDistance(reference1, reference2, (Abstand * (j - 2)), False)
                        hybridBody7.AppendHybridShape hybridShapePointOnCurve2
                        hybridShapePointOnCurve2.Name = Shape.Name & "_" & j - 1
                        'part1.Update
                       
                    Next
                   
                    'letzter Punkt 30 mm vom Ende
                    Set hybridShapePointOnCurve2 = hybridShapeFactory1.AddNewPointOnCurveFromDistance(reference1, 30#, True)
                    hybridBody7.AppendHybridShape hybridShapePointOnCurve2
                    hybridShapePointOnCurve2.Name = Shape.Name & k

Ist wahrscheinlich nicht die Genaueste Methode, da man den Abstand hier selber berechnet, aber für mich ausreichend!

Grüße
F.lix

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)2025 CAD.de | Impressum | Datenschutz