;Sinuslinie
;Hans Krissler
;07153990172@t-online.de
;im Juni 01
(defun c:sin () ;sin.lsp
(setq i 100) ;Anzahl Schritte
(setq k 0) ;Laufvariable für Schritte
(setq p1 (getpoint "\nStart: "))
(setq p2 (getpoint p1 "\nEnde: "))
(command "bks" "s" p1) ;BKS-Ursprung in p1 legen
(command "bks" "n" "z" p1 p2) ;BKS ausrichten p1 -> p2
(setq L (sqrt ;L Länge der sin-Kurve, entspricht 2Pi
(abs (+
(* (- (car p2) (car p1)) (- (car p2) (car p1)))
(* (- (cadr p2) (cadr p1)) (- (cadr p2) (cadr p1)))
)
)
)
)
(setq delta (/ L i)) ;Schrittweite
(setq e (/ L (* 2 pi))) ;Elongation Ratio 2pi zu 1
(command "_pline")
;Schleife für alle Schritte
(while (<= k i)
(setq x (* k delta))
(setq y (* e (sin (* k (/ pi 50)))))
(setq p (list x y))
(command p)
(setq k (+ 1 k)) ;Schleifenerhöhen
)
(command "" "bks" "") ;zurück zum Bks-Welt-Koo-System
)
habe mal was ähnliches selbstgestrickt
mfg Hans
Eine Antwort auf diesen Beitrag verfassen (mit Zitat/Zitat des Beitrags) IP