| |
| Gut zu wissen: Hilfreiche Tipps und Tricks aus der Praxis prägnant, und auf den Punkt gebracht für Creo |
Autor
|
Thema: kontur austauschen (1084 mal gelesen)
|
Greskamp Mitglied Ingenieur
Beiträge: 523 Registriert: 12.03.2003 MS: Windows 10 64bit OSD: 20.1 M020 ModelManager: 20.1 M020 NX 1899 TC 12.3
|
erstellt am: 18. Aug. 2008 16:52 <-- editieren / zitieren --> Unities abgeben:
Hallo, ich hab ein Problem in einer .mi Datei. Ich der Datei sind 3000 Teile mit einer Dreieckskontur enthalten die alle irgendwo einen "Pfeil" aus 3 Linien sitzen haben, dient zur Orientierung. Jetzt stimmt diese Kontur des Pfeils nicht und ich müsste das austauschen. Gibt es eine Möglichkeit im Drafting oder wegen mir auch Annotation zu sagen, tausche mir diese Konstur gegen diese aus. ------------------ Gruß Peter Eine Antwort auf diesen Beitrag verfassen (mit Zitat/Zitat des Beitrags) IP |
clausb Ehrenmitglied V.I.P. h.c.
Beiträge: 2914 Registriert: 20.12.2000
|
erstellt am: 18. Aug. 2008 17:54 <-- editieren / zitieren --> Unities abgeben: Nur für Greskamp
|
Greskamp Mitglied Ingenieur
Beiträge: 523 Registriert: 12.03.2003 MS: Windows 10 64bit OSD: 20.1 M020 ModelManager: 20.1 M020 NX 1899 TC 12.3
|
erstellt am: 18. Aug. 2008 18:27 <-- editieren / zitieren --> Unities abgeben:
|
clausb Ehrenmitglied V.I.P. h.c.
Beiträge: 2914 Registriert: 20.12.2000
|
erstellt am: 18. Aug. 2008 19:48 <-- editieren / zitieren --> Unities abgeben: Nur für Greskamp
|
highway45 Moderator Bastler mit Diplom
Beiträge: 6331 Registriert: 14.12.2004 ME10
|
erstellt am: 18. Aug. 2008 20:03 <-- editieren / zitieren --> Unities abgeben: Nur für Greskamp
|
clausb Ehrenmitglied V.I.P. h.c.
Beiträge: 2914 Registriert: 20.12.2000
|
erstellt am: 18. Aug. 2008 20:06 <-- editieren / zitieren --> Unities abgeben: Nur für Greskamp
Zitat: Original erstellt von highway45: Peter möchte aber das Ausgewählte austauschen gegen etwas anderes.
Oh, danke fur den Hinweis, da habe ich zu schludrig gelesen - ich bitte um Entschuldigung! Ich gebe besser ab an Leute, die sich mit Drafting auskennen. Claus ------------------ CoCreate Modeling FAQ: http://www.clausbrod.de/CoCreateModeling/
[Diese Nachricht wurde von clausb am 18. Aug. 2008 editiert.] Eine Antwort auf diesen Beitrag verfassen (mit Zitat/Zitat des Beitrags) IP |
der_Wolfgang Ehrenmitglied V.I.P. h.c. Tastenhauer
Beiträge: 2017 Registriert: 3.20. ● PE6+8@home ● W10 Pro Build19044.2006 ● Drafting V17~V20.5.1 ● Modeling V17~V20.5.1 ● @Scirotec201804
|
erstellt am: 18. Aug. 2008 21:14 <-- editieren / zitieren --> Unities abgeben: Nur für Greskamp
Zitat: Original erstellt von highway45: Peter möchte aber das Ausgewählte austauschen gegen etwas anderes.
Mit SELECT YELLOW SUBMARINE^W uppss.. ALL war aber schon mal ein wichtiger Punkt geklärt. Damit kann man ein INQ_SELECTED_ELEM füttern, dann wirds etwas ätzend. Wie finde ich 'Kontour'? Das erste element raussuchen und dann suchen welche anderen elemente die selben vertices nutzen (inq 101 + 102). UFF. Peter Du muesstest ein gutes Kriterium finden, um zu sagen: diese N elemente bilden die alte Kontour, mit Startpunkt X und richtung Y. Evtl kann man die selektion noch verfeinern und dann später nur auf Linien einer bestimmten länge (mit Toleranz) reagieren. Ist ja schon mal saugut das NICHTS anderes gelb ist!!!! Screen shot vorher/nachher wäre mal GUT!!!!!
------------------ ● Seamonkey Firefox Thunderbird Seamonkey auf deutsch ● OSD Hilfeseite (de) / help page (en) ● Eine Antwort auf diesen Beitrag verfassen (mit Zitat/Zitat des Beitrags) IP |
H.annes Mitglied CAD-Pfriemler
Beiträge: 482 Registriert: 02.07.2001 ME10 8.7 - PTC DirectDrafting 19.00; OSM 15.xx - PTC DM 19.xx
|
erstellt am: 19. Aug. 2008 07:40 <-- editieren / zitieren --> Unities abgeben: Nur für Greskamp
Morgen! Es gibt also 3000 Teile mit einer Kontur drin. Ich nehm mal an, dass die Teile den gleichen Namen haben. Du kannst also via Makro die Teileliste durchgehen, die Teile mit diesem Namen editieren, die Geometrie löschen & neu erzeugen. Ein paar Kniffligkeiten wird wohl noch geben: die Lage der Kontur feststellen; ist die Kontur in allen teilen gleich gross; ... Ein Makro, um die Teileliste durchzuarbeiten, gibts zB hier Gruß, Hannes
------------------ Nur sauber gekämmt sind wir wirklich frei. [HaP] Eine Antwort auf diesen Beitrag verfassen (mit Zitat/Zitat des Beitrags) IP |
Greskamp Mitglied Ingenieur
Beiträge: 523 Registriert: 12.03.2003
|
erstellt am: 19. Aug. 2008 07:58 <-- editieren / zitieren --> Unities abgeben:
Hallo, hab jetzt mal eins der 3000 Dreiecke rausgespeichert. Da sieht man jetzt links mitte von dem Teil den neuen und alten Pfeil übereinander liegen. Der alte Pfeil ist gelb, den neuen hab ich in cyan direkt drüber gelegt. Noch hab ich es so das ich die 3000 Dreiecke im top habe. Weiß nicht ob es besser ist die mit in die Teile zu binden. ------------------ Gruß Peter Eine Antwort auf diesen Beitrag verfassen (mit Zitat/Zitat des Beitrags) IP |
H.annes Mitglied CAD-Pfriemler
Beiträge: 482 Registriert: 02.07.2001 ME10 8.7 - PTC DirectDrafting 19.00; OSM 15.xx - PTC DM 19.xx
|
erstellt am: 19. Aug. 2008 08:11 <-- editieren / zitieren --> Unities abgeben: Nur für Greskamp
Ok - das ist im Makro lösbar, aber vermutlich nicht so einfach: als Ansatz: * INQ_SELECTED_ELEM SELECT YELLOW CONFIRM bringt alle gelben Elemente * eine lange gelbe Linie suchen - also in der Auswahl so lange suchen, bis eine Linie die richtige Länge hat * mit INQ_SELECTED_ELEM VERTEX Startpunkt + Endpunkt / INQ 14 die Richtung des Pfeils rausfinden Damit hast du Start- und Endpunkt des Pfeils, kannst mit DELETE VERTEX Enspunkt die 3 gelben Linien löschen & den neuen Pfeil zeichnen. Und dann weiter mit INQ_SELECTED_ELEM SELECT YELLOW CONFIRM Gruß, Hannes
------------------ Nur sauber gekämmt sind wir wirklich frei. [HaP] Eine Antwort auf diesen Beitrag verfassen (mit Zitat/Zitat des Beitrags) IP |
der_Wolfgang Ehrenmitglied V.I.P. h.c. Tastenhauer
Beiträge: 2017 Registriert: 3.20. ● PE6+8@home ● W10 Pro Build19044.2006 ● Drafting V17~V20.5.1 ● Modeling V17~V20.5.1 ● @Scirotec201804
|
erstellt am: 19. Aug. 2008 18:57 <-- editieren / zitieren --> Unities abgeben: Nur für Greskamp
Zitat: Original erstellt von H.annes: Ok - das ist im Makro lösbar, aber vermutlich nicht so einfach:als Ansatz: * INQ_SELECTED_ELEM SELECT YELLOW CONFIRM bringt alle gelben Elemente * eine lange gelbe Linie suchen - also in der Auswahl so lange suchen, bis eine Linie die richtige Länge hat
soweit so gut ,aber dann: Zitat:
* mit INQ_SELECTED_ELEM VERTEX Startpunkt + Endpunkt / INQ 14 die Richtung des Pfeils rausfindenDamit hast du Start- und Endpunkt des Pfeils, kannst mit DELETE VERTEX Enspunkt die 3 gelben Linien löschen & den neuen Pfeil zeichnen. Und dann weiter mit INQ_SELECTED_ELEM SELECT YELLOW CONFIRM
geht die performance in die knie und zwar gewaltig. Das mehrfache INQ_SELECTED_ELEM ist unnoetig. den INQ_SELECTED_ELEM SELECT YELLOW CONFIRM, machst einmal am Anfang, dann hast Du sozusagen eine lange lange liste. Die arbeitest Du ab. Pseudo syntax:
Code:
INQ_SELECTED_ELEM SELECT YELLOW CONFIRM loop get inq 101 + 102 fuer anfangsendpunkt Laenge = abs (ap - ep) if laenge > x { == lange linie } then male mit diesen punkten den neuen richtungspfeil delete (inq 302) ;; linie abgearbeitet, wech damit else delete (inq 302) ;; linie irrelevant wech damit fi INQ_NEXT_ELEM { !!!!! } if .. <end-of-list> exit_loop end_loop
Zitat Online Hilfe: Wenn mit INQ_SELECTED_ELEM mehrere Elemente erfaßt werden, werden nur die sich auf das erste gefundene Element beziehenden Informationen in die Systemabfragematrix eingetragen. INQ_NEXT_ELEM bietet Ihnen die Möglichkeit, schrittweise Informationen der nächsten gewählten Elemente in die Systemabfragematrix zu schreiben. fuer deine 3000 Pfeile musst du nicht X*3000 mal 'selektiere alle (verbleibenden) gelben Linien' aufrufen! ------------------ ● Seamonkey Firefox Thunderbird Seamonkey auf deutsch ● OSD Hilfeseite (de) / help page (en) ● Eine Antwort auf diesen Beitrag verfassen (mit Zitat/Zitat des Beitrags) IP |
der_Wolfgang Ehrenmitglied V.I.P. h.c. Tastenhauer
Beiträge: 2017 Registriert: 3.20. ● PE6+8@home ● W10 Pro Build19044.2006 ● Drafting V17~V20.5.1 ● Modeling V17~V20.5.1 ● @Scirotec201804
|
erstellt am: 19. Aug. 2008 19:51 <-- editieren / zitieren --> Unities abgeben: Nur für Greskamp
|
der_Wolfgang Ehrenmitglied V.I.P. h.c. Tastenhauer
Beiträge: 2017 Registriert: 3.20. ● PE6+8@home ● W10 Pro Build19044.2006 ● Drafting V17~V20.5.1 ● Modeling V17~V20.5.1 ● @Scirotec201804
|
erstellt am: 19. Aug. 2008 20:13 <-- editieren / zitieren --> Unities abgeben: Nur für Greskamp
Die Richtung des kleine winz'gen gelben Pfeiles (ich hätte ihn fast übersehen) bestimmt sich leider NICHT aus INQ 101+102, weil da nicht gewährleistet ist was wo ist. Endpunkt = gemeinsamer Vertex von 3 gelben linien, wovon eine 5mm lang und 2 je 1.12mm lang sind Anfangspunkt = genau der andere punkt von der 5mm linie. ggf. muss man also fuer AP->EP die Ergebnisse von INQ 101+102 anders rum zuweisen um die PFEIL-Richtung zu erhaschen. Da fällt mir nur ne dicke fette LTAB zu ein, um alle Punkte aller gelben linien zu sammeln und zu sortieren..... ----------- 10 kleine Negerlein... äh 3000 kleine Pfeilchen, die waren einmal gelb, da kam doch son' Typ daher und mochte nicht das GELB. .... Möchtest Du den Pfeil eigentlich mit-GATHER-n? Dann hätte man es nur mit je 3 linien, statt mit 9000 zu tun, also den Pfeil erst nach dem umschaufeln in ein neues Part migrieren. ------------------ ● Seamonkey Firefox Thunderbird Seamonkey auf deutsch ● OSD Hilfeseite (de) / help page (en) ● Eine Antwort auf diesen Beitrag verfassen (mit Zitat/Zitat des Beitrags) IP |
H.annes Mitglied CAD-Pfriemler
Beiträge: 482 Registriert: 02.07.2001 ME10 8.7 - PTC DirectDrafting 19.00; OSM 15.xx - PTC DM 19.xx
|
erstellt am: 20. Aug. 2008 07:58 <-- editieren / zitieren --> Unities abgeben: Nur für Greskamp
Zitat: Original erstellt von der_Wolfgang: ... Da fällt mir nur ne dicke fette LTAB zu ein, um alle Punkte aller gelben linien zu sammeln und zu sortieren.....
ja, das wär vermutlich am besten: die ID (INQ 2) aller langen Linien in eine LTAB, und dann einzeln INQ - dann fallen etliche INQ_SELECTED_ELEM weg ... Morgen! Hannes ------------------ Nur sauber gekämmt sind wir wirklich frei. [HaP] Eine Antwort auf diesen Beitrag verfassen (mit Zitat/Zitat des Beitrags) IP |
der_Wolfgang Ehrenmitglied V.I.P. h.c. Tastenhauer
Beiträge: 2017 Registriert: 3.20. ● PE6+8@home ● W10 Pro Build19044.2006 ● Drafting V17~V20.5.1 ● Modeling V17~V20.5.1 ● @Scirotec201804
|
erstellt am: 20. Aug. 2008 20:14 <-- editieren / zitieren --> Unities abgeben: Nur für Greskamp
Zitat: Original erstellt von H.annes: ja, das wär vermutlich am besten: die ID (INQ 2) aller langen Linien in eine LTAB, und dann einzeln INQ - dann fallen etliche INQ_SELECTED_ELEM weg ...
Etliche?? Alle bis auf einen am Anfang. In der loop kommt man doch mit INQ_NEXT_ELEM an alles ran was man braucht. -> spalte 1 (INQ 2) -> spalte 2 (INQ 101) -> spalte 3 (INQ 102) -> spalte 4 = laenge der Linie Also erneut EIN INQ_SELECTED_ELEM YELLOW vor der loop und N mal INQ_NEXT_ELEM. Vielleicht habe ich dich aber mistverstanden und du wollest INQ_SELECTED_ELEM / INQ_ELEM nicht innerhalb der schleife zum fuellen erneut aufrufen. Ich hoffe sogar das es so ist . ------------------ ● Seamonkey Firefox Thunderbird Seamonkey auf deutsch ● OSD Hilfeseite (de) / help page (en) ● Eine Antwort auf diesen Beitrag verfassen (mit Zitat/Zitat des Beitrags) IP |
H.annes Mitglied CAD-Pfriemler
Beiträge: 482 Registriert: 02.07.2001 ME10 8.7 - PTC DirectDrafting 19.00; OSM 15.xx - PTC DM 19.xx
|
erstellt am: 21. Aug. 2008 07:54 <-- editieren / zitieren --> Unities abgeben: Nur für Greskamp
Zitat: Original erstellt von der_Wolfgang: Etliche?? Alle bis auf einen am Anfang...
nicht ganz ... 1x INQ_SELECTED_ELEM 1 Schleife, in der alle langen Linien in die LTAB kommen 1 Schleife über die LTAB mit INQ_SELECTED_ELEM VERTEX auf jedes Listenelement, um Start- und Endpunkt zu unterscheiden ... hätt ich mir gedacht. Aber weiss Greskamp eigentlich noch, wovon wir reden? Hannes
------------------ Nur sauber gekämmt sind wir wirklich frei. [HaP] Eine Antwort auf diesen Beitrag verfassen (mit Zitat/Zitat des Beitrags) IP |
der_Wolfgang Ehrenmitglied V.I.P. h.c. Tastenhauer
Beiträge: 2017 Registriert: 3.20. ● PE6+8@home ● W10 Pro Build19044.2006 ● Drafting V17~V20.5.1 ● Modeling V17~V20.5.1 ● @Scirotec201804
|
erstellt am: 21. Aug. 2008 23:39 <-- editieren / zitieren --> Unities abgeben: Nur für Greskamp
Zitat: Original erstellt von H.annes: Original erstellt von der_Wolfgang: Etliche?? Alle bis auf einen am Anfang... nicht ganz ... ;)1x INQ_SELECTED_ELEM 1 Schleife, in der alle langen Linien in die LTAB kommen 1 Schleife über die LTAB mit INQ_SELECTED_ELEM VERTEX auf jedes Listenelement, um Start- und Endpunkt zu unterscheiden
hmmm.. ich haette, wie schon geschrieben, mir ALLE punkte (also 101+102) in der ersten Loop bereits in die Tabelle gepumpt, allerdings in eine Spalte, dann ein SORT_LTAB auf diese punkt-spalte und von oben durchrennen: immer wenn dann 3 punkte (also 3 Reihen) hintereinander identisch sind, haben wir eine Pfeilspitze erwischt. Von den 3 reihen nemmen wir dann die mit der Laenge 5 mm (also ein SELECT_FROM_LTAB 'bigtable' SORTED ... und schwubs haben wir den Anfangspunkt des Pfeiles auch ermittelt. Bei 3000 pfeilen würdest Du, Hannes, also immer noch 3001 mal INQ_SELECTED_ELEM aufrufen. Zitat: Aber weiss Greskamp eigentlich noch, wovon wir reden? :D ;)
wen interessiert das.. UPPss.. Naja, wenn uns der Peter hier so mit einer einzigen Datei gleich in mehreren Threads Makro maessig kitzelt... dann darf er sich nicht wundern Gell? ------------------ ● Seamonkey Firefox Thunderbird Seamonkey auf deutsch ● OSD Hilfeseite (de) / help page (en) ● Eine Antwort auf diesen Beitrag verfassen (mit Zitat/Zitat des Beitrags) IP |
H.annes Mitglied CAD-Pfriemler
Beiträge: 482 Registriert: 02.07.2001 ME10 8.7 - PTC DirectDrafting 19.00; OSM 15.xx - PTC DM 19.xx
|
erstellt am: 22. Aug. 2008 07:57 <-- editieren / zitieren --> Unities abgeben: Nur für Greskamp
Zitat: Original erstellt von der_Wolfgang: hmmm.. ich haette, wie schon geschrieben, mir ALLE punkte (also 101+102) in der ersten Loop bereits in die Tabelle gepumpt, allerdings in eine Spalte, dann ein SORT_LTAB auf diese punkt-spalte ...
Ich weiss aber nicht, ob 101 oder 102 der Startpunkt ist. Man müsste also je Linie 2 Zeilen eintragen, einmal (INQ 101) und einmal (INQ 102) in die erste Spalte; ausserdem noch die Länge der Linie zB in Spalte 3. Dann SORT_LTAB ... 1 REVERSE_SORT 3 ... Immer wenn 3 gleiche Punkte kommen, ist der erste der SP der langen Linie. Die LTAB wird halt dopppelt so gross ... Nur so Morgengedanken ... Hannes
------------------ Nur sauber gekämmt sind wir wirklich frei. [HaP] Eine Antwort auf diesen Beitrag verfassen (mit Zitat/Zitat des Beitrags) IP |
der_Wolfgang Ehrenmitglied V.I.P. h.c. Tastenhauer
Beiträge: 2017 Registriert: 3.20. ● PE6+8@home ● W10 Pro Build19044.2006 ● Drafting V17~V20.5.1 ● Modeling V17~V20.5.1 ● @Scirotec201804
|
erstellt am: 22. Aug. 2008 19:17 <-- editieren / zitieren --> Unities abgeben: Nur für Greskamp
Zitat: Original erstellt von H.annes: Ich weiss aber nicht, ob 101 oder 102 der Startpunkt ist.
ich auch nicht. Zitat: Man müsste also je Linie 2 Zeilen eintragen, einmal (INQ 101) und einmal (INQ 102) in die erste Spalte
jepp! und die 2. genau umgekehrt Zitat: ausserdem noch die Länge der Linie zB in Spalte 3.
was schrub ich am 20. Aug. 2008 20:14 in die Spalte 4? ^^^da oben^^ Zitat: Immer wenn 3 gleiche Punkte kommen, ist der erste der SP der langen Linie.
jepp! fast. Zitat: Die LTAB wird halt dopppelt so gross ...
jepp! Zitat: Nur so Morgengedanken ... :D
das waren meine gestrigen Abendgedanken. Hannes, wir verstehen uns.. aber PETER was's mit Dir? ------------------ ● Seamonkey Firefox Thunderbird Seamonkey auf deutsch ● OSD Hilfeseite (de) / help page (en) ● Eine Antwort auf diesen Beitrag verfassen (mit Zitat/Zitat des Beitrags) IP |