香田里浪人 发表于 2014-1-3 07:10:15

试试这个单体面积标注
(defun c:dmj()
(setvar "cmdecho" 0)
(setq cth (rtos (getvar "textsize")))
    (setq TextHeight (getdist (strcat "\n输入标注文字高度 < " cth " > : ")))
    (if (= TextHeight nil)(setq TextHeight cth))
(command "style" "tukou" "黑体" "0" "" "0" "" "")
(command "layer" "M" "面积标注" "C" "1" "" "LT" "CONTINUOUS" "" "");设置一个标注图层
(defun maketext (txt pt)                ; 生成文字子函数
    (entmake (list '(0 . "TEXT")
                   (cons 62 3)
                   (cons 10 pt)
                   (cons 40 TextHeight)
                   (cons 1 txt)
                   '(41 . 0.8)
             )
    )
)
(setq pt (getpoint "\n选取点:"))
(while pt
    (setvar "cecolor" "1")
    (command "bpoly" pt "")
    (setq en (entlast))
    (if (/= en nil)
      (progn
(command "area" "o" en)
(setq aa (getvar "area"))
(redraw en 3)
(setq bb (strcat "S=" (rtos aa 2 2 )"㎡"))
(setq pt1 (getpoint "请指定面积书写位置:"))
(command "_text" pt1 TextHeight "" bb 0)
)
      )
    (entdel en)
    (setvar "cecolor" "bylayer")
    (setq pt (getpoint "\n选取点:"))
   )
(prin1)
)

注册 发表于 2014-1-3 07:44:17

(princ "\n㏑bmz")
(princ "\n夹ボだ澄跋办縩璸衡そΑの")

注册 发表于 2014-1-3 07:44:48

乱码不能识别汉字呢

Atsai 发表于 2014-1-3 08:34:07

注册 发表于 2014-1-3 07:44 static/image/common/back.gif
乱码不能识别汉字呢

lsp源码是繁体版本,所以可能要转成简体,显示才会正常。

香田里浪人 发表于 2014-1-3 14:22:51

Atsai 发表于 2014-1-2 22:50 static/image/common/back.gif
三角形面积是海龙公式,上网查一下就可以了解原理了。
被楼主宣传成史上最强大…直是不好意思。
源 ...

缺陷:任意多边形面积不能计算

香田里浪人 发表于 2014-1-3 14:27:06

Atsai 发表于 2014-1-2 22:50 static/image/common/back.gif
三角形面积是海龙公式,上网查一下就可以了解原理了。
被楼主宣传成史上最强大…直是不好意思。
源 ...

只能标示:圆、弓形、扇形、三角形、矩形、平形四边形及梯形等 7 种,但不能标示任意多边形,期望高手补充。

Atsai 发表于 2014-1-3 15:38:49

本帖最后由 Atsai 于 2014-1-3 17:29 编辑

香田里浪人 发表于 2014-1-3 14:27 static/image/common/back.gif
只能标示:圆、弓形、扇形、三角形、矩形、平形四边形及梯形等 7 种,但不能标示任意多边形,期望高手补充 ...
任意多边形要列公式,这个真的蛮难的,大概只能利用行列式法求面积了。

但是任意多边形可以切割成基本的三角形及矩形,应该就解决了。

ponww 发表于 2014-1-3 17:01:12

好程式謝謝分享

魔卡猪猪 发表于 2014-1-3 20:44:04

我是来膜拜大神的,虽然附件我也下载不了

5664491 发表于 2014-1-5 17:49:41

我是来膜拜大神的
页: 1 [2] 3 4
查看完整版本: [已解决]计算插件