Hot News:

Mit Unterstützung durch:

  Foren auf CAD.de (alle Foren)
  PTC Creo Elements/Direct Modeling
  Kanten einer bestimmten Länge einfärben um die Auswahlfunktion F2 vorzubereiten

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 PTC CREO
Autor Thema:  Kanten einer bestimmten Länge einfärben um die Auswahlfunktion F2 vorzubereiten (1598 mal gelesen)
friedhelm at work
Mitglied
Techniker Aluminium Profile


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

Beiträge: 908
Registriert: 01.04.2003

Creo Elements Direct
/Drafting 17+20.3
ui classic-Tablett + Ribbon,
Modeling 17-20.0,.2,.4,.5
Lizenz auf USB-Netzwerkadapter
PE-Express 6+8
Win 10 Enterprise 64 @work
Win 10 Pro 64 @home
Notepad++,IrfanView,eDrawings,
....

erstellt am: 16. Mrz. 2023 07:34    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


Kantenauswahl_01.jpg


Anfrage.stp

 
Hallo zusammen
Es geht um eine Anfrage für ein Aluminiumprofil.
Das Model habe ich vereinfacht und als Step beigefügt, damit es jeder laden kann.
Aluprofile haben an den Aussenkanten Rundungen, die durch den Fertigungsprozess der Werkzeuge entstehen (Drahterosion).
Grössere Radien sind aber Willkommen weil sie den Materialfluss verbessern. 
Die gewünschte Aktion wäre also hier die Kanten mit einer Länge von annähernd 7mm mit einem Radius von 0.3mm und die von annähernd 9mm mit einem Radius von 0.1mm abzurunden.
Die Auswahl (Funktionstataste 2) bietet als weiterführendes Kriterium alleine 'Alles' und 'Farbe' an, alles andere ist wieder Auswahl per Klicken mit gedrückter Shifttaste.
Das Teil hat 72 Zähne, somit 144 Kanten von annähernd 7mm und 72 von annähernd 9mm.    
So, zur Frage.
Auf der Seite von Matthias, Highway45 gibt es ein Lisp welches ich schon verwende. http://osd.cad.de/lisp_3d_42.htm

Leider beschränkt sich die Auswahl der Kantenlänge nur auf 'kleiner als'.
Dadurch muss man das Lisp für jede zu wählende Kantenlänge zwei Mal durchführen um das Gewünschte zu erreichen und es auch jedes Mal neu starten da es sonst Fehler macht.
Start, lasse Rot, wähle Kanten < 9.1, in diesem Teil, Bestätigen grüner Haken. Wieder aus der Toolbox aufrufen.
Wähle Blau, wähle Kanten < 8.9, in diesem Teil, Bestätigen grüner Haken.
Jetzt kann man in Auswahl (Funktionstataste 2) bei den Kanten die Funktion 'Farbe' wählen und eine der roten 9mm Linien anklicken und den somit gewählten Kanten die gewünschte Rundung verpassen.

