autolisp教程 高分悬赏,请高手用AutoLISP编写4个小程序:

函数名为"tuxing",要求执行此函数时使用键盘输入两个同心圆的圆心坐标和每个圆的半径值,然后:1.自动绘出这两个圆和水平,垂直的两条中心线2.自动绘出这连个圆和与圆同... 函数名为"tuxing",要求执行此函数时使用键盘输入两个同心圆的圆心坐标和每个圆的半径值,然后:
1.自动绘出这两个圆和水平,垂直的两条中心线
2.自动绘出这连个圆和与圆同心的正方形
请根据以上两个条件编写两个程序

函数名为"tuxing",要求执行此函数时使用键盘输入一个圆的圆心坐标和半径值,然后:
1.自动绘出该圆,和与该圆在左右侧相切且直径相同的另外两个圆
2.自动绘出该圆和与该圆同心的正方形
请根据以上两个条件编写两个程序

跪求高手解答,高分悬赏,之后再追家100分!
可以将程序拆分成4个吗?因为有4个题目,万分感谢!
展开
 我来答
95745368
2010-12-02 · TA获得超过120个赞
知道答主
回答量:40
采纳率:0%
帮助的人:19.6万
展开全部
(一)
(defun c:tuxing1 ()
(setq Rd (getdist "\n R=:"))
(setq Rx (getdist "\n r=:"))
(setq p0 (getPoint "\n Enter Center of Circle"))
(setq p1 (list(car p0) (+ (+ (cadr p0) Rd) 5)))
(setq p2 (list(- (- (car p0) Rd) 5) (cadr p0)))
(setq p3 (list(car p0) (- (- (cadr p0) Rd) 5)))
(setq p4 (list(+ (+ (car p0) Rd) 5) (cadr p0)))
(Command "line" p1 p3"")
(Command "line" p2 p4"")
(Command "circle" p0 Rd)
(Command "circle" p0 RX)
)
(二)
(defun c:tuxing2 ()
(setq Rd (getdist "\n R=:"))
(setq Rx (getdist "\n r=:"))
(setq p0 (getPoint "\n Enter Center of Circle"))
(setq a1 (list(+ (car p0) (* (cos (/ pi 4)) Rx)) (+ (cadr p0) (* (cos (/ pi 4)) Rx))))
(setq a2 (list(- (car p0) (* (cos (/ pi 4)) Rx)) (cadr a1)))
(setq a3 (list(car a2) (- (cadr p0) (* (cos (/ pi 4)) Rx))))
(setq a4 (list(car a1) (cadr a3)))
(setq b1 (list(+ (car p0) (* (cos (/ pi 4)) Rd)) (+ (cadr p0) (* (cos (/ pi 4)) Rd))))
(setq b2 (list(- (car p0) (* (cos (/ pi 4)) Rd)) (cadr b1)))
(setq b3 (list(car b2) (- (cadr p0) (* (cos (/ pi 4)) Rd))))
(setq b4 (list(car b1) (cadr b3)))
(Command "line" a1 a2 a3 a4 a1"")
(Command "line" b1 b2 b3 b4 b1"")
(Command "circle" p0 Rd)
(Command "circle" p0 RX)
)
(三)
(defun c:tuxing3 ()
(setq r (getdist "\n r=:"))
(setq p0 (getPoint "\n Enter Center of Circle"))
(setq p1 (list(- (car p0) (* r 2)) (cadr p0)))
setq p2 (list(+ (car p0) (* r 2)) (cadr p0)))
((Command "circle" p0 r)
(Command "circle" p1 r)
(Command "circle" p2 r)
)
(四)
(defun c:tuxing4 ()
(setq r (getdist "\n r=:"))
(setq p0 (getPoint "\n Enter Center of Circle"))
(setq a1 (list(+ (car p0) (* (cos (/ pi 4)) r)) (+ (cadr p0) (* (cos (/ pi 4)) r))))
(setq a2 (list(- (car p0) (* (cos (/ pi 4)) r)) (cadr a1)))
(setq a3 (list(car a2) (- (cadr p0) (* (cos (/ pi 4)) r))))
(setq a4 (list(car a1) (cadr a3)))
(Command "line" a1 a2 a3 a4 a1"")
(Command "circle" p0 r)

可以了,你试试吧!
上海德康电子
2023-06-12 广告
上海德康电子科技有限公司成立于2003年。我们深耕电子领域近191载,积累了丰富的行业经验与资源,成为业内卓越的电子元器件代理商及方案供应商。... 点击进入详情页
本回答由上海德康电子提供
百度网友d394cc6
2010-11-30 · 超过15用户采纳过TA的回答
知道答主
回答量:166
采纳率:0%
帮助的人:52.1万
展开全部
aa
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

下载百度知道APP,抢鲜体验
使用百度知道APP,立即抢鲜体验。你的手机镜头里或许有别人想知道的答案。
扫描二维码下载
×

类别

我们会通过消息、邮箱等方式尽快将举报结果通知您。

说明

0/200

提交
取消

辅 助

模 式