找回密码
 立即注册

QQ登录

只需一步,快速开始

扫一扫,访问微社区

查看: 1019|回复: 14

[求助] [求助]:请问云朵线的原理是什么?高手帮忙!

[复制链接]
发表于 2004-4-13 21:06:10 | 显示全部楼层 |阅读模式

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

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

×
云朵线是如何形成的?
论坛插件加载方法
发帖求助前要善用【论坛搜索】功能,那里可能会有你要找的答案;
如果你在论坛求助问题,并且已经从坛友或者管理的回复中解决了问题,请把帖子标题加上【已解决】;
如何回报帮助你解决问题的坛友,一个好办法就是给对方加【D豆】,加分不会扣除自己的积分,做一个热心并受欢迎的人!
发表于 2004-4-14 13:40:08 | 显示全部楼层
hehe,那只是一条多亿线而已,每段都是圆弧。
你可以用list命令察看一下。
沿鼠标轨迹构造多义线就行了
论坛插件加载方法
发帖求助前要善用【论坛搜索】功能,那里可能会有你要找的答案;
如果你在论坛求助问题,并且已经从坛友或者管理的回复中解决了问题,请把帖子标题加上【已解决】;
如何回报帮助你解决问题的坛友,一个好办法就是给对方加【D豆】,加分不会扣除自己的积分,做一个热心并受欢迎的人!
回复 支持 反对

使用道具 举报

 楼主| 发表于 2004-4-14 20:52:18 | 显示全部楼层
最初由 warmrain 发布
[B]hehe,那只是一条多亿线而已,每段都是圆弧。
你可以用list命令察看一下。
沿鼠标轨迹构造多义线就行了 [/B]

那CAD是如何把PLINE变成云朵线的?
我想知道具体源代码是怎样的。
能否具体点,谢谢!
论坛插件加载方法
发帖求助前要善用【论坛搜索】功能,那里可能会有你要找的答案;
如果你在论坛求助问题,并且已经从坛友或者管理的回复中解决了问题,请把帖子标题加上【已解决】;
如何回报帮助你解决问题的坛友,一个好办法就是给对方加【D豆】,加分不会扣除自己的积分,做一个热心并受欢迎的人!
回复 支持 反对

使用道具 举报

发表于 2004-4-15 13:43:08 | 显示全部楼层
没有见过源代码,但我分析,可能是根据鼠标轨迹产生随机大小的“圆弧”,然后连成PL线!
论坛插件加载方法
发帖求助前要善用【论坛搜索】功能,那里可能会有你要找的答案;
如果你在论坛求助问题,并且已经从坛友或者管理的回复中解决了问题,请把帖子标题加上【已解决】;
如何回报帮助你解决问题的坛友,一个好办法就是给对方加【D豆】,加分不会扣除自己的积分,做一个热心并受欢迎的人!
回复 支持 反对

使用道具 举报

已领礼包: 1个

财富等级: 恭喜发财

发表于 2004-4-15 17:11:42 | 显示全部楼层
它是利用了回调函数,让回调函数跟踪鼠标轨迹,在相同的时间间隔里取得鼠标点,然后进行绘制。
论坛插件加载方法
发帖求助前要善用【论坛搜索】功能,那里可能会有你要找的答案;
如果你在论坛求助问题,并且已经从坛友或者管理的回复中解决了问题,请把帖子标题加上【已解决】;
如何回报帮助你解决问题的坛友,一个好办法就是给对方加【D豆】,加分不会扣除自己的积分,做一个热心并受欢迎的人!
回复 支持 反对

使用道具 举报

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

使用道具 举报

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

使用道具 举报

发表于 2004-4-17 10:06:00 | 显示全部楼层
最初由 joe2004 发布
[B]各位有沒有把spline分解成pline的lisp程序啊?? [/B]


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

使用道具 举报

发表于 2004-4-17 15:02:27 | 显示全部楼层
先绘制封闭的多义线(圆\矩形\多边形为封闭图形,若用polyline绘制则最后封闭应采用COLSE/C结束,否则无法用修改云线命令),绘制完后用修改云线命令,输入O(OBJECT物体),选择物体(已画封闭多义线),即可完成云线,此方法绘制的云线较规矩.
以下附图
论坛插件加载方法
发帖求助前要善用【论坛搜索】功能,那里可能会有你要找的答案;
如果你在论坛求助问题,并且已经从坛友或者管理的回复中解决了问题,请把帖子标题加上【已解决】;
如何回报帮助你解决问题的坛友,一个好办法就是给对方加【D豆】,加分不会扣除自己的积分,做一个热心并受欢迎的人!
回复 支持 反对

使用道具 举报

发表于 2004-4-17 20:46:53 | 显示全部楼层
最初由 david96007 发布
[B]没有见过源代码,但我分析,可能是根据鼠标轨迹产生随机大小的“圆弧”,然后连成PL线! [/B]


