找回密码
 立即注册

QQ登录

只需一步,快速开始

扫一扫,访问微社区

查看: 1859|回复: 14

[求助] [求助]:那位大个帮帮忙看看这个程序~~

[复制链接]
发表于 2006-6-14 14:27:39 | 显示全部楼层 |阅读模式

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

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

×
(DEFUN C:SUMAREA ()
(SETVAR "CMDECHO" 0)
(COMMAND ".UNDO" "BE")
(IF (SETQ SS (SSGET '((0 . "*POLYLINE") (70 . 1)))) (PROGN
  (SETQ I -1 SUM 0.0)
  (REPEAT (SSLENGTH SS)
   (SETQ EN (SSNAME SS (SETQ I (1+ I))))
   (COMMAND "AREA" "E" EN)
   (SETQ SUM (+ (GETVAR "AREA") SUM))
  )
  (PRINC "\nTotal Area = ")
  (PRINC SUM)
))
(COMMAND ".UNDO" "E")
(SETVAR "CMDECHO" 1)
(PRINC)
)
怎样改才能包括圆的面积,希望能标出来面积和还有就是那个面积表示方法很不习惯能改为平方米么。谢谢了。
论坛插件加载方法
发帖求助前要善用【论坛搜索】功能,那里可能会有你要找的答案;
如果你在论坛求助问题,并且已经从坛友或者管理的回复中解决了问题,请把帖子标题加上【已解决】;
如何回报帮助你解决问题的坛友,一个好办法就是给对方加【D豆】,加分不会扣除自己的积分,做一个热心并受欢迎的人!
发表于 2006-6-15 10:42:21 | 显示全部楼层
将圆加入选择集里,应该可以的.
单位是与你的座标有关,与程序无关.
论坛插件加载方法
发帖求助前要善用【论坛搜索】功能,那里可能会有你要找的答案;
如果你在论坛求助问题,并且已经从坛友或者管理的回复中解决了问题,请把帖子标题加上【已解决】;
如何回报帮助你解决问题的坛友,一个好办法就是给对方加【D豆】,加分不会扣除自己的积分,做一个热心并受欢迎的人!
回复 支持 反对

使用道具 举报

已领礼包: 8160个

财富等级: 富甲天下

发表于 2006-6-15 11:39:35 | 显示全部楼层
(SETQ SS (SSGET '((0 . "*POLYLINE") (70 . 1))))

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

使用道具 举报

已领礼包: 11310个

财富等级: 富甲天下

发表于 2006-6-15 13:03:52 | 显示全部楼层
php]
(DEFUN C:SUMAREA ()
(SETVAR "CMDECHO" 0)
(COMMAND ".UNDO" "BE")
(IF (SETQ SS
        (SSGET "X" '(
         (-4 . "<OR")
          (-4 . "<AND")
           (0 . "*POLYLINE")
           (70 . 1)
          (-4 . "AND>")
          (0 . "CIRCLE")
         (-4 . "OR>")
        ))
        ) (PROGN
(SETQ I -1 SUM 0.0)
(REPEAT (SSLENGTH SS)
(SETQ EN (SSNAME SS (SETQ I (1+ I))))
(COMMAND "AREA" "E" EN)
(SETQ SUM (+ (GETVAR "AREA") SUM))
)
(PRINC "\nTotal Area = ")
(PRINC (/ SUM 1E6))
(PRINC " m^2")
))
(COMMAND ".UNDO" "E")
(SETVAR "CMDECHO" 1)
(PRINC)
)
[/php]
论坛插件加载方法
发帖求助前要善用【论坛搜索】功能,那里可能会有你要找的答案;
如果你在论坛求助问题,并且已经从坛友或者管理的回复中解决了问题,请把帖子标题加上【已解决】;
如何回报帮助你解决问题的坛友,一个好办法就是给对方加【D豆】,加分不会扣除自己的积分,做一个热心并受欢迎的人!
回复 支持 反对

使用道具 举报

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

使用道具 举报

已领礼包: 11310个

财富等级: 富甲天下

发表于 2006-6-15 13:52:43 | 显示全部楼层
[php]
(DEFUN C:SUMAREA ()
(SETVAR "CMDECHO" 0)
(COMMAND ".UNDO" "BE")
(IF (SETQ SS
        (SSGET "X" '(
         (-4 . "<OR")
          (-4 . "<AND")
           (0 . "*POLYLINE")
           (70 . 1)
          (-4 . "AND>")
          (0 . "CIRCLE")
         (-4 . "OR>")
        ))
        ) (PROGN
(SETQ I -1 SUM 0.0)
(REPEAT (SSLENGTH SS)
(SETQ EN (SSNAME SS (SETQ I (1+ I))))
(COMMAND "AREA" "E" EN)
(SETQ SUM (+ (GETVAR "AREA") SUM))
)
(PRINC "\nTotal Area = ")
(PRINC (/ SUM 1E6))
(PRINC " m^2")
))
(COMMAND ".UNDO" "E")
(SETVAR "CMDECHO" 1)
(PRINC)
)
[/php]
论坛插件加载方法
发帖求助前要善用【论坛搜索】功能,那里可能会有你要找的答案;
如果你在论坛求助问题,并且已经从坛友或者管理的回复中解决了问题,请把帖子标题加上【已解决】;
如何回报帮助你解决问题的坛友,一个好办法就是给对方加【D豆】,加分不会扣除自己的积分,做一个热心并受欢迎的人!
回复 支持 反对

