neue Folder LAYOUT MENU und MODULE dazu

This commit is contained in:
2025-04-14 16:56:58 +02:00
parent e6e1705f0d
commit 35f7b2d75e
935 changed files with 803964 additions and 0 deletions
+112
View File
@@ -0,0 +1,112 @@
;;; --------------------------------------------------------------------------;
;;; RPOLY.LSP
;;; Copyright (C) 1990 by Autodesk, Inc.
;;;
;;; Entwickelt von Kelvin R. Throop im Oktober 1985
;;;
;;; Basierend auf der technischen Beschreibung von
;;; Philip J. Davis , "Circulant Matrices", Wiley 1979.
;;;
;;; --------------------------------------------------------------------------;
;;; BESCHREIBUNG
;;;
;;; Verfeinerung von beliebigen Polygonen durch zyklisches
;;; Ersetzen der Scheitelpunkte durch die Kantenmittelpunkte.
;;; Wie durch ein Wunder werden dann die meisten Polygone frher
;;; oder sp„ter zu elliptisch konvexen Gebilden.
;;;
;;; Fehlerberprfung und Fehlerbehandlungsroutine
;;; hinzugefgt - April 1988
;;; Versionsnummer, Gummibandlinie, und die F„higkeit jeden Verfeinerungs-
;;; zyklus der Polylinie festzuhalten. Jeff Wilson 12. Juni 1990
;;;
;;; --------------------------------------------------------------------------;
(defun drawpoly (p / dp dl)
(setq dp p)
(setq dl (length p))
(command "plinie")
(repeat dl
(command (car dp))
(setq dp (cdr dp))
)
(command "s")
)
(defun myerror (s) ; Wenn ein Fehler (z.B. CTRL-C)
; w„hrend dieses Befehls auftritt
(if (/= s "Funktion abgebrochen")
(princ (strcat "\nFehler: " s))
)
(setvar "cmdecho" ocmd) ; "cmdecho" wiederherstellen
(setvar "blipmode" oblp) ; "blipmode" wiederherstellen
(setq *error* olderr) ; Fehlerroutine wiederherstellen
(princ)
)
(defun C:RPOLY (/ olderr ocmd oblp cycno pl p pvert cyc plast pn pe pc delpoly)
(princ "\nPolygonverfeinerung, Version 1.1 von Autodesk,Inc.")
(setq olderr *error*
*error* myerror)
(setq ocmd (getvar "cmdecho"))
(setq oblp (getvar "blipmode"))
(setvar "cmdecho" 0)
(setq cycno 0)
(setq pl nil)
(command "zurck" "mark")
(setq p1 (getpoint "\nErster Punkt: "))
(setq pl (cons p1 pl))
(while (setq p (getpoint p1 "\nN„chster Punkt: "))
(command "linie" p1 p "")
(setq p1 p)
(setq pl (cons p pl))
)
(command "zurck" "rck")
(setvar "blipmode" 0)
(setq pvert (length pl))
(if pl
(progn
(drawpoly pl)
(initget 6)
(while (setq cyc (getint "\nAnzahl Zyklen: "))
(initget "Ja Nein")
(setq delpoly
(getkword "Polygonform nach jedem Zyklus festhalten ? <J>/N: ")
)
(princ "Zyklen:")
(repeat cyc
(setq plast (nth (1- pvert) pl))
(setq pn nil)
(setq pe pl)
(repeat pvert
(setq pc (car pe))
(setq pe (cdr pe))
(setq pn (cons (list (/ (+ (car pc) (car plast)) 2)
(/ (+ (cadr pc) (cadr plast)) 2))
pn)
)
(setq plast pc)
)
(setq pl pn)
(setq cycno (1+ cycno))
(princ " ")
(princ cycno)
(if (cond
((= delpoly "Nein") t)
(t nil)
)
(command "l”schen" "l" "")
)
(drawpoly pn)
)
(initget 6)
)
)
)
(setvar "cmdecho" ocmd)
(setvar "blipmode" oblp)
(setq *error* olderr) ; Fehlerbehandlungsroutine wiederherstellen
(princ)
)