找回密码
 立即注册

QQ登录

只需一步,快速开始

扫一扫,访问微社区

查看: 921|回复: 14

[求助] [求助]:关于云线的画法

[复制链接]
发表于 2004-9-11 23:45:34 | 显示全部楼层 |阅读模式

马上注册,结交更多好友,享用更多功能,让你轻松玩转社区。

您需要 登录 才可以下载或查看,没有账号?立即注册

×
如何在画云线时 可以让云线在水平方向按直线运动??
论坛插件加载方法
发帖求助前要善用【论坛搜索】功能,那里可能会有你要找的答案;
如果你在论坛求助问题,并且已经从坛友或者管理的回复中解决了问题,请把帖子标题加上【已解决】;
如何回报帮助你解决问题的坛友,一个好办法就是给对方加【D豆】,加分不会扣除自己的积分,做一个热心并受欢迎的人!
发表于 2004-9-14 13:58:57 | 显示全部楼层
云线是什么啊?
我好像从来没有听说过呢!
论坛插件加载方法
发帖求助前要善用【论坛搜索】功能,那里可能会有你要找的答案;
如果你在论坛求助问题,并且已经从坛友或者管理的回复中解决了问题,请把帖子标题加上【已解决】;
如何回报帮助你解决问题的坛友,一个好办法就是给对方加【D豆】,加分不会扣除自己的积分,做一个热心并受欢迎的人!
回复 支持 反对

使用道具 举报

发表于 2004-9-14 15:20:35 | 显示全部楼层
就那样画出来不行吗,为什么非要按什么垂直、水平
论坛插件加载方法
发帖求助前要善用【论坛搜索】功能,那里可能会有你要找的答案;
如果你在论坛求助问题,并且已经从坛友或者管理的回复中解决了问题,请把帖子标题加上【已解决】;
如何回报帮助你解决问题的坛友,一个好办法就是给对方加【D豆】,加分不会扣除自己的积分,做一个热心并受欢迎的人!
回复 支持 反对

使用道具 举报

 楼主| 发表于 2004-9-15 00:11:00 | 显示全部楼层
客户要求的 再修改过的地方要画上云线,一定要整齐,现在只能用傻瓜的方法一个半圆一个半圆的连起来太麻烦了。所以想请高手帮忙指点迷津。
论坛插件加载方法
发帖求助前要善用【论坛搜索】功能,那里可能会有你要找的答案;
如果你在论坛求助问题,并且已经从坛友或者管理的回复中解决了问题,请把帖子标题加上【已解决】;
如何回报帮助你解决问题的坛友,一个好办法就是给对方加【D豆】,加分不会扣除自己的积分,做一个热心并受欢迎的人!
回复 支持 反对

使用道具 举报

发表于 2004-9-15 01:56:08 | 显示全部楼层
可以啊,按F8正交,然后移动鼠标
鼠标往x,y轴移动方向不要离开云线1个直径长就行了。不然会改变方向
论坛插件加载方法
发帖求助前要善用【论坛搜索】功能,那里可能会有你要找的答案;
如果你在论坛求助问题,并且已经从坛友或者管理的回复中解决了问题,请把帖子标题加上【已解决】;
如何回报帮助你解决问题的坛友,一个好办法就是给对方加【D豆】,加分不会扣除自己的积分,做一个热心并受欢迎的人!
回复 支持 反对

使用道具 举报

发表于 2004-9-15 16:21:35 | 显示全部楼层
楼上的老大,我试过了,按F8好象没什么用啊
还有“鼠标往x,y轴移动方向不要离开云线1个直径长就行了。不然会改变方向”是什么意思?
好像就是要移出一个直径长才能向前移动啊,不知道我错在哪里了?请指教!!!谢谢
论坛插件加载方法
发帖求助前要善用【论坛搜索】功能,那里可能会有你要找的答案;
如果你在论坛求助问题,并且已经从坛友或者管理的回复中解决了问题,请把帖子标题加上【已解决】;
如何回报帮助你解决问题的坛友,一个好办法就是给对方加【D豆】,加分不会扣除自己的积分,做一个热心并受欢迎的人!
回复 支持 反对

使用道具 举报

发表于 2004-9-15 19:05:21 | 显示全部楼层
是要这种效果么?
论坛插件加载方法
发帖求助前要善用【论坛搜索】功能,那里可能会有你要找的答案;
如果你在论坛求助问题,并且已经从坛友或者管理的回复中解决了问题,请把帖子标题加上【已解决】;
如何回报帮助你解决问题的坛友,一个好办法就是给对方加【D豆】,加分不会扣除自己的积分,做一个热心并受欢迎的人!
回复 支持 反对

使用道具 举报

发表于 2004-9-15 20:02:56 | 显示全部楼层
看过楼上的演示才知道云线是怎么一回事