使用道具 举报

 楼主| 发表于 2006-7-24 17:12:27 | 显示全部楼层
谢谢6楼的大哥,但是它不能圈选。只能标出所有的面积,而不是所要计算的那部分。
论坛插件加载方法
发帖求助前要善用【论坛搜索】功能,那里可能会有你要找的答案;
如果你在论坛求助问题,并且已经从坛友或者管理的回复中解决了问题,请把帖子标题加上【已解决】;
如何回报帮助你解决问题的坛友,一个好办法就是给对方加【D豆】,加分不会扣除自己的积分,做一个热心并受欢迎的人!
回复 支持 反对

使用道具 举报

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

使用道具 举报

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

使用道具 举报

已领礼包: 8160个

财富等级: 富甲天下

发表于 2006-7-26 11:22:03 | 显示全部楼层
(SETQ SS
    (SSGET "X" '(
     (-4 . "<OR")
      (-4 . "<AND")
       (0 . "*POLYLINE")
       (70 . 1)
      (-4 . "AND>")
      (0 . "CIRCLE")
     (-4 . "OR>")
    ))
)

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

使用道具 举报

发表于 2006-11-22 15:12:30 | 显示全部楼层

迟些了?

(DEFUN C:SUMAREA ()
(SETVAR "CMDECHO" 0)
(COMMAND ".UNDO" "BE")
(IF (SETQ SS
    (SSGET '(
     (-4 . "<OR")
      (-4 . "<AND")
       (0 . "*POLYLINE")
       (70 . 1)
      (-4 . "AND>")
      (0 . "CIRCLE")
     (-4 . "OR>")
    ))
    ) (PROGN
(SETQ I -1 SUM 0.0)
(REPEAT (SSLENGTH SS)
(SETQ EN (SSNAME SS (SETQ I (1+ I))))
(COMMAND "AREA" "E" EN)
(SETQ SUM (+ (GETVAR "AREA") SUM))
)
(PRINC "\nTotal Area = ")
(PRINC (/ SUM 1E6))
(PRINC " m^2")
))
(COMMAND ".UNDO" "E")
(SETVAR "CMDECHO" 1)
(PRINC)
)
论坛插件加载方法
发帖求助前要善用【论坛搜索】功能,那里可能会有你要找的答案;
如果你在论坛求助问题,并且已经从坛友或者管理的回复中解决了问题,请把帖子标题加上【已解决】;
如何回报帮助你解决问题的坛友,一个好办法就是给对方加【D豆】,加分不会扣除自己的积分,做一个热心并受欢迎的人!
回复 支持 反对