In Zeile 59 steht  (if (< istlang KLAENGE )
Habe das '<' schon in '>' geändert, dann werden die Kanten 'länger als' Wert gewählt.
In '=' geändert funktioniert nicht gut bis garnicht, vermute hier die Dezimalungenauigkeit als Grund.

Ist es möglich dem Lisp eine verbesserte Auswahlmöglichkeit zu geben?
Also Kantenlänge "von x - bis y"
Habe auch irgendwo gelesen, dass man in Lisp diese Dezimalungenauigkeit eliminieren kann ??
Ausserdem wäre es vieleicht gut, dass die Kantenfarben Sichtbarkeit angeschaltet würde, damit man auch das Resultat sieht.
Recordert:
set_pers_context "Toolbar-relative"
(SET_SHOW "1" :3DGEO_EDGE_COLOR :OFF)
(SET_SHOW "1" :3DGEO_EDGE_COLOR :ON)
Habe mir schon mal einen Button gemacht der funktioniert. Befehl:
(UI::UIC-SET-SHOW-MODE :3DGEO_EDGE_COLOR :TOGGLE)

Danke schon Mal im Voraus    

------------------
Gruss Friedhelm

[Diese Nachricht wurde von friedhelm at work am 16. Mrz. 2023 editiert.]

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

MiBr
Mitglied
Konstrukteur


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

Beiträge: 559
Registriert: 30.06.2015

HP Z440 Workstation 64GB
Modeling 20.1.2.0 (x64)
Drafting 20.1.2.0 (64x) klas. UI
Modell Manager 20.1.2.0
Ansys Workbeanch 22R2 Mechanicail Pro + FKM Inside

erstellt am: 16. Mrz. 2023 08:13    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 friedhelm at work 10 Unities + Antwort hilfreich


Kanten_zu_Rundung.lsp

 
Hallo Friedhelm,

ich habe mir zum verrunden bei solchen Problemen mal ein Tool gebastelt. Dies habe ich auch
aus dem genannten Tool von der OSD-Seite entwickelt.

in dem Tool kannst Du eine Referenzkante anwählen z.B. die 9mm Kante und anschließend umrahmst
Du einfache den Bereich des Bauteils an dem die Rundungen hinzugefügt werden sollen.

Wenn ich dich richtig verstehe ist es das was Du suchst, allerdings ohne Farbe oder so.
Anbei die Lisp 1:1 man kann diese aber sicherlich noch anpassen!

Gruße
Michael

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

MiBr
Mitglied
Konstrukteur


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

Beiträge: 559
Registriert: 30.06.2015

HP Z440 Workstation 64GB
Modeling 20.1.2.0 (x64)
Drafting 20.1.2.0 (64x) klas. UI
Modell Manager 20.1.2.0
Ansys Workbeanch 22R2 Mechanicail Pro + FKM Inside

erstellt am: 16. Mrz. 2023 12:38    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 friedhelm at work 10 Unities + Antwort hilfreich

Hallo nochmal,
Zitat:
In '=' geändert funktioniert nicht gut bis garnicht, vermute hier die Dezimalungenauigkeit als Grund.

Das denke ich auch du konntest es mit einer Toleranz evtl. so lösen:
Code:
(if (and (< (- istlang 0.0001) KLAENGE) (> (+ istlang 0.0001) KLAENGE))

Gruß Michael

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

Walter Geppert
Moderator
Frank und Frei




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

Beiträge: 2154
Registriert: 12.12.2000

Konstruktion von Sondermaschinen, Montageautomaten, Meß- und Prüfeinrichtungen, Vorrichtungen und Produktentwicklung mit Creo Elements/Direct Modeling 20.6, AdvancedDesign, Surfacing, Simulate, SolidPower, ModelManager auf
HP ZBook Fury 16 G9, Windows 10 Pro 64

erstellt am: 16. Mrz. 2023 13:49    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 friedhelm at work 10 Unities + Antwort hilfreich

Zitat:
Original erstellt von friedhelm at work:

In '=' geändert funktioniert nicht gut bis garnicht, vermute hier die Dezimalungenauigkeit als Grund.

Ist es möglich dem Lisp eine verbesserte Auswahlmöglichkeit zu geben?
Also Kantenlänge "von x - bis y"
Habe auch irgendwo gelesen, dass man in Lisp diese Dezimalungenauigkeit eliminieren kann ??



Code:
(sd-num-equal-p num1 num2 :resolution resolution)

Description:
    Checks if the two passed numbers are equal within the specified geometric resolution.

Parameters:

    num1 {NUMBER}
        The first number (integer of float) for the check.
    num2 {NUMBER}
        The second number (integer of float) for the check.
    :resolution {LONG-FLOAT [System-default-resolution]}
        The geometric resolution (or accuracy).

Return value:

    t - if the absolute difference between both numbers is less than resolution
    nil - otherwise



------------------
meine LISP-Makros sind mit vielen anderen aus diesem Forum auf osd.cad.de Disclaimer
Grüße aus Wien

Walter

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

MiBr
Mitglied
Konstrukteur


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

Beiträge: 559
Registriert: 30.06.2015

HP Z440 Workstation 64GB
Modeling 20.1.2.0 (x64)
Drafting 20.1.2.0 (64x) klas. UI
Modell Manager 20.1.2.0
Ansys Workbeanch 22R2 Mechanicail Pro + FKM Inside

erstellt am: 16. Mrz. 2023 14: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 Nur für friedhelm at work 10 Unities + Antwort hilfreich

Hallo,

das ist aus dem I-Kit! Damit könntest du das wahrscheinlich so mach (ungetestet Test):

Code:
(if (sd-num-equal-p istlang KLAENGE :resolution 0.1)

Gruß Michael

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: 2150
Registriert: 3.20.

● PE6+8@home
● W10 Pro Build19045.3803
● Drafting V20.1-6
● Modeling V20.1-6

erstellt am: 16. Mrz. 2023 20: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 Nur für friedhelm at work 10 Unities + Antwort hilfreich

Zitat:
Original erstellt von MiBr:
das ist aus dem I-Kit!

===>>> 🔗 sd-num-equal-p Wurde ja schon mehrfach genannt. Real Zahlen immer damit vergleichen. Intergerzahlen kann man mit '=' ver=en 😉

Bezüglich des Dialogs von Dir, Michael.

Performance technisch würde ich den sd-call-cmds nicht IN der Schleife machen, sondern danach. Also z.B.

  • IN der (dolist ...)  (when match .  (push eine-Kante die-Kanten))
  • NACH der dolist (sd-call-cmds (cmd  die-Kanten))

Damit würde ein body check dann z.b. nur einmal laufen.

Mag sein das das bei komplizierteren Aktionen mehr ausmacht. Aber man muss es sich auch einfach etwas angewöhnen beim lispeln.

------------------
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

MiBr
Mitglied
Konstrukteur


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

Beiträge: 559
Registriert: 30.06.2015

HP Z440 Workstation 64GB
Modeling 20.1.2.0 (x64)
Drafting 20.1.2.0 (64x) klas. UI
Modell Manager 20.1.2.0
Ansys Workbeanch 22R2 Mechanicail Pro + FKM Inside

erstellt am: 17. Mrz. 2023 11:11    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 friedhelm at work 10 Unities + Antwort hilfreich


Kanten_zu_Rundung.lsp

 
Hallo,

@Wolfgang
Habe es entsprechend geändert und am Rad von Friedhelm getestet. Bei 72 Zähnen geht das jetzt ca. 72x so schnell!
Das mal zur 'Performance' DANKE!
Zudem habe ich die LISP entrümpelt, da geht wahrscheinlich noch mehr, aber so kann ich es noch gut lesen.
Arbeite auch in diesem Fall lieber mit der wählbaren Toleranz± als mit 'sd-num-equal-p' aber das ist Ansichtssache.

@Friedhelm
Hast du die Lisp mal ausprobiert? Die Lisp müsste doch genau das machen was du wolltest, ohne den Umweg über die
die Kantenfarben und der F2-Auswahl, oder?

Gruß Michael

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

highway45
Moderator
Bastler mit Diplom




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

Beiträge: 6363
Registriert: 14.12.2004

SolidDesigner-20.5.0 + PhoenixPDM-11 + Solidworks-2023 + PE8 + Blender

erstellt am: 17. Mrz. 2023 12:07    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 friedhelm at work 10 Unities + Antwort hilfreich

Eigentlich gibt es im F2 Auswahlmenu diese Funktion schon fast.
Unter "Verfahren" ↓↓ "aufklappen" befindet sich "Geo-Regeln".

Allerdings können hier nur Flächen gewählt werden und keine Kanten.
Warum eigentlich ?

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

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

friedhelm at work
Mitglied
Techniker Aluminium Profile


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

Beiträge: 908
Registriert: 01.04.2003

Creo Elements Direct
/Drafting 17+20.3
ui classic-Tablett + Ribbon,
Modeling 17-20.0,.2,.4,.5
Lizenz auf USB-Netzwerkadapter
PE-Express 6+8
Win 10 Enterprise 64 @work
Win 10 Pro 64 @home
Notepad++,IrfanView,eDrawings,
....

erstellt am: 17. Mrz. 2023 13:31    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 Michael und alle anderen,
erst mal sorry dass ich so spät antworte, bin eben erst dazu gekommen zu probieren.
Bin seit gestern Morgen etwas gelebt worden  

Habe erst die erste Version und jetzt die verbesserte probiert.
Welch ein Unterschied in der Geschwindigkeit. Wow !
Zu deiner Frage nach der Farbe.
Ganz einfach weil ich nur das zur Verfügung hatte.
Da ich mit der Lisp Programmierung nicht klar komme muss ich mich damit begnügen was ich an Fundsachen bekommen kann. 
Tja und der Entstehungsgrund des Lisp war ja der gleiche.
https://ww3.cad.de/foren/ubb/Forum29/HTML/002274.shtml#000000

Dein Lisp ist natürlich viel besser.
Den einzigen Vorteil den der Umweg über die Farben bietet ist das man dann auch zB. Fasen usw. erstellen könnte.
Mal sehen ob sich jemand daran macht das Menu um die Verbesserungen zu erweitern.

Dann hat Matthias völlig recht, dem F2 Auswahlmenü fehlt die Auswahl nach Länge.
Eventuell auch da diese Genauigkeitsproblematik   Wer weiß.

Auf jeden Fall möchte ich mich herzlich für euren Einsatz bedanken.

Ps. out of topic. Bekomme die "Direct-Drafting-20-5-1-0-64bit" bei PTC nicht heruntergeladen.
Netzwerkprobleme, keine Berechtigung werden genannt. Läuft bis 0 Sek. und ist dann doch nicht komplett.
License-Server-Windows-20-5-0-0 und Direct-Modeling-20-5-1-0-64bit kamen sauber rüber.
Hat das noch jemand?

------------------
Gruss Friedhelm

[Diese Nachricht wurde von friedhelm at work am 17. Mrz. 2023 editiert.]

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

MiBr
Mitglied
Konstrukteur


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

Beiträge: 559
Registriert: 30.06.2015

HP Z440 Workstation 64GB
Modeling 20.1.2.0 (x64)
Drafting 20.1.2.0 (64x) klas. UI
Modell Manager 20.1.2.0
Ansys Workbeanch 22R2 Mechanicail Pro + FKM Inside

erstellt am: 17. Mrz. 2023 14:01    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 friedhelm at work 10 Unities + Antwort hilfreich

Hallo Friedhelm schön wenn es gefällt!

Code:
Den einzigen Vorteil den der Umweg über die Farben bietet ist das man dann auch zB. Fasen usw. erstellen könnte.
Mal sehen ob sich jemand daran macht das Menu um die Verbesserungen zu erweitern.

Du hast schon recht es wäre schön wenn man die Auswahl irgendwie weiterbenutzen könnte und damit anschließend Fase, Farben
und.. erstellen/ändern könnte. Bekomme ich leider nicht hin. Ob man die Auswahl irgendwie in die Zwischenablage bekommt
und anschließend wählen kann. Ich weiß auch nicht!
Was ich aber weiß ist das ich das gleich Tool für Fasen habe. Muss ich aber jetzt erstmal auf Stand bringen.
Anschleißend stelle ich es gern zur Verfügung.

Gruß Michael

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: 2150
Registriert: 3.20.

● PE6+8@home
● W10 Pro Build19045.3803
● Drafting V20.1-6
● Modeling V20.1-6

erstellt am: 17. Mrz. 2023 18:30    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 friedhelm at work 10 Unities + Antwort hilfreich

Zitat:
Original erstellt von MiBr:
Bei 72 Zähnen geht das jetzt ca. 72x so schnell! Das mal zur 'Performance' DANKE!
cool!! 😎  Kleiner Hinweis, grosse Wirkung .  und ich hatte noch gezögert ob ich es schreiben soll.
Zitat:
Original erstellt von MiBr:
wählbaren Toleranz ± mm als mit 'sd-num-equal-p' aber das ist Ansichtssache.

Das würde bis 10-6 ja letzlich der :resolution von sd-num-equal-p entsprechen. Also sind wir da gar nicht weit auseinander.

mir dünkt jetzt eine flexible utility Funktion für die LISP-Werkzeug Schreiber:

Code:

(defun sd-get-edges-by-length (len-min len-max &key all-in-objects (straight T) (circle nil) (arc nil))
  "return list of edge sel-items matching the given criteria"
  (let (found-edges ... )
    ;; usw
    found-edges; return list of edges
    )
  )

Wenn der Lispler dann mit Edge-length ± tolerance das UI gestaltet muss m/w/d die Funktion dann mit
Code:
(sd-get-edges-by-length (- edge-len tolerance) (+ edge-len tolerance) ...)
aufrufen.

@Michael im unteren Abschnitt könntest du einen Boolschen Expand Shrink einbauen "Blend" or "Chamfer"

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

Schönes Team-Work mal wieder  🙂 👍👍🙂👍🙃👍

------------------
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

MiBr
Mitglied
Konstrukteur


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

Beiträge: 559
Registriert: 30.06.2015

HP Z440 Workstation 64GB
Modeling 20.1.2.0 (x64)
Drafting 20.1.2.0 (64x) klas. UI
Modell Manager 20.1.2.0
Ansys Workbeanch 22R2 Mechanicail Pro + FKM Inside

erstellt am: 24. Mrz. 2023 13:53    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 friedhelm at work 10 Unities + Antwort hilfreich


Kanten_aendern.lsp

 
Hallo,
die Lisp kanten_aendern.lsp hat die Version 1.0 erreicht. Habe mal bei EINSPUNKTNULL angefangen, da ich Rundungen und
Fasen zusammen in ein Tool gebracht habe.

Wenn ihr noch Wünsche habt sagt Bescheid!

@Wolfgang
Das mit dem DEFUN sind mir zu wenig info´s, verstehe auch nicht welchen Vorteil ich gegenüber einer Lokalen-Funktion haben soll.

Mit dem Schrink habe ich ausprobiert. Mir gefiel es optisch aber so wie ich es hatte übersichtlicher in der Lisp und zudem
habe ich jetzt 4 Optionen, so das es mittels 'visible-buttons einfacher zu händeln ist (Meine Meinung).

Gruß Michael

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

MiBr
Mitglied
Konstrukteur


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

Beiträge: 559
Registriert: 30.06.2015

HP Z440 Workstation 64GB
Modeling 20.1.2.0 (x64)
Drafting 20.1.2.0 (64x) klas. UI
Modell Manager 20.1.2.0
Ansys Workbeanch 22R2 Mechanicail Pro + FKM Inside

erstellt am: 24. Mrz. 2023 14: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 Nur für friedhelm at work 10 Unities + Antwort hilfreich

Vielleicht noch ein kleiner Zusatz!

Wenn Man das Tool mit Auswahl Rundung starten möchte kann man das so machen:

Code:
(sd-set-persistent-data "all" "KANTEN_AENDERN" (list :tool_fase nil :tool_rund t) :subkey :values :store-flag t)  kanten_aendern

un mit Fase so:
Code:
(sd-set-persistent-data "all" "KANTEN_AENDERN" (list :tool_fase t :tool_rund nil) :subkey :values :store-flag t)  kanten_aendern

Brauchte ich da ich schon zwei Button in der Ribbonbar unter Konstruktion untergebracht habe!

Gruß Michael

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: 2150
Registriert: 3.20.

● PE6+8@home
● W10 Pro Build19045.3803
● Drafting V20.1-6
● Modeling V20.1-6

erstellt am: 24. Mrz. 2023 17: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 Nur für friedhelm at work 10 Unities + Antwort hilfreich

Zitat:
Original erstellt von MiBr:@Wolfgang
Das mit dem DEFUN sind mir zu wenig info´s, verstehe auch nicht welchen Vorteil ich gegenüber einer Lokalen-Funktion haben soll.[/i]

Alles klar, Michael,

als Softi mit Hardcore Entwickler Mentalität denke ich eben oft viel generischer was Tools/Utilities betrifft. Ich schaffe da oft kleine Features, die ich dann (über die Jahre) eben mehrfach wieder verwende.

Eine (Alu)_PROFILE_-Erkennung könnte dann z.B. darauf basieren, dass die akkumulierte Länge von 5% der Kanten eines Objekts deutlich größer ist als die akkumulierte Länge von 95% der Kanten eines Objekts. (Letztere wären alle Kanten eines Querschnitts durch das Profil).

In diesem Fall würde ich "sd-get-edges-by-length" mehrmals aufrufen.    Aber nur einmal von meiner Anwendung aus und auf der anderen Seite könnte sd-get-edges-by-length auch von deiner Seite aus aufgerufen werden. "Code-Sharing" 

Vorteil ist eben die Wiederverwendung (auch außerhalb der eigenen Firmenblase).


Ich benutze sd-defdialog für UI Generierung, UX Experience, Benutzerführung und so weiter. Die eigentlichen 'Arbeiter' sind dann eher (defun..)'s mit mehreren Parametern.

Wichtiger ist für mich: Modeling kann mit IKIT und Co weiterhelfen.    Da sehe ich bei anderen CAD Anwendungen nicht so detaillierte Möglichkeiten wie bei Modeling.

------------------
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

MiBr
Mitglied
Konstrukteur


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

Beiträge: 559
Registriert: 30.06.2015

HP Z440 Workstation 64GB
Modeling 20.1.2.0 (x64)
Drafting 20.1.2.0 (64x) klas. UI
Modell Manager 20.1.2.0
Ansys Workbeanch 22R2 Mechanicail Pro + FKM Inside

erstellt am: 27. Mrz. 2023 13: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 Nur für friedhelm at work 10 Unities + Antwort hilfreich

Hallo,

mir ist da noch eine Fehlermeldung erschienen! Wenn ich eine Kante wähle und anschließend
das Tool mit den 'Persistent-data...' für Fase startet, dann kommt eine Fehlermeldung!

Falls ihr das auch festellt löscht die Zeilen ':next-variable (if erst_flaeche ref_laenge ref_rund)'
in den ersten beiden Variablen!

Gruß Michael

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: 2150
Registriert: 3.20.

● PE6+8@home
● W10 Pro Build19045.3803
● Drafting V20.1-6
● Modeling V20.1-6

erstellt am: 27. Mrz. 2023 19:40    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 friedhelm at work 10 Unities + Antwort hilfreich

Zitat:
Original erstellt von MiBr:
Wenn Man das Tool mit Auswahl Rundung starten möchte kann man das so machen:
Code:
(sd-set-persistent-da...) kanten_aendern

und mit Fase so:
Code:
(sd-set-persistent-da..) kanten_aendern


Ähmm  öhmmm  ühh, nein .  so lieber nicht. 😔

Macht dir 2 sd-available-commands. Und die kann man dann in die Ribbon bars schieben, oder die MTB, oder..

Der eine mit dem Title "Kanten Verrunden" hat die Action

Code:
kanten_aendern :tool_rund

Der andere mit dem Title "Kanten als Fase" hat die Action
Code:
kanten_aendern :tool_fase

Den REST macht der dialog! Das ist seine Aufgabe.

Das mit dem sd-set-persistent-data an DER Stelle ist nicht die empfehlenswerte Vorgehensweise (siehe auch IKIT - concept pages (aber da gibt es viel zu lesen))

––––––––––––––––––––––––––––––––––––––––––––––––––––––––––––––

Und dann 'müssen'    wir mal über ➜➜ Expand Shrink schwätzen, wegen Lernkurve und so..  

––––––––––––––––––––––––––––––––––––––––––––––––––––––––––––––

Guter Dialog!!  👍

------------------
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

MiBr
Mitglied
Konstrukteur


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

Beiträge: 559
Registriert: 30.06.2015

HP Z440 Workstation 64GB
Modeling 20.1.2.0 (x64)
Drafting 20.1.2.0 (64x) klas. UI
Modell Manager 20.1.2.0
Ansys Workbeanch 22R2 Mechanicail Pro + FKM Inside

erstellt am: 28. Mrz. 2023 08:32    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 friedhelm at work 10 Unities + Antwort hilfreich

Hallo;

@Wolfgang
das mit dem :tool_xxxx kannte ich noch nicht, Danke! Hatte Stunden überlegt wie ich es
auf meine Button in der Ribbonbar bekomme und wenn´s auch gefuscht war hatte es erstmal
gefunzt. Aber das das so wie du beschrieben hast x-mal besser is da brauchen wir ja nicht
drüber sprechen.
Das mit dem Shrink hatte ich mir ausführlich angeschaut. Kam aber auf keine Lösung die
die zwei 'mutual-exclusion' so schön darstellt. Geht nicht will ich nicht sagen, aber
passt nicht zu diesem Thema.

@Friedhelm
Bei der Such nach weiteren Lösungen ist mir noch folgnende Seite aufgefallen. Komischerweise
bekomme ich das wie beschrieben nicht hin, ka!
https://ww3.cad.de/foren/ubb/Forum92/HTML/000070.shtml#000003

Gruß Michael

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: 2150
Registriert: 3.20.

● PE6+8@home
● W10 Pro Build19045.3803
● Drafting V20.1-6
● Modeling V20.1-6

erstellt am: 28. Mrz. 2023 14:11    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 friedhelm at work 10 Unities + Antwort hilfreich

Zitat:
Original erstellt von MiBr:
@Wolfgang
das mit dem :tool_xxxx kannte ich noch nicht, Danke! ...ja nicht drüber sprechen.


doch doch, sollten wir drüber sprechen, denn sonst ändert sich ja nichts (zum guten).

In der Regeln bastelt man sich die Action für ein sd-avail-cmd zusammen in dem man die Action aufzeichnet. Sich dann überlegt was vom aufgezeichneten wirklich benötigt wird und dann die Action einträgt. Hilfreich ist in dem Fall die einzelen Ausdrücke ("Tokens" . dingsbumsens) einzelen via cmd line einzugeben und zu beobachten was passiert und ob das richtig ist.

Aufgezeichnet:

Code:
Finished loading C:/temp/osd/cadde/Kanten_aendern.lsp
#S(GPNTWC X 149.288759 Y 74.811650999999998 CC 4.0812609999999996 GPORT "vport1")cancel
set_pers_context "Toolbox-Context" kanten_aendern :ref_laenge
:TOOL_FASE
:ref_laenge
set_pers_context "Toolbar-relative"
fit_vp "vport1"
:tool_rund
:ref_laenge
:ref_laenge
(gpntwc 22.376037 14.619653 4.632027 "vport1")
:flaechen_gr
5
:gew_kanten
:ueberers
complete
(gpntwc 130.939137 67.019443 4.632027 "vport1")

Dieses gross geschriebene ":TOOL_FASE" kommt aus den persistent data. Die klein geschriebenen Keywords, sind die, wenn man z.B nen Button klickt.
In die command line, stückle für stückle
Code:
kanten_aendern
der dialog öffnet sich.
Code:
:tool_rund
egal was vorher der Fall war: der Dialog wechselt in den Verrundungsmodus, enabled/disabled alle unterschiedlichen Variablen, macht sie sichtbar/unsichtbar..  füllt gff. ne variable aus. Das macht der Dialog aber ganz alleine. So als wenn du eben auf den Button "verrunden" gedrückt hättest.

Und damit haben wir schon alles, was als Action für ein sd-avail-cmd benötigt wird.

––––––––––––––––––––––––––––––––––––––––––––––––––––––––––––––

Zitat:
Original erstellt von MiBr:
@Friedhelm
Bei der Such nach weiteren Lösungen ist mir noch folgnende Seite aufgefallen. Komischerweise
bekomme ich das wie beschrieben nicht hin, ka!
Thema Kanten wählen vom 21. Mai. 2003

Das passt eigentlich schon sehr gut hierin. Letztlich wurde dort eine Art 'Input-Tool' gebaut, also schon so ein mehr generischer Anzatz, wie ich ihn weiter oben auch schon mal angeregt hatte. Allerdings ist das Beispiel nicht ganz vollständig IMHO und mit einer sich rekursive aufrufenden Funktion etwas...  over designed.  --- ich mag den nicht ganz 20 jahre alten Thread jetzt aber auch nicht reanimieren.

––––––––––––––––––––––––––––––––––––––––––––––––––––––––––––––

Jetzt muss ich erstmal gucken was du mit den 42 variablen im Detail treibst..  ( büschen Zeit vergeh... )

------------------
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

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: 2150
Registriert: 3.20.

● PE6+8@home
● W10 Pro Build19045.3803
● Drafting V20.1-6
● Modeling V20.1-6

erstellt am: 28. Mrz. 2023 14:34    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 friedhelm at work 10 Unities + Antwort hilfreich


Kanten_aendern.lsp

 
Zitat:
Original erstellt von MiBr:
mir ist da noch eine Fehlermeldung erschienen!  ':next-variable (if erst_flaeche ref_laenge ref_rund)'
in den ersten beiden Variablen!


"eine Fehlermeldung"    

:next-variable erwartet als return value ein SYMBOL. Das hast du an einige Stellen richig gemacht.
Aber da wo du das mit einem (if .. ) kombiniert hast nicht. Da ist der Return ggf ein sel-item, wie du an der Fehlermeldung erkennen konntest.

Also richtig wäre

Code:
:next-variable (if erst_flaeche 'ref_laenge 'ref_rund)

ich werde (nachher) eine neue Version zur Verfügung stellen. Muss aber noch gucken das ich jetzt auf die Schnelle nix kaputt gemacht habe.  

[edit]neue Version V1.01, da es nur kleine Ergänzungen, Fehlerbehebungen sind.[edit]

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

[Diese Nachricht wurde von der_Wolfgang am 28. Mrz. 2023 editiert.]

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

MiBr
Mitglied
Konstrukteur


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

Beiträge: 559
Registriert: 30.06.2015

HP Z440 Workstation 64GB
Modeling 20.1.2.0 (x64)
Drafting 20.1.2.0 (64x) klas. UI
Modell Manager 20.1.2.0
Ansys Workbeanch 22R2 Mechanicail Pro + FKM Inside

erstellt am: 29. Mrz. 2023 08:09    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 friedhelm at work 10 Unities + Antwort hilfreich

Hallo,
Zitat:
neue Version V1.01, da es nur kleine Ergänzungen, Fehlerbehebungen sind

Ist ja schon mal gut das es nicht ein V2.0 werden musste 

Danke für die Verbesserungen und die Hinweise. Ich werde die Lisp nochmal um bearbeiten da
mir dein Vorschlag mit dem 'display-only' gut gefällt. Würde hier aber auch gerne die gemätschten
Kanten bzw. Flächen anzeigen lassen. Dazu müsste ich aber die 'do-list' umverfrachten.

Überings, das mit den 'tool_rund :fase' bzw. 'tool_rund :fase' funzt nur wenn man die
' ersistent-data-storage t' entfernt.

Schön auch dein Einfall mit den ':title in den beiden Push-action!

Für die Änderungen brauche ich leider ein wenig Zeit!
Gruß Michael

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: 2150
Registriert: 3.20.

● PE6+8@home
● W10 Pro Build19045.3803
● Drafting V20.1-6
● Modeling V20.1-6

erstellt am: 29. Mrz. 2023 19:45    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 friedhelm at work 10 Unities + Antwort hilfreich

Zitat:
Original erstellt von MiBr:
Ist ja schon mal gut das es nicht ein V2.0 werden musste
kommt noch kommt noch 
Zitat:
Danke für die Verbesserungen und die Hinweise.
an die Mit(l)es(s)er: hier und da habe ich nur Kommentar-Zeilen spendiert in der V1.01. So als nicht umgesetzte Anregung.
Zitat:
auch gerne die gemätschten Kanten bzw. Flächen anzeigen lassen
das kann über nen select modus machen.. muss ich aber auch erst raussuchen.
Zitat:
Für die Änderungen brauche ich leider ein wenig Zeit!
Hätte gedacht wir machen zuerst nen ordentlichen expand shrink, bzw derer zwei. Okay ich halte die Füßschen still.

------------------
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

MiBr
Mitglied
Konstrukteur


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

Beiträge: 559
Registriert: 30.06.2015

HP Z440 Workstation 64GB
Modeling 20.1.2.0 (x64)
Drafting 20.1.2.0 (64x) klas. UI
Modell Manager 20.1.2.0
Ansys Workbeanch 22R2 Mechanicail Pro + FKM Inside

erstellt am: 30. Mrz. 2023 09:26    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 friedhelm at work 10 Unities + Antwort hilfreich


Kanten_aendern.lsp

 
Hallo,

ich habe da noch mal nee v1.02 raus gemacht.
Neue ist das die Info wieviele Kanten/Flächen erstellt/geändert worden sind nicht mehr
in einem Hinweißfenster ausgegeben wird.
Dafür gibt das Tool die Info im Vorfeld in einem Fenster aus. Das hat den Vorteil, dass
man den Tol-Wert anpassen kann um alle Kanten/Flächen zu bekommen bzw. welche auszuschleißen.
Meist weiß ich wieviele ich benötige! (Getriebebauer!!!)
Für diese Änderung habe ich meine ersten DEFUN´s geschrieben (Schulter klopf)!

Das mit dem Visible-Buttons habe ich auch noch mal überarbeitet, um einen einfacheren
Zugang zum Shrinken zu finden!

Den Hinweiß mit ;; effektiver wäre ;; (setq gew_rund nil ... empfinde ich nicht so
leserlich. Liegt aber an mir!

Und das mit den Änderungen 'Index' bekomme ich nicht hin!
;; hint: change 1-2-3 index to :change :delete :colouring for better code readability

Gruß Michael

P.S. Just in Time musste ich gerade nee FEA erstellen und brauchte die Zaehnezahl vom Stirnrad.
Nach dem dritten mal Zählen und flascher Anzahl von Zähen viel mir das Tool ein! Super!

[Diese Nachricht wurde von MiBr am 30. Mrz. 2023 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: 2150
Registriert: 3.20.

● PE6+8@home
● W10 Pro Build19045.3803
● Drafting V20.1-6
● Modeling V20.1-6

erstellt am: 30. Mrz. 2023 19:48    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 friedhelm at work 10 Unities + Antwort hilfreich

Zitat:
Original erstellt von MiBr:
Für diese Änderung habe ich meine ersten DEFUN´s geschrieben (Schulter klopf)!]
Drauf hau!
Zitat:
Original erstellt von MiBr:
brauchte die Zaehnezahl vom Stirnrad...... Nach dem dritten mal Zählen und flascher Anzahl von Zähnen...

Typischer weise hätte ich 32 Zähne.  --  falls dir das gerade weiterhilft.. 

------------------
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

MiBr
Mitglied
Konstrukteur


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

Beiträge: 559
Registriert: 30.06.2015

HP Z440 Workstation 64GB
Modeling 20.1.2.0 (x64)
Drafting 20.1.2.0 (64x) klas. UI
Modell Manager 20.1.2.0
Ansys Workbeanch 22R2 Mechanicail Pro + FKM Inside

erstellt am: 05. Apr. 2023 08:27    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 friedhelm at work 10 Unities + Antwort hilfreich


Kanten_waehlen.lsp

 
Hallo nochmal,

ich habe nochmal Versucht das mir die gewählten Kanten von der Lisp übergeben werden und ich anschließend
im Modeling die Moglichkeit habe diese Kanten für weitere Aktionen zu nutzen: Verundungen, Fasen , Färben
und weiß was auch immer.
Dies kann man mit einem 'sd-put-buffer' meiner Meinung nach lösen. Ich bekomme dies aber nur hin wenn ich
dies mittels 'ok-action' und 'defun' gestalte, siehe Anhang.
Problem dabei ist, dass ich eine Variable erstelle die nicht über 'let' oder definiert ist.
Diese packe ich irgendwo hin (vermutet ins Package :mibr), rufe diese auf und weiß nicht genau was ich da
mache!

Also die Frage: Ist das Problematisch bzw. oder kann man das so machen?  Wenn nein, Wie dann?

Gruß Michael

[Diese Nachricht wurde von MiBr am 05. Apr. 2023 editiert.]

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

MiBr
Mitglied
Konstrukteur


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

Beiträge: 559
Registriert: 30.06.2015

HP Z440 Workstation 64GB
Modeling 20.1.2.0 (x64)
Drafting 20.1.2.0 (64x) klas. UI
Modell Manager 20.1.2.0
Ansys Workbeanch 22R2 Mechanicail Pro + FKM Inside

erstellt am: 23. Jan. 2024 12:51    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 friedhelm at work 10 Unities + Antwort hilfreich


gleiche_kanten_flaechen_multi.lsp

 
Hallo,

ich habe das Tool noch erweitert und benutze es ständig!

Mit dem Tool ist es jetzt möglich ein Anzahl von gleichen Flächen/Kanten/Teilen und Baugruppen komfortabel mit wenigen
Klicks zu selektieren.

Bei Flächen/Kanten nach gleicher Größe

Hier müssen Bedingungen erfüllt sein:
- Kanten/Flächen sind in einem Teil
- Kantenlänge weicht max. 0.001 mm von der Vorauswahl ab (Zeile 82)
- Flächengröße weicht max. 0.01 mm² von der Vorauswahl ab (Zeile 58)

Falls man hierbei feststellt, das einige Flächen/Kanten nicht gewählt werden, liegt das an Ungenauigkeiten des Modells,
die sich außerhalb der Toleranzbereichs 0.001/0.01 bewegen.

Ich habe die Lisp so programmiert, dass ein Mehrfachauswahl möglich ist. Daraus ergibt sich aber, das eine hohe Anzahl
von Referenzflächen/-kanten ausgewählt werden können. Und diese führen dann zu langen Rechenzeiten!
Naja das dauert dann schon mal nee Zeit. Falls Ihr damit Probleme habt sagt Bescheid, dann beschränke ich dies auch noch!

Bei Teile/Baupruppen nach Exemplare

- Hier müssen die Teile/Baugruppen in der gleichen Baugruppe sein


Das Tool habe ich hier sehr lange getestet bzw. testen lassen und muss sagen das es mir die Arbeit sehr erleichter!
Gerade Teile mit vielen Kanten/Flächen wie z.B. Stirnräder usw.. Oder auch wenn ich einen Satz Schrauben verschieben
möchte, habe ich die Exemplare schnell samt U-Scheibe am Haken!

Ich habe mir einen Button gemacht und man muss sich ein wenig ans Händling gewöhnen, aber dann ...!
Probiert mal aus!

Gruß Michael

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: 2150
Registriert: 3.20.

● PE6+8@home
● W10 Pro Build19045.3803
● Drafting V20.1-6
● Modeling V20.1-6

erstellt am: 23. Jan. 2024 16:26    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 friedhelm at work 10 Unities + Antwort hilfreich

1)
Ich glaube/dachte erst 'uns' fehlen die beiden Funktionen mibr::suche_die_flaechen und mibr::suche_die_kanten.
Die sind in der Datei "Kanten_aendern.lsp" enthalten. @all also beide lisp files laden!

Es ist nicht nötig beim Funktionsaufruf das 'mibr::'  package hin zu schreiben. Das ist ja dein in-package.

2a) Zeile 70..71 .  mibr::suche_die_flaechen liefert eine Liste von sel-items zurück, welche du mit aufsammlen möchtest. Muss man nicht in einer dolist schleife machen:

Code:
(setq gewaehlte_ka_fl_prt_bg (nconc gewaehlte_ka_fl_prt_bg (suche_die_flaechen... )))

2b) dito Zeile 94..95

3) Warum nutzt du oli::is-edge-p und oli::is-face-p?