revcloud 的源代码
[php]
(Defun C:REVC (/
     ARC_DIST   ;;radius of included arc
     INC_ANGLE  ;;included angle in degrees
     LAST_PT    ;;the last point just entered/shown
     START_PT   ;;where the cloud began
     NEXT_PT    ;;where we are going next
     TMP        ;;tempory holder for radius of bulge
     )

   (init_bonus_error
      (List
         (List "cmdecho" 0
               "blipmode" 0
               "osmode" 0
         )
         T     ;flag. True means use undo for error clean up.  
      ) ;list
   ) ;init_bonus_error



   ;;--------real program starts here!

   (Setq INC_ANGLE 110)
   
   (if (and
         (/= ""  (getcfg "AppData/AC_Bonus/Revcld_Bulge"))
         (/= nil (getcfg "AppData/AC_Bonus/Revcld_Bulge"))
       )
     (setq ARC_DIST (atof (getcfg "AppData/AC_Bonus/Revcld_Bulge")))
     (if (= (getvar "DIMSCALE") 0)
       (setq ARC_DIST 0.375)
       (setq ARC_DIST (* 0.375 (getvar "DIMSCALE")))
     )
   );end if

   (prompt (strcat "\nArc length set at " (rtos ARC_DIST 2 3)))

   (initget "Arc")
   (setq LAST_PT (GetPoint "\nArc length/<Pick cloud starting point>: "))

   (if (= LAST_PT "Arc")
     (progn
       (initget 6)
       (setq TMP (getdist (strcat "\nArc length <" (rtos ARC_DIST 2 3) ">: ")))
       (if TMP
         (Progn
           (setq ARC_DIST TMP)
                ;R14 method of saving variable values
           (setcfg "AppData/AC_Bonus/Revcld_Bulge" (rtos ARC_DIST))
         )
       )
       (setq LAST_PT (getpoint "\nPick cloud start point: "))
     ) ;;end STR "RADIUS" test
   )

   (if LAST_PT (progn  ;;start up the cloud generator...
     (setq START_PT LAST_PT
           SAVED_EN (entlast))
     (Prompt "\nGuide crosshairs along cloud path...")
     (Command
        "_.pline"     ;draw cloud as a polyline on current layer
        LAST_PT
        "_a"         ;specify arc option
        "_a"         ;specify angle option
        INC_ANGLE    ;included angle
     )
   )) ;end IF LAST_PT

   (While LAST_PT  ;;as long as we have a last point value,

      (Setq NEXT_PT (GrRead 1)     ;;real time read
            READTYP (car NEXT_PT)
      )
      (if (or (=  5 READTYP) (= READTYP 3)) ;;read a position or a pick?
         (progn
           (setq NEXT_PT (cadr NEXT_PT))
           (If (or (> (Distance LAST_PT NEXT_PT) ARC_DIST) (= READTYP 3))
             (Progn
               (Command NEXT_PT "_a" INC_ANGLE)
               (Setq LAST_PT NEXT_PT)
             )
           )
           (If (>
               (Distance LAST_PT NEXT_PT)
               (Distance START_PT NEXT_PT)
               )
             (Progn
               (Command START_PT "_cl")
               (Setq LAST_PT Nil)
               (prompt "\nCloud finished.")
             )
           )
         )
         (prompt "\nMove the pointer to draw the cloud")
      );End if
   );End while
   (restore_old_error)
   (Princ)
) ;end cloud.lsp
[/php]
论坛插件加载方法
发帖求助前要善用【论坛搜索】功能,那里可能会有你要找的答案;
如果你在论坛求助问题,并且已经从坛友或者管理的回复中解决了问题,请把帖子标题加上【已解决】;
如何回报帮助你解决问题的坛友,一个好办法就是给对方加【D豆】,加分不会扣除自己的积分,做一个热心并受欢迎的人!
回复 支持 反对

使用道具 举报

已领礼包: 488个

财富等级: 日进斗金

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

使用道具 举报

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

使用道具 举报

发表于 2004-4-27 13:54:37 | 显示全部楼层
最初由 heliangdong 发布
[B]先绘制封闭的多义线(圆\矩形\多边形为封闭图形,若用polyline绘制则最后封闭应采用COLSE/C结束,否则无法用修改云线命令),绘制完后用修改云线命令,输入O(OBJECT物体),选择物体(已画封闭多义线),即可完成云线,此方法绘?.. [/B]


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

使用道具 举报

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

使用道具 举报

发表于 2004-4-28 08:42:31 | 显示全部楼层
最初由 heliangdong 发布
[B]"修改云线"是"图纸修改变动注释"用不是修改"云线"
就是你们所说的云线 [/B]


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

使用道具 举报

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

本版积分规则

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

GMT+8, 2025-9-27 02:03 , Processed in 0.185932 second(s), 58 queries , Gzip On.

Powered by Discuz! X3.5

© 2001-2025 Discuz! Team.

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