| |
| Gut zu wissen: Hilfreiche Tipps und Tricks aus der Praxis prägnant, und auf den Punkt gebracht für NX |
Autor
|
Thema: Layer Elemente löschen (2830 mal gelesen)
|
muellertz Mitglied Technischer Zeichner
Beiträge: 122 Registriert: 06.08.2010 NX 8.5.3.3 Teamcenter 8 Windows 7 64-bit
|
erstellt am: 28. Jan. 2015 10:55 <-- editieren / zitieren --> Unities abgeben:
Grüße, ich habe ein Problem mit der Anzeige von Objekten auf den Layern. Es werden bis 2300 Objekte angezeigt obwohl nur 4 Objekte tatsächlich da sind. Siehe Bild im Anhang Ich kann diese Objekte nicht löschen.Sie werden auch nicht angezeigt. Mit den NX-Tools -> Phantom Elemente Löschen funktioniert es nicht. Die Teilebereinigung hat auch nicht funktioniert. Gibt es da zufällig ein VB oder Makro oder kostenloses Tool womit ich die Objekte die nicht vorhanden sind löschen kann? Vielen Dank schon einmal für die Hilfen. ------------------ MFG Thomas
NX 8.5.3.3 Teamcenter 8 Windows 7 64-bit [Diese Nachricht wurde von muellertz am 28. Jan. 2015 editiert.] Eine Antwort auf diesen Beitrag verfassen (mit Zitat/Zitat des Beitrags) IP |
mseufert Moderator Freiberuflicher CAD/CAM Ingenieur
Beiträge: 2700 Registriert: 18.10.2005 HP Z420 WIN7 64 Win 10 UG NX6-2306 3D Printer Prusa MK2 S
|
erstellt am: 28. Jan. 2015 13:07 <-- editieren / zitieren --> Unities abgeben: Nur für muellertz
Hallo Thomas, Objekte, die in der Layerliste aufgeführt sind, existieren auch. Sie sind nur unsichtbar, weil evtl. ausgeblendet oder aus anderen Gründen nicht sichtbar. (Objekt in Hintergrundfarbe , in einer unsichtbaren Komponente, Facettierte Körper etc...) Zuerst würd' ich mal alle Komponenten, falls vorhanden, schliessen. Falls dann noch "Untote" in Deinem Part herumgeistern, können diese mit irgendeiner Cycle-Funktion (UF_OBJECT_CYCLE*) ermittelt und analysiert werden. Gleich irgendwas zu löschen, was man nicht kennt, könnte Ärger nach sich ziehen. Gruß, Michael Eine Antwort auf diesen Beitrag verfassen (mit Zitat/Zitat des Beitrags) IP |
muellertz Mitglied Technischer Zeichner
Beiträge: 122 Registriert: 06.08.2010 NX 8.5.3.3 Teamcenter 8 Windows 7 64-bit
|
erstellt am: 28. Jan. 2015 13:25 <-- editieren / zitieren --> Unities abgeben:
Nun es handelt sich um eine Zeichnung Master Model konzept. Im Part sind folgende Layer mit Objekten. (Siehe Bild) In der Zeichnung wurde die Geometrie aus dem Master kopiert mit dem Befehl geometrie kopieren und auf einem Layer geschoben. Danach wurde die Geometrie in der Zeichnung wieder gelöscht und übrig geblieben sind die vielen Objekte auf den Layern, die keine zuordnung haben. Selbst wenn ich im Master Teil und in der Zeichnung alle Formelemente lösche sind die Objekte auf allen Layern immer noch vorhanden. ------------------ MFG Thomas NX 8.5.3.3 Teamcenter 8 Windows 7 64-bit Eine Antwort auf diesen Beitrag verfassen (mit Zitat/Zitat des Beitrags) IP |
mseufert Moderator Freiberuflicher CAD/CAM Ingenieur
Beiträge: 2700 Registriert: 18.10.2005 HP Z420 WIN7 64 Win 10 UG NX6-2306 3D Printer Prusa MK2 S
|
erstellt am: 29. Jan. 2015 10:44 <-- editieren / zitieren --> Unities abgeben: Nur für muellertz
|
muellertz Mitglied Technischer Zeichner
Beiträge: 122 Registriert: 06.08.2010 NX 8.5.3.3 Teamcenter 8 Windows 7 64-bit
|
erstellt am: 29. Jan. 2015 10:56 <-- editieren / zitieren --> Unities abgeben:
Du meinst die Reihenfolge der Zeitstempel? Ja die habe ich ausgeschaltet, aber es tauchen keine Objekte auf. Ich habe aber mittlerweile etwas finden können, womit man alle Objekte eines Layers (Hier ist Layer 256 gemeint) löschen kann. Leider ist der Layer im vb nicht frei wählbar. Gibt es da noch eine möglichkeit zu sagen, das ich einen Layer auswählen kann? Sowas wie eine pickliste von layer 1-256 Hier mal das vb. Code: Option Strict Off Imports System Imports NXOpen Module Module16 Sub Main() Dim theSession As Session = Session.GetSession() Dim workPart As Part = theSession.Parts.Work Dim displayPart As Part = theSession.Parts.Display '&&&&& layer number to delete objects from Const layerToDelete As Integer = 256 If displayPart Is Nothing Then 'no part to work on Exit Sub End If Dim markId1 As Session.UndoMarkId markId1 = theSession.SetUndoMark(Session.MarkVisibility.Visible, "Delete") Dim notifyOnDelete1 As Boolean notifyOnDelete1 = theSession.Preferences.Modeling.NotifyOnDelete theSession.UpdateManager.ClearErrorList() Dim nErrs1 As Integer nErrs1 = theSession.UpdateManager.AddToDeleteList(workPart.Layers.GetAllObjectsOnLayer(layerToDelete)) Dim nErrs2 As Integer nErrs2 = theSession.UpdateManager.DoUpdate(markId1) End Sub Public Function GetUnloadOption(ByVal dummy As String) As Integer 'Unloads the image when the NX session terminates GetUnloadOption = NXOpen.Session.LibraryUnloadOption.AtTermination End Function End Module
------------------ MFG Thomas NX 8.5.3.3 Teamcenter 8 Windows 7 64-bit Eine Antwort auf diesen Beitrag verfassen (mit Zitat/Zitat des Beitrags) IP |
dirk Mitglied
Beiträge: 164 Registriert: 16.11.2000
|
erstellt am: 29. Jan. 2015 12:03 <-- editieren / zitieren --> Unities abgeben: Nur für muellertz
Hallo, hier mit Abfrage der Layernummer: ist zwar rudimentär; eine Absicherung bei Fehleingabe fehlt noch. Option Strict Off Imports System Imports NXOpen
Module Module16 Sub Main() Dim theSession As Session = Session.GetSession() Dim workPart As Part = theSession.Parts.Work Dim displayPart As Part = theSession.Parts.Display Dim layer_to_delete As Integer layer_to_delete = InputBox("Eingabe der Layernummer:", "Layer") '&&&&& layer number to delete objects from ' Const layerToDelete As Integer = 256 If displayPart Is Nothing Then 'no part to work on Exit Sub End If Dim markId1 As Session.UndoMarkId markId1 = theSession.SetUndoMark(Session.MarkVisibility.Visible, "Delete") Dim notifyOnDelete1 As Boolean notifyOnDelete1 = theSession.Preferences.Modeling.NotifyOnDelete theSession.UpdateManager.ClearErrorList() Dim nErrs1 As Integer nErrs1 = theSession.UpdateManager.AddToDeleteList(workPart.Layers.GetAllObjectsOnLayer(layer_to_delete)) Dim nErrs2 As Integer nErrs2 = theSession.UpdateManager.DoUpdate(markId1) End Sub
Public Function GetUnloadOption(ByVal dummy As String) As Integer
'Unloads the image when the NX session terminates GetUnloadOption = NXOpen.Session.LibraryUnloadOption.AtTermination End Function End Module Eine Antwort auf diesen Beitrag verfassen (mit Zitat/Zitat des Beitrags) IP |
muellertz Mitglied Technischer Zeichner
Beiträge: 122 Registriert: 06.08.2010 NX 8.5.3.3 Teamcenter 8 Windows 7 64-bit
|
erstellt am: 29. Jan. 2015 13:26 <-- editieren / zitieren --> Unities abgeben:
Erstmal vielen Dank für die Hilfe, es funktioniert. Leider kann ich es wohl nicht benutzen, da jetzt auch wirklich alles an Objekten gelöscht wird. Soll auch heißen bei Layer 1 die gesamte Zeichnung mit gelöscht werden könnte. Naja muss ich wohl damit leben oder man passt hier sehr auf, was auf den jeweiligen Layer liegt. ------------------ MFG Thomas NX 8.5.3.3 Teamcenter 8 Windows 7 64-bit Eine Antwort auf diesen Beitrag verfassen (mit Zitat/Zitat des Beitrags) IP |
Grips Mitglied Techniker
Beiträge: 535 Registriert: 21.09.2004
|
erstellt am: 29. Jan. 2015 13:57 <-- editieren / zitieren --> Unities abgeben: Nur für muellertz
Zitat: Original erstellt von muellertz: Naja muss ich wohl damit leben oder man passt hier sehr auf, was auf den jeweiligen Layer liegt.
@thomas in NX haben Gruppen die Eigenschaft, dass sie sowohl einen Layer, Farbe, Strichstärke ... besitzen moved man nun die Gruppenelemente (Members) ohne selektieren der Gruppe in einen anderen Layer, bleibt die Gruppe im Ausgangslayer. Eventuell ist das dein Problem...habe mal ein GRIP Progr. geschrieben das solche Gruppen bereinigt. ------------------ mfg Grips Sysinfo: WXP WIN7, NX8 Eine Antwort auf diesen Beitrag verfassen (mit Zitat/Zitat des Beitrags) IP |
muellertz Mitglied Technischer Zeichner
Beiträge: 122 Registriert: 06.08.2010 NX 8.5.3.3 Teamcenter 8 Windows 7 64-bit
|
erstellt am: 04. Feb. 2015 15:03 <-- editieren / zitieren --> Unities abgeben:
Hallo Grips könntest du mir das Grip zukommen lassen per PN? Dann könnte ich das testen ob es sowas ähnliches ist, wie wir schon einmal hatten, jetzt aber nicht mehr geht. ------------------ MFG Thomas NX 8.5.3.3 Teamcenter 8 Windows 7 64-bit Eine Antwort auf diesen Beitrag verfassen (mit Zitat/Zitat des Beitrags) IP |
Grips Mitglied Techniker
Beiträge: 535 Registriert: 21.09.2004
|
erstellt am: 04. Feb. 2015 16:07 <-- editieren / zitieren --> Unities abgeben: Nur für muellertz
|
muellertz Mitglied Technischer Zeichner
Beiträge: 122 Registriert: 06.08.2010 NX 8.5.3.3 Teamcenter 8 Windows 7 64-bit
|
erstellt am: 04. Feb. 2015 16:25 <-- editieren / zitieren --> Unities abgeben:
Danke der upload hat funktioniert. Leider hat es nichts gebracht, ich habe immer noch über 2.000 Objekte auf dem Layer die ich nicht wegbekomme geschweige denn auswählen kann oder löschen kann. ------------------ MFG Thomas NX 8.5.3.3 Teamcenter 8 Windows 7 64-bit Eine Antwort auf diesen Beitrag verfassen (mit Zitat/Zitat des Beitrags) IP |
Grips Mitglied Techniker
Beiträge: 535 Registriert: 21.09.2004
|
erstellt am: 05. Feb. 2015 09:14 <-- editieren / zitieren --> Unities abgeben: Nur für muellertz
|
mseufert Moderator Freiberuflicher CAD/CAM Ingenieur
Beiträge: 2700 Registriert: 18.10.2005 HP Z420 WIN7 64 Win 10 UG NX6-2306 3D Printer Prusa MK2 S
|
erstellt am: 05. Feb. 2015 10:08 <-- editieren / zitieren --> Unities abgeben: Nur für muellertz
|
| Bauingenieur Schwerpunkt Tragwerksplanung (m/w/d) | Wir sind planting. Premium-Partner der Prozessindustrie. Wir unterstützen unsere Kunden sowohl in Projekten, in der betriebsnahen Planung als auch im technischen Consulting. Unsere Aufgaben sind anspruchsvoll, unser Leistungs- und Branchenspektrum breit: von der Idee bis zur Inbetriebnahme und darüber hinaus. Dafür suchen wir Verstärkung - kompetent und motiviert. Kaum mehr als einen Steinwurf entfernt von Emscher, Rhein-Herne-Kanal und Schalker Stadion haben wir unseren Sitz in Gelsenkirchen.... | Anzeige ansehen | Bauwesen |
|
Grips Mitglied Techniker
Beiträge: 535 Registriert: 21.09.2004
|
erstellt am: 05. Feb. 2015 10:17 <-- editieren / zitieren --> Unities abgeben: Nur für muellertz
Zitat: Original erstellt von mseufert: ... Part hochladen könnte helfen ...
Ja, mache eine Kopie vom Part und lösche alles runter was du findest und lade ihn mit den unsichtbaren Objekten hoch. Dann kann ich ihn mir ansehen! ------------------ mfg Grips Sysinfo: WXP WIN7, NX8 Eine Antwort auf diesen Beitrag verfassen (mit Zitat/Zitat des Beitrags) IP |