明经CAD社区

 找回密码
 注册

QQ登录

只需一步,快速开始

搜索
楼主: xazhji

让我们共同走进CAD的动画世界!新增-->时钟

  [复制链接]
发表于 2003-9-4 16:04 | 显示全部楼层
晚辈借花献佛,再来一个。
将xazhji秘书长的《疯狂图形》和meflying版主的用控键合理退出的程序中和了一下,
编了一个可以实现正反转的程序。
运行程序后,单击右键可改变旋转方向,双击左键可以正常退出程序。
运行前先将图形存盘。

(defun c:fktx()  
  (setvar "cmdecho" 0)
  (setq vcen (getvar "viewctr"))
  (setq angg 0.05)
  (setq m t)
(while (/= m 1)
  (lhy1)
  (setq angg 0.05)
  (lhy2)
  (setq angg 0.05)
  (vlr-mouse-Reactor nil '((:VLR-beginDoubleClick . quits)))
  (defun quits (calling-reactor commandInfo / )
  (vl-load-com)
  (setq m 1)
  (princ)
  )
)
)
(princ "\n成功调入《疯狂图形》!键入 fktx 运行......")(prin1)


(defun lhy1 ()
(while (= m t)
   (command "rotate" "all" "" vcen angg)
   (setq angg (+ angg 0.05))
(vlr-mouse-Reactor nil '((:VLR-beginRightClick . stop)))
(defun stop (calling-reactor commandInfo / )
  (vl-load-com)
  (setq m nil)
  (princ)
  )
)
)


(defun lhy2 ()
(while (= m nil)
      (command "rotate" "all" "" vcen angg)
      (setq angg (- angg 0.05))
  (vlr-mouse-Reactor nil '((:VLR-beginRightClick . stop1)))
  (defun stop1 (calling-reactor commandInfo / )
  (vl-load-com)
  (setq m t)
  (princ)
  )
)
)
发表于 2003-9-4 17:35 | 显示全部楼层
反应器应在程序开头,更不应该做到循环里去,一个反应器做好了是不会消失的,直到你关闭图形或认为释放。
发表于 2003-9-5 13:23 | 显示全部楼层
;;我想在迴圈中不斷定義函數不太好,所以改了一下!
;;但转久了,程序左右转就会失效
(defun C:FKTX (/ M ANGG VCEN HOLDECHO)
  (vl-load-com)

  (defun LHY1 ()
    (while (= M t)
      (command "_.rotate" "all" "" VCEN ANGG)
      (setq ANGG (+ ANGG 0.05))
    )
  )

  (defun LHY2 ()
    (while (= M NIL)
      (command "_.rotate" "all" "" VCEN ANGG)
      (setq ANGG (- ANGG 0.05))
    )
  )

  (defun STOP (CALLING-REACTOR COMMANDINFO)
    (setq M NIL)
  )

  (defun STOP1 (CALLING-REACTOR COMMANDINFO)
    (setq M t)
  )

  (defun QUITS (CALLING-REACTOR COMMANDINFO)
    (setq M 1)
  )

  (vlr-mouse-reactor NIL '((:vlr-begindoubleclick . QUITS)))

  (setq HOLDECHO (getvar "cmdecho"))
  (setvar "cmdecho" 0)
  (setq VCEN (getvar "viewctr"))
  (setq ANGG 0.05)
  (setq M t)

  (while (/= M 1)
    (vlr-mouse-reactor NIL '((:vlr-beginrightclick . STOP)))
    (LHY1)
    (setq ANGG 0.05)
    (vlr-mouse-reactor NIL '((:vlr-beginrightclick . STOP1)))
    (LHY2)
    (setq ANGG 0.05)
  )
  (vlr-remove-all :vlr-mouse-reactor)
  (setvar "cmdecho" HOLDECHO)
  (princ)
)
(princ "\n成功調入《瘋狂圖形》!鍵入 fktx 運行......")
(princ)
 楼主| 发表于 2003-9-8 11:59 | 显示全部楼层
其实,我原来的思路不是这么简单,好像不只是旋转,想让整个图形在跳舞,比如:向右跳几下,再向左跳几下,向上跳几下,再向下跳几下,猛然间几次放大、缩小等等,就好像CAD是个大舞台,图形是个演员一样。其实,这些并不难,只是效果的问题。
 楼主| 发表于 2003-9-23 16:58 | 显示全部楼层
冷落了这么久啊!
增加一个吧  =>    《屏幕上的雨滴》

本帖子中包含更多资源

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

x
发表于 2003-9-24 10:53 | 显示全部楼层
很不错,我也很喜欢CAD动画,能不能公布源代码?
 楼主| 发表于 2003-9-27 17:20 | 显示全部楼层

《国庆礼花》 动画

〖使用方法〗 下载这个附件,然后,把它拖进你的cad绘图环境中。你在命令行栏出现
“***成功调入《欢渡国庆》HDGQ 运行, Esc 退出!  ***By xazhji ” 一行字。
命令行内敲入   HDGQ    即可运行!  Esc  键退出。
[fly].。o O o 。.。o O o 。.。o O o 。.。o O o 。.。o O o 。.[/fly]


发表于 2003-9-28 15:00 | 显示全部楼层
我怎么看不懂啊!
发表于 2003-9-29 09:19 | 显示全部楼层
xazhji先生,能不能公布一下源代码互相学习以下?
谢谢。
发表于 2003-9-29 11:16 | 显示全部楼层
各位高手好,你们的编译的小动画程序,我都运行了,有一个缺点,我觉得各位在运行完了后按esc退出的时间,把新添的动画元件,象直线和圆都要删除了,这样会更好,不过也很有意思。那个秘书长先生你发布的那个疯狂图形那个文件,我直接选择了一个23M的一个三维图形运行,幸亏是笨四的机器,还看出点效果,哈哈,真的很有效果
您需要登录后才可以回帖 登录 | 注册

本版积分规则

小黑屋|手机版|CAD论坛|CAD教程|CAD下载|联系我们|关于明经|明经通道 ( 粤ICP备05003914号 )  
©2000-2023 明经通道 版权所有 本站代码,在未取得本站及作者授权的情况下,不得用于商业用途

GMT+8, 2024-5-2 12:25 , Processed in 2.931093 second(s), 18 queries , Gzip On.

Powered by Discuz! X3.4

Copyright © 2001-2021, Tencent Cloud.

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