Hot News:

Mit Unterstützung durch:

  Foren auf CAD.de (alle Foren)
  PTC Creo Elements/Programmierung
  Exemplare zählen ohne Behälter

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:  Exemplare zählen ohne Behälter (1420 / mal gelesen)
StephanD
Mitglied
Ingenieur


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

Beiträge: 121
Registriert: 10.01.2003

Modeling Version 20.1

erstellt am: 28. Mrz. 2018 12:35    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,

es gibt ja auf Lisp 3D 17 die Lisp-Datei (Exemplaranzeige.lsp) zum zählen und anzeigen der Exemplare innerhalb einer definierten Baugruppe.

Es werden alle Exemplare angezeigt. Ich benötige aber eine Funktion die mir nur die Exemplare, die nicht in einem Behälter sind, anzeigt und zählt.

Gibt es dazu etwas passendes oder hat jemand einen Programmierhinweis?

Vielen Dank.

Grüße
Stephan


[Diese Nachricht wurde von StephanD am 28. Mrz. 2018 editiert.]

[Diese Nachricht wurde von StephanD am 28. Mrz. 2018 editiert.]

[Diese Nachricht wurde von StephanD am 28. Mrz. 2018 editiert.]

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

der_Wolfgang
Ehrenmitglied V.I.P. h.c.
Tastenhauer


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

Beiträge: 2017
Registriert: 3.20.

● PE60+80@home
● W10 Pro Build19044.2364
● Drafting V17~V20.5.1
● Modeling V17~V20.5.1

erstellt am: 28. Mrz. 2018 14:56    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 StephanD 10 Unities + Antwort hilfreich

Hallo Stephan,
Zitat:
Original erstellt von StephanD:Ich benötige aber eine Funktion die mir nur die Exemplare, die nicht in einem Behälter sind, anzeigt und zählt.

Gibt es dazu etwas passendes



Das es da etwas passendes gaebe bezweifle ich, das ist schon eine spezielle Anforderung.

Du koenntest bei den aufgesammelten Exemplaren mit zwei IKIT funktionen pruefen ob das Exemplar in einem Behaelter ist:

Code:
(sd-inq-container-p (sd-inq-parent-obj a-item))

Das geht halbwegs..
aber bei /ass->container->ass->subass->part wirds schon kniffliger.

erste Idee:
selektiere alle BAUGRUPPEN (dabei container rausfiltern) innerhalb der Quellbaugruppe. Durch die Liste dieser Baugruppen rennst Du dann x-mal mit dem Ansatz von Exemplaranzeige.lsp.

-------------------------------------

Zitat:
es gibt ja auf http://osd.cad.de/lisp_3d_17.htm die Lisp-Datei..
vorab: die URL ist dir etwas misglueckt:
falsch ist:
{URL=http://INTERNETADRESSEHIER}http://osd.cad.de/lisp_3d_17.htm{/URL}
richtig waere:
{URL=http://osd.cad.de/lisp_3d_17.htm}Lisp 3D 17{/URL}

natuerlich mit eckigen Klammern, statt der geschweiften

------------------
Firefox ESRJava Forum Stuttgart JUGS ● OSD Hilfeseite (de) / help page (en)NotePad++BuFDi

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

StephanD
Mitglied
Ingenieur


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

Beiträge: 121
Registriert: 10.01.2003

Modeling Version 20.1

erstellt am: 28. Mrz. 2018 15:54    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 Wolfgang,

danke für den Ansatz. In diese Richtung habe ich auch schon mal gedacht, aber da ich nicht so fit beim Programmieren bin, wollte ich zuerst mal fragen. Das scheint mir kompliziert zu werden.

Ich werde mal versuchen das umzusetzen.

Grüße
Stephan

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

lix b
Mitglied
Konstrukteur, CAD-Admin


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

Beiträge: 279
Registriert: 03.10.2014

Creo Elements / Direct Modeling 20.2
Creo Elements / Direct Model Manager 20.2
Creo 5.0 Simulate
<P>Notepad++
Win 7

erstellt am: 29. Mrz. 2018 08:15    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 StephanD 10 Unities + Antwort hilfreich

Mit dieser Funktion kannst du für jedes Objekt prüfen, ob es sich in einem Behälter befindet:

Code:
(behaelterobjekt-pruefen (object)
(let (returnwert pfad)
(progn
(setf returnwert nil)
(setf pfad object)
(loop
(when (equal (sd-inq-parent-obj pfad) nil)
(return) ;; Ausstieg wenn im Root oder der Kontext-BG angelangt
)
(if (sd-inq-container-p pfad)
(progn
(setf returnwert t)
(return) ;; Ausstieg wenn ein Behaelter im Pfad gefunden
)
(setf pfad (sd-inq-parent-obj pfad))
)
)
returnwert
)
)
)

Das Ganze dann in Verbindung mit remove-if

Code:
(setf exlist (remove-if #'(lambda (x) (behaelterobjekt-pruefen x)) exlist))

liefert dir das gewünschte Ergebnis.

------------------
Viele Grüße
Felix

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

StephanD
Mitglied
Ingenieur


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

Beiträge: 121
Registriert: 10.01.2003

Modeling Version 20.1

erstellt am: 29. Mrz. 2018 12:59    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 Felix,

dein Ansatz ist super. Die ersten Versuche sind schon erfolgreich. Jetzt muss ich noch das ganze hübsch und bedienerfreundlich machen und prüfen.

Grüße
Stephan

[Diese Nachricht wurde von StephanD am 29. Mrz. 2018 editiert.]

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

StephanD
Mitglied
Ingenieur


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

Beiträge: 121
Registriert: 10.01.2003

Modeling Version 20.1

erstellt am: 05. Jun. 2018 12:14    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


exemplaranzeige_Anzahl.lsp.txt

 
Hallo,

hier nun meine Lösung für mein angefragtes Problem.
Damit ist es möglich die Anzahl bestimmter Teile in definierten Baugruppen zu ermitteln. Es wird die Anzahl innerhalb und außerhalb von Behältern angezeigt.
Auf Wunsch können die gefundenen Teile eingeblendet werden.

Das Grundgerüst für dieses Makro habe ich aus http://osd.cad.de/downloads/exemplaranzeige.lsp bzw. http://osd.cad.de/lisp_3d_17.htm

Viel Spaß beim Testen und Verwenden.

Stephan

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