明经CAD社区

 找回密码
 注册

QQ登录

只需一步,快速开始

搜索
查看: 2287|回复: 1

多段线控制点

[复制链接]
发表于 2006-3-10 13:22:00 | 显示全部楼层 |阅读模式

怎么提取多个多段线控制点????

我用list结果是:

       

按 ENTER 键继续:
                  LWPOLYLINE  图层: 0
                            空间: 模型空间
                   颜色: 253    线型: CONTINUOUS
                   句柄 = 8cfc6
              打开
    固定宽度     0.000
     
            长度   5.441
按 ENTER 键继续:

          于端点  X= 5484.000  Y=  298.000  Z=    0.000
          于端点  X= 5487.900  Y=  299.200  Z=    0.000
          于端点  X= 5489.000  Y=  300.000  Z=    0.000

            ARC       图层: 0
                            空间: 模型空间
                   颜色: 253    线型: CONTINUOUS
                   句柄 = 8cef8
              圆心 点, X= 5418.880  Y=  293.824  Z=    0.000
              半径    13.209
              起点 角度     67
              端点 角度    130
            长度    14.527

                  LWPOLYLINE  图层: 0
                            空间: 模型空间
                   颜色: 253    线型: CONTINUOUS
                   句柄 = 8cef2
              打开
    固定宽度     0.000
              面积   6.588
            长度   8.337

          于端点  X= 5412.000  Y=  297.000  Z=    0.000
          于端点  X= 5411.000  Y=  297.000  Z=    0.000
          于端点  X= 5410.000  Y=  298.000  Z=    0.000
          于端点  X= 5410.353  Y=  303.912  Z=    0.000

如果我只要X和Y的数据,应该怎么办???

谢谢!!!

发表于 2006-3-11 16:40:00 | 显示全部楼层
  1. ;;;多义线顶点坐标集(支持框选)
  2. (defun c:test124 ()
  3.   (princ "\n选取*PLINE多义线...")
  4.   (setq ss    (ssget '((0 . "*POLYLINE")))
  5. i     -1
  6. ptlst '()
  7.   )
  8.   (if ss
  9.     (progn
  10.       (while (setq ssn (ssname ss (setq i (1+ i))))
  11. (setq retcoord (vla-get-Coordinates (vlax-ename->vla-object ssn))
  12.        n        0
  13. )
  14. (repeat
  15.    (/ (length (vlax-safearray->list (vlax-variant-value retcoord))
  16.       )
  17.       2
  18.    )
  19.     (setq ptx   (vlax-safearray-get-element
  20.     (vlax-variant-value retcoord)
  21.     n
  22.          )
  23.    n     (1+ n)
  24.    pty   (vlax-safearray-get-element
  25.     (vlax-variant-value retcoord)
  26.     n
  27.          )
  28.    n     (1+ n)
  29.    pt    (list ptx pty)
  30.    ptlst (cons pt ptlst)
  31.     )
  32. )
  33.       )
  34.       (princ "\n多义线顶点坐标集(!ptlst) : ")
  35.       (if ptlst
  36. (princ ptlst)
  37.       )
  38.     )
  39.     (princ "\n未选到多义线!")
  40.   )
  41.   (princ)
  42. )
您需要登录后才可以回帖 登录 | 注册

本版积分规则

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

GMT+8, 2024-11-23 07:37 , Processed in 0.166779 second(s), 28 queries , Gzip On.

Powered by Discuz! X3.4

Copyright © 2001-2021, Tencent Cloud.

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