明经CAD社区

 找回密码
 注册

QQ登录

只需一步,快速开始

搜索
查看: 2114|回复: 6

[求助]编程申请:检查桩间距

[复制链接]
发表于 2010-4-23 13:21:00 | 显示全部楼层 |阅读模式
思路:框选图中的圆(桩),计算圆心间的距离,当大于设置的半径的N倍时,作出标记,提出桩间距超出规范规定。

发表于 2010-4-23 14:13:00 | 显示全部楼层

应该叫“邻居太远”

(defun c:ttt ( / ss d n es e)
  (defun dxf1 ( k lst) (cdr (assoc k lst)))
  (if (and (setq ss (ssget))
    (setq d (getdist "最大距离:"))
      )
      (progn
  (setq n -1)
  (repeat (sslength ss) (setq es (cons (ssname ss (setq n (+ n 1))) es)))   
         (foreach e es      
            (if (not (apply 'or (vl-remove-if '(lambda (x) (> (distance (dxf1 10 (entget e)) (dxf1 10 (entget x))) d)) (vl-remove e es))))
                (command "change" e "" "p" "c" 1 "")
         )  )
       )
   )
)

 楼主| 发表于 2010-9-3 09:39:00 | 显示全部楼层
这只是一个思路吧,运行命令没有反应啊?而且和我的要求也不太相符啊,呵呵
发表于 2013-11-19 10:51:44 | 显示全部楼层
规范是控制最小间距,应该修改一下,当小于设置的半径的N倍时,作出标记,提出桩间距超出规范规定。
发表于 2013-11-19 11:19:59 | 显示全部楼层
本帖最后由 NJZX05 于 2013-11-19 11:22 编辑

(defun C:test(/ R N SEnt DEnt SPt DPt)
  (vl-load-com)
  (setq N (getint "\n请输入倍数N:"))
  (while (/= (vla-get-objectname (setq SEnt (vlax-Ename->vla-object (car (entsel "\n请选择起始桩:"))))) "AcDbCircle") nil)
  (while (/= (vla-get-objectname (setq DEnt (vlax-Ename->vla-object (car (entsel "\n请选择下一桩:"))))) "AcDbCircle") nil)
  (setq R (vlax-get SEnt 'Radius))
  (if (equal R (vlax-get DEnt 'Radius) 1E-10);;这里的1E-10是控制精度
    (progn
      (setq R (* N R))
      (setq SPt (vlax-get SEnt 'Center) DPt (vlax-get DEnt 'Center))
      (if (> (distance SPt DPt) R)
        (progn
          (prompt "\n桩间距超出规范规定!!!")
          (vla-put-color SEnt 1)
          (vla-put-color DEnt 1)
          )
        (prompt "\n桩间距符合规范规定.")
        );;if
      );;progn
    (prompt "\n桩径不等,程序结束!")
    );;if 半径不等
);;defun
发表于 2013-11-19 14:37:57 | 显示全部楼层
本帖最后由 nbiao 于 2013-11-19 14:54 编辑

这个思路行不? 根据圆心画出三角网,遍历三角网边长把短边标红画出来就行

这个倒是改改我的现成代码就用了


不怎么上论坛,感兴趣可以一起探讨, 扣扣 516三二八九14

本帖子中包含更多资源

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

x
发表于 2013-11-19 21:46:22 | 显示全部楼层
这个还真不好控制啊,我觉得,应该是这样的,布置承台的时候,就已经布置好了桩,只要控制好一个承台范围内的桩满足间距要求即可了。框选承台,在承台里判断,会好很多
您需要登录后才可以回帖 登录 | 注册

本版积分规则

小黑屋|手机版|CAD论坛|CAD教程|CAD下载|联系我们|关于明经|明经通道 ( 粤ICP备05003914号 )  
©2000-2023 明经通道 版权所有 本站代码,在未取得本站及作者授权的情况下,不得用于商业用途

GMT+8, 2025-5-26 05:34 , Processed in 0.199486 second(s), 27 queries , Gzip On.

Powered by Discuz! X3.4

Copyright © 2001-2021, Tencent Cloud.

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