Hallo,
habe da ein Priblem mit einem Lisp-Programm und nicht die rechte Ahnung davon.
Für Hilfe wäre ich Dankbar!!!
Also folgendes:
Die Variable #_barva u. #_tlcary soll beim erstellen einer Linie diese auf Farbe u. Lienenstärke "vonLayer" gesetzt werden. Kann aber nur Zahlen für die Variablen einsetzen.
Gruß, Burschii
(defun init ( )
old_error *error* ; save current error function
(chyba) ; osetreni chyb
(setvar "cmdecho" 0) ; nezobrazuje vypis
;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;; Inicializace promenych
(setq textmodsiz (getvar "textsize")) ; ulozeni velikosti textu (text, dtext)
(setq uchopmod (getvar "osmode")) ; ulozeni hodnoty syst. promene (uchop)
(setq nast_hladiny (getvar "clayer")) ; ulozeni aktualni hladiny
(setq nast_barvy (getvar "cecolor")) ; ul. akt. barvy
(setq nast_cary (getvar "celtype")) ; ul. akt. typu cary
;;;;;;;;;;;;;;;;;;;;;;;;;;;;; Pro spravnou cinnost funkci
(setvar "cecolor" "bylayer") ; barva dle hladiny
(setvar "celtype" "bylayer") ; typ cary dle hladiny
(setq #konec_chyba nil)
(command "_undo" "_A" "_OFF")
(command "_undo" "_BE")
;;;;;;;;;;;;;;;;;;;;;;;pro SAG
(if (not meritko) (setq meritko (getvar "USERI1")))
(if (or (> meritko 11) (= meritko 11)) (setq caratloustka1 35) (setq caratloustka1 35))
(if (or (> meritko 11) (= meritko 11)) (setq caratloustka2 25) (setq caratloustka2 25))
(if (or (> meritko 11) (= meritko 11)) (setq carabarva1 2) (setq carabarva1 2))
(if (or (> meritko 11) (= meritko 11)) (setq carabarva2 1) (setq carabarva2 1))
(setq #stylTX "ISO")
(setq #sirkaTX 0.9)
(cistiskup)
); konec procedury init
; @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@
; procedura out vrací syst. promìné do pùvodního stavu
(defun out ( )
(setvar "cmdecho" 0)
;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;reinicializace prom.
(setvar "textsize" textmodsiz)
(setvar "osmode" uchopmod)
(setvar "clayer" nast_hladiny)
(setvar "cecolor" nast_barvy)
(setvar "celtype" nast_cary)
(setq #ident_proced nil)
(if #znackyskup (smazskup #znackyskup))
(setq #bodyskup nil)
(setq #znackyskup nil)
(setq #kotyskup nil)
(setq *error* old_error)
(command "_undo" "_E")
(command "_undo" "_A" "_ON")
(setq #kontejner1 nil)
(setq #kontejner2 nil)
(setq #kontejner3 nil)
(setq #kontejner4 nil)
(setq #DIstav nil)
(setq #_hladina nil)
(setq #_barva nil)
(setq #_typcary nil)
(setq #_tlcary nil)
(cistiskup)
(if (not #konec_chyba)
(progn
(terpri)(princ "Desinence normally")
(terpri)(princ "->")(princ)
)(princ)
)
(setq #konec_chyba nil)
(setvar "cmdecho" 1)(princ)
(princ)
)
(defun c rofils ( / OSA vysledek ENDpoints)
(init)
; @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@
; procedura prava_diago provede vykreslení diagonály podle
; pøedaných parametrù (hrana je viditelná)
(defun prava_diago (#_PR_POCATEK #_PR_KONEC #_PR_ROZMPROF #_PR_TLOUST #_PR_PRESAH #_OSA / delka uhel bod_1 bod_2 bod_3 bod_4 bod_5 bod_6 bod_21 bod_22)
;funkce prava_diago, definice funkce (parametry / lokalni promene)
(setvar "osmode" 0) ;vypnuti rezimu uchop
(setq delka (distance #_PR_POCATEK #_PR_KONEC)) ;odmereni vzdalenosti
(setq uhel (angle #_PR_POCATEK #_PR_KONEC)) ;odmereni uhlu
(setq bod_1 (polar #_PR_POCATEK (+ pi uhel) #_PR_PRESAH)) ;vypocet bodu
(setq bod_2 (polar #_PR_KONEC uhel #_PR_PRESAH))
(setq bod_3 (polar bod_1 (+ uhel (/ pi 2)) #_OSA))
(setq bod_4 (polar bod_1 (- uhel (/ pi 2)) (- #_PR_ROZMPROF #_OSA)))
(setq bod_5 (polar bod_2 (+ uhel (/ pi 2)) #_OSA))
(setq bod_6 (polar bod_2 (- uhel (/ pi 2)) (- #_PR_ROZMPROF #_OSA)))
(setq bod_21 (polar bod_1 (+ uhel (/ pi 2)) (- #_OSA #_PR_TLOUST)))
(setq bod_22 (polar bod_2 (+ uhel (/ pi 2)) (- #_OSA #_PR_TLOUST)))
(command "_layer" "_m" "STAHLBAU-SCHRAUBE" "")
(command "_insert" (strcat cesta "M_" (screwpr (cdr (assoc 'SROUB #kontejner3_L))))
#_PR_POCATEK
"1"
""
"0"
);command
(command "_insert" (strcat cesta "M_" (screwpr (cdr (assoc 'SROUB #kontejner3_L))))
#_PR_KONEC
"1"
""
"0"
);command
;Diagonale-Außen
(setq #_hladina "STAHLBAU-MASTSCHAFT 2.5") ; Achse-Diagonale
(setq #_barva 1) ; Farbe 1=rot
(setq #_typcary "bylayer")
(setq #_tlcary 25) ; Linienbreite 25
Eine Antwort auf diesen Beitrag verfassen (mit Zitat/Zitat des Beitrags) IP