;;; ================================== ;;; |  统计钢筋分排数 | ;;; | Update:2007-06-28 | ;;; | [涂墙之处] | ;;; | [同是土木人论坛] | ;;; | [它山之石图形工作室] | ;;; ================================== ;| 1、支持全选 2、支持交互选择 3、支持写出统计结果 4、支持不写出时在命令行显示 5、支持“TEXT”实体 6、支持所有图层 7、很无耻的不支持“MTEXT”、“BLOCK”、“XREF”等 8、支持所有CAD版本 9、准源码,欢迎转载,RP及口德不佳者无视 10、运行速度慢,一张地下室顶板要20分钟左右,还需要完善 |; (defun c:GJFPS (/ shuliang gangjin lst pt1 pt2 ss fenpai pt str) (setq shuliang '("10%%13225" "10\U+008425" "11%%13225" "11\U+008425" "12%%13225" "12\U+008425" "13%%13225" "13\U+008425" "14%%13225" "14\U+008425" "15%%13225" "15\U+008425" "16%%13225" "16\U+008425" "17%%13225" "17\U+008425" "18%%13225" "18\U+008425" "19%%13225" "19\U+008425" "20%%13225" "20\U+008425" "21%%13225" "21\U+008425" "22%%13225" "22\U+008425" "23%%13225" "23\U+008425" "24%%13225" "24\U+008425" "10%%13228" "10\U+008428" "11%%13228" "11\U+008428" "12%%13228" "12\U+008428" "13%%13228" "13\U+008428" "14%%13228" "14\U+008428" "15%%13228" "15\U+008428" "16%%13228" "16\U+008428" "17%%13228" "17\U+008428" "18%%13228" "18\U+008428" "19%%13228" "19\U+008428" "20%%13228" "20\U+008428" ) fenpai '("2/5" "2/6" "2/7" "2/8" "2/9" "2/10" "2/11" "2/12" "2/13" "2/14" "2/15" "2/16" "3/4" "3/5" "3/6" "3/7" "3/8" "3/9" "3/10" "3/11" "3/12" "3/13" "3/14" "3/15" "3/16" "4/3" "4/4" "4/5" "4/6" "4/7" "4/8" "4/9" "4/10" "4/11" "4/12" "4/13" "4/14" "4/15" "4/16" "5/2" "5/3" "5/4" "5/5" "5/6" "5/7" "5/8" "5/9" "5/10" "5/11" "5/12" "5/13" "5/14" "5/15" "5/16" "6/3" "6/4" "6/5" "6/5/3" "6/5/2" "6/6" "6/6/2" "6/6/3" "6/6/4" "6/6/5" "6/7" "6/8" "6/9" "6/10" "6/11" "6/12" "6/13" "6/14" "6/15" "6/16" "7/2" "7/3" "7/4" "7/5" "7/5/3" "7/6" "7/6/5" "7/6/4" "7/6/3" "7/6/2" "7/7" "7/7/6" "7/8" "7/9" "7/10" "7/11" "7/12" "7/13" "7/14" "7/15" "7/16" "8/2" "8/3" "8/4" "8/5" "8/6" "8/6/2" "8/6/3" "8/6/4" "8/6/5" "8/7" "8/7/2" "8/7/5" "8/7/6" "8/8" "8/8/2" "8/8/3" "8/8/4" "8/8/5" "8/9" "8/10" "8/11" "8/12" "8/13" "8/14" "8/15" "8/16" "9/2" "9/3" "9/4" "9/5" "9/6" "9/7" "9/8" "9/9" "9/10" "9/11" "9/12" "9/13" "9/14" "9/15" "9/16" "10/2" "10/3" "10/4" "10/5" "10/6" "10/7" "10/8" "10/9" "10/10" "10/11" "10/12" "10/13" "10/14" "10/15" "10/16" "11/2" "11/3" "11/4" "11/5" "11/11" "11/12" "11/13" "11/14" "11/15" "12/2" "12/3" "12/4" "12/12" "12/13" ) ) ; _ 结束setq (if (setq pt1 (getpoint "\n请点取选择范围的第一点:<全选>")) (setq pt2 (getcorner pt1 "\n第二点:<退出>")) ) ; _ 结束if (if (and pt1 (not pt2) ) (exit) (setq pt (getpoint "\n写入点:<退出>")) ) ; _ 结束if (foreach x shuliang (foreach y fenpai (setq gangjin (strcat x " " y) ss (if (and pt1 pt2 ) (ssget "w" pt1 pt2 (list (cons 0 "TEXT") (cons 1 (strcat "*"gangjin "*" ) ) ) ) ; _ 结束ssget (ssget "x" (list (cons 0 "TEXT") (cons 1 (strcat "*"gangjin"*" ) ) ) ) ; _ 结束ssget ) ; _ 结束if ) ; _ 结束setq (if ss (progn (setq ss (sslength ss) str (if (member y '("6" "8")) (strcat gangjin " " (rtos ss 2 0)) (strcat gangjin " " (rtos ss 2 0)) ) ; _ 结束if ss (list (list gangjin ss)) lst (append ss lst ) pt (if pt (polar pt (* pi 0.5) (* 1.2 (getvar "textsize"))) ) ) ; _ 结束setq (if pt (command "_.text" pt "" "" str) (princ (strcat "\n" str)) ) ; _ 结束if ) ; _ 结束progn ) ; _ 结束if ) ; _ 结束foreach ) ; _ 结束foreach (princ (strcat "\n*** 统计图中钢筋分排数***")) (princ (strcat "\n ")) (princ) ) ;;; _ 结束defun