画云线的命令是什么?
论坛插件加载方法
发帖求助前要善用【论坛搜索】功能,那里可能会有你要找的答案;
如果你在论坛求助问题,并且已经从坛友或者管理的回复中解决了问题,请把帖子标题加上【已解决】;
如何回报帮助你解决问题的坛友,一个好办法就是给对方加【D豆】,加分不会扣除自己的积分,做一个热心并受欢迎的人!
回复 支持 反对

使用道具 举报

已领礼包: 488个

财富等级: 日进斗金

发表于 2004-9-16 00:25:11 | 显示全部楼层
所谓"云线"就是随机的东东,你看过哪朵云是有规律的:)

你要的方法,先画个多边形,再一次变过来比较好.

帮你写了一个
[php]
(defun c:yx( / bul bul1 fx dis e j len lst num pl pst pts x makepl)
(defun makepl()
   (entmakex
     (append lst
       (apply 'append(mapcar '(lambda(x)(list(list 10(car x)(cadr x))(cons 42(* fx bul)))) pts))
    ))
  )
(command "undo""begin")
(if(and
    (setq pl(car(entsel "\n选闭合pl线:")))
    (setq len(vlax-curve-getdistatParam pl(vlax-curve-getEndParam pl))
          pst(vlax-curve-getStartPoint pl)
          pts(cons pst pts)
          fx  1
    )
   (setq dis(getdist pst"\n每段长度:"))
   (or(setq bul(getreal "\n弓半弦比(0.5):"))(setq bul 0.5))
   (setq num(fix(/ len dis)) dis(/ len num) j 1)
   (repeat (1- num)
      (setq pts(cons(vlax-curve-getpointatdist pl(* dis j)) pts)
            j(1+ j)
      )
    )
    (setq lst(list '(0 . "LWPOLYLINE")'(100 . "AcDbEntity")'(100 . "AcDbPolyline")
                   (cons 90(length pts)) '(70 . 1)
             )
    )
    (if(setq e(makepl))(entdel pl) )
   )
    (while j
          (initget "F B")
          (setq j(getkword"\n 反向(F)||弓半弦比(B)【结束】: "))
          (cond ((= j "F")
                   (entdel e)
                   (setq fx(* -1 fx))
                   (setq e(makepl))
                )
                ((= j "B")
                 (if(setq bul1(getreal "\n弓半弦比(0.5):"))
                    (progn(setq bul bul1)(entdel e)(setq e(makepl)))
                 )
                )
                (t (setq j nil))
           )
    )
  )(command "undo""end")(princ)
)
[/php]
不闭合也行,不过就是比较怪异

支持圆,多义线spline等
论坛插件加载方法
发帖求助前要善用【论坛搜索】功能,那里可能会有你要找的答案;
如果你在论坛求助问题,并且已经从坛友或者管理的回复中解决了问题,请把帖子标题加上【已解决】;
如何回报帮助你解决问题的坛友,一个好办法就是给对方加【D豆】,加分不会扣除自己的积分,做一个热心并受欢迎的人!
回复 支持 反对

使用道具 举报

