• このフォーラムは、www.cad3d.it/forum1 - イタリアのデザインコミュニティの機械翻訳です。いくつかの用語は正しく翻訳されていません。

周囲を探し、内部に書き込むためにpolylineaを作成する

  • Thread starter Thread starter reggio
  • Start date Start date

reggio

Guest
ciao, volevo provare a fare un lisp che creasse una polilinea, trovare il perimetro e scriverlo all'interno della figura, magari con un testo di grandezza tale da leggerlo bene, basandosi sulla dimensione della finestra attuale ;-p

fantascienza? si :( almeno x mè

ho provato a scimmittare quello che finora mi avete suggerito/regalato però non ci sono riuscito :(

mi aiutate?


(defun c:pol (/ )
(command "_pedit" "_y" )
;(command "_j")
;(command "_x" )
)
 
ottimi direi, ma "pignoliamo" un pò ;p

(defun c:cs ()
(if (= ht nil)(setq ht 1))
;(if (= scala nil)(setq scala(getreal "\n....... scala scritte 1:")))

(setq p "")
(setq p(getpoint "\n....... seleziona il punto all'interno dell'area: "))
(if (/= p nil)(progn
(setvar "cmdecho" 0)
(setq cpltype(getvar "plinetype"))
(setq clay(getvar "clayer"))
(setvar "plinetype" 1)
(command "_layer" "_m" "aree_nuove" "")
(command "_bpoly" "_a" "_b" "_e" "_o" "_p" "_x" p "")
(setq poli(entlast))
(setq polix(entget poli))
(if (= (cdr(assoc 0 polix)) "lwpolyline")(progn
(command "_area" "_o" poli)
(setq area(getvar "area"))
(setq perimetro(getvar "perimeter"))
(setq hs(* 0.00005 area))
(command "_layer" "_m" "aree_scritte" "")
(command "_text" "_c" p hs "0" (strcat "areas=" (rtos area 2 2))"mm2" \r)
(command "_text" "_c" p hs "0" (strcat "areas=" (rtos area 2 2))"m2" \r)
(command "_text" "_c" (polar p (* 1.5 pi) (* hs 1.5)) hs "0" (strcat "perimetro=" (rtos perimetro 2 2))"mm" \r)
(command "_text" "_c" (polar p (* 1.5 pi) (* hs 1.5)) hs "0" (strcat "perimetro=" (rtos perimetro/1000 2 2))"m" \r)
))
(setvar "clayer" clay)
(setvar "plinetype" cpltype)

))
(princ)
)
(princ "\n<copyright: ing. claudio granuzzo>")
(princ)fonte: www.sepram

allora vorrei usare questa parte, ma cambiando:
-ricavare area in mm2 e m2 (ho provato ma nn funzia)
-ricavare perimetro in mm e m (ho provato ma nn funzia)
-ho cambiato la grandezza del testo rendendola proporzionale all'area, c'è un altro modo per far sì che sia sempre leggibile immediatamente senza "finestrare"?
-vedo che crea una polilinea sopra al disegno, potrebbe semplicemente sostituire il disegno evitando il "doppione"?
-la polilinea che crea può essere dello stello livello che aveva il disegno originale? (magari toccando prima un elemento)
 
valuta se prendere qualche spunto da questo lisp.

per l'uso bisogna cliccare all'interno di aree chiuse interamente visualizzate a video.
 

Attachments

Last edited:
valuta se prendere qualche spunto da questo lisp.

per l'uso bisogna cliccare all'interno di aree chiuse interamente visualizzate a video.


ti potrei chiedere x favore un'aiuto per un problema con una lisp?
 

Forum statistics

Threads
46,674
Messages
380,976
Members
2
Latest member
loop80
このフォーラムは、www.cad3d.it/forum1 - イタリアのデザインコミュニティの機械翻訳です。いくつかの用語は正しく翻訳されていません。

Members online

No members online now.
Back
Top