找回密码
 立即注册

QQ登录

只需一步,快速开始

扫一扫,访问微社区

查看: 3099|回复: 9

[求助] 两条线 所夹区域面积 标注程序

[复制链接]
发表于 2014-5-16 07:59:22 | 显示全部楼层 |阅读模式

马上注册,结交更多好友,享用更多功能,让你轻松玩转社区。

您需要 登录 才可以下载或查看,没有账号?立即注册

×
两条线 所夹区域面积 标注程序如图,
两条多段线或直线并不相交,让两条直线在程序中自动相连接,组成一个封闭面积,标注所夹区域面积
这样,选择两条直线后,就能得到他们所夹区域面积,

谢谢
网上找到的一个类似程序:


;;;功能:点取内部一点,测量封闭区域的面积(可分别设置XY比例)       *
;;;日期:zml84 于 2009-06-07                                        *
(defun C:mj (/ X Y SIZE PT EN AREA STR TMP)
    ;; 0 初始化
    (or        *TEST_TMP*
        (setq *TEST_TMP* '(1 1 2.5))
    )
    (setq X    (nth 0 *TEST_TMP*)
          Y    (nth 1 *TEST_TMP*)
          SIZE (nth 2 *TEST_TMP*)
    )

    ;; 1
    (while
        (progn
            (princ
                (strcat
                    "\n当前设置:X比例="
                    (rtos X)
                    ",X比例="
                    (rtos Y)
                    ",字高="
                    (rtos SIZE)
                )
            )
            (initget "X Y Size")
            (princ
                "\n点取要测量的位置,或 [X比例(X)/Y比例(Y)/字高(S)]: "
            )
            (setq PT (getpoint ""))
        )
           (cond ((= PT "X")
                  (if (and (setq TMP (getreal "\n设置X向比例: "))
                           (> TMP 0)
                      )
                      (setq X TMP)
                  )
                 )
                 ((= PT "Y")
                  (if (and (setq TMP (getreal "\n设置Y向比例: "))
                           (> TMP 0)
                      )
                      (setq Y TMP)
                  )
                 )
                 ((= PT "Size")
                  (if (and (setq TMP (getreal "\n设置字体高度: "))
                           (> TMP 0)
                      )
                      (setq SIZE TMP)
                  )
                 )
                 ((and
                      (setq EN (bpoly PT))
                      (setq
                          AREA (vla-get-area
                                   (vlax-ename->vla-object EN)
                               )
                      )
                      ;;(progn (command "REGEN") (redraw EN 3) t)
                      (entdel EN)

                      (setq AREA (/ AREA 1.0 X Y)
                            STR         (rtos AREA 2 3)
                      )
                      (princ (strcat "\n所点击区域面积 = " STR))
                  )
                 (setq smj (strcat "S=" STR "m2"))
                (command "text" "s" "MJ" "j" "BC" pt "" smj "")  
              ;(command "_.TEXT" " " PT SIZE 0 STR)
                 )
           )

    )

    ;; 2
    (setq *TEST_TMP* (list X Y SIZE))

    (princ)
)


BaiduShurufa_2014-5-16_7-49-33.png
论坛插件加载方法
发帖求助前要善用【论坛搜索】功能,那里可能会有你要找的答案;
如果你在论坛求助问题,并且已经从坛友或者管理的回复中解决了问题,请把帖子标题加上【已解决】;
如何回报帮助你解决问题的坛友,一个好办法就是给对方加【D豆】,加分不会扣除自己的积分,做一个热心并受欢迎的人!

已领礼包: 344个

财富等级: 日进斗金

发表于 2014-5-16 09:08:06 | 显示全部楼层
Array,本帖隐藏的内容需要发帖数高于 5 才可浏览,你当前发帖数为

论坛插件加载方法
发帖求助前要善用【论坛搜索】功能,那里可能会有你要找的答案;
如果你在论坛求助问题,并且已经从坛友或者管理的回复中解决了问题,请把帖子标题加上【已解决】;
如何回报帮助你解决问题的坛友,一个好办法就是给对方加【D豆】,加分不会扣除自己的积分,做一个热心并受欢迎的人!
回复 支持 反对

使用道具 举报

已领礼包: 33个

财富等级: 招财进宝

发表于 2014-5-16 22:51:38 | 显示全部楼层
不错。。谢谢分享啦!
论坛插件加载方法
发帖求助前要善用【论坛搜索】功能,那里可能会有你要找的答案;
如果你在论坛求助问题,并且已经从坛友或者管理的回复中解决了问题,请把帖子标题加上【已解决】;
如何回报帮助你解决问题的坛友,一个好办法就是给对方加【D豆】,加分不会扣除自己的积分,做一个热心并受欢迎的人!
回复 支持 反对

使用道具 举报

发表于 2014-5-17 10:07:50 | 显示全部楼层
厉害啊,谢谢,二楼
论坛插件加载方法
发帖求助前要善用【论坛搜索】功能,那里可能会有你要找的答案;
如果你在论坛求助问题,并且已经从坛友或者管理的回复中解决了问题,请把帖子标题加上【已解决】;
如何回报帮助你解决问题的坛友,一个好办法就是给对方加【D豆】,加分不会扣除自己的积分,做一个热心并受欢迎的人!
回复 支持 反对

使用道具 举报

发表于 2014-5-17 10:13:57 | 显示全部楼层
下载了,适用了,请问二楼的楼主,能不能把区域给封闭起来后,填充一下用颜色给区别一下,或者把围成的面域外围用红线给显示出来,就更好了
论坛插件加载方法
发帖求助前要善用【论坛搜索】功能,那里可能会有你要找的答案;
如果你在论坛求助问题,并且已经从坛友或者管理的回复中解决了问题,请把帖子标题加上【已解决】;
如何回报帮助你解决问题的坛友,一个好办法就是给对方加【D豆】,加分不会扣除自己的积分,做一个热心并受欢迎的人!
回复 支持 反对

使用道具 举报

发表于 2014-9-28 19:14:14 | 显示全部楼层
看看怎么样
论坛插件加载方法
发帖求助前要善用【论坛搜索】功能,那里可能会有你要找的答案;
如果你在论坛求助问题,并且已经从坛友或者管理的回复中解决了问题,请把帖子标题加上【已解决】;
如何回报帮助你解决问题的坛友,一个好办法就是给对方加【D豆】,加分不会扣除自己的积分,做一个热心并受欢迎的人!
回复 支持 反对

使用道具 举报

发表于 2014-10-12 13:04:27 | 显示全部楼层
:):) 看看怎么样看看怎么样看看怎么样看看怎么样:)
论坛插件加载方法
发帖求助前要善用【论坛搜索】功能,那里可能会有你要找的答案;
如果你在论坛求助问题,并且已经从坛友或者管理的回复中解决了问题,请把帖子标题加上【已解决】;
如何回报帮助你解决问题的坛友,一个好办法就是给对方加【D豆】,加分不会扣除自己的积分,做一个热心并受欢迎的人!
回复 支持 反对