发表于 2004-9-16 00:34:21 | 显示全部楼层
可能有的函数没有你用不了,可以看看写法——还少一些判断

  1. (defun c:yxx (/ )
  2.   (mapcar 'setvar '("cmdecho""blipmode") '(0 0))
  3.   (setq p1 (getpoint "\n输入第一点: ")
  4.         p2 (getcorner p1 "\n输入对角点: ")
  5.         lay(getvar "clayer"))
  6.   (setq xy(mapcar '- p2 p1)
  7.         dx(car xy)dy(cadr xy)
  8.         dyx(pri1 getdist p1 "\n输入云线的长度,缺省值约水平方向1/5处:" (/ dx 5.0))
  9.         nx(fix (/ dx dyx))dx1(/ dx nx)
  10.         ny(fix (/ dy dyx))dy1(/ dy ny)
  11.         pb(list p1))
  12.   (repeat nx
  13.     (setq pb(append pb (list (setq p11(xd p1 dx1 0))))
  14.           p1 p11)
  15.   )
  16.   (repeat ny
  17.     (setq pb(append pb (list (setq p11(xd p1 0 dy1))))
  18.           p1 p11)
  19.   )
  20.   (repeat nx
  21.     (setq pb(append pb (list (setq p11(xd p1 (- dx1) 0))))
  22.           p1 p11)
  23.   )
  24.   (repeat ny
  25.     (setq pb(append pb (list (setq p11(xd p1  0 (- dy1)))))
  26.           p1 p11)
  27.   )
  28.   (#m_pl2 1 0 (/ pi 4.0) pb "0" -1)
  29.   (mapcar 'setvar '("cmdecho""blipmode") '(1 1))
  30.   (princ)
  31. )
  32. (defun #m_pl2 (d70 plw pla pl_list lay_pl color / pb)
  33.   (setq        d90 (length pl_list)
  34.         pb  '()
  35.   )
  36.   (foreach x pl_list
  37.     (progn
  38.       (setq pb
  39.              (append pb
  40.                      (list (cons 10 x)
  41.                            (cons 40 plw)
  42.                            (cons 41 plw)
  43.                            (cons 42 pla)
  44.                      )
  45.              )
  46.       )
  47.     )
  48.   )
  49.   (setq        en000 (append (list
  50.                         (cons 0 "LWPOLYLINE")
  51.                         (cons 100 "AcDbEntity")
  52.                         (cons 8 lay_pl)
  53.                         (cons 100 "AcDbPolyline")
  54.                         (cons 90 d90)
  55.                         (cons 70 d70)
  56.                       )
  57.                       pb
  58.               )
  59.   )
  60.   (if (/= -1 color) (setq en000 (append en000 (list (cons 62 color)))))
  61.   (if (= nil (entmake en000)) (princ "\n制造 LWPL 制造失败.")  )
  62. )
  63. (defun pri1 (a #p0 b c / x)
  64.   (princ (strcat b " <"))(princ c)(setq x (a #p0 ">:"))
  65.   (if (and x (/= x "")) x c)
  66. )

论坛插件加载方法
发帖求助前要善用【论坛搜索】功能,那里可能会有你要找的答案;
如果你在论坛求助问题,并且已经从坛友或者管理的回复中解决了问题,请把帖子标题加上【已解决】;
如何回报帮助你解决问题的坛友,一个好办法就是给对方加【D豆】,加分不会扣除自己的积分,做一个热心并受欢迎的人!
回复 支持 反对

使用道具 举报

发表于 2004-9-16 15:19:26 | 显示全部楼层
to cy956斑竹,没有pri函数。
Error: no function definition: PRI1
论坛插件加载方法
发帖求助前要善用【论坛搜索】功能,那里可能会有你要找的答案;
如果你在论坛求助问题,并且已经从坛友或者管理的回复中解决了问题,请把帖子标题加上【已解决】;
如何回报帮助你解决问题的坛友,一个好办法就是给对方加【D豆】,加分不会扣除自己的积分,做一个热心并受欢迎的人!
回复 支持 反对

使用道具 举报

发表于 2004-9-17 13:15:26 | 显示全部楼层
看过楼上的演示才知道云线是怎么一回事
论坛插件加载方法
发帖求助前要善用【论坛搜索】功能,那里可能会有你要找的答案;
如果你在论坛求助问题,并且已经从坛友或者管理的回复中解决了问题,请把帖子标题加上【已解决】;
如何回报帮助你解决问题的坛友,一个好办法就是给对方加【D豆】,加分不会扣除自己的积分,做一个热心并受欢迎的人!
回复 支持 反对

使用道具 举报

 楼主| 发表于 2004-9-21 23:56:28 | 显示全部楼层
谢谢 两位斑竹的帮助 我用过了。可以达到我的要求,给我的工作带来很大的方便。
论坛插件加载方法
发帖求助前要善用【论坛搜索】功能,那里可能会有你要找的答案;
如果你在论坛求助问题,并且已经从坛友或者管理的回复中解决了问题,请把帖子标题加上【已解决】;
如何回报帮助你解决问题的坛友,一个好办法就是给对方加【D豆】,加分不会扣除自己的积分,做一个热心并受欢迎的人!
回复 支持 反对

使用道具 举报

发表于 2004-9-22 01:28:03 | 显示全部楼层
还有个方法就是做成线形
论坛插件加载方法
发帖求助前要善用【论坛搜索】功能,那里可能会有你要找的答案;
如果你在论坛求助问题,并且已经从坛友或者管理的回复中解决了问题,请把帖子标题加上【已解决】;
如何回报帮助你解决问题的坛友,一个好办法就是给对方加【D豆】,加分不会扣除自己的积分,做一个热心并受欢迎的人!
回复 支持 反对

使用道具 举报

发表于 2004-9-22 14:21:31 | 显示全部楼层
哇,太好了,又学到了一招。程序不错。
论坛插件加载方法
发帖求助前要善用【论坛搜索】功能,那里可能会有你要找的答案;
如果你在论坛求助问题,并且已经从坛友或者管理的回复中解决了问题,请把帖子标题加上【已解决】;
如何回报帮助你解决问题的坛友,一个好办法就是给对方加【D豆】,加分不会扣除自己的积分,做一个热心并受欢迎的人!
回复 支持 反对

使用道具 举报

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

QQ|申请友链|Archiver|手机版|小黑屋|辽公网安备|晓东CAD家园 ( 辽ICP备15016793号 )

GMT+8, 2025-9-27 13:44 , Processed in 0.227171 second(s), 61 queries , Gzip On.

Powered by Discuz! X3.5

© 2001-2025 Discuz! Team.

快速回复 返回顶部 返回列表