Autor
|
Thema: Punkt aus Linie (780 mal gelesen)
|
mgheinz1001 Mitglied Dipl.-Ing. (FH)
Beiträge: 109 Registriert: 17.03.2005
|
erstellt am: 05. Jan. 2006 11:39 <-- editieren / zitieren --> Unities abgeben:
Hallo, weiß jemand wie ich mir den Ursprungspunkt (nicht nur die Koordinaten) einer Linie zurückgeben lassen kann ohne einen neuen Punkt hinzuzufügen? Die Linie wurde durch den User selektiert. Vielen Dank Eine Antwort auf diesen Beitrag verfassen (mit Zitat/Zitat des Beitrags) IP |
Gopher Mitglied
Beiträge: 194 Registriert: 11.02.2002 V5R15SP04 (englisch) (V4.2.4)
|
erstellt am: 12. Jan. 2006 22:27 <-- editieren / zitieren --> Unities abgeben: Nur für mgheinz1001
|
V5-Maxe Mitglied CAD-Konstrukteur, CATIA V5
Beiträge: 37 Registriert: 16.06.2005 Windows7 Prof x64 CATIA V5R19 Dell Precision T5500 12GB NVIDIA Quadro FX 580 512MB
|
erstellt am: 19. Jan. 2006 08:03 <-- editieren / zitieren --> Unities abgeben: Nur für mgheinz1001
Hallo mgheinz1001, Soweit ich weiß hat jede Curve, also auch jede Linie drei interne Punkte (Anfang, Mitte und Ende). Diese Kannst du über die Koordinaten (X,Y,Z) abfragen ohne diese neu zu erzeugen. Dim hybridShapeLinePtPt As HybridShape Dim Coordinates (8) Set TheMeasurable = TheSPAWorkbench.GetMeasurable(HybridShapeLinePtPt) TheMeasurable.GetPointsOnCurve Coordinates X1 = Coordinates(0) 'X-Koordinate Startpunkt Y1 = Coordinates(1) 'Y-Koordinate Startpunkt Z1 = Coordinates(2) 'Z-Koordinate Startpunkt X2 = Coordinates(3) 'X-Koordinate Mittelpunkt Y2 = Coordinates(4) 'Y-Koordinate Mittelpunkt Z2 = Coordinates(5) 'Z-Koordinate Mittelpunkt X3 = Coordinates(6) 'X-Koordinate Endpunkt Y3 = Coordinates(7) 'Y-Koordinate Endpunkt Z3 = Coordinates(8) 'Z-Koordinate Endpunkt Viel Glück Eine Antwort auf diesen Beitrag verfassen (mit Zitat/Zitat des Beitrags) IP |
mgheinz1001 Mitglied Dipl.-Ing. (FH)
Beiträge: 109 Registriert: 17.03.2005
|
erstellt am: 19. Jan. 2006 08:39 <-- editieren / zitieren --> Unities abgeben:
|
V5-Maxe Mitglied CAD-Konstrukteur, CATIA V5
Beiträge: 37 Registriert: 16.06.2005 Windows7 Prof x64 CATIA V5R19 Dell Precision T5500 12GB NVIDIA Quadro FX 580 512MB
|
erstellt am: 19. Jan. 2006 10:38 <-- editieren / zitieren --> Unities abgeben: Nur für mgheinz1001
Hallo mgheinz1001, Du hast aber gesagt, du willst kein neues Objekt, zumindest keinen neuen Punkt erzeugen. Den Startpunkt einer Linie kannst du so bekommen: Set hybridShapePointOnCurve1 = hybridShapeFactory1.AddNewPointOnCurveFromPercent(hybridShapeLinePtPt1, 0.000000, False) Jetzt gibt es den Punkt, aber er taucht nicht auf! Erst mit: hybridBody1.AppendHybridShape hybridShapePointOnCurve1 machst du den Punkt sichtbar und klemmst ihn irgendwo in deine Struktur. Solange das Macro aber läuft, kannst du den Punkt benutzen. MfG
Eine Antwort auf diesen Beitrag verfassen (mit Zitat/Zitat des Beitrags) IP |
mgheinz1001 Mitglied Dipl.-Ing. (FH)
Beiträge: 109 Registriert: 17.03.2005
|
erstellt am: 20. Jan. 2006 09:34 <-- editieren / zitieren --> Unities abgeben:
Hallo, danke für deine Antwort. Aber auf genau diese Vorgehensweise wollte ich eigentlich verzichten. Die Punkte dürfen danach nämlich nicht gelöscht werden, sondern müssen als Referenz bestehen bleiben. Da ich aber eine Vielzahl von Linien auswerten muss, würde der Speicherbedarf so wesentlich ansteigen. Deshalb wollte ich mir den bereits vorhandenen Ursprungspunkt der Linie als Ojekt zurückgeben lassen ohne irgendwelche neuen Daten hinzuzufügen (s.o.). Eine Antwort auf diesen Beitrag verfassen (mit Zitat/Zitat des Beitrags) IP |