Zanna91
Guest
diese funktion fragt einen punkt innerhalb einer fläche (die einen raum identifiziert) und die höhe der wände. kehrt zurück, schreibt sie an den gewählten punkt: die oberfläche, das volumen und die gesamte oberfläche einschließlich der wände und die decke des raumes. oder schreibt nur die oberfläche und den umfang der fläche auf neuen schichten.
gusseisen: www.sepram.comgrüßen,
Jacomo
Code:
(Defun c:csv)
(wenn (= ht nil)(setq ht 1))
(wenn (= skala nil)(setq scale(getreal "\n.... skala geschrieben 1:"))
(wenn (= hstanze nil)(setq hstanze(getreal "\n....... höhe der zimmer: ")
(setq hs(* 0,0015 skala))
(setq p ")
(setq p(getpoint "\n....... Wählen Sie den punkt innerhalb des zimmers: ")
(falls/= p nil)
(Setvar "cmdecho" 0)
(setq cpltype(getvar "plinetype"))
(setq ton(getvar "clayer")
(setvar "plinetype" 1)
(Befehl "_layer" "_m" "aree_nuove"")
(Befehl "_bpoly" "_a" "_b" "_e" "_p" "_x" p ")
(setq poly(entlast))
(setq polix(entget poli))
(if (= (cdr(assoc 0 polix))) "lwpolyline")(progn
(Befehl "_area" "_o" poly)
(seq-bereich(getvar "area")
(setq perimeter (getvar "perimeter")
(Befehl "_layer" "_m" "aree_scritte"")
(Befehl "_text" "_c" p hs "0" (Strcat "sp=" (rtos area 2 1) " m2") \r)
(setq volumen(* hstanze fläche)
(Befehl "_text" (polar p (* 1.5 pi) (* hs 1.5)) hs "0" (Strcat "v=" (rtos volume 2 1) " m3") \r)
(setq stot(+ fläche (* hstanze perimeter))
(Befehl "_text" (polar p (* 1,5 pi) (* hs 3)) hs "0" (Strcat "stot=" (rtos stot 2 1) " m2") \r
)
(setvar "clayer" ton)
(setvar "plinetype" cpltype)
)
(princ)
)
(Defunc c:cs)
(wenn (= ht nil)(setq ht 1))
(wenn (= skala nil)(setq scale(getreal "\n.... skala geschrieben 1:"))
(setq hs(* 0,0015 skala))
(setq p ")
(setq p(getpoint "\n....... Wählen Sie den punkt innerhalb des bereichs aus: ")
(falls/= p nil)
(Setvar "cmdecho" 0)
(setq cpltype(getvar "plinetype"))
(setq ton(getvar "clayer")
(setvar "plinetype" 1)
(Befehl "_layer" "_m" "aree_nuove"")
(Befehl "_bpoly" "_a" "_b" "_e" "_p" "_x" p ")
(setq poly(entlast))
(setq polix(entget poli))
(if (= (cdr(assoc 0 polix))) "lwpolyline")(progn
(Befehl "_area" "_o" poly)
(seq-bereich(getvar "area")
(setq perimeter (getvar "perimeter")
(Befehl "_layer" "_m" "aree_scritte"")
(Befehl "_text" p hs "0" (Strcat "s=" (rtos area 2 2)) \r)
(Befehl "_text" (polar p (* 1.5 pi) (* hs 1.5)) hs "0" (Strcat "p=" (rtos perimeter 2 2)) \r)
)
(setvar "clayer" ton)
(setvar "plinetype" cpltype)
)
(princ)
)
(princ)<copyright: claudio="" granuzzo="" ing.="">"
(princ "\ndigitate cs to write Surface and perimeter")
(princ "\ndigitare csv zu schreiben oberfläche und volumen)
(princ)</copyright:>
gusseisen: www.sepram.comgrüßen,
Jacomo
Zuletzt bearbeitet: