只需一步,快速开始
您需要 登录 才可以下载或查看,没有账号?注册
使用道具 举报
1.
distline的形参定义的方式不好
你用到的形参是(entsel)的返回值
它实际上是一个双元表
这会限制主程序的编写
简单说就是你要用到(distline)
就必须按双元表的格式提供参数
比如说用(entsel)
如果是已知图元名的情况
你不能直接传递给(distline)
必须先(list 图元名 任意点坐标)
2.
按你的要求最后要画外接圆
那就意味着三直线均为首尾相连
所以你可以直接计算出外接圆的坐标
而不是手动选取
你可以任选第二线求两端点
将其与P1,P2比较后得出P3
3.
参数名不需要如此复杂
不是特别重要的参数
就用a、b、c又如何
4.
还是上次说的
函数库里的通用子程序里的参数
一定要写成内部参数
随着你水平的提高
你的程序会越来越复杂
有时候程序明明调试通过了
换个时间运行就是会出错
最奇怪的是怎么查都查不出错误....
未对选择的目标进行判断。如果选择的不是LINE,程序会出错。
ZZXXQQ发表于2010-9-12 8:46:00未对选择的目标进行判断。如果选择的不是LINE,程序会出错。
什麼是為對選擇的目標進行判斷?? 是用判斷式去判斷所選的圖形是不是直線嗎??
1.你第一點的意思是說,為了要讓副程式能夠接受的函數,所以(entsel)得到的形參,還要再經過 entget、car、cdr、等繁複的手續才能讓(distline)接受。你是說這樣的過程太複雜、也讓主程式為了要配合,而限制太多嗎??
可是目前我能想到的方式只有這個耶,有什麼比較好的的方式嗎?
4.第四點的意思是說,副程式後面的括號(),distline來說,要填入(/xline)<----這樣子嗎??
关于1,4点你的理解基本正确
(car (entsel))比(entsel)适合参数传递
写个统计多条直线总长的程序练习一下
你就会明白了
形参、内参不是( / xline ... )这样写
而是( xline / ... )这样写
关于这个还是看那个帖子的范例吧
嗯嗯,我把它找相反了,哈哈
(自變量/內部變量)
等我學習到後面一點的章節,再來用你說的那個多條長線統計的方式
另外,我發現CAD中就有內建算面積的指令了"AREA"
好像就不用再另外用LISP寫海龍公式的程式出來,
這樣程式就可以再縮得更短了
謝謝你給我這麼多觀念,哈哈
本版积分规则 发表回复 回帖后跳转到最后一页
小黑屋|手机版|CAD论坛|CAD教程|CAD下载|联系我们|关于明经|明经通道 ( 粤ICP备05003914号 ) ©2000-2023 明经通道 版权所有 本站代码,在未取得本站及作者授权的情况下,不得用于商业用途
GMT+8, 2025-2-23 14:05 , Processed in 0.203512 second(s), 26 queries , Gzip On.
Powered by Discuz! X3.4
Copyright © 2001-2021, Tencent Cloud.