明经CAD社区

 找回密码
 注册

QQ登录

只需一步,快速开始

搜索
查看: 1886|回复: 11

请教高手指点错误?

  [复制链接]
发表于 2012-7-6 22:30:54 | 显示全部楼层 |阅读模式
(defun c:5test3()
  (setq ac (getpoint "输入三角形的左下角点:"))
  (setq a (getreal "请输入底边a的长度:"))
  (setq b (getreal "请输入侧边b的长度:"))
  (setq c (getreal "请输入侧边c的长度:"))

  (setq s (/ (a+b+c) 2))
  (setq z (* s (s-a) (s-b) (s-c)))
  (setq area (sqrt z))
  (setq h (/ area a 2))
  
  (setq ab (polar ac 0 a))
  (setq a1 (sqrt (- (* c c) (* h h)))
  (setq azhong (polar ac 0 a1)) ;此点取的是H的最下面的点
  (setq bc (polar azhong pi/2 h))

  (command "line" ac ab bc)


该贴已经同步到 chenlight的微博
发表于 2012-7-6 23:01:00 | 显示全部楼层
本帖最后由 Andyhon 于 2012-7-6 23:06 编辑

...错误?
错误指的是

(setq s (/ (+ a b c) 2))
(setq z (* s (- s a) (- s b) (- s c)))

错误的讯息是
捕捉也会干扰结果...

 楼主| 发表于 2012-7-6 23:33:52 | 显示全部楼层
(defun c:5test3()
  (setq ac (getpoint "输入三角形的左下角点:"))
  (setq a (getreal "\n 请输入底边a的长度:"))
  (setq b (getreal "\n 请输入侧边b的长度:"))
  (setq c (getreal "\n 请输入侧边c的长度:"))

  (setq s (/ (+ a b c) 2))
  (setq z (* s (- s a) (- s b) (- s c)))
  (setq area (sqrt z))
  (setq h (/ area a 2))
  
  (setq ab (polar ac 0 a))
  (setq a1 (sqrt (- (* c c) (* h h))))
  (setq azhong (polar ac 0 a1)) ;此点取的是H的最下面的点
  (setq bc (polar azhong (/ pi 2) h))

  (command "line" ac ab bc "c")

)

这是修改后的程序,可是执行不出来结果?显示为nil
发表于 2012-7-7 07:57:13 | 显示全部楼层
(setq h (/ area a 2))
这个有值,但合乎您所求否?
 楼主| 发表于 2012-7-7 13:05:45 | 显示全部楼层
这个程序是绘制三角形的,可是用上面的代码绘制出来的只是一条直线,也就是程序中a的那条直线,b和c的没有出来?
 楼主| 发表于 2012-7-7 13:10:46 | 显示全部楼层
(defun c:5test3()
  (setq ac (getpoint "输入三角形的左下角点:"))
  (setq a (getreal "\n 请输入底边a的长度:"))
  (setq b (getreal "\n 请输入侧边b的长度:"))
  (setq c (getreal "\n 请输入侧边c的长度:"))

  (setq s (/ (+ a b c) 2))
  (setq z (* s (- s a) (- s b) (- s c)))
  (setq area (sqrt z))
  (setq h (/ (* 2 area) a))
  
  (setq ab (polar ac 0 a))
  (setq a1 (sqrt (- (* c c) (* h h))))
  (setq azhong (polar ac 0 a1)) ;此点取的是H的最下面的点
  (setq bc (polar azhong (/ pi 2) h))

  (command "pline" ac ab bc "c")

)

这是修改过的代码, (setq h (/ (* 2 area) a))这个代码已经更改了,可是出来的还是一条直线!

点评

关闭捕捉?  发表于 2012-7-7 13:24
发表于 2012-7-7 21:30:59 | 显示全部楼层
游客,本帖隐藏的内容需要发帖数高于 5 才可浏览,你当前发帖数只有 0
 楼主| 发表于 2012-7-7 22:01:37 | 显示全部楼层
多谢高手指点,你修改的代码在缩小到很小的情况下画出来的也是三角形,我自己写的程序在缩小很的情况下画出来的就是一条直线!
 楼主| 发表于 2012-7-7 22:04:28 | 显示全部楼层
请问“non”是什么意思呀?谢谢!

点评

捕捉也会干扰结果... non == none 不用捕捉也  发表于 2012-7-7 22:33
发表于 2012-7-8 05:58:09 来自手机 | 显示全部楼层
坐沙發的早告訴你了,你一直無視啊
您需要登录后才可以回帖 登录 | 注册

本版积分规则

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

GMT+8, 2025-8-28 05:15 , Processed in 0.195583 second(s), 33 queries , Gzip On.

Powered by Discuz! X3.4

Copyright © 2001-2021, Tencent Cloud.

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