找回密码
 立即注册

QQ登录

只需一步,快速开始

扫一扫,访问微社区

查看: 1130|回复: 12

[已解决] 【已解决】entmake生成对象的问题

[复制链接]

已领礼包: 5188个

财富等级: 富甲天下

发表于 2018-9-29 14:59:40 | 显示全部楼层 |阅读模式

马上注册,结交更多好友,享用更多功能,让你轻松玩转社区。

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

×
本帖最后由 原地踏步 于 2018-9-30 11:11 编辑

开两张新图,一张插入附件,一张引用附件,分别执行test,插入的能生成(不考虑坐标转换),而引用的不能。请问这是什么原因,遇到引用时该如何解决?
  1. (defun c:test ()
  2.   (setq ent (nentselp))
  3.   (setq dxf (entget (car ent)))
  4.   (entmake dxf)
  5. )

参照图.rar

908.85 KB, 下载次数: 5, 下载积分: D豆 -1 , 活跃度 1

论坛插件加载方法
发帖求助前要善用【论坛搜索】功能,那里可能会有你要找的答案;
如果你在论坛求助问题,并且已经从坛友或者管理的回复中解决了问题,请把帖子标题加上【已解决】;
如何回报帮助你解决问题的坛友,一个好办法就是给对方加【D豆】,加分不会扣除自己的积分,做一个热心并受欢迎的人!

已领礼包: 5188个

财富等级: 富甲天下

 楼主| 发表于 2018-9-29 15:01:35 | 显示全部楼层
补充一下,不能生成的是用红色的圆标识的两段多段线。其它的好像能生成。
论坛插件加载方法
发帖求助前要善用【论坛搜索】功能,那里可能会有你要找的答案;
如果你在论坛求助问题,并且已经从坛友或者管理的回复中解决了问题,请把帖子标题加上【已解决】;
如何回报帮助你解决问题的坛友,一个好办法就是给对方加【D豆】,加分不会扣除自己的积分,做一个热心并受欢迎的人!
回复 支持 反对

使用道具 举报

已领礼包: 19个

财富等级: 恭喜发财

发表于 2018-9-29 15:09:43 | 显示全部楼层
建议用 entmake 搜索下论坛, 基本所有实体类型的都有函数
我看你代码,你把整个entget的数据给entmake了,可能问题就在这,不是所有的都要的,不能多也不能少。要给这个实体类型公共的数据。
论坛插件加载方法
发帖求助前要善用【论坛搜索】功能,那里可能会有你要找的答案;
如果你在论坛求助问题,并且已经从坛友或者管理的回复中解决了问题,请把帖子标题加上【已解决】;
如何回报帮助你解决问题的坛友,一个好办法就是给对方加【D豆】,加分不会扣除自己的积分,做一个热心并受欢迎的人!
回复 支持 反对

使用道具 举报

已领礼包: 5188个

财富等级: 富甲天下

 楼主| 发表于 2018-9-29 15:59:13 | 显示全部楼层
问题在于,插入的能生成,而引用的不能生成。插入的也是把整个数据都entmake了呀。而且好像还只有这两条多段线,其余的线引用的图也能生成。
论坛插件加载方法
发帖求助前要善用【论坛搜索】功能,那里可能会有你要找的答案;
如果你在论坛求助问题,并且已经从坛友或者管理的回复中解决了问题,请把帖子标题加上【已解决】;
如何回报帮助你解决问题的坛友,一个好办法就是给对方加【D豆】,加分不会扣除自己的积分,做一个热心并受欢迎的人!
回复 支持 反对

使用道具 举报

已领礼包: 5188个

财富等级: 富甲天下

 楼主| 发表于 2018-9-29 16:05:24 | 显示全部楼层
