乐筑天下

搜索
欢迎各位开发者和用户入驻本平台 尊重版权,从我做起,拒绝盗版,拒绝倒卖 签到、发布资源、邀请好友注册,可以获得银币 请注意保管好自己的密码,避免账户资金被盗
查看: 187|回复: 14

getsubentity中的TransMatrix是什么?

[复制链接]

170

主题

1424

帖子

8

银币

顶梁支柱

Rank: 50Rank: 50

铜币
2119
发表于 2006-7-26 22:34:28 | 显示全部楼层 |阅读模式
ThisDrawing.Utility。GetSubEntity ent、varPick、TransMatrix、;上下文数据、vbCrLf&amp&引用;p“
I港#039;t在转换中弄乱了很多东西,所以我'我不知道这意味着什么
Aim:我有一个函数,可以向块添加引线和注释,其中多行文字显示块的名称或附加到块的扩展数据。它工作得很好,很方便。但是我想在块上拾取一个点(该点实际上只是拾取框的中心),并将该点更改为块上最近的点,作为我的引线箭头
我有一个很好的nearestpointtoEnt函数,但是GetSubEntity函数经过的ent不是blockref中的实体,而是位于0,0处的块中的实体。TransMatrix可能是blockref经历的平移矩阵,但是选择一个对象并对其应用相同的TransMatrix会使其完全卷曲抖动
有什么想法吗?
回复

使用道具 举报

170

主题

1424

帖子

8

银币

顶梁支柱

Rank: 50Rank: 50

铜币
2119
发表于 2006-7-26 22:47:22 | 显示全部楼层
对不起,布莱科,我不明白你在做什么。据我所知,你只需要获得块内的每个实体,然后对于每种类型的ent,即直线或圆弧,找到端点、中点等,将所有发现添加到一个数组中,找到从拾取位置到最近ent的最短距离,并将该点用作你的引线。这看起来很简单,我知道你是一个比我好得多的程序员,所以我一定不明白为什么你需要一个矩阵
话虽如此,我确实有进入块实体内部的代码,但我只是从它们中提取扩展数据,所以你可能毕竟需要那个矩阵,因为我不能肯定我能够得到正确的几何信息,因为我从未真正尝试过。
回复

使用道具 举报

69

主题

875

帖子

15

银币

顶梁支柱

Rank: 50Rank: 50

铜币
1146
发表于 2006-7-27 00:22:39 | 显示全部楼层
我想将拾取的点转换到块实体(不是块参考)旁边的等效位置,然后我可以找到实体上最近的点,然后将其转换回块参考
我怀疑transmatrix中有正确的信息,但我不知道;我不知道如何使用它。
回复

使用道具 举报

170

主题

1424

帖子

8

银币

顶梁支柱

Rank: 50Rank: 50

铜币
2119
发表于 2006-7-27 00:58:51 | 显示全部楼层
因此,您正在选择插入的块参考的一个子元素,该子元素为您提供一个点,在计算子元素上的最近点后,该点将返回给您与块表记录相关的点(就像插入到0,0,0),您可以't使用块变换矩阵将引线变换为插入的参考,这是你说的吗?
回复

使用道具 举报

69

主题

875

帖子

15

银币

顶梁支柱

Rank: 50Rank: 50

铜币
1146
发表于 2006-7-27 01:55:18 | 显示全部楼层
不完全是米克。给定的ent是blockrecord的一部分,而不是blockref的一部分。(我可以使用copyobjects复制它,使用modelspace作为新所有者,但它将被插入到0,0,0)。事实上,我不知道我选了哪个blockref。拾取的点是我拾取的实际点。因此我有一个奇数混合。这一联系肯定在跨矩阵中
回复

使用道具 举报

170

主题

1424

帖子

8

银币

顶梁支柱

Rank: 50Rank: 50

铜币
2119
发表于 2006-7-27 02:27:46 | 显示全部楼层
好的,那's有点像我的意思/想法
尝试从拾取的块ref反转矩阵,变换拾取的点,进行计算'然后变换回来。我不会'我不知道vba是否可以做到这一点,但如果必须这样做的话;您只需对给定的矩阵中的每个值求反,该值应该起作用。
回复

使用道具 举报

170

主题

1424

帖子

8

银币

顶梁支柱

Rank: 50Rank: 50

铜币
2119
发表于 2006-7-27 22:20:14 | 显示全部楼层
谢谢你,米克。我的同事懂一点数学,在转换矩阵后,它会反向工作。所以现在我想如果我能找出反转,我可能会有一些东西。(没有本机函数)。令人沮丧的是,我宁愿只翻译选取的点,但我不知道如何将其输入到转换矩阵中。vba one仅接受对象
我想我'我将不得不读线性代数,毁掉一杯好啤酒之类的东西。
回复

使用道具 举报

69

主题

875

帖子

15

银币

顶梁支柱

Rank: 50Rank: 50

铜币
1146
发表于 2006-7-31 00:37:36 | 显示全部楼层
取得了一些进展
这个倒矩阵的东西仍然很奇怪
我做的函数看起来不错,但有点不稳定
它依赖于向矩阵中添加一个单位矩阵,然后做一些数据透视,并检查第一部分是否调整为单位矩阵
我不知道'我不能确定它们是否有效
不'听起来不像;proress做了吗?
回复

使用道具 举报

69

主题

875

帖子

15

银币

顶梁支柱

Rank: 50Rank: 50

铜币
1146
发表于 2006-7-31 00:47:34 | 显示全部楼层
Can#039;你只要从插入的块ref(归一化法线,x和y方向,向量到插入点)的信息中创建一个矩阵,并对每个元素求反以反转矩阵??
回复

使用道具 举报

170

主题

1424

帖子

8

银币

顶梁支柱

Rank: 50Rank: 50

铜币
2119
发表于 2006-7-31 01:00:38 | 显示全部楼层
好的,我看到你有法线和旋转道具#039;在vba中可用
让我们试试这个-
创建一个点(inspntX+1,inspntY,inspntZ)'//沿X轴的一个单位:按给定的旋转角度旋转这个新点,得到从inspnt到新点和块的向量的叉积;s正常,这会给你一个Y轴
现在将新的Yaxis与垂直正交(即单词)轴进行叉积
现在,给定新的3个轴和到插入点的平移向量,您应该有足够的信息来构造矩阵。否定它们以反转方向并转换你的观点
这听起来可行吗??
回复

使用道具 举报

发表回复

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

本版积分规则

  • 微信公众平台

  • 扫描访问手机版

  • 点击图片下载手机App

QQ|关于我们|小黑屋|乐筑天下 繁体中文

GMT+8, 2025-7-6 03:15 , Processed in 0.836174 second(s), 84 queries .

© 2020-2025 乐筑天下

联系客服 关注微信 帮助中心 下载APP 返回顶部 返回列表