土木在线论坛 \ 建筑设计 \ CAD下载及教程 \ 悬赏:自动"排水平面"生成"排水系统"(未完成)

悬赏:自动"排水平面"生成"排水系统"(未完成)

发布于:2007-11-20 14:51:20 来自:建筑设计/CAD下载及教程 [复制转发]
程序如下:
(princ "平面变系统")
(princ "
*^_^* ")
(defun c:lo()
(setq p0(getpoint "
选取系统点")
p1(getpoint"
选取顶层其点")
cir1(ssget ’((0 . "circle")));选取立管
lin1(ssget ’((0 . "line")));选取线
cir_n(sslength cir1)
lin_n(sslength lin1)
n1 -1
n2 -1)
(if(<= cir_n lin_n)
(progn
(repeat cir_n
(setq cir_nam(ssname cir1 (+ n1 1))
cir_p1(cdr(assoc 10 (entget cir_nam))))
(setq lin_n1 0)
(while (< lin_n1 lin_n)
(setq lin_n1(+ lin_n1 1))
(setq lin_nam(ssname lin1 (+ n2 1))
lin_p1(cdr(assoc 10 (entget lin_nam))))
(if(<(distance cir_p1 lin_p1)110) ;判别圆内是否有直线 有1,无2
(progn
(setq or1 1)
(setq lin_n1 (+ lin_n 1))
(command "copy" lin_nam """m" cir_p1 p0"")
)
(progn
(setq or1 2)))
)
(princ or1)
(if(= or1 1)
(princ"
直线上")
(princ "
拐弯了"))
)
;(setq p0 ’((+(car p0) 3000)(cadr p0)0.0))
))
)
步骤:
1)平面取一点
2)取(某一)平面图中所有立管(即圆)
3)再取此平面中的排水横管
思路:根据立管是否有引出管线(或引入管)生成系统。
情况1)立管位置无引出或引入管,在图中相应位置生成上引或下引约3.0米的直线;
情况2)有引出管(圆边连有管线),copy出所连管线(可能不止一条)到图的其它相应位置,转成系统图式,且上引直线;有管线连到圆内的,下引直线。就此生成系统图。
以上程序存在问题:无法识别哪个立管连有管线,哪个没有。请哪位高手帮忙分析一下,在此谢过了!!

1195541500958.JPG

全部回复(16 )

只看楼主 我来说两句
  • shlejie
    shlejie 沙发
    我也想要自动生成纵断面图的软件,但程序我不懂.
    2009-09-18 16:18:18

    回复 举报
    赞同0
  • skylj4
    skylj4 板凳
    多是高手啊
    我本人多用天正的,
    没想到高人们多是自己编程的呀!!
    2009-03-10 22:32:10

    回复 举报
    赞同0
加载更多
这个家伙什么也没有留下。。。

CAD下载及教程

返回版块

52.08 万条内容 · 666 人订阅

猜你喜欢

阅读下一篇

用天正画多线如何让十字架以两线中间为中延伸?

用天正画角钢如何让十字架以两线中间为中延伸?多谢指教!!!

回帖成功

经验值 +10