liinsh 发表于 2006-8-16 11:18:25

[原创]:自己写的汽车坡道绘制,用于辅助设计

自己写的汽车坡道绘制,用于辅助设计。每次计算坡道长度挺烦的,就自己写了个简易的坡道绘制程序。有两个程序,一个适用于国标,另一个适用于上海,各位看看,好用的话就捧个人场。
;;;;国标坡道绘制
(defun c:z_pdhz        (/   pd-high           pd-lenth    p1    p2           p3       p4
               p5    p6    p7           p1x       p1y   p2x   p2y   p3x       p3y
               p4x   p4y   p5x   p5y       p6x   p6y   p7x   p7y
                )
(setvar "cmdecho" 0)
(setvar "dimzin" 0)
(setvar "osmode" 0)
(setq pd-high (getreal "坡道高度:"))
(setq pd-lenth (+ (/ (- pd-high 540.0) 0.15) 7200.0))
(setq pd-lenth (rtos (* pd-lenth 0.001) 2 3))
(setq pd-lenth (strcat "坡道长度=" pd-lenth "m"))
(princ pd-lenth)
(setq p1 (getpoint "\n点取插入点"))
(setq        p1x (car p1)
        p1y (cadr p1)
)
(setq        p2x (+ p1x 3600.0)
        p2y (+ p1y 270.0)
)
(setq        p3x (+ p2x (/ (- pd-high 540.0) 0.15))
        p3y (+ p2y (- pd-high 540.0))
)
(setq        p4x (+ p3x 3600.0)
        p4y (+ p3y 270.0)
)
(setq p5x p2x)
(setq p5y p1y)
(setq p6x p3x)
(setq p6y p1y)
(setq p7x p4x)
(setq p7y p1y)
(setq        p2 (list p2x p2y)
        p3 (list p3x p3y)
        p4 (list p4x p4y)
        p5 (list p5x p5y)
        p6 (list p6x p6y)
        p7 (list p7x p7y)
)
(command "undo" "begin")
(command "_.line" p1 p2 p3 p4 p7 p1 "")
(command "_.line" p2 p5 "")
(command "_.line" p3 p6 "")
(command "undo" "end")
(setvar "dimzin" 8)
(setvar "osmode" 699)
(princ)
)

;;;;上海坡道绘制
(defun c:z_shpd        (/   pd-high           pd-lenth    p1    p2           p3       p4
               p5    p6    p7           p1x       p1y   p2x   p2y   p3x       p3y
               p4x   p4y   p5x   p5y       p6x   p6y   p7x   p7y
                )
(setvar "cmdecho" 0)
(setvar "dimzin" 0)
(setvar "osmode" 0)
(setq pd-high (getreal "坡道高度(mm):"))
(setq pd-lenth (+ (/ (- pd-high 560.0) 0.16) 7000.0))
(setq pd-lenth (rtos (* pd-lenth 0.001) 2 3))
(setq pd-lenth (strcat "坡道长度=" pd-lenth "m"))
(princ pd-lenth)
(setq p1 (getpoint "\n点取插入点"))
(setq        p1x (car p1)
        p1y (cadr p1)
)
(setq        p2x (+ p1x 3500.0)
        p2y (+ p1y 280.0)
)
(setq        p3x (+ p2x (/ (- pd-high 560.0) 0.16))
        p3y (+ p2y (- pd-high 560.0))
)
(setq        p4x (+ p3x 3500.0)
        p4y (+ p3y 280.0)
)
(setq p5x p2x)
(setq p5y p1y)
(setq p6x p3x)
(setq p6y p1y)
(setq p7x p4x)
(setq p7y p1y)
(setq        p2 (list p2x p2y)
        p3 (list p3x p3y)
        p4 (list p4x p4y)
        p5 (list p5x p5y)
        p6 (list p6x p6y)
        p7 (list p7x p7y)
)
(command "undo" "begin")
(command "_.line" p1 p2 p3 p4 p7 p1 "")
(command "_.line" p2 p5 "")
(command "_.line" p3 p6 "")
(command "undo" "end")
(setvar "dimzin" 8)
(setvar "osmode" 699)
(princ)
)

dhcad 发表于 2006-8-16 15:47:58

方便,支持

yindaming 发表于 2006-8-16 16:51:46

不错,提个建议阿!
1,坡道高度可否图上拾取?
2,中间15%坡道段可否提示输入不同坡度值?
3,如果都可实现,建议理正增加进去。

huyong 发表于 2006-8-17 18:09:14

不错,建议增加由主坡道值来调节水平段的长度。

xmchy 发表于 2006-8-23 13:56:50

怎么画出的东西是斜的,而且不知道是否包括了两边的缓坡道,坡度是中间段的1半

liinsh 发表于 2006-8-24 07:16:30

写这个程序的初衷是要简单的查看一下最短的符合规范的坡道长度,所以就没添加任何参数,这样的程序可以很快的执行,具体画坡道的详图时这个程序也过于简单了些。至于有tx问画出来的怎么是个斜线,因为程序画的是剖面的坡道示意,已经是包含了前后的缓坡段。说明一下,本程序只考虑了小车道的情况 。

downhh 发表于 2021-10-25 09:58:40

这个坡道的坡度是固定的吗?
页: [1]
查看完整版本: [原创]:自己写的汽车坡道绘制,用于辅助设计