Hot News:

Mit Unterstützung durch:

  Foren auf CAD.de (alle Foren)
  PTC Creo Elements/Direct Drafting
  Teile und Struktur global in neues Teil bewegen

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
  
Gut zu wissen: Hilfreiche Tipps und Tricks aus der Praxis prägnant, und auf den Punkt gebracht für Creo
Autor Thema:  Teile und Struktur global in neues Teil bewegen (903 mal gelesen)
Amused
Mitglied
Ingenieur

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

Beiträge: 3
Registriert: 19.12.2017

erstellt am: 19. Dez. 2017 14:50    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,

folgendes vermeintlich simples Problem welches ich bisher leider immer nur mit relativ viel manuellem Aufwand gelöst bekomme:

In einer großen Zeichnung möchte ich ein neues Teil erstellen, welches nur alle Teile und Elemente enthält, die ich mit einem Kasten auswähle.
Alles andere wird anschließend gelöscht.

Im Prinzip tut die Funktion Sammeln/Teil/Bewegen was ich möchte, aber ich muss dazu jedes Teil einzeln anklicken oder im Baum die jeweiligen Baugruppen raussuchen.

Dies geht doch bestimmt schneller und komfortabler?

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

r.hoffmann
Mitglied
Techniker


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

Beiträge: 127
Registriert: 07.12.2006

OSD 13.2 20.4

erstellt am: 20. Dez. 2017 13:21    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 Amused 10 Unities + Antwort hilfreich

Hallo Amused,
unten ein Makro, das aus den Elementen und den Teilen, die KOMPLETT in deinem Auswahlfenster liegen, ein Teil macht, alles andere löscht und danach das Teil wieder auflöst.
Der obere Teil nach den Variablen sichert die Datei vorher sicherheitshalber unter c:\temp ab.
Ich hoffe, dass dies so von dir gedacht war.

Gruß
Robert

