明经CAD社区

 找回密码
 注册

QQ登录

只需一步,快速开始

搜索
查看: 263|回复: 11

[提问] 求教!如何获取外部参照内、指定图块的插入点坐标

[复制链接]
发表于 前天 21:49 | 显示全部楼层 |阅读模式




请教一下大家!如何获取外部参照内、指定图块的插入点坐标(相当于当前UCS)
例如:获取案例测试文件中、第一个圆图块的插入点坐标

我现在用nentsel拾取了参照内的一个图块、
可以获取到此图块的图元名、
然后用entget获取组码10、也就是插入点坐标

但是这种获取的坐标值、并不是当前坐标系下的坐标,
并且如果参照内有两个同名块,
分别用nentsel获取插入点坐标、结果竟然是一样的

研究了大半天也没找到头绪,
特来求教论坛的各位大神,
有没有啥办法、可以获取到想要的插入点坐标值


本帖子中包含更多资源

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

x
"觉得好,就打赏"
还没有人打赏,支持一下
回复

使用道具 举报

发表于 昨天 03:02 | 显示全部楼层
这个矩阵变换其实是有点复杂的,需要两次变换矩阵。
假设圆是块A的子图元,块A是块B的子图元。
1.entselp+entget获得组码10,得到块A的插入点的OCS坐标P。
2.结合210组码,使用 trans 将P转换为UCS坐标,得到P0。
3.将点P0逆变换到块A的块定义坐标系得到P1(可以借用gile的 RevRefGeom 函数 实现)
4.将P1由块B的块定义坐标系变换到当前空间坐标P2(使用第1步entselp返回的第三个参数:4x4矩阵),这时候P2点就是块参照A的插入点在当前空间的映射。
回复 支持 反对

使用道具 举报

 楼主| 发表于 前天 22:37 | 显示全部楼层
kozmosovia 发表于 2025-12-10 22:23
nentselp不可能获取到嵌套的图块,直接得到的是嵌套块的块内图元。需要根据nentselp的第四个返回值顺序获取 ...

如果是nentselp拾取块内图元、然后对图元的顶点坐标转换、在矩阵转换没问题;现在是想转换参照里面块的插入点坐标、我现在得到块的图元名后、用entget获取的插入点坐标值不对、感觉不能用entget来获取、现在就是这块卡住了
回复 支持 反对

使用道具 举报

 楼主| 发表于 昨天 09:58 | 显示全部楼层
caoyin 发表于 2025-12-11 03:02
这个矩阵变换其实是有点复杂的,需要两次变换矩阵。
假设圆是块A的子图元,块A是块B的子图元。
1.entselp ...

谢谢大神!原来这么复杂、我还是放弃吧、因为这个嵌套关系可能会有很多层、那转换就不止两次了
回复 支持 反对

使用道具 举报

发表于 前天 22:23 | 显示全部楼层
nentselp不可能获取到嵌套的图块,直接得到的是嵌套块的块内图元。需要根据nentselp的第四个返回值顺序获取到嵌套图块,然后进一步根据向外图块嵌套层级,顺次提取转换矩阵进行计算。
回复 支持 反对

使用道具 举报

发表于 前天 23:23 | 显示全部楼层
nentselp的第三个返回值就是最里层块内图元转换到当前WCS的矩阵,直接vla-copy点取图元,然后用这个矩阵转换,就可以直接原地复制出来,然后提取新复制图元的信息就是当前WCS的数据了。

简单点,直接用ncopy就是了
回复 支持 反对

使用道具 举报

 楼主| 发表于 昨天 09:53 | 显示全部楼层
kozmosovia 发表于 2025-12-10 23:23
nentselp的第三个返回值就是最里层块内图元转换到当前WCS的矩阵,直接vla-copy点取图元,然后用这个矩阵转 ...

主要是获取块插入点坐标、不是块内图元坐标
回复 支持 反对

使用道具 举报

发表于 昨天 11:00 | 显示全部楼层
前段时间插入底图,发现默认会原坐标插入,如果插入块参照,指定坐标应该也是可以的,但看你的貌似是获取块的坐标当做参照,不知道能不能做两个块,一个独立块,一个组合后的块,当然只是猜想,不是太理解你的目的或意图。
回复 支持 反对

使用道具 举报

发表于 昨天 11:51 | 显示全部楼层
回复 支持 反对

使用道具 举报

 楼主| 发表于 昨天 13:43 | 显示全部楼层
Andyhon 发表于 2025-12-11 11:51
Ref:
http://www.mjtd.com/thread-73535-1-1.html

谢谢 这个有点高深了  我研究一下
回复 支持 反对

使用道具 举报

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

本版积分规则

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

GMT+8, 2025-12-12 06:12 , Processed in 0.195748 second(s), 28 queries , Gzip On.

Powered by Discuz! X3.4

Copyright © 2001-2021, Tencent Cloud.

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