Es gibt sd-edge-p  und sd-face-p ganz offiziell. sd-face / sd-edge sind (dokumentierte) lisp Strukturen. Solche haben (immer) eine '...-p'  Funktion zum testen.

4) Versuche sowas:

Code:
(sd-call-cmds (get_vol_prop :for_face groesse :area))

nicht innerhalb von 5..7 Zeilen code 3 mal mit den selben parametern aufzurufen. Das geht in die Performance.
Code:
(setq this-area  (sd-call-cmds (get_vol_prop :for_face groesse :area))) ; einmal

5) Flächenvergleich , ebenso KantenLängen Vergleich

Code:
(lambda(p vs) (and (< (- p 0.01) vs) (> (+ p 0.01) vs)))

Code:
(lambda(a1 a2) (< (abs (- a1 a2)) 0.01))
ist das selbe, oder? 😉

Das es dir egal ist, ob die Fläche 10*40mm² oder 20*20mm² ist irritiert mich etwas, aber du weisst was du tust.

6) ich hätte vielleicht immer mit einer päärchen Liste gearbeitet; nicht mit einer einfachen sel-item Liste

Code:

;; jede Kante bekommt die Länge dazu:
(setq redu_auswahl_ka (mapcar '(lambda (a-edge) (list a-edge (or (sd-call-cmds (measure_dist :edge_length a-edge))0.0))) auswahl_ka)) ;; 0.0 als fallback, zumindest ne Zahl!
;; die mit selber länge aussortieren:
(setq redu_auswahl_ka (remove-duplicates redu_auswahl_ka :test #'(lambda(edge1 edge2) (< (abs (- (cadr edge1) (cadr edge2))) 0.001)) :key #'cadr))
...
; Gleiche Kanten im Teil suchen und hinzufügen
(dolist (item_ka redu_auswahl_ka)
  (setf ref_ka_fl (cadr item_ka))  ;; (setf edge-len-required ...)
  (nconc gewaehlte_ka_fl_prt_bg (suche_die_kanten ref_ka_fl alle_ka 0.001))
  )

Bedenke das hier in suche_die_kanten erneut für jede gewünschte länge für Alle Kanten des Teils wieder ein measure edge length ausgeführt wird.
Ich würde für alle_ka den selben Ansatz wählen wie für redu_auswahl_ka (also liste aus sel-item  + length).  Aber das riecht dann schon nach V2.0 ;-)

Entsprechend dann sel-item + area für die Flächen.

Zitat:
Und diese führen dann zu langen Rechenzeiten!
Darum bin ich auf die Performance 'los'. Trace mal measure_dist/get_vol_prop ..  das wird zu häufig aufgerufen!

Grobe Marschrichtung: für jede edge/face, die du in die Hand nimmst, den Measure nur EINMAL ausführen.

7) Zeilen 105 bis 118 und Zeilen 121 bis 134 sehen mir SO ähnlich aus, das ich da wohl eine locale function draus gemacht hätte.
Ein Aufruf mit auswahl_prt als Parameter und ein zweiter Aufruf mit auswahl_bg als Parameter

┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈

Aber das ist jetzt konstruktive Kritik auf hohem Niveau!  👍 👍 👍

------------------
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

MiBr
Mitglied
Konstrukteur


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

Beiträge: 559
Registriert: 30.06.2015

HP Z440 Workstation 64GB
Modeling 20.1.2.0 (x64)
Drafting 20.1.2.0 (64x) klas. UI
Modell Manager 20.1.2.0
Ansys Workbeanch 22R2 Mechanicail Pro + FKM Inside

erstellt am: 24. Jan. 2024 16: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 Nur für friedhelm at work 10 Unities + Antwort hilfreich


gleiche_kanten_flaechen_multiv1.01.lsp

 
Hallo Wolfgang,

Zu Punkt 1 - geändert

Zu Punkt 2 - geändert

Zu Punkt 3- Habe es erst mit sd-edge-p und sd-face-p versucht. Die Befehle funktionieren irgendwie nicht und ich bin dann auf is-... gestoßen und die funzen

Zu Punkt 4 - Da muss ich noch etwas lääänger über die Umsetzung nachdenken ... hmmhmm, grübel, grübel , .....

Zu Punkt 5 - War sooo stolz auf mein lambda ... Und ja das mit gleich großen Flächen kommt schon mal vor, ist aber für mich i.O.!

Zu Punkt 6 - Siehe Punkt 4

Zu Punkt 7 - Hatte ich auch drüber nachgedacht bin dann aber zum Schluß gekommen, dass ich es so besser lesen kann als Lisp-Anfänger

Zu den drei Daumen und dem Niveau - Das verstehe ich mal als Kompliment und sage: Vielen Dank für die Blumen!!!

Gruß Michael

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

MiBr
Mitglied
Konstrukteur


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

Beiträge: 559
Registriert: 30.06.2015

HP Z440 Workstation 64GB
Modeling 20.1.2.0 (x64)
Drafting 20.1.2.0 (64x) klas. UI
Modell Manager 20.1.2.0
Ansys Workbeanch 22R2 Mechanicail Pro + FKM Inside

erstellt am: 25. Jan. 2024 12: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 friedhelm at work 10 Unities + Antwort hilfreich

Hallo,

ich vermisse im Tool noch ein Feedback wie viele Elemente bzw. Flächen, Teile ... er gefunden/gewählt hat.
Allerdings möchte ich keine schnödes ‚Display‘ oder 'display-Warnung' einsetzen, dies müsste ich ja immer schließen.

Eigentlich müsste kurz am Cursor die Anzahl stehen, sowie wenn man auf eine Kante steht mit dem Cursor die Länge angezeigt wird.
Oder manchmal geht unten rechts ein Infofenster auf, dass automatisch schlöießt.
Oder unten in der Statusbar eine extra Anzeigefeld.
Oder ...
Ich habe nichts gefunden wie ich das machen kann!
Hat jemand eine Idee?

Gruß Michael

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: 2150
Registriert: 3.20.

● PE6+8@home
● W10 Pro Build19045.3803
● Drafting V20.1-6
● Modeling V20.1-6

erstellt am: 25. Jan. 2024 20:16    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 friedhelm at work 10 Unities + Antwort hilfreich

Zitat:
Original erstellt von MiBr:
Oder manchmal geht unten rechts ein Infofenster auf, dass automatisch schließt.

Du suchst wohl ==>> sd-display-alert, ggf. mit :icon :info. Nutze ich mittlerweile auch gerne, weil man es nicht 'wegklicken' muss.

Test-Test-test:

Code:
(oli::sd-display-alert "IKIT Funktion gefunden!" :icon :info :auto-close-time 42)

------------------
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

MiBr
Mitglied
Konstrukteur


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

Beiträge: 559
Registriert: 30.06.2015

HP Z440 Workstation 64GB
Modeling 20.1.2.0 (x64)
Drafting 20.1.2.0 (64x) klas. UI
Modell Manager 20.1.2.0
Ansys Workbeanch 22R2 Mechanicail Pro + FKM Inside

erstellt am: 26. Jan. 2024 06: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 friedhelm at work 10 Unities + Antwort hilfreich


gleiche_kanten_flaechen_multiv1.01.lsp

 
Perfekt, ich weiß garnicht wie ich den Befehl übersehen konnte! 

Danke und Gruß Michael

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

MiBr
Mitglied
Konstrukteur


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

Beiträge: 559
Registriert: 30.06.2015

HP Z440 Workstation 64GB
Modeling 20.1.2.0 (x64)
Drafting 20.1.2.0 (64x) klas. UI
Modell Manager 20.1.2.0
Ansys Workbeanch 22R2 Mechanicail Pro + FKM Inside

erstellt am: 30. Jan. 2024 12:25    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 friedhelm at work 10 Unities + Antwort hilfreich


gleiche_kanten_flaechen_multiv1.01.lsp

 
Hallo,

ich habe noch mal weiter dran gefeilt!

Punkt 1+5
auch in den 'defun' den Vergleich geändert '(< (abs (- istgross r_flaeche)) tol_qmm)'

Punkt 4
Da konnte ich aus zweimal '(sd-call-cmds (get_vol_prop :for_face groesse :area))' einmal machen

Punkt 7
War total einfach zu ändern. Die Baugruppen und Teile werden in eine Liste gesammelt, somit
entfällt ein Block.

Punkt 6 Hier hänge ich total und erkenne ich den Sinn nicht!

So dann hoffe ich mal das dies schon etwas mehr Preformt!!!

Gruß Michael

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)2024 CAD.de | Impressum | Datenschutz