找回密码
 立即注册

QQ登录

只需一步,快速开始

扫一扫,访问微社区

查看: 1081|回复: 6

[求助] [求助]:关于计算面积

[复制链接]
发表于 2002-5-23 22:29:53 | 显示全部楼层 |阅读模式

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

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

×
我经常要计算类似下面图形的面积,可是不知解决思路,无法编程。请各位大虾帮忙——提供解决思路或程序。(以前晓东有一个计算HATCH面积的程序,也能用,但是我的DWG文件中图形很多,招待HATCH命令很费时。)
图例见附件
论坛插件加载方法
发帖求助前要善用【论坛搜索】功能,那里可能会有你要找的答案;
如果你在论坛求助问题,并且已经从坛友或者管理的回复中解决了问题,请把帖子标题加上【已解决】;
如何回报帮助你解决问题的坛友,一个好办法就是给对方加【D豆】,加分不会扣除自己的积分,做一个热心并受欢迎的人!
发表于 2002-5-24 11:56:46 | 显示全部楼层
?

恐怕人工识别更快。
总得识别外框和孤岛,
你可以编个分别标各个pl的面积,
再加一个加和减的程序;
或者直接在area中a和e。
论坛插件加载方法
发帖求助前要善用【论坛搜索】功能,那里可能会有你要找的答案;
如果你在论坛求助问题,并且已经从坛友或者管理的回复中解决了问题,请把帖子标题加上【已解决】;
如何回报帮助你解决问题的坛友,一个好办法就是给对方加【D豆】,加分不会扣除自己的积分,做一个热心并受欢迎的人!
回复 支持 反对

使用道具 举报

发表于 2002-10-30 13:11:44 | 显示全部楼层
我有一个小lsp程序可能对你有用
;(defun getpts (/ pt ptlist)
;(while (setq pt (getpoint " \npoint : "))
;       (setq ptlist (append ptlist(list pt)))))
;************************************
(defun c:ha2 (/ p t sc n)
(if (= 0 (getvar "useri2"))
(setvar "useri2" (setq sc (getint "\nEnter scale of the drawing : ")))
(setq sc (getvar "useri2")))
(setq p (getpoint "\ntext insert point : "))
(command "boundary")
(command p "")
(command "area" "o" "l")
(command "erase" "l" "")
(setq n (/ sc 100000.0))
(setq n (* n n))
(setq t (rtos (* (getvar "area") n) 2 2))
(command "text" p "" "" t)
(princ)
)
在r14下能用
论坛插件加载方法
发帖求助前要善用【论坛搜索】功能,那里可能会有你要找的答案;
如果你在论坛求助问题,并且已经从坛友或者管理的回复中解决了问题,请把帖子标题加上【已解决】;
如何回报帮助你解决问题的坛友,一个好办法就是给对方加【D豆】,加分不会扣除自己的积分,做一个热心并受欢迎的人!
回复 支持 反对

使用道具 举报

发表于 2002-10-30 13:16:06 | 显示全部楼层
在r2002下有一些问题,但希望编程思路对你有帮助,或者由坛上的lsp高手重新改一下,再发布,斑竹可否?
论坛插件加载方法
发帖求助前要善用【论坛搜索】功能,那里可能会有你要找的答案;
如果你在论坛求助问题,并且已经从坛友或者管理的回复中解决了问题,请把帖子标题加上【已解决】;
如何回报帮助你解决问题的坛友,一个好办法就是给对方加【D豆】,加分不会扣除自己的积分,做一个热心并受欢迎的人!
回复 支持 反对

使用道具 举报

已领礼包: 145个

财富等级: 日进斗金

发表于 2002-10-30 13:18:00 | 显示全部楼层
去试试“晓东工具箱”新版的计算填充面积的工具。我们院一个人一个星期的工作量,用它几秒就完成了。
论坛插件加载方法
发帖求助前要善用【论坛搜索】功能,那里可能会有你要找的答案;
如果你在论坛求助问题,并且已经从坛友或者管理的回复中解决了问题,请把帖子标题加上【已解决】;
如何回报帮助你解决问题的坛友,一个好办法就是给对方加【D豆】,加分不会扣除自己的积分,做一个热心并受欢迎的人!
回复 支持 反对

使用道具 举报

发表于 2002-10-30 15:45:29 | 显示全部楼层

  1. [FONT=courier new]
  2. (DEFUN C:ADDS (/ ss en ed as a_txt new_txt ts txt-ts ts1)
  3.   (SETQ ADDIT NIL
  4.         SS NIL
  5.          EN NIL
  6.           ED NIL
  7.            AS NIL
  8.             A_TXT NIL
  9.              NEW_TXT NIL)
  10.   (SETQ A_TXT 0)
  11.   (PROMPT "\nSELECT TEXT TO ADD TOGETHER(请选取想累加的数字): ")
  12.   (SETQ SS (SSGET))
  13.   (WHILE (> (SSLENGTH SS) 0)
  14.     (SETQ EN (SSNAME SS 0))
  15.     (SETQ ED (ENTGET EN))
  16.     (SETQ AS (CDR (ASSOC '0 ED)))
  17.     (IF (= AS "TEXT")
  18.       (_TXT)
  19.     )
  20.     (SSDEL EN SS)
  21.   )
  22.   (SETQ ADDIT NIL
  23.         SS NIL
  24.         EN NIL
  25.         ED NIL
  26.         AS NIL
  27.         A_TXT NIL
  28.         NEW_TXT NIL)
  29.   (PROMPT (STRCAT "\nTOTAL NUMBER IS (他们的和是): " NEW_TEXT))
  30.        (setq ts (getvar "TEXTSIZE"))
  31.                 (setq txt-ts (strcat "\n 文本尺寸为" (RTOS TS 2 1)))
  32.                         (PROMPT TXT-TS)
  33.                                 (SETQ TS1 (GETREAL "\n文本尺寸为<回车默认值>"))
  34.                                         (if (= ts1 nil) (setq ts ts) (setq ts ts1))
  35.                                                 (setvar "textsize" ts)
  36.         (setq ps (getpoint "   Where you want to dim :"))
  37.                         (command "text" ps "" "0" NEW_TEXT)       
  38. )
  39. (DEFUN _TXT ()
  40.   (SETQ A_TXT (+ (DISTOF (CDR (ASSOC '1 ED)) 3) A_TXT))
  41.   (SETQ NEW_TEXT (RTOS A_TXT 2 2))
  42.   (SSDEL EN SS)
  43. )[/FONT]
论坛插件加载方法
发帖求助前要善用【论坛搜索】功能,那里可能会有你要找的答案;
如果你在论坛求助问题,并且已经从坛友或者管理的回复中解决了问题,请把帖子标题加上【已解决】;
如何回报帮助你解决问题的坛友,一个好办法就是给对方加【D豆】,加分不会扣除自己的积分,做一个热心并受欢迎的人!
回复 支持 反对

使用道具 举报

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

使用道具 举报

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

本版积分规则

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

GMT+8, 2024-5-1 09:56 , Processed in 0.438218 second(s), 44 queries , Gzip On.

Powered by Discuz! X3.5

© 2001-2024 Discuz! Team.

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