明经CAD社区

 找回密码
 注册

QQ登录

只需一步,快速开始

搜索
查看: 2955|回复: 2

读txt文件并分离出坐标来lisp程序.还不完善还是先发一个也许能帮初学者一个忙.->

[复制链接]
发表于 2004-12-10 21:49:00 | 显示全部楼层 |阅读模式
这是一个有关DMC配准前读txt中(见附件)的特定字符串后坐标的小程序,例子中我只提取西南和东北角点的X,Y坐标.我是集合了几个人的思路来写的.还不完善,但对于像我这样的初学者来说可能会帮上一点忙儿.所以就先发上来一个.希望多提宝贵意见. (defun c:DMCpz ( / txt fi start li str_tfh str_blc
str_WSx str_WSy str_ENx str_ENy WS_x WS_y EN_x EN_y
)

(setq path_txt (getfiled "Select .txt file" "" "txt" 2))
(setq fi (open path_txt "r"))

(setq ;str_tfh ""
str_WSx ""
str_WSy ""
str_ENx ""
str_ENy ""
;str_blc "1:5000"
)

(setq start T)

(while (and start (setq li (read-line fi)))
(cond
((wcmatch li "*图号*") (setq str_tfh li))
((wcmatch li "*DOM裁切范围西南角点X坐标*") (setq str_WSx li))
((wcmatch li "*DOM裁切范围西南角点Y坐标*") (setq str_WSy li))
((wcmatch li "*DOM裁切范围东北角点X坐标*") (setq str_ENx li))
((wcmatch li "*DOM裁切范围东北角点Y坐标*") (setq str_ENy li)(setq start nil))
(t nil)
)
)
(setq WS_x
(atof (substr str_WSx (+ 1 (strlen ":") (vl-string-search ":" str_WSx)))
))
(setq WS_y
(atof (substr str_WSy (+ 1 (strlen ":") (vl-string-search ":" str_WSy)))
))
(setq EN_x
(atof (substr str_ENx (+ 1 (strlen ":") (vl-string-search ":" str_ENx)))
))
(setq EN_y
(atof (substr str_ENy (+ 1 (strlen ":") (vl-string-search ":" str_ENy)))
))

(command ".line" (list WS_x WS_y) (list EN_x EN_y) "")

(close fi)
(princ)
)

评分

参与人数 1金钱 +2 贡献 +2 激情 +2 收起 理由
王咣生 + 2 + 2 + 2 【好评】支持本版块

查看全部评分

 楼主| 发表于 2004-12-10 21:51:00 | 显示全部楼层

本帖子中包含更多资源

您需要 登录 才可以下载或查看,没有账号?注册

x
发表于 2004-12-10 22:09:00 | 显示全部楼层

回复

本帖最后由 作者 于 2004-12-11 19:00:29 编辑

读取文件,尤其是txt文件,是初学者首先会面对的最实用的课题!
您需要登录后才可以回帖 登录 | 注册

本版积分规则

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

GMT+8, 2024-11-25 07:54 , Processed in 0.170508 second(s), 25 queries , Gzip On.

Powered by Discuz! X3.4

Copyright © 2001-2021, Tencent Cloud.

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