找回密码
 立即注册

QQ登录

只需一步,快速开始

扫一扫,访问微社区

查看: 1819|回复: 7

求算面积的程序

[复制链接]
发表于 2002-1-24 06:19:46 | 显示全部楼层 |阅读模式

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

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

×
我用area算面积,但我习惯用毫米为单位画图,所以area算出的面积就带了很多零(因为它的单位是平方毫米),我希望我用毫米为单位画图,用area算出的面积是以平方米为单位,这样area得出的数据就不会带这么多零了,就不会把人搞晕了!
论坛插件加载方法
发帖求助前要善用【论坛搜索】功能,那里可能会有你要找的答案;
如果你在论坛求助问题,并且已经从坛友或者管理的回复中解决了问题,请把帖子标题加上【已解决】;
如何回报帮助你解决问题的坛友,一个好办法就是给对方加【D豆】,加分不会扣除自己的积分,做一个热心并受欢迎的人!

已领礼包: 145个

财富等级: 日进斗金

发表于 2002-1-24 06:21:10 | 显示全部楼层

给你个小程序



  1. (defun c:rarea()
  2.    (prompt (strcat "面积是:" (rtos (/ (getvar "area") 1e6) 2 1)))
  3.    (princ)
  4. )

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

举报

 楼主| 发表于 2002-1-24 06:33:43 | 显示全部楼层
现在好了,但还是有点麻烦,就是要先用area,再用rarea一次才能得到希望的结果,如果两个命令可以合并的话,就完美了!
:1
论坛插件加载方法
发帖求助前要善用【论坛搜索】功能,那里可能会有你要找的答案;
如果你在论坛求助问题,并且已经从坛友或者管理的回复中解决了问题,请把帖子标题加上【已解决】;
如何回报帮助你解决问题的坛友,一个好办法就是给对方加【D豆】,加分不会扣除自己的积分,做一个热心并受欢迎的人!
回复 支持 反对

举报

已领礼包: 145个

财富等级: 日进斗金

发表于 2002-1-24 06:40:14 | 显示全部楼层
最初由 雷鸟 发布
[B]现在好了,但还是有点麻烦,就是要先用area,再用rarea一次才能得到希望的结果,如果两个命令可以合并的话,就完美了!
:1 [/B]



再试试



  1. (defun c:rarea()
  2.    (prompt "\n开始计算面积,请点取第一点:")
  3.    (command "area")
  4.    (while (/= (getvar "cmdactive") 0)
  5.       (command pause)
  6.       (prompt "\n下一点<结束>:")
  7.    )   
  8.    (prompt (strcat "\n面积是:" (rtos (/ (getvar "area") 1e6) 2 1)))
  9.    (princ)
  10. )
论坛插件加载方法
发帖求助前要善用【论坛搜索】功能,那里可能会有你要找的答案;
如果你在论坛求助问题,并且已经从坛友或者管理的回复中解决了问题,请把帖子标题加上【已解决】;
如何回报帮助你解决问题的坛友,一个好办法就是给对方加【D豆】,加分不会扣除自己的积分,做一个热心并受欢迎的人!
回复 支持 反对

举报

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

举报

发表于 2002-1-24 23:03:02 | 显示全部楼层
aat-逐选面积标注;aad-多选面积标注-------lxx2001.2m
;上标-%%132%%133
;;;适用的实体:POLYLINE;LWPOLYLINE;CIRCLE;REGION;3DSOLID
;;;不适用的实体:POLYLINE(3维曲面)
;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
;;aat逐选面积标注
;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
(DEFUN Cat (/ txth sc t key aa p1 p2 pt1)
(princ "\naad逐选面积标注--------lxx.2001.2m")
(if (null(setq txth(getdist "\n字高<300>:")))(setq txth 300));缺省字高300
(if (null(setq sc (getdist "\n标注单位换算1=<1000>mm:")))(setq sc 1000))
(setq t "true")
(while t
(setq key (getstring "\neXit-X/点取区域点-A/<选封闭实体>:"))
(cond
((or(= key "x")(= key "X"))(setq t nil));xX
((= key "");<>---enter;mouse(right botton)
(progn
(while (setq ent(car(entsel)))
(command "area" "o" ent "")
(setq aa (getvar "area"))
(bz)
)))
((or(= key "a")(= key "A"));;;aA
(progn
(while (setq p1 (getpoint"\n第一点:"))
(command "area" p1)
(while (setq p2(getpoint "\n下一点:"))
(command p2)
)
(command "")
(setq aa (getvar "area"))
(bz)
))));;;cond
)(princ);;;while
)
;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
;;aad多选面积标注
;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
(defun cad (/ txth sc key ss i aa ent pt1)
(princ "\naad-多选面积标注-------lxx2001.2m")
(if (null(setq txth(getdist "\n字高<300>:")))(setq txth 300));缺省字高300
(if (null(setq sc (getdist "\n标注单位换算1=<1000>mm:")))(setq sc 1000))
(setq key (getstring "\n面积求和-A/<分别标注面积>:"))
(princ "\n选封闭实体集ss:")
(setq ss (ssget) i 0)
(cond
((or(= key "a")(= key "A"));aA
(progn
(command "area" "a" "o")
(repeat (sslength ss)
(setq ent (ssname ss i))
(command ent)
(setq i (+ 1 i))
)
(command "" "")
(setq aa (getvar "area"))
(bz)
)
)
((= key "");<>---enter;mouse(right botton)
(progn
(repeat (sslength ss)
(setq ent(ssname ss i))
(command "area" "o" ent)
(setq aa (getvar "area") i (+ 1 i))
(redraw ent 3)
(bz)(redraw ent 4)
)
)
) );cond
(princ "\n标注完成!")(princ)
)
;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
;;;;(通)标注面积----bz
;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
(defun bz()
(setq aa (/ aa (* sc sc)))
(setq pt1 (getpoint "\n标注点:"))
(command "text" "J" "c" pt1 txth "0" (strcat (rtos aa 2 3) "M" "%%132"))
)
;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
(princ "\naat-逐选面积标注;aad-多选面积标注-------lxx2001.2m")(princ)
论坛插件加载方法
发帖求助前要善用【论坛搜索】功能,那里可能会有你要找的答案;
如果你在论坛求助问题,并且已经从坛友或者管理的回复中解决了问题,请把帖子标题加上【已解决】;
如何回报帮助你解决问题的坛友,一个好办法就是给对方加【D豆】,加分不会扣除自己的积分,做一个热心并受欢迎的人!
回复 支持 反对

举报

已领礼包: 593个

财富等级: 财运亨通

发表于 2002-1-25 00:55:40 | 显示全部楼层
试试这个,http://www.fspdi.com/forum/showthread.php?s=&threadid=1038
论坛插件加载方法
发帖求助前要善用【论坛搜索】功能,那里可能会有你要找的答案;
如果你在论坛求助问题,并且已经从坛友或者管理的回复中解决了问题,请把帖子标题加上【已解决】;
如何回报帮助你解决问题的坛友,一个好办法就是给对方加【D豆】,加分不会扣除自己的积分,做一个热心并受欢迎的人!
回复 支持 反对

举报

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

举报

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

本版积分规则

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

GMT+8, 2025-4-23 13:42 , Processed in 0.203603 second(s), 46 queries , Gzip On.

Powered by Discuz! X3.5

© 2001-2025 Discuz! Team.

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