这是插入得到的DXF
((-1 . <图元名: 7ffff94ce30>) (0 . "LWPOLYLINE") (330 . <图元名: 7ffff9489a0>)
(5 . "5A1B") (100 . "AcDbEntity") (67 . 0) (8 . "苏宁-塔楼$0$s消防道路及扑救场地") (6 .
"苏宁-塔楼$0$DASH") (48 . 5.0) (100 . "AcDbPolyline") (90 . 6) (70 . 0) (43 . 0.0)
(38 . 0.0) (39 . 0.0) (10 29829.6 36627.2) (40 . 0.0) (41 . 0.0) (42 . 0.0) (91
. 0) (10 29829.6 36568.6) (40 . 0.0) (41 . 0.0) (42 . 0.338107) (91 . 0) (10
29836.3 36560.0) (40 . 0.0) (41 . 0.0) (42 . 0.0) (91 . 0) (10 29881.6 36547.6)
(40 . 0.0) (41 . 0.0) (42 . 0.410417) (91 . 0) (10 29892.7 36553.8) (40 . 0.0)
(41 . 0.0) (42 . 0.0) (91 . 0) (10 29917.0 36638.7) (40 . 0.0) (41 . 0.0) (42 .
0.0) (91 . 0) (210 0.0 0.0 1.0))
论坛插件加载方法
发帖求助前要善用【论坛搜索】功能,那里可能会有你要找的答案;
如果你在论坛求助问题,并且已经从坛友或者管理的回复中解决了问题,请把帖子标题加上【已解决】;
如何回报帮助你解决问题的坛友,一个好办法就是给对方加【D豆】,加分不会扣除自己的积分,做一个热心并受欢迎的人!
回复 支持 反对

使用道具 举报

已领礼包: 5188个

财富等级: 富甲天下

 楼主| 发表于 2018-9-29 16:06:58 | 显示全部楼层
这是引用得到的DXF
((-1 . <图元名: 7ffff8ab2b0>) (0 . "LWPOLYLINE") (330 . <图元名: 7ffffbcbae0>) (5 .
"3CAA3") (100 . "AcDbEntity") (67 . 0) (8 . "参照图|苏宁-塔楼$0$s消防道路及扑救场地") (6 .
"参照图|苏宁-塔楼$0$DASH") (48 . 5.0) (100 . "AcDbPolyline") (90 . 6) (70 . 0) (43 .
0.0) (38 . 0.0) (39 . 0.0) (10 29829.6 36627.2) (40 . 0.0) (41 . 0.0) (42 .
0.0) (91 . 0) (10 29829.6 36568.6) (40 . 0.0) (41 . 0.0) (42 . 0.338107) (91 .
0) (10 29836.3 36560.0) (40 . 0.0) (41 . 0.0) (42 . 0.0) (91 . 0) (10 29881.6
36547.6) (40 . 0.0) (41 . 0.0) (42 . 0.410417) (91 . 0) (10 29892.7 36553.8)
(40 . 0.0) (41 . 0.0) (42 . 0.0) (91 . 0) (10 29917.0 36638.7) (40 . 0.0) (41 .
0.0) (42 . 0.0) (91 . 0) (210 0.0 0.0 1.0))
论坛插件加载方法
发帖求助前要善用【论坛搜索】功能,那里可能会有你要找的答案;
如果你在论坛求助问题,并且已经从坛友或者管理的回复中解决了问题,请把帖子标题加上【已解决】;
如何回报帮助你解决问题的坛友,一个好办法就是给对方加【D豆】,加分不会扣除自己的积分,做一个热心并受欢迎的人!
回复 支持 反对

使用道具 举报

已领礼包: 5188个

财富等级: 富甲天下

 楼主| 发表于 2018-9-29 16:10:05 | 显示全部楼层
我比较了一下,主要的区别在于插入的有5个端点(组码10),而引用的只有4个。但它们的组码90的值却都为6。
论坛插件加载方法
发帖求助前要善用【论坛搜索】功能,那里可能会有你要找的答案;
如果你在论坛求助问题,并且已经从坛友或者管理的回复中解决了问题,请把帖子标题加上【已解决】;
如何回报帮助你解决问题的坛友,一个好办法就是给对方加【D豆】,加分不会扣除自己的积分,做一个热心并受欢迎的人!
回复 支持 反对

使用道具 举报

已领礼包: 5188个

财富等级: 富甲天下

 楼主| 发表于 2018-9-29 16:15:07 | 显示全部楼层
