- 积分
- 32826
- 明经币
- 个
- 注册时间
- 2005-5-16
- 在线时间
- 小时
- 威望
-
- 金钱
- 个
- 贡献
-
- 激情
-
|
发表于 2011-1-14 13:19:53
|
显示全部楼层
动态信息查询源程序(1)
- ;;;动态信息
- ;;;Copyrignt chengqiang Lin 2009 for mengyang(作者:林承强)
- (defun c:vh ()
- (setq AcadObject (vlax-get-acad-object)
- AcadDocument (vla-get-ActiveDocument Acadobject)
- mSpace (vla-get-ModelSpace Acaddocument)
- )
- (defun DEL_DD ()
- (if (/= SOLD_list nil)
- (progn
- (if (/= ENT_SELP nil)
- (entupd ENT_SELP_1)
- (princ)
- )
- (entdel SOLD_list)
- (entdel SOLD_list_t1)
- (entdel SOLD_list_t2)
- (entdel SOLD_list_t3)
- (entdel SOLD_list_t4)
- (entdel SOLD_list_t5)
- (setq SOLD_list nil)
- )
- (princ)
- )
- )
- (setq *error* VHerror)
- (princ "\n-->移动鼠标到任意对象可查询信息,按右键退出:")
- (setq tt nil)
- (while (= tt nil)
- (setq VIEW (getvar "viewsize"))
- (setq ENT_PT1 (grread t 1))
- (DEL_DD)
- (if (or (= (car ENT_PT1) 5) (= (car ENT_PT1) 12))
- (progn
- (setq ENT_PT2 (car (cdr ENT_PT1)))
- (setq ENT_SELP (ssget ENT_PT2))
- (if (/= ENT_SELP nil)
- (progn
- (setq ENT_SELP_1 (ssname ENT_SELP 0))
- (setq pt1 ENT_PT2)
- (redraw (ssname ENT_SELP 0) 3)
- (setq ENT_S (entget (ssname ENT_SELP 0)))
- (setq entovlx (vlax-ename->vla-object (ssname ENT_SELP 0)))
- (setq ENT_MS (cdr (assoc 0 ENT_S)))
- (cond ((= ENT_MS "LINE")
- (setq t1 "【直线】")
- (setq t2 (strcat "长度:"
- (rtos (vla-get-Length entovlx)
- )
- )
- )
- (setq t3
- (strcat "角度:"
- (rtos (/ (* (angle (cdr (assoc 10 ENT_S))
- (cdr (assoc 11 ENT_S))
- )
- 180
- )
- pi
- )
- )
- )
- )
- (setq t4
- (strcat
- "起点:"
- (strcat (rtos (car (cdr (assoc 10 ENT_S))) 2 2)
- ","
- (rtos (cadr (cdr (assoc 10 ENT_S))) 2 2)
- ","
- (rtos (caddr (cdr (assoc 10 ENT_S))) 2 2)
- )
- )
- )
- (setq t5
- (strcat
- "终点:"
- (strcat (rtos (car (cdr (assoc 11 ENT_S))) 2 2)
- ","
- (rtos (cadr (cdr (assoc 11 ENT_S))) 2 2)
- ","
- (rtos (caddr (cdr (assoc 11 ENT_S))) 2 2)
- )
- )
- )
- )
- ((= ENT_MS "INSERT")
- (setq t1 "【图块】")
- (setq t2 (strcat "块名:" (cdr (assoc 2 ENT_S))))
- (setq
- t3 (strcat "角度:" (angtos (cdr (assoc 50 ENT_S))))
- )
- (setq t4 (strcat "图层:" (cdr (assoc 8 ENT_S))))
- (setq t5
- (strcat
- "基点:"
- (strcat (rtos (car (cdr (assoc 10 ENT_S))) 2 2)
- ","
- (rtos (cadr (cdr (assoc 10 ENT_S))) 2 2)
- ","
- (rtos (caddr (cdr (assoc 10 ENT_S))) 2 2)
- )
- )
- )
- )
- ((= ENT_MS "TEXT")
- (setq t1 "【文字】")
- (setq t2 (strcat "内容:" (cdr (assoc 1 ENT_S))))
- (setq t3 (strcat "文字样式:" (cdr (assoc 7 ENT_S))))
- (setq t4 (strcat "文字高度:" (rtos (cdr (assoc 40 ENT_S)))))
- (setq t5
- (strcat
- "基点:"
- (strcat (rtos (car (cdr (assoc 10 ENT_S))) 2 2)
- ","
- (rtos (cadr (cdr (assoc 10 ENT_S))) 2 2)
- ","
- (rtos (caddr (cdr (assoc 10 ENT_S))) 2 2)
- )
- )
- )
- )
- ((= ENT_MS "DIMENSION")
- (setq t1 "【标注尺寸】")
- (setq t2 (strcat "内容:" (cdr (assoc 1 ENT_S))))
- (setq t3 (strcat "标注样式:" (cdr (assoc 3 ENT_S))))
- (setq t4 (strcat "图层:" (cdr (assoc 8 ENT_S))))
- (setq t5
- (strcat
- "基点:"
- (strcat (rtos (car (cdr (assoc 10 ENT_S))) 2 2)
- ","
- (rtos (cadr (cdr (assoc 10 ENT_S))) 2 2)
- ","
- (rtos (caddr (cdr (assoc 10 ENT_S))) 2 2)
- )
- )
- )
- )
- ((= ENT_MS "MTEXT")
- (setq t1 "【多行文字】")
- (setq t2 (strcat "图层:" (cdr (assoc 8 ENT_S))))
- (setq t3 (strcat "文字样式:" (cdr (assoc 7 ENT_S))))
- (setq t4 (strcat "文字高度:" (rtos (cdr (assoc 40 ENT_S)))))
- (setq t5
- (strcat
- "基点:"
- (strcat (rtos (car (cdr (assoc 10 ENT_S))) 2 2)
- ","
- (rtos (cadr (cdr (assoc 10 ENT_S))) 2 2)
- ","
- (rtos (caddr (cdr (assoc 10 ENT_S))) 2 2)
- )
- )
- )
- )
- ((= ENT_MS "HATCH")
- (setq t1 "【边界填充】")
- (setq t2 (strcat "图层:" (cdr (assoc 8 ENT_S))))
- (setq t3 (strcat "填充样式:" (cdr (assoc 2 ENT_S))))
- (setq t4 (strcat "填充比例:" (rtos (cdr (assoc 41 ENT_S)))))
- (setq t5
- (strcat
- "基点:"
- (strcat (rtos (car (cdr (assoc 10 ENT_S))) 2 2)
- ","
- (rtos (cadr (cdr (assoc 10 ENT_S))) 2 2)
- ","
- (rtos (caddr (cdr (assoc 10 ENT_S))) 2 2)
- )
- )
- )
- )
- ((= ENT_MS "LWPOLYLINE")
- (setq t1 "【多段线】")
- (setq t2 (strcat "图层:" (cdr (assoc 8 ENT_S))))
- (setq t3 (strcat "长度:"
- (rtos (vla-get-Length entovlx)
- )
- )
- )
- (setq t4 (strcat "面积:" (rtos (vla-get-Area entovlx))))
- (setq t5
- (strcat
- "起点:"
- (strcat (rtos (car (cdr (assoc 10 ENT_S))) 2 2)
- ","
- (rtos (cadr (cdr (assoc 10 ENT_S))) 2 2)
- ","
- (rtos 0)
- )
- )
- )
- )
- ((= ENT_MS "CIRCLE")
- (setq t1 "【圆】")
- (setq t2 (strcat "图层:" (cdr (assoc 8 ENT_S))))
- (setq t3 (strcat "直径:" "%%C"(rtos (* (cdr (assoc 40 ENT_S)) 2 ))))
- (setq t4 (strcat "面积:" (rtos (vla-get-Area entovlx))))
- (setq t5
- (strcat
- "圆心:"
- (strcat (rtos (car (cdr (assoc 10 ENT_S))) 2 2)
- ","
- (rtos (cadr (cdr (assoc 10 ENT_S))) 2 2)
- ","
- (rtos 0)
- )
- )
- )
- )
- ((= ENT_MS "ARC")
- (setq t1 "【圆弧】")
- (setq t2 (strcat "图层:" (cdr (assoc 8 ENT_S))))
- (setq t3 (strcat "半径:" "R"(rtos(cdr (assoc 40 ENT_S)))))
- (setq t4 (strcat "长度:" (rtos (vla-get-ArcLength entovlx))))
- (setq t5
- (strcat
- "圆心:"
- (strcat (rtos (car (cdr (assoc 10 ENT_S))) 2 2)
- ","
- (rtos (cadr (cdr (assoc 10 ENT_S))) 2 2)
- ","
- (rtos 0)
- )
- )
- )
- )
- ((= ENT_MS "ELLIPSE")
- (setq t1 "【椭圆】")
- (setq t2 (strcat "图层:" (cdr (assoc 8 ENT_S))))
- (setq t3 (strcat "半径比例:" (rtos (vla-get-RadiusRatio entovlx))))
- (setq t4 (strcat "面积:" (rtos (vlax-curve-getArea entovlx))))
- (setq t5
- (strcat
- "中心点:"
- (strcat (rtos (car (cdr (assoc 10 ENT_S))) 2 2)
- ","
- (rtos (cadr (cdr (assoc 10 ENT_S))) 2 2)
- ","
- (rtos 0)
- )
- )
- )
- )
- ((= ENT_MS "TOLERANCE")
- (setq t1 "【公差】")
- (setq t2 (strcat "图层:" (cdr (assoc 8 ENT_S))))
- (setq t3 (strcat "标注样式:" (cdr (assoc 3 ENT_S))))
- (setq t4 (strcat "空间:" "模型空间"))
- (setq t5
- (strcat
- "基点:"
- (strcat (rtos (car (cdr (assoc 10 ENT_S))) 2 2)
- ","
- (rtos (cadr (cdr (assoc 10 ENT_S))) 2 2)
- ","
- (rtos 0)
- )
- )
- )
- )
- ((= ENT_MS "LEADER")
- (setq t1 "【箭头】")
- (setq t2 (strcat "图层:" (cdr (assoc 8 ENT_S))))
- (setq t3 (strcat "标注样式:" (cdr (assoc 3 ENT_S))))
- (setq t4 (strcat "颜色:" (rtos (vla-get-DimensionLineColor entovlx))))
- (setq t5
- (strcat
- "基点:"
- (strcat (rtos (car (cdr (assoc 10 ENT_S))) 2 2)
- ","
- (rtos (cadr (cdr (assoc 10 ENT_S))) 2 2)
- ","
- (rtos 0)
- )
- )
- )
- )
- ((= ENT_MS "SPLINE")
- (setq t1 "【样条曲线】")
- (setq t2 (strcat "图层:" (cdr (assoc 8 ENT_S))))
- (setq t3 (strcat "长度:" (rtos (vla-get-ArcLength entovlx))))
- (setq t4 (strcat "长度:"
- (rtos (vlax-curve-getEndParam entovlx)
- )
- )
- )
- (setq t5 (strcat "空间:" (cdr (assoc 410 ENT_S))))
- )
-
|
|