使用道具 举报

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

使用道具 举报

已领礼包: 11310个

财富等级: 富甲天下

发表于 2006-11-22 21:17:50 | 显示全部楼层


  1. (DEFUN C:SUMAREA ()
  2. (SETVAR "CMDECHO" 0)
  3. (COMMAND ".UNDO" "BE")
  4. (IF (SETQ SS (SSGET '(( 0 "CIRCLE,*POLYLINE")))) (PROGN
  5. (SETQ I -1 SUM 0.0)
  6. (REPEAT (SSLENGTH SS)
  7. (SETQ EN (SSNAME SS (SETQ I (1+ I))))
  8. (COMMAND "AREA" "E" EN)
  9. (SETQ SUM (+ (GETVAR "AREA") SUM))
  10. )
  11. (PRINC "\nTotal Area = ")
  12. (PRINC (/ SUM 1E6))
  13. (PRINC " m^2")
  14. ))
  15. (COMMAND ".UNDO" "E")
  16. (SETVAR "CMDECHO" 1)
  17. (PRINC)
  18. )
论坛插件加载方法
发帖求助前要善用【论坛搜索】功能,那里可能会有你要找的答案;
如果你在论坛求助问题,并且已经从坛友或者管理的回复中解决了问题,请把帖子标题加上【已解决】;
如何回报帮助你解决问题的坛友,一个好办法就是给对方加【D豆】,加分不会扣除自己的积分,做一个热心并受欢迎的人!
回复 支持 反对

使用道具 举报

发表于 2006-11-23 15:17:15 | 显示全部楼层
(DEFUN C:SUMAREA ()
  (SETVAR "CMDECHO" 0)
  (SETQ SS (SSGET))   
  (IF SS (PROGN
           (SETQ I -1 SUM 0.0)
           (REPEAT (SSLENGTH SS)
           (SETQ EN (SSNAME SS (SETQ I (1+ I))))
           (SETQ OBJ (ASSOC 0 (ENTGET EN)))
           (IF (OR (= (CDR OBJ) "CIRCLE") (= (CDR OBJ) "*POLYLINE"))
             (PROGN
             (COMMAND "AREA" "E" EN)
             (SETQ SUM (+ (GETVAR "AREA") SUM))
             )))
           (PRINC "\nTotal Area = ")
           (PRINC (/ SUM 1E6))
           (PRINC " m^2")
           (SETVAR "CMDECHO" 1)
           (PRINC)
   )))
论坛插件加载方法
发帖求助前要善用【论坛搜索】功能,那里可能会有你要找的答案;
如果你在论坛求助问题,并且已经从坛友或者管理的回复中解决了问题,请把帖子标题加上【已解决】;
如何回报帮助你解决问题的坛友,一个好办法就是给对方加【D豆】,加分不会扣除自己的积分,做一个热心并受欢迎的人!
回复 支持 反对

使用道具 举报

 楼主| 发表于 2006-12-15 16:45:25 | 显示全部楼层
14楼的大哥的似乎只能算圆的面积,矩形的却不能算.
论坛插件加载方法
发帖求助前要善用【论坛搜索】功能,那里可能会有你要找的答案;
如果你在论坛求助问题,并且已经从坛友或者管理的回复中解决了问题,请把帖子标题加上【已解决】;
如何回报帮助你解决问题的坛友,一个好办法就是给对方加【D豆】,加分不会扣除自己的积分,做一个热心并受欢迎的人!
回复 支持 反对

使用道具 举报

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

本版积分规则

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

GMT+8, 2025-9-29 20:56 , Processed in 0.276105 second(s), 61 queries , Gzip On.

Powered by Discuz! X3.5

© 2001-2025 Discuz! Team.

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