使用道具 举报

已领礼包: 4个

财富等级: 恭喜发财

发表于 2016-9-22 13:03:03 | 显示全部楼层
看看使用不!
论坛插件加载方法
发帖求助前要善用【论坛搜索】功能,那里可能会有你要找的答案;
如果你在论坛求助问题,并且已经从坛友或者管理的回复中解决了问题,请把帖子标题加上【已解决】;
如何回报帮助你解决问题的坛友,一个好办法就是给对方加【D豆】,加分不会扣除自己的积分,做一个热心并受欢迎的人!
回复 支持 反对

使用道具 举报

已领礼包: 1449个

财富等级: 财源广进

发表于 2016-11-27 11:13:41 | 显示全部楼层
G版的东西就是好,
论坛插件加载方法
发帖求助前要善用【论坛搜索】功能,那里可能会有你要找的答案;
如果你在论坛求助问题,并且已经从坛友或者管理的回复中解决了问题,请把帖子标题加上【已解决】;
如何回报帮助你解决问题的坛友,一个好办法就是给对方加【D豆】,加分不会扣除自己的积分,做一个热心并受欢迎的人!
回复 支持 反对

使用道具 举报

发表于 2017-2-20 00:17:00 | 显示全部楼层
想看下高手们是怎么处理的
论坛插件加载方法
发帖求助前要善用【论坛搜索】功能,那里可能会有你要找的答案;
如果你在论坛求助问题,并且已经从坛友或者管理的回复中解决了问题,请把帖子标题加上【已解决】;
如何回报帮助你解决问题的坛友,一个好办法就是给对方加【D豆】,加分不会扣除自己的积分,做一个热心并受欢迎的人!
回复 支持 反对

使用道具 举报

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

QQ|申请友链|Archiver|手机版|小黑屋|辽公网安备|晓东CAD家园 ( 辽ICP备15016793号 )

GMT+8, 2024-3-29 10:11 , Processed in 0.405460 second(s), 53 queries , Gzip On.

Powered by Discuz! X3.5

© 2001-2024 Discuz! Team.

快速回复 返回顶部 返回列表