明经CAD社区

 找回密码
 注册

QQ登录

只需一步,快速开始

搜索
楼主: ljw2009

请问高手怎样提取地形图中无高程属性的地形点高程?

  [复制链接]
发表于 2010-9-27 14:30:00 | 显示全部楼层
得看楼主你的图是用什么软件成图的吧,如果是南方,那么高程值和高程点是同一个块,很容易取得Z值,估计得传张图上来瞧瞧
发表于 2010-11-4 01:07:00 | 显示全部楼层
你这个问题我可以解决 我现在每天接触的都像你说的那种地形图 可以联系我Q604275805
发表于 2010-11-5 21:28:00 | 显示全部楼层
 ;提取海图水深值
 ;小数与对应整数的坐标差固定为(6.4,-1.0),另假定图面上没有其他text对象
 (defun c:tqhtss (/ ss1 ss2 en1 en2 x1 x2 y1 y2 t1 t2 m n k ff txt)
    (setq ss1 (ssget "x" '((0 . "TEXT") (40 . 4.0))))
    (setq ss2 (ssget "x" '((0 . "TEXT") (40 . 3.0))))
    (setq n 0)
    (setq ff (getfiled "提取海图水深" "c:\\海图水深数据" "txt" 1))
    (setq ff (open ff "w"))
    (repeat (sslength ss1)
      (setq m 0)
      (setq en1 (ssname ss1 n))
      (setq x1 (cadr (assoc 10 (entget en1))))
      (setq y1 (caddr (assoc 10 (entget en1))))
      (setq t1 (cdr (assoc 1 (entget en1))))
      (setq k 0)
      (repeat (sslength ss2)
         (setq en2 (ssname ss2 k))
         (setq x2 (cadr (assoc 10 (entget en2))))
         (if (< (abs (- (- x2 x1) 6.4)) 0.0001);x方向坐标差改变
           (progn
              (setq y2 (caddr (assoc 10 (entget en2))))
              (if (< (abs (- (- y1 y2) 1)) 0.0001);y方向坐标差改变
                 (progn      
                   (setq t2 (cdr (assoc 1 (entget en2))))
                   (setq txt (strcat (rtos x1) " " (rtos y1) " " t1 "." t2 ""))
                   (write-line txt ff)
                   (print k)
                   (setq m 1)
                 )
              )
           )
         )
         (setq k (1+ k))
      )
      (if (= m 0)
         (progn
            (setq txt (strcat (rtos x1) " " (rtos y1) " " t1 ""))
            (write-line txt ff)
            (print k)
         )
      )
      (setq n (1+ n))
    )
    (close ff)
    (princ)
 )
发表于 2010-11-5 21:32:00 | 显示全部楼层
这是在明经里找到的,感谢提供源码的网友
发表于 2010-11-22 21:43:00 | 显示全部楼层
想知道
发表于 2010-12-1 15:08:17 | 显示全部楼层
本帖最后由 461045462 于 2010-12-1 15:28 编辑

期待解决的办法。
  请问:用lsp如何编辑读写图上的高程点(gcd层),如果能同时读取控制点(kzd层),并将点名一起注出就更理想。
另外请教一个问题,高程点的数据与点是一个块,用lsp语句如何去分解它?如果直接使用explode命令,点与数据就全没有了?
请高手指教。
文件见下面:地形数据



谢谢

本帖子中包含更多资源

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

x
发表于 2011-1-22 15:38:48 | 显示全部楼层
回复 461045462 的帖子

对于高程点和数据点用炸开命令会消失的问题,如果是用南方CASS,取消编组,就可以实现高程点和数据点分开。
发表于 2011-1-22 20:02:42 | 显示全部楼层
gzbccy 发表于 2011-1-22 15:38
回复 461045462 的帖子

对于高程点和数据点用炸开命令会消失的问题,如果是用南方CASS,取消编组,就可以实 ...

请问:取消编组是怎样操作?没有使用过
望指教
谢谢
发表于 2011-1-23 10:23:34 | 显示全部楼层
461045462 发表于 2011-1-22 20:02
请问:取消编组是怎样操作?没有使用过
望指教
谢谢

CASS界面下编辑菜单中有编组选择项,有ON/OFF选择。选择OFF即可
发表于 2011-1-23 16:06:05 | 显示全部楼层
谢谢gzbccy 的指教
学习了
您需要登录后才可以回帖 登录 | 注册

本版积分规则

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

GMT+8, 2024-11-23 11:33 , Processed in 0.160347 second(s), 18 queries , Gzip On.

Powered by Discuz! X3.4

Copyright © 2001-2021, Tencent Cloud.

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