明经CAD社区

 找回密码
 注册

QQ登录

只需一步,快速开始

搜索
查看: 1147|回复: 4

[提问] 求教:提取标注内容并写入文件

[复制链接]
发表于 2015-6-10 17:01:34 | 显示全部楼层 |阅读模式
比如一段管道,需要提取其起点,终点,编号,管径,标高等。起点,终点通过访问图元可以提取到,标注中的管径,标高等信息需要从标注中提取,这方面不是很了解,求大神指教。新手上图都不会啊,我试着弄一下啊。
  1. ;vla方法获取起点,终点,长度,角度
  2. (defun GETPro (ent)
  3.   (vl-load-com)
  4.   (setq vlobject (vlax-ename->vla-object ent))
  5.   (setq sp (vlax-get vlobject 'startpoint))
  6.   ;(princ sp)
  7.   ;(print)
  8.   (setq ep (vlax-get vlobject 'endpoint))
  9.   ;(princ ep)
  10.   ;(print)
  11.   (setq L (vlax-get vlobject 'length))
  12.   ;(princ L)
  13.   ;(print)
  14.   (setq ang(vlax-get vlobject 'angle))
  15.   ;(princ ang)
  16.   ;(print)

本帖子中包含更多资源

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

x
发表于 2015-6-10 17:33:24 | 显示全部楼层
标高写入文件有什么用?
最好上图,从你的标注文字中,找规律。

要写入什么文件中?管道索引表吗?
 楼主| 发表于 2015-6-10 17:56:03 | 显示全部楼层
fl202 发表于 2015-6-10 17:33
标高写入文件有什么用?
最好上图,从你的标注文字中,找规律。

上图只是举了一个例子,就是管径,该如何提取。最终想要转成三维的,就要求有起,终点,管径这些数据。
写入文本文件.txt就行。
格式如下应该可以吧:
(起点)(终点)管径
例如:(1000,1000) (1500,1000)50
图上的50该怎么提取,尽量与起点,终点一起提取
这下我说明白了没有?
发表于 2015-6-10 19:36:31 | 显示全部楼层
Signature

object.Measurement

object

Dim3PointAngular, DimAligned, DimAngular, DimArcLength, DimDiametric, DimOrdinate, DimRadial, DimRadialLarge, DimRotated
The object or objects this property applies to.

Measurement


Double; read-only
For linear dimensions this is a length, for angular dimensions it is an angle.

object.TextOverride

object

Dim3PointAngular, DimAligned, DimAngular, DimArcLength, DimDiametric, DimOrdinate, DimRadial, DimRadialLarge, DimRotated
使用该属性的对象。

TextOverride

String[字符串]; 可读写
最大长度为 256 个字符。


发表于 2015-6-10 19:40:39 | 显示全部楼层
按你的写法,(vlax-get vlobject  'measurement )获得实际测量值。
实际上lisp比这个简单。。
(cdr(assoc 42 (entget ent)))
您需要登录后才可以回帖 登录 | 注册

本版积分规则

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

GMT+8, 2025-5-21 21:50 , Processed in 0.152705 second(s), 26 queries , Gzip On.

Powered by Discuz! X3.4

Copyright © 2001-2021, Tencent Cloud.

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