Ea 发表于 2004-2-10 13:36:00

(- 0 dist) -> (- dist)


建议(个人习惯)


        (if (setq ss ....)


               (vlax-for .....


       )


)

无痕 发表于 2004-2-10 13:56:00

谢谢,哦对了。昨晚我没注意看信息。谢谢你给的链接

hkzwsy 发表于 2004-2-10 15:43:00

将偏移距离改成复制距离应该怎样修改楼上的程序?

3stone 发表于 2004-2-12 16:26:00

能否实现这样细节:(如图)


1、提示选择中心线,然后提示输入三个距离(由里向外的道路断面:车行道,人行道,绿带:a ,b,c。其中b和c 可以为0。)生成的三对直线分别在相应的图层上。


如果b和c为0,就只OFFSET车行路宽a.同理,c=0,a 和b不为0.


2、另外,第二次运行命令时提示输入距离的时候,系统显示上次的距离为默认,当然也可重新输入新距离。

BDYCAD 发表于 2004-2-12 16:57:00

第一個要改的改程序要長點哦. 這些天忙閑了再看看. 或其它大俠看看.


第二個問題的程序:


(defun c:x2 (/ ss vss dist)<BR>       (princ "\n????v.1.1-------by ?痕.2004.2\n??要??的曲?:")<BR>       (setq ss (ssget       '((0 . "*line,arc,ellipse,circle,spline")) )<BR>        vss (vla-get-activeselectionset (vla-get-activedocument (vlax-get-acad-object))))<BR>       (IF (= ASDFS NIL) (SETQ dist 0.00))<BR>       (PRINC (STRCAT "\n請入偏移距离&lt;"(RTOS ASDFS 2 2)"&gt;:"))<BR>       (SETQ       dist (getdist ))<BR>       (IF (= dist NIL) (SETQ dist ASDFS))<BR>       (vlax-for obj vss (vla-offset obj dist)(vla-offset obj (- 0 dist)))<BR>       (SETQ ASDFS dist)<BR>)

无痕 发表于 2004-2-12 19:32:00

(or (and(setq a (getdist))(setq b a))(setq a b)(setq a 0))


:)

WRS888 发表于 2004-3-2 01:06:00

改一下过滤,重贴(defun c:x2 (/ ss vss dist)   (vl-load-com)
   (princ "\n单线变双v.1.1-------by 无痕.2004.2\n选择要变双的曲线:")
   (setq ss (ssget   '((0 . "Arc,Circle,Ellipse,Line,LwPolyline,Polyline,Spline,XLine")) )
vss (vla-get-activeselectionset (vla-get-activedocument (vlax-get-acad-object)))
               dist (getdist "\n输入偏移距离:"))
   (vlax-for obj vss (vla-offset obj dist)(vla-offset obj (- 0 dist)))
)
----------------------------------------------
xdcad论坛游侠
http://www.xdcad.com/forum/   我运行后发现在不规则曲线的偏移值越大就越难看

xqw 发表于 2004-8-6 00:00:00

X2不能用

yansu 发表于 2009-8-19 08:53:00

如何删除原线

jxlsp 发表于 2009-8-19 10:05:00

yansu发表于2009-8-19 8:53:00static/image/common/back.gif如何删除原线(defun c:x2 (/ ss vss dist)
    (vl-load-com)
   (princ "\n单线变双v.1.1-------by 无痕.2004.2\n选择要变双的曲线:")
   (setq ss (ssget'((0 . "Arc,Circle,Ellipse,Line,LwPolyline,Polyline,Spline,XLine")) )
vss (vla-get-activeselectionset (vla-get-activedocument (vlax-get-acad-object)))
         dist (getdist "\n输入偏移距离:"))
   (vlax-for obj vss (vla-offset obj dist)(vla-offset obj (- 0 dist))(vla-erase obj));删除原线
)
页: 1 [2] 3
查看完整版本: [单线变双线,并保留原线]