Autor
|
Thema: selektierte Edges weiterverwenden (457 mal gelesen)
|
romanoir2005 Mitglied
Beiträge: 62 Registriert: 22.02.2005
|
erstellt am: 22. Feb. 2005 12:29 <-- editieren / zitieren --> Unities abgeben:
Hallo Zusammen ! ich hoffe mir kann jemand bei folgendem Problem helfen: Ich möchte dass der Anwender von einem Fertigen Bauteil ein paar Kanten selektieren kann. Das mache ich mit Selection.SelectElement und dem Typ "Edge". Das klappt auch soweit, nur möchte ich nun diese gewählten Edges weiterverwenden, genauer gesagt an die darunterliegende Geometrieinformation gelangen. Meist sind die Edges ja nur Linien und ich würde zum Beispiel gerne deren Anfangs und Endpunkt wissen. Geht das irgendwie ? Bin für jede Hilfe sehr dankbar, Viele Grüße, r. Eine Antwort auf diesen Beitrag verfassen (mit Zitat/Zitat des Beitrags) IP |
93Aero Mitglied Ing
Beiträge: 106 Registriert: 02.12.2004
|
erstellt am: 22. Feb. 2005 12:41 <-- editieren / zitieren --> Unities abgeben: Nur für romanoir2005
... ich habe ein ähnliches Problem gehabt. Sogar schlimmer: Du kannst immer Deineselektierten Elemente auf Punkte (das einfachste Typ) oder Linien casten. Aber es sind in der Regel PointImplicit oder CurveImplicit und bei denen gibt es keine Abfrage nach Geometrie. In R14 sollte es besser sein, aber ich habe es nicht probiert, sonst kann die Lösug trickreich sein. Und nicht vergessen: die Kanten können auch Splines, Bögen & Co. sein, also gant trivial ist es nicht Eine Antwort auf diesen Beitrag verfassen (mit Zitat/Zitat des Beitrags) IP |
romanoir2005 Mitglied
Beiträge: 62 Registriert: 22.02.2005
|
erstellt am: 22. Feb. 2005 13:24 <-- editieren / zitieren --> Unities abgeben:
Hallo 93Aero, danke für Deine Antwort. Ich dachte mir ich könnte vielleicht probieren mir mit HybridShapeFactory.AddNewPointOnCurveFromPercent einen Punkt am Anfang und einen am Ende der selektierten Kante zu erzeugen, wenn man noch zwischenpunkte erzeugt könnte man sich sogar bestimmen ob es eine Linie oder ein Kurvensegment war. Aber das ist natürlich super-umständlich. Momentan funktionnierts eh noch nicht weil die Punkterzeugungsfunktion eine Referenz will und ich ihm das selection.value übergebe. Du sagtest man könnte Edges auf Linien casten. Kannst Du mir noch sagen wie das geht ? Gruß, r. Eine Antwort auf diesen Beitrag verfassen (mit Zitat/Zitat des Beitrags) IP |
93Aero Mitglied Ing
Beiträge: 106 Registriert: 02.12.2004
|
erstellt am: 23. Feb. 2005 14:25 <-- editieren / zitieren --> Unities abgeben: Nur für romanoir2005
Das ist genau das, was Du mit AddNewPointOnCurveFromPercent vor hast. Das Problem ist nur, bei diesem Punkt hast Du keine Koordinaten, sondern nur die Referenzkurve und den Abstand. Ab R13 sollte es gehen, aber ich habe es noch nie probiert. Eine Antwort auf diesen Beitrag verfassen (mit Zitat/Zitat des Beitrags) IP |
romanoir2005 Mitglied
Beiträge: 62 Registriert: 22.02.2005
|
erstellt am: 23. Feb. 2005 19:54 <-- editieren / zitieren --> Unities abgeben:
Also inzwischen hab ich folgende "fast"-Lösung: - Ich lasse mir mit SelectElement die Kante wählen. - darauf erzeuge ich mit AddNewPointOnCurveFromPercent am Anfang und am Ende jeweils einen neuen Punkt - von diesen Punkten hole ich mir mittels SPAWorkbench.GetMeasurable.GEtPoint die Koordinaten (anders komm ich leider nicht an die Koordinaten ran) Soweit so gut, das Problem ist nur, dass ich Für die Erzeugung der neuen Punkte sowie für ein danach benötigtes Update (warum auch immer man das Braucht) wissen muss in welchem Part sich die gewählte Kante befindet. bye, r. Eine Antwort auf diesen Beitrag verfassen (mit Zitat/Zitat des Beitrags) IP |
romanoir2005 Mitglied
Beiträge: 62 Registriert: 22.02.2005
|
erstellt am: 23. Feb. 2005 22:05 <-- editieren / zitieren --> Unities abgeben:
nur kurz der Vollständigkeit halber: Hab grad gemerkt dass man anstatt über die "SPAWorkbench.GetMeasurable.GetPoint" Methode auch für die erzeugten Punkte ein ".Compute" ausführen kann und dann ganz standardmäßig über GetCoords an die Koordinaten kommt. Allerdings ändert sich an dem Problem, daß man die Punkte im selben Part Erzeugen muss leider nix.
Eine Antwort auf diesen Beitrag verfassen (mit Zitat/Zitat des Beitrags) IP |