这将作为一个非常简单的2D平面来完成你想要的,没有动画,我们用它检查车辆的车道入口,在垂直的意义上,以确保汽车没有底部出来。随着延迟,它显示为动画。
你需要更换Holden。dwg,澳大利亚汽车块,叉车形状为块,这里的关键是插入点是前轮接触地面,轴距是硬编码的,因此您也需要更改。您可以添加一个“延迟”,以便在运行时它看起来像是动画,而不是splat结果。代码是为metric编写的,但您可以快速重新缩放脚部平面图,因为我从未在脚部进行过测试。
好吧,我把它重新定义为一个非常愚蠢的叉车,有一个16英尺宽的物体。图像间距为1.0,我建议编辑我的dwg。制作了一个简单的3d,并有一个思考脚的版本。见红色pline是叉车的路径。
另一种方法是使用自动翻转或CIV3d中内置的车辆检查器,但不知道叉车形状。不知道你怎么才能做出自己的形状。
- (Defun draw_vehicle ( )
- (SETQ ANGBASEE (GETVAR "ANGBASE"))
- (SETQ ANGDIRR (GETVAR "ANGDIR"))
- (SETQ LUNITSS (GETVAR "LUNITS"))
- (SETQ LUPRECC (GETVAR "LUPREC"))
- (SETQ AUNITSS (GETVAR "AUNITS"))
- (SETQ AUPRECC (GETVAR "AUPREC"))
- (setq oldsnap (getvar "osmode"))
- (SETVAR "LUNITS" 2)
- (SETVAR "ANGBASE" 0.0)
- (SETVAR "ANGDIR" 0)
- (SETVAR "LUPREC" 0)
- (SETVAR "AUNITS" 3)
- (SETVAR "AUPREC" 0)
- (setvar "osmode" 0)
- (if (tblsearch "Block" "Fork")
- (princ "Holden")
- (progn
- (command "Insert" "p:\\Autodesk\\vba\\holdencar.dwg" "0,0" 1 1 0)
- ;(command "erase" "last" "")
- ) ; progn
- )
- (setq obj (vlax-ename->vla-object (car (entsel "\nPick Pline"))))
- (setq interval ( getreal "\nEnter spacing m:"))
- (setq cRad 1.5) ; forklift wheel base
- (setq startang (* pi 1.5))
- (setq endang (/ pi 2.0))
- (setq dist 0.0)
- (setq len (vla-get-length obj))
- (setq stpt (vlax-curve-getpointatdist obj interval))
- (setq num (+ 1 (fix ( / len interval))))
- (repeat num
- (command "arc" "C" stpt (polar stpt endang crad)(polar stpt startang crad))
- (setq objarc (vlax-ename->vla-object (entlast)))
- (if (= (setq intpt (vlax-invoke obj 'intersectWith objarc acExtendnone)) nil)
- (setq intpt (vlax-invoke obj 'intersectWith objarc acExtendThisEntity)) ; needed at start
- )
- (vla-delete objarc)
- (setq ang (angle intpt stpt))
- (command "Insert" "Fork" stpt 1 1 ang) ; need ang in radians
- (setq stpt (vlax-curve-getpointatdist obj (setq dist (+ dist interval))))
- (command "delay" 500) ; change this for speed of drawing
- ; (command "erase" "L" "") if you want 1 at a time
- ) ; repeat
- (SETVAR "LUNITS" lunitss)
- (SETVAR "ANGBASE" angbasee)
- (SETVAR "ANGDIR" angdirr)
- (SETVAR "LUPREC" luprecc)
- (SETVAR "AUNITS" aunitss)
- (SETVAR "AUPREC" auprecc)
- (princ)
- ) ; defun
- (draw_vehicle)
叉车。图纸
|