这是entmake的帮助说明,图元名和句柄都是可以有的。
图元类型(如 CIRCLE 或 LINE)必须是 elist 参数所指的表中的第一项或第二项。如果是第二项,那么第一项必须是图元名。在这种情况下,entmake 函数创建新图元时会忽略图元名。如果 elist 参数中包含了图元句柄,该句柄也会被忽略。
论坛插件加载方法
发帖求助前要善用【论坛搜索】功能,那里可能会有你要找的答案;
如果你在论坛求助问题,并且已经从坛友或者管理的回复中解决了问题,请把帖子标题加上【已解决】;
如何回报帮助你解决问题的坛友,一个好办法就是给对方加【D豆】,加分不会扣除自己的积分,做一个热心并受欢迎的人!
回复 支持 反对

使用道具 举报

已领礼包: 5188个

财富等级: 富甲天下

 楼主| 发表于 2018-9-29 16:34:17 | 显示全部楼层
哦,不对,引用的也是5个。
论坛插件加载方法
发帖求助前要善用【论坛搜索】功能,那里可能会有你要找的答案;
如果你在论坛求助问题,并且已经从坛友或者管理的回复中解决了问题,请把帖子标题加上【已解决】;
如何回报帮助你解决问题的坛友,一个好办法就是给对方加【D豆】,加分不会扣除自己的积分,做一个热心并受欢迎的人!
回复 支持 反对

使用道具 举报

已领礼包: 604个

财富等级: 财运亨通

发表于 2018-9-29 16:59:02 | 显示全部楼层
你是怎么引用的呀,我试了一下,可以的呀
论坛插件加载方法
发帖求助前要善用【论坛搜索】功能,那里可能会有你要找的答案;
如果你在论坛求助问题,并且已经从坛友或者管理的回复中解决了问题,请把帖子标题加上【已解决】;
如何回报帮助你解决问题的坛友,一个好办法就是给对方加【D豆】,加分不会扣除自己的积分,做一个热心并受欢迎的人!
回复 支持 反对

使用道具 举报

已领礼包: 5188个

财富等级: 富甲天下

 楼主| 发表于 2018-9-29 17:25:13 | 显示全部楼层
引用是没问题,问题是引用后执行test,选择用圆标注的那两段多段线,entmake无效。但插入的就可以,引用图中的其它线好像也都可以。
论坛插件加载方法
发帖求助前要善用【论坛搜索】功能,那里可能会有你要找的答案;
如果你在论坛求助问题,并且已经从坛友或者管理的回复中解决了问题,请把帖子标题加上【已解决】;
如何回报帮助你解决问题的坛友,一个好办法就是给对方加【D豆】,加分不会扣除自己的积分,做一个热心并受欢迎的人!
回复 支持 反对

使用道具 举报

已领礼包: 1742个

财富等级: 堆金积玉

发表于 2018-9-30 07:55:33 | 显示全部楼层
entmake 需要基本的组码规范,外部的不在规范中

点评

明白了。谢谢炫版主,同时也谢谢Lisphk和黄前辈。  详情 回复 发表于 2018-9-30 11:10
论坛插件加载方法
发帖求助前要善用【论坛搜索】功能,那里可能会有你要找的答案;
如果你在论坛求助问题,并且已经从坛友或者管理的回复中解决了问题,请把帖子标题加上【已解决】;
如何回报帮助你解决问题的坛友,一个好办法就是给对方加【D豆】,加分不会扣除自己的积分,做一个热心并受欢迎的人!
回复 支持 反对

使用道具 举报

已领礼包: 5188个

财富等级: 富甲天下

 楼主| 发表于 2018-9-30 11:10:07 | 显示全部楼层
炫翔 发表于 2018-9-30 07:55
entmake 需要基本的组码规范,外部的不在规范中

明白了。谢谢炫版主,同时也谢谢Lisphk和黄前辈。
论坛插件加载方法
发帖求助前要善用【论坛搜索】功能,那里可能会有你要找的答案;
如果你在论坛求助问题,并且已经从坛友或者管理的回复中解决了问题,请把帖子标题加上【已解决】;
如何回报帮助你解决问题的坛友,一个好办法就是给对方加【D豆】,加分不会扣除自己的积分,做一个热心并受欢迎的人!
回复 支持 反对

使用道具 举报

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

QQ|申请友链|Archiver|手机版|小黑屋|辽公网安备|晓东CAD家园 ( 辽ICP备15016793号 )

GMT+8, 2024-11-15 04:40 , Processed in 0.418452 second(s), 56 queries , Gzip On.

Powered by Discuz! X3.5

© 2001-2024 Discuz! Team.

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