明经CAD社区

 找回密码
 注册

QQ登录

只需一步,快速开始

搜索
查看: 4136|回复: 3

请教难题:CAD如何绘制满足y=sinx 曲线?

[复制链接]
发表于 2003-8-9 16:01 | 显示全部楼层 |阅读模式
发表于 2003-8-11 11:05 | 显示全部楼层
我前段刚好完成了这个程序,请你试用!
(DEFUN C:TBOX2_ZXQX( / sp s e d q am l x y pt)
       (SETVAR "CMDECHO" 0)
       (SETVAR "BLIPMODE" 0)
       ;; (SYSBACKUP)
       (princ "\n绘制正弦曲线,锐锋工作室 2003.5")
       (setvar "osmode" 0)
       (command "layer" "s" "1_粗实线" "")
       (setq sp (getpoint "\n起始点: "))
       (setq s (getreal "\n起始角度(rad)<0.0>: "))
       (if (null s) (setq s 0.0))
       (setq e (getreal "\n终了角度(rad)<2pi>: "))
       (if (null e) (setq e (* 2.0 pi)))
       (initget 7)
       (setq am (getreal "\n振幅: "))
       (initget 7)
       (setq l (getreal "\n一个周期的波长: "))
       (setq d (getreal "\n绘图步长(rad)<0.1>: "))
       (if (null d) (setq d 0.1))
       (setq q (polar sp 0 (* l 1.2)))
       (command "pline" sp "w" 0 0 q "w" 1.3 0 (polar q 0 4) "")
       (setq q (polar sp (* 0.5 pi) (* am 1.2)))
       (command "pline" (polar sp (* 1.5 pi) (* am 1.2)) "w" 0 0 q "w" 1.3 0 (polar q (* 0.5 pi) 4) "")
       (setq Q s)
       (setq x (car sp))
       (setq y (+ (cadr sp) (* am (sin Q))))
       (command "pline" (list x y) "w" 0 0)
       (setq Q (+ Q d))
       (while (<= Q e)
           (setq x (+ x (/ (* l d) (* 2.0 pi))))
           (setq y (+ (cadr sp) (* am (SIN Q))))
           (command  (list x y))
           (setq Q (+ Q d))
       )
       (setq d (- e (- q d))
             q e
       )
       (setq x (+ x (/ (* l d) (* 2.0 pi))))
       (setq y (+ (cadr sp) (* am (SIN Q))))
       (command  (list x y))               
       (command "")
       (command "pedit" "l" "f" "")
       ;; (SYSRESTORE)
       (PRINC)
)
                      srf              E- MAIL:lts@lts.ac.cn   
                                       ltsrf@peoplemail.com.cn
发表于 2003-8-11 17:12 | 显示全部楼层
这个问题的方法理论上适用于所有的数学曲线。
用小段直线或者多段线来模拟曲线,计算出关键点的位置,然后连接起来即可。
发表于 2010-2-22 18:00 | 显示全部楼层
咋没人回复啊,我可不会啊
您需要登录后才可以回帖 登录 | 注册

本版积分规则

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

GMT+8, 2024-4-20 13:40 , Processed in 0.376222 second(s), 23 queries , Gzip On.

Powered by Discuz! X3.4

Copyright © 2001-2021, Tencent Cloud.

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