明经CAD社区

 找回密码
 注册

QQ登录

只需一步,快速开始

搜索
查看: 1709|回复: 14

[已解答] 请教一个关于repeat函数的问题

[复制链接]
发表于 2014-5-4 09:59 | 显示全部楼层 |阅读模式
(repeat (fix (/ (- L10 2) pox))                                 ;画其余齿
      (setq qt1 (polar qt (+ (* 1.5 pi) (atan(/ xa ya))) (sqrt(+ (* xa xa) (* ya ya)))))
      (setq qt2 (polar qt1 (+ (* 1.5 pi) (atan(/ (- xb xa) (- yb ya)))) (sqrt(+ (* (- xb xa) (- xb xa)) (* (- yb ya) (- yb ya))))))
      (setq qt3 (polar qt2  (* 1.5 pi) hk1))
      (setq qt4 (polar qt3 0 (* 2 (- (sqrt(-(* r11 r11) (* 1.25 m 1.25 m))) c0))))
      (setq qt5 (polar qt4 (* 0.5 pi) hk1))
      (setq qt6 (polar qt  0 (* pi m)))
      (setq qt7 (polar qt6 (- (* 1.5 pi) (atan(/ xa ya))) (sqrt(+ (* xa xa) (* ya ya)))))
      (command "arc" qt1 "e" qt "r" rg)
      (command "arc" qt1 "e" qt2 "r" r11)
      (command "line" qt2 qt3 qt4 qt5 "" )
      (command "arc" qt6 "e" qt7 "r" rg)
      (command "arc" qt5 "e" qt7 "r" r11)
   )

我想用上面的这段程序实现重复画下面齿形,为什么实现不了


本帖子中包含更多资源

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

x
发表于 2014-5-4 11:35 | 显示全部楼层
既然是提问,就需提供完整的代码供分析!
初学者常犯的错误是没有关闭捕捉,导致出问题,还有UCS的问题导致出错!
发表于 2014-5-4 15:15 | 显示全部楼层
这个类似与齿条形状 应该是可行的,

每一次循环的结尾处要把尾点重新赋值给起点(你的程序好像没发现这个赋值起点)
 楼主| 发表于 2014-5-4 15:51 | 显示全部楼层
不好意思   完整的代码可能涉及的比较多,比较乱,非常抱歉!我就想请教下

(repeat (fix (/ (- L10 2) pox)) ;在这(L10-2)/ pox个长度范围内,能否用repeat函数重复画出以下五条曲线组成的图形
     (setq qt1 (polar qt (+ (* 1.5 pi) (atan(/ xa ya))) (sqrt(+ (* xa xa) (* ya ya)))))
       (setq qt2 (polar qt1 (+ (* 1.5 pi) (atan(/ (- xb xa) (- yb ya)))) (sqrt(+ (* (- xb xa) (- xb xa)) (* (- yb ya) (- yb ya))))))
       (setq qt3 (polar qt2  (* 1.5 pi) hk1))
       (setq qt4 (polar qt3 0 (* 2 (- (sqrt(-(* r11 r11) (* 1.25 m 1.25 m))) c0))))
       (setq qt5 (polar qt4 (* 0.5 pi) hk1))
       (setq qt6 (polar qt  0 (* pi m)))
       (setq qt7 (polar qt6 (- (* 1.5 pi) (atan(/ xa ya))) (sqrt(+ (* xa xa) (* ya ya)))))
       (command "arc" qt1 "e" qt "r" rg)
      (command "arc" qt1 "e" qt2 "r" r11)
       (command "line" qt2 qt3 qt4 qt5 "" )
      (command "arc" qt6 "e" qt7 "r" rg)
      (command "arc" qt5 "e" qt7 "r" r11)
    )
 楼主| 发表于 2014-5-4 15:54 | 显示全部楼层
zhibeisha 发表于 2014-5-4 15:51
不好意思   完整的代码可能涉及的比较多,比较乱,非常抱歉!我就想请教下

(repeat (fix (/ (- L10 2) p ...

上面这些代码只能把五条曲线画出,并没有实现repeat 函数的功能,是不是缺少什么代码
发表于 2014-5-4 16:06 | 显示全部楼层
沒有變數控制點的變化
 楼主| 发表于 2014-5-4 16:20 | 显示全部楼层
liu22737 发表于 2014-5-4 15:15
这个类似与齿条形状 应该是可行的,

每一次循环的结尾处要把尾点重新赋值给起点(你的程序好像没发现这个 ...

那能否请教下应该怎么加这个语句
 楼主| 发表于 2014-5-4 17:33 | 显示全部楼层
lsjj 发表于 2014-5-4 16:06
沒有變數控制點的變化

那请教该如何添加
发表于 2014-5-4 17:39 | 显示全部楼层
没有完整程序没法测试..写的代码看得头晕...
发表于 2014-5-5 00:11 | 显示全部楼层
没有更新变量。先别请教了,自己把思路理清吧,不是语法问题,是逻辑问题
您需要登录后才可以回帖 登录 | 注册

本版积分规则

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

GMT+8, 2024-6-2 20:13 , Processed in 0.146057 second(s), 27 queries , Gzip On.

Powered by Discuz! X3.4

Copyright © 2001-2021, Tencent Cloud.

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