找回密码
 立即注册

QQ登录

只需一步,快速开始

扫一扫,访问微社区

查看: 3388|回复: 23

[原创]:数据转换(xyz to cass)

[复制链接]
发表于 2007-7-22 22:55:47 | 显示全部楼层 |阅读模式

马上注册,结交更多好友,享用更多功能,让你轻松玩转社区。

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

×
;--碎步采集数据计算成果到流水号连线数据格式和南方cass展点数据文件--
;于此同时并提供计算碎步数据的程序
;4-!nVade<3#>的板凳,2007年7月22日 14:02
;------sub------

(defun flz()
        (setq i0 ii)
        (while (or (= zc ",") (= zc " "))
               (setq i0 (1+ i0))
               (setq zc (substr ll i0 1))
        )
        (setq ii i0)
        (while (> zc ",")
        (setq ii (1+ ii))
        (setq zc (substr ll ii 1))
        )
        (setq le (- ii i0))
)
;------main------
(defun C:dtod( / t0 t1 dt1 ff f fo fi wj ll i0 ii BL dh lx  x y z kzm pcode )
        (setvar "cmdecho" 0)
        (setvar "osmode" 0)
        (setq t0 (getvar "cdate"))                                      ;取得系统时间
        (setq ff (open "c:\\123\\newcass.dat" "w"))                     ;打开待新写入的文件,保持与cass软件展点一致(非专业测绘人员容易理解坐标系统)
        (setq f (open "c:\\123\\newno.xyz" "w"))                        ;打开待新写入的文件,只适用于流水号连线方式(半野外数字化适用)   
        (setq wj (getstring "请输入文件名(路径为:c:\\123\\*.xyz:"))    ;读取数据文件路径
        ;*.xyz 的格式为:点号  x  y  z  属性
        (princ "正在转换待定数据格式")
        (setq kzm (strcat "c:\\123\\" wj ".xyz"))
        (setq fo (open  kzm "r"))
        (setq LL (read-line fo))
        (setq p1 (list 0 0))
        (while (and ll (/= ll ""))
                (setq i0 1 ii 1)
                (setq zc (substr ll 1 1))
                (flz) (setq dh (substr ll i0 le))
                (flz) (setq x  (substr ll i0 le))
                (flz) (setq y  (substr ll i0 le))                           
                (flz) (setq z  (substr ll i0 le))                                                     
                (flz) (setq pcode (substr ll i0 le))
                (setq newno (strcat dh "-" pcode "   " x "   " y "   " z))  ;定义新的数据格式,非cass格式的数据转换
                ; (princ newno)(princ "\n")                                 ;屏幕打印出新的数据格式,非cass格式的数据转换
                (write-line newno f)                                        ;行数据写入文件newno

                (setq newcass (strcat dh ",," y "," x "," z))         ;定义新的数据格式,cass格式的数据转换
                ; (princ newcass)(princ "\n")                         ;屏幕打印出新的数据格式,cass格式的数据转换
                (write-line newcass ff)                               ;行数据写入文件newcass

                (setq ll (read-line fO))
        )
        (setq t1 (getvar "cdate"))  
        (setq dt1 (* 1000000 (- t1 t0)))
        (setq dt1 (rtos dt1 2 3))
        (princ (strcat "数据转换共耗时:" dt1  "秒"))
        (setq s (ssget '(0 0)))
        (setvar "cmdecho" 1); (setvar "cecolor" cc)
        (close fo)
        (setq C:dtod nil)                     ;取消函数定义,函数只能运行一次
)


附件有列子和计算程序
论坛插件加载方法
发帖求助前要善用【论坛搜索】功能,那里可能会有你要找的答案;
如果你在论坛求助问题,并且已经从坛友或者管理的回复中解决了问题,请把帖子标题加上【已解决】;
如何回报帮助你解决问题的坛友,一个好办法就是给对方加【D豆】,加分不会扣除自己的积分,做一个热心并受欢迎的人!
发表于 2007-7-27 06:18:57 | 显示全部楼层
这方法还是蛮好的,值得使用。
论坛插件加载方法
发帖求助前要善用【论坛搜索】功能,那里可能会有你要找的答案;
如果你在论坛求助问题,并且已经从坛友或者管理的回复中解决了问题,请把帖子标题加上【已解决】;
如何回报帮助你解决问题的坛友,一个好办法就是给对方加【D豆】,加分不会扣除自己的积分,做一个热心并受欢迎的人!
回复 支持 反对

使用道具 举报

发表于 2007-7-30 18:47:14 | 显示全部楼层
EXCEL手工导快
论坛插件加载方法
发帖求助前要善用【论坛搜索】功能,那里可能会有你要找的答案;
如果你在论坛求助问题,并且已经从坛友或者管理的回复中解决了问题,请把帖子标题加上【已解决】;
如何回报帮助你解决问题的坛友,一个好办法就是给对方加【D豆】,加分不会扣除自己的积分,做一个热心并受欢迎的人!
回复 支持 反对

使用道具 举报

 楼主| 发表于 2007-7-30 22:14:46 | 显示全部楼层
呵呵 楼上的说的很正确 不过excel数据多的时候很麻烦
这个只是个列子  大家可以随意修改需要的数据组合

————————————————————
论坛插件加载方法
发帖求助前要善用【论坛搜索】功能,那里可能会有你要找的答案;
如果你在论坛求助问题,并且已经从坛友或者管理的回复中解决了问题,请把帖子标题加上【已解决】;
如何回报帮助你解决问题的坛友,一个好办法就是给对方加【D豆】,加分不会扣除自己的积分,做一个热心并受欢迎的人!
回复 支持 反对

使用道具 举报

 楼主| 发表于 2007-7-30 22:25:02 | 显示全部楼层
呵呵 楼上的说的很正确 不过excel数据多的时候很麻烦
这个只是个列子  大家可以随意修改需要的数据组合

————————————————————
论坛插件加载方法
发帖求助前要善用【论坛搜索】功能,那里可能会有你要找的答案;
如果你在论坛求助问题,并且已经从坛友或者管理的回复中解决了问题,请把帖子标题加上【已解决】;
如何回报帮助你解决问题的坛友,一个好办法就是给对方加【D豆】,加分不会扣除自己的积分,做一个热心并受欢迎的人!
回复 支持 反对

使用道具 举报

发表于 2007-7-31 13:24:39 | 显示全部楼层
试试
论坛插件加载方法
发帖求助前要善用【论坛搜索】功能,那里可能会有你要找的答案;
如果你在论坛求助问题,并且已经从坛友或者管理的回复中解决了问题,请把帖子标题加上【已解决】;
如何回报帮助你解决问题的坛友,一个好办法就是给对方加【D豆】,加分不会扣除自己的积分,做一个热心并受欢迎的人!
回复 支持 反对

使用道具 举报

发表于 2007-8-6 07:59:31 | 显示全部楼层
转换方法自由、灵活。
论坛插件加载方法
发帖求助前要善用【论坛搜索】功能,那里可能会有你要找的答案;
如果你在论坛求助问题,并且已经从坛友或者管理的回复中解决了问题,请把帖子标题加上【已解决】;
如何回报帮助你解决问题的坛友,一个好办法就是给对方加【D豆】,加分不会扣除自己的积分,做一个热心并受欢迎的人!
回复 支持 反对

使用道具 举报

 楼主| 发表于 2007-8-6 10:02:28 | 显示全部楼层
(setq newno (strcat dh "-" pcode " " x " " y " " z))
这个地方大家可以设置自己需要的格式,就ok拉!
论坛插件加载方法
发帖求助前要善用【论坛搜索】功能,那里可能会有你要找的答案;
如果你在论坛求助问题,并且已经从坛友或者管理的回复中解决了问题,请把帖子标题加上【已解决】;
如何回报帮助你解决问题的坛友,一个好办法就是给对方加【D豆】,加分不会扣除自己的积分,做一个热心并受欢迎的人!
回复 支持 反对

使用道具 举报

发表于 2008-4-10 15:05:38 | 显示全部楼层
谢谢下来试试
论坛插件加载方法
发帖求助前要善用【论坛搜索】功能,那里可能会有你要找的答案;
如果你在论坛求助问题,并且已经从坛友或者管理的回复中解决了问题,请把帖子标题加上【已解决】;
如何回报帮助你解决问题的坛友,一个好办法就是给对方加【D豆】,加分不会扣除自己的积分,做一个热心并受欢迎的人!
回复 支持 反对

使用道具 举报

发表于 2008-4-19 20:55:58 | 显示全部楼层
我们一直在努力!!
论坛插件加载方法
发帖求助前要善用【论坛搜索】功能,那里可能会有你要找的答案;
如果你在论坛求助问题,并且已经从坛友或者管理的回复中解决了问题,请把帖子标题加上【已解决】;
如何回报帮助你解决问题的坛友,一个好办法就是给对方加【D豆】,加分不会扣除自己的积分,做一个热心并受欢迎的人!
回复 支持 反对

使用道具 举报

发表于 2008-4-20 01:11:13 | 显示全部楼层
谢谢下来试试,好不好用。
论坛插件加载方法
发帖求助前要善用【论坛搜索】功能,那里可能会有你要找的答案;
如果你在论坛求助问题,并且已经从坛友或者管理的回复中解决了问题,请把帖子标题加上【已解决】;
如何回报帮助你解决问题的坛友,一个好办法就是给对方加【D豆】,加分不会扣除自己的积分,做一个热心并受欢迎的人!
回复 支持 反对

使用道具 举报

发表于 2008-4-23 10:15:06 | 显示全部楼层
谢谢发,下来试试,以前都是手改,好麻烦
论坛插件加载方法
发帖求助前要善用【论坛搜索】功能,那里可能会有你要找的答案;
如果你在论坛求助问题,并且已经从坛友或者管理的回复中解决了问题,请把帖子标题加上【已解决】;
如何回报帮助你解决问题的坛友,一个好办法就是给对方加【D豆】,加分不会扣除自己的积分,做一个热心并受欢迎的人!
回复 支持 反对

使用道具 举报

发表于 2008-4-23 18:44:30 | 显示全部楼层
谢谢,下来学习学习。
论坛插件加载方法
发帖求助前要善用【论坛搜索】功能,那里可能会有你要找的答案;
如果你在论坛求助问题,并且已经从坛友或者管理的回复中解决了问题,请把帖子标题加上【已解决】;
如何回报帮助你解决问题的坛友,一个好办法就是给对方加【D豆】,加分不会扣除自己的积分,做一个热心并受欢迎的人!
回复 支持 反对

使用道具 举报

发表于 2008-5-7 00:56:32 | 显示全部楼层
以前都是手改,好麻烦
论坛插件加载方法
发帖求助前要善用【论坛搜索】功能,那里可能会有你要找的答案;
如果你在论坛求助问题,并且已经从坛友或者管理的回复中解决了问题,请把帖子标题加上【已解决】;
如何回报帮助你解决问题的坛友,一个好办法就是给对方加【D豆】,加分不会扣除自己的积分,做一个热心并受欢迎的人!
回复 支持 反对

使用道具 举报

发表于 2008-5-10 07:13:23 | 显示全部楼层
这方法还是蛮好的,值得使用。
论坛插件加载方法
发帖求助前要善用【论坛搜索】功能,那里可能会有你要找的答案;
如果你在论坛求助问题,并且已经从坛友或者管理的回复中解决了问题,请把帖子标题加上【已解决】;
如何回报帮助你解决问题的坛友,一个好办法就是给对方加【D豆】,加分不会扣除自己的积分,做一个热心并受欢迎的人!
回复 支持 反对

使用道具 举报

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

QQ|申请友链|Archiver|手机版|小黑屋|辽公网安备|晓东CAD家园 ( 辽ICP备15016793号 )

GMT+8, 2024-11-22 05:08 , Processed in 0.253319 second(s), 60 queries , Gzip On.

Powered by Discuz! X3.5

© 2001-2024 Discuz! Team.

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