Code:
______________________________________________________________
DEFINE eva_loesche_ausser_kasten
LOCAL dateiname
LOCAL p
LOCAL l
LOCAL p1
LOCAL p2
LOCAL n

  INQ_ENV 0 LET dateiname (INQ 304)
  LET l (LEN dateiname)
  REPEAT
    LET p (POS dateiname '\')
    LET dateiname (SUBSTR dateiname (p+1) (l-p))
  UNTIL (p=0)
  IF (dateiname = 'Untitled') LET dateiname 'eva_sicherung.mi' END_IF
  STORE ALL DEL_OLD ('c:\temp\'+dateiname)

  LET n 'eva_eindeutiger_name'
  EDIT_PART TOP
  READ PNT '1. Punkt antippen' p1
  READ PNT '2. Punkt antippen' RUBBER_BOX p1 p2
  create_subpart n p1 p2 end
  DELETE SELECT ALL SUBTRACT n CONFIRM
  SMASH_SUBPART n END
END_DEFINE
______________________________________________________________

------------------
Homepage: www.me10-makros.de

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

Amused
Mitglied
Ingenieur

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

Beiträge: 3
Registriert: 19.12.2017

erstellt am: 22. Dez. 2017 11:43    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 Robert,

vielen Dank für die schnelle Antwort. Es funktioniert schon ganz gut. Ich bin erst kürzlich durch eine Schulung auf die Möglichkeit von Makros in ME10 gestoßen. Leider ist es nicht so einfach die Ideen dann auch in funktionierenden Code zu überführen.

Bei diesem Makro habe ich noch die Schwierigkeit, dass wenn nur ein Abschnitt eines Teils außerhalb des Kasten liegt, dieses Teil ebenfalls gelöscht wird. Schöner wäre es, wenn diese Teil ebenfalls erhalten bleibt. Ich vermute aber, dadurch wird es wesentlich komplexer.

Gruß
Amused

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

r.hoffmann
Mitglied
Techniker


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

Beiträge: 127
Registriert: 07.12.2006

OSD 13.2 20.4

erstellt am: 22. Dez. 2017 21:42    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 Amused 10 Unities + Antwort hilfreich

Hallo Amused,
ein anderer Weg ist, alles rundherum zu löschen.
Dies muss dann global von der obertsten Ebene gemacht werden.
Einzige Bedingung: Es dürfen keine Mehrfachabbildungen vorhanden sein,
diese würden dann auch in der Box gelöscht.

Code:
______________________________________________________________________________
DEFINE eva_loesche_ausser_kasten
LOCAL dateiname
LOCAL p
LOCAL l
LOCAL p1
LOCAL p2
LOCAL por
LOCAL pul
LOCAL orx
LOCAL ory
LOCAL ulx
LOCAL uly
LOCAL p1x
LOCAL p1y
LOCAL p2x
LOCAL p2y
LOCAL p3x
LOCAL p3y
LOCAL lx
LOCAL ly
LOCAL rx
LOCAL ry

  INQ_ENV 0
  LET dateiname (INQ 304)
  LET l (LEN dateiname)
  REPEAT
    LET p (POS dateiname '\')
    LET dateiname (SUBSTR dateiname (p+1) (l-p))
  UNTIL (p=0)
  IF (dateiname = 'Untitled') LET dateiname 'eva_sicherung.mi' END_IF
  STORE ALL DEL_OLD ('c:\temp\'+dateiname)

  EDIT_PART TOP
  WINDOW FIT
  INQ_ENV 2
  LET pul (INQ 101) LET ulx (X_OF pul) LET uly (Y_OF pul)
  LET ulx (ulx-1) LET uly (uly-1)
  LET por (INQ 102) LET orx (X_OF por) LET ory (Y_OF por)
  LET orx (orx+1) LET ory (ory+1)
  READ PNT '1. Punkt antippen' p1
  READ PNT '2. Punkt antippen' RUBBER_BOX p1 p2

  LET p1x (X_OF p1) LET p1y (Y_OF p1)
  LET p1x (p1x-1) LET p1y (p1y+1)
  LET p2x (X_OF p2) LET p2y (Y_OF p2)
  LET p2x (p2x+1) LET p2y (p2y-1)
  IF (p1y < p2y) LET p3y p1y LET p1y p2y LET p2y p3y END_IF
  IF (p2x < p1x) LET p3x p1x LET p1x p2x LET p2x p3x END_IF
  LET lx ulx LET ly uly
  LET rx p1x LET ry ory
  DELETE GLOBAL (PNT_XY lx ly) (PNT_XY rx ry) END
  LET lx p2x LET ly uly
  LET rx orx LET ry ory
  DELETE GLOBAL (PNT_XY lx ly) (PNT_XY rx ry) END
  LET lx ulx LET ly p1y
  LET rx orx LET ry ory
  DELETE GLOBAL (PNT_XY lx ly) (PNT_XY rx ry) END
  LET lx ulx LET ly uly
  LET rx orx LET ry p2y
  DELETE GLOBAL (PNT_XY lx ly) (PNT_XY rx ry) END
END_DEFINE
_______________________________________________________________________________-

Hoffe, das hilft.
Gruß
Robert

------------------
Homepage: www.me10-makros.de

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



Produktmanager Konstruktion (m/w/d)

Seit fast 30 Jahren und mit mehr als 200 qualifizierten und motivierten Beschäftigten weltweit, gehören wir zu den führenden Herstellern von Transportgeräten und -systemen für Kunden in den Geschäftsbereichen Intralogistics, Global Mail und Industrial Solutions.

Zahlreiche Global-Player zählen zu unseren Kunden, bei denen unsere Produkte täglich unter hoher Belastung im Einsatz sind....
Anzeige ansehenProduktmanagement
Amused
Mitglied
Ingenieur

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

Beiträge: 3
Registriert: 19.12.2017

erstellt am: 09. Jan. 2018 12:03    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 Robert,

vielen Dank. Das Makro macht ziemlich genau das, was ich mir eingangs vorgestellt habe.

Mir ist aufgefallen, dass Mehrfachabbildungen innerhalb des Kasten nur gelöscht werden, wenn es Abbildungen desselben Typs außerhalb gibt. Richtig? Ich nehme an, das lässt sich leider nicht anders bewerkstelligen.

Die Krönung wäre jetzt noch, wenn "übrig" gebliebene Linien mit dem Kasten verschnitten werden. Aber der Mehraufwand dies zu implementieren ist es vermutlich nicht wert einzelne Linien schnell händisch zu kürzen.

Nochmals vielen Dank
Richard aka Amused

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