绘制岩棉的程序,但是绘制完成后的厚度方向向下,怎么能改成厚度方向向上???
绘制岩棉的程序,但是绘制完成后的厚度方向向下,怎么能改成厚度方向向上???(defun c:ym (/ acadobj ang ang_fx doc h i lst mark modelspace n plineobj points pt_end pt_start pt1 pt2 pt3 pt4 pt5 ptlist rad)
(setvar "CMDECHO" 0)
(vl-cmdf "undo" "be")
(setq acadObj (vlax-get-acad-object))
(setq doc (vla-get-ActiveDocument acadObj))
(setq layers(vla-get-Layers doc))
(setq modelSpace (vla-get-ModelSpace doc))
(setq pt_start (getpoint "\n输入插入基点:"))
(setq pt_end (getpoint pt_start "\n输入岩棉的终点:"))
(setq ang (angle pt_start pt_end))
(while (null mark)
(setq h(getdist pt_end "\n输入岩棉的厚度:"))
(if (null h) (setq h 100))
(setq ang_fx(angle pt_start (cadr(grread 5))))
(setq mark t)
)
(setq n (fix (/ (distance pt_start pt_end) (* 0.2 h))))
(setq rad (/ (distance pt_start pt_end) n 2))
(setq pt1 pt_start ptlist '() lst '() i 0)
(if (and (> ang_fx ang) ( ang_fx ang) (< ang_fx (+ ang pi)))
(repeat n
(vla-SetBulge plineObj i 0.42)(setq i(+ i 2))
(vla-SetBulge plineObj i -0.42)(setq i(+ i 1))
(vla-SetBulge plineObj i -0.42)(setq i(+ i 2))
(vla-SetBulge plineObj i 0.42)(setq i(+ i 2))
)
(repeat n
(vla-SetBulge plineObj i -0.42)(setq i(+ i 2))
(vla-SetBulge plineObj i 0.42)(setq i(+ i 1))
(vla-SetBulge plineObj i 0.42)(setq i(+ i 2))
(vla-SetBulge plineObj i -0.42)(setq i(+ i 2))
)
)
(if (not (tblobjname "layer" "F-ANNO-HATH"))
(progn
(setq newlayerobj(vla-add layers "F-ANNO-HATH" ))
(vla-put-Color newlayerobj 254)
(vla-put-Linetype newlayerobj "Continuous")
(vla-put-Lineweight newlayerobj acLnWt015)
(vla-put-Description newlayerobj "填充-不灰化")
)
)
(vla-put-Layer plineObj "F-ANNO-HATH")
(vl-cmdf "undo" "e")
(prompt "\n已完成岩棉绘制")
(princ)
)
(prompt "\n已成功加载岩棉绘制程序,快捷键【YM】")
(princ) 顶起!!!!!!!
页:
[1]