注册 登录
明经CAD社区 返回首页

13648893846的个人空间 http://www.mjtd.com/?7322544 [收藏] [复制] [分享] [RSS]

日志

读取纬地原始地貌数据转换成点表

已有 123 次阅读2018-10-25 23:12 |系统分类:应用

;;[功能]读取纬地原始地貌数据转换成点表
;;[用法](LC:Make-LWPOLYLINE (LC:read-Weft-pts lst (setq pt (getpoint)) (setq hxbl 1000.0) (setq zxbl 1000.0)))
;;[作者]BY 老仓测绘上班记
;;;(setq txt (try-read-txt WeftFILEpath))
;;;  (if (= (car txt) "HINTCAD5.83_HDM_SHUJU")
;;;    (setq txt (gxl-removeNth3 0 txt))
;;;  )
;;;  (setq txt (LC:devidelist txt 3))
;;;  (setq dmlen (length txt));断面数量
(defun LC:read-Weft-pts (LST PT HXBL ZXBL / LC LSTLEFT LSTRIGHT PTLST I PTS PJGC P)
  (setq lc (atof(car lst)))
;;;  (setq lstleft (LC:devidelist (gxl-removeNth3 0 (LC:NUMStr2List (cadr lst))) 2));左
;;;  (setq lstright (LC:devidelist (gxl-removeNth3 0 (LC:NUMStr2List (caddr lst))) 2));右
  (setq lstleft (LC:WEFT-left1 (gxl-removeNth3 0 (LC:NUMStr2List (cadr lst)))));左偏距高差表
  (setq lstright (LC:WEFT-right1 (gxl-removeNth3 0 (LC:NUMStr2List (caddr lst)))));右偏距高差表
  (setq ptlst '()
 ptlst (append ptlst lstleft lstright));总偏距高差表
  (setq i 0 pts '())
  (repeat (length ptlst)
    (setq pjgc (nth i ptlst))
    (setq p (LC:Pt2XY pt (* (car pjgc) (/ 1000.0 hxbl)) (* (cadr pjgc) (/ 1000.0 zxbl))))
    (setq pts (append pts (list p)))
    (setq i(1+ i))
  )
  pts
)


;;[功能]相对前点转化成相对中点左侧数据
;;[用法]
;;[作者]BY 老仓测绘上班记
(defun LC:WEFT-left1(lst / l)
  (while lst
    (setq l(cons(mapcar'+(list(car lst)(cadr lst))(if l(car l)'(0 0)))l)
 lst(cddr lst)))
  (mapcar '(lambda(x)(list(-(car x))(cadr x)))l)
  )
;;[功能]相对前点转化成相对中点右侧数据
;;[用法]
;;[作者]BY 老仓测绘上班记
(defun LC:WEFT-right1 (LST / L)
  (while lst
    (setq l(cons(mapcar'+(list(car lst)(cadr lst))(if l(car l)'(0 0)))l)
 lst(cddr lst)))
  (reverse l)
)


路过

雷人

握手

鲜花

鸡蛋

评论 (0 个评论)

facelist doodle 涂鸦板

您需要登录后才可以评论 登录 | 注册

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

GMT+8, 2019-1-16 20:44 , Processed in 0.107716 second(s), 18 queries , Gzip On.

Powered by Discuz! X3.3

© 2001-2013 Comsenz Inc.

返回顶部