msm54 发表于 2022-7-6 14:49:00

循环时的多段线

我试图编写一个简短的例程,启动“pline”命令,然后为pline上所需的每个点读取一个逗号分隔的文件。该文件存在,包含200-x,y坐标(例如0,0)
 
我的代码是:
 
(defun c:drawfoil()
(setq f(打开“c:/NACA 1212 100points.txt”“r”)-打开要读取的文件
(命令“pline”dataline“”)
(命令行“strtpt endpt”)
(而(/=数据线“EOF”)-循环直到文件结束
(setq数据线(读取线f))-读取数据行
)                                          
(关闭f)-关闭文件
)
 
命令行如下所示:
 
命令:(加载“drawfoil”)
C: 拉丝箔
命令:drawfoil
_普林
指定起点:EOF
无效点。
; 错误:功能已取消
指定起点:*取消*
 
看起来pline命令正在执行,但我正在获取我在文件末尾插入的“EOF”,以停止循环。我知道存在于这个文本文件中的200 x,y坐标发生了什么?
 
感谢您的帮助。
 
msm54

fuccaro 发表于 2022-7-6 15:08:04

欢迎来到论坛!
建议:运行OSNAP时关闭它

msm54 发表于 2022-7-6 15:23:03

fuccaro,
 
谢谢你的帮助。这很好用!
 
while循环使用什么来结束循环?
 
msm54

fuccaro 发表于 2022-7-6 15:28:09

变量可以为零或。。。其他(不是零)。如果数据线中有数据,则不存在零,因此循环继续。当文件结束时,读取将不返回任何内容,因此数据线将保留NIL使其停止。

msm54 发表于 2022-7-6 15:48:33

理解
 
非常感谢

fuccaro 发表于 2022-7-6 15:54:20

别提了。这是我的荣幸!
页: [1]
查看完整版本: 循环时的多段线