明经CAD社区

 找回密码
 注册

QQ登录

只需一步,快速开始

搜索
查看: 4842|回复: 18

如何在块参照 提取图层 块名 批量赋实物扩展属性

  [复制链接]
发表于 2012-5-8 12:36:45 | 显示全部楼层 |阅读模式
附上图会说得比较清楚
[img]file:///C:/Documents%20and%20Settings/Administrator/Application%20Data/Tencent/Users/985189596/QQ/WinTemp/RichOle/Z01[{_Z(PTCGXPAF`4X37GY.jpg[/img]
说明我现有的图形的特点:1、 图层有很多个 如BLSS,JMD,SXS等 ,这些图层里面的对象都是没有扩展属性的 2、同一个图层的对象块名是不一样的,如BLSS图层中 的名称有164400_1   164400_2  164400_i等,其中块名的特点是 它是由 “实体编码”+“_”+“数字”组成的。其他图层的块名也是由相应的实体编码加上数字组成的。
希望程序达到的效果:可以把每个图层的块名都提取出来,然后把块名前面的实体编码部分截取。然后写入扩展属性中。能让原本没有扩展属性的对象在我们加载程序后,可以实现 鼠标一点就可以看到它的属性file:///C:/Documents%20and%20Settings/Administrator/Application%20Data/Tencent/Users/985189596/QQ/WinTemp/RichOle/U9MAMT(WX9I)EUG{ZEWVG`I.jpg
其实就是扩展属性怎么写入。
希望各位前辈能够帮帮忙,autolisp这个月开始接触,不熟悉,不知道怎么编
可以QQ联系或这是值直接回帖,先谢过了。


发表于 2012-5-8 14:06:43 | 显示全部楼层
看来又是一测绘同行,建议还是直接把你的dwg附件上来,大家再帮你!
 楼主| 发表于 2012-5-8 15:18:30 | 显示全部楼层
zyhandw 发表于 2012-5-8 14:06
看来又是一测绘同行,建议还是直接把你的dwg附件上来,大家再帮你!

呵呵,我的确是学测绘的,现在附上dwg附件,希望大家能够给与帮助

本帖子中包含更多资源

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

x
 楼主| 发表于 2012-5-8 16:28:23 | 显示全部楼层
自己顶一下
发表于 2012-5-8 17:27:54 | 显示全部楼层
这个应该好办,以扩展属性为south为例,简单写了一下,用下面的程序试试:
  1. (defun c:test()
  2. (regapp "south")
  3. (setq sscnt 0)
  4.   (prompt "\n请选择要赋属性的块:")
  5.   (if (setq ins_all (ssget (list '(0 . "insert"))))
  6.    (repeat (sslength ins_all)
  7.     (setq ss_ins_name (ssname ins_all sscnt))
  8.     (setq ss_ins_att (entget ss_ins_name (list "*")))
  9.     (setq ins_name (cdr (assoc '2 ss_ins_att)))
  10.     (setq ins_code (substr ins_name 1 (vl-string-position (ascii "_") ins_name)))
  11.     (setq ins_code_lst (list '-3 (list "south" (cons 1000 ins_code))))
  12.     (setq ss_ins_att (reverse (append (list ins_code_lst) (reverse ss_ins_att))))
  13.     (entmod ss_ins_att)
  14.     (setq sscnt (1+ sscnt))
  15.    )
  16.   )
  17. )
 楼主| 发表于 2012-5-8 18:27:02 | 显示全部楼层
zyhandw 发表于 2012-5-8 17:27
这个应该好办,以扩展属性为south为例,简单写了一下,用下面的程序试试:

感谢,不过我试了一下,当选择需要赋属性的块的时候只能选择一个对象,然后要一个一个的赋属性。这好像和手动赋属性没有差别。我想做的是在同一个图层的所有对象能够一次性的赋属性。不知道我说的清不清楚,请见谅。
 楼主| 发表于 2012-5-8 22:15:09 | 显示全部楼层
求帮助呀,急急……
发表于 2012-5-9 14:05:39 | 显示全部楼层


怎么可能呢?可以拉框选取啊,上面是操作图

本帖子中包含更多资源

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

x
 楼主| 发表于 2012-5-9 15:52:58 | 显示全部楼层
zyhandw 发表于 2012-5-9 14:05
怎么可能呢?可以拉框选取啊,上面是操作图

真的很感谢,是我自己不会操作,现在会了,再次感谢
 楼主| 发表于 2012-5-22 14:57:18 | 显示全部楼层
zyhandw 发表于 2012-5-8 17:27
这个应该好办,以扩展属性为south为例,简单写了一下,用下面的程序试试:

你好,不知道能不能在赋扩展属性的同时改变图层的颜色呢,比如把图层 “JMD”的颜色改为品红。因为现在的图的颜色都是白色的,不好区分。
您需要登录后才可以回帖 登录 | 注册

本版积分规则

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

GMT+8, 2025-5-21 01:10 , Processed in 0.187009 second(s), 27 queries , Gzip On.

Powered by Discuz! X3.4

Copyright © 2001-2021, Tencent Cloud.

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