| | |
 | Gut zu wissen: Hilfreiche Tipps und Tricks aus der Praxis prägnant, und auf den Punkt gebracht für Autodesk Produkte |
| | |
 | Hannover Messe 2026 - Diese Lösungen prägen die Zukunft der Industrie: PNY präsentiert Anwendungen für KI, Edge-Computing und das Metaversum, eine Pressemitteilung
|
|
Autor
|
Thema: Zwischenkopie mit max + min Abstand (1369 mal gelesen)
|
fips Mitglied Lehrer
  
 Beiträge: 544 Registriert: 22.05.2001
|
erstellt am: 05. Mai. 2005 17:10 <-- editieren / zitieren --> Unities abgeben:         
Hallo, anbei die Datei cm.lsp. Die Quelle weiß ich nicht mehr. Ich habe sie lediglich ins Deutsche übersetzt. Die Lisp benutze ich vorwiegend um Objekte auf einer vorgegebenen Strecke bei gegebenem MINIMALEN Zwischenabstand zu plazieren z.B. Geländerstäbe mit Abstand kleiner 120 mm. Sie bietet aber auch die Funktion "teilen" und "messen". Ich würde nun gerne die Option ergänzen, Objekte auf einer vorgegebenen Strecke bei gegebenem MAXIMALEN Zwischenabstand zu plazieren. Ich habe den Rechengang in der lisp jedoch nicht durchschaut. Kann mir da jemand helfen? Gruß Fips ;(defun C:CM () (defun C:Zwischenkopie () (setq A nil) (setq OM (getvar "OSMODE")) (setvar "OSMODE" 33) (setq PNT1 (getpoint "\nzwischen (ersten Punkt zeigen): ")) (setq PNT2 (getpoint "\nund (zweiten Punkt zeigen): " PNT1))(terpri) (initget 1 "M E A") (prompt "\nArt der Zwischenkopie wählen: ") (setq CTYPE (getkword "\n(M)aximaler Abstand (E)xakter Abstand (A)nzahl der Kopien: ")) (if (= CTYPE "M") (setq SP (getdist "\nMaximaler Abstand zwischen den Objekten: "))) (if (= CTYPE "E") (setq SP (getdist "\nGenauer Abstand zwischen den Objekten: "))) (if (= CTYPE "A") (setq SP (getreal "\nAnzahl der Objekte: "))) (setq DIST (distance PNT1 PNT2)) (setq ANG (angle PNT1 PNT2)) (setq TEMP1 (/ DIST SP)) (setq TEMP2 (fix (/ DIST SP))) (setq INC1 SP) (setq INC2 (/ DIST (+ 1 (fix (/ DIST SP))))) (setq INC3 (/ DIST (- SP 1))) (if (= TEMP1 TEMP2) (setq INC INC1) (setq INC INC2)) (if (= CTYPE "E") (setq INC INC1) (setq INC INC)) (if (= CTYPE "A") (setq INC INC3) (setq INC INC)) (setq TMS (FIX (+ 0.00001 (/ DIST INC)))) (setvar "OSMODE" 0) (setq A (ssget)) (setq INCR 0) (repeat TMS (setq INCR (+ INCR INC)) (setq NEWPT (polar PNT1 ANG INCR)) (command "_copy" A "" PNT1 NEWPT) ) (setvar "OSMODE" OM) (setq A nil) );end zwischenkopie.lsp Eine Antwort auf diesen Beitrag verfassen (mit Zitat/Zitat des Beitrags) IP |
fips Mitglied Lehrer
  
 Beiträge: 544 Registriert: 22.05.2001 AutoCAD 2010, imos, Win XP im Novellnetz, Fachschule für Holztechnik
|
erstellt am: 06. Mai. 2005 11:41 <-- editieren / zitieren --> Unities abgeben:         
|
charlieBV Ehrenmitglied V.I.P. h.c. Bauzeichnerin

 Beiträge: 9319 Registriert: 28.08.2003
|
erstellt am: 06. Mai. 2005 11:48 <-- editieren / zitieren --> Unities abgeben:          Nur für fips
|
Werner-Maahs.de Mitglied CAD-Dozent + Konstrukteur + Autor
  
 Beiträge: 626 Registriert: 04.05.2005 Win XP AC 2005/6 AC 2013
|
erstellt am: 07. Mai. 2005 17:36 <-- editieren / zitieren --> Unities abgeben:          Nur für fips
Dein Problem hat mich interessiert. Hatte aber keine Lust ein anderes Tool zu modifizieren. Wenn es Dich interessiert meine Lisp-Datei habe ich als Datei angehangen. Gruß www.Werner-Maahs.de ------------------ WM [Diese Nachricht wurde von Werner-Maahs.de am 07. Mai. 2005 editiert.]
[Diese Nachricht wurde von Werner-Maahs.de am 07. Mai. 2005 editiert.] Eine Antwort auf diesen Beitrag verfassen (mit Zitat/Zitat des Beitrags) IP |
fips Mitglied Lehrer
  
 Beiträge: 544 Registriert: 22.05.2001
|
erstellt am: 11. Mai. 2005 01:03 <-- editieren / zitieren --> Unities abgeben:         
Hallo WM, vielen Dank für das Programm. Ich finde den Lösungsansatz interessant. Durch die Abfrage incl. der beiden Lösungsabgebote hat man noch Zeit nachzudenken ...(=> bringen mich mehr oder weniger Teile zum Ziel?? - hört sich vielleicht seltsam an, aber bei derartigen Einteilungsaufgaben mit Mindest- oder Höchstabständen ist bei Schülern durchaus ein kurzes Nachdenken angesagt!) Nachdem die Objekte plaziert sind kommt allerdings nochmals die Aufforderung zur Objektwahl - mache ich da was falsch? Außerdem wird der Objektfang auf Null gesetzt bzw. nicht restauriert ... Grüße Fips Eine Antwort auf diesen Beitrag verfassen (mit Zitat/Zitat des Beitrags) IP |