乐筑天下

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

getsubentity中的TransMatrix是什么?

[复制链接]

170

主题

1424

帖子

8

银币

顶梁支柱

Rank: 50Rank: 50

铜币
2119
发表于 2006-7-31 10:17:33 | 显示全部楼层
可能会以这种方式结束,米克。
Blockref有这些特性,但我没有Blockref。(点和块项)
我可以使用selectatpoint seltionset获取block ref,但我想先学习如何使用我拥有的东西。
这是为2个块提供的矩阵的debug.print
TransMatrix用于插入4,4 0旋转
1 0 0 0
0 1 0
0 0 1 0
4 4 0 1
TransposedMatrix
1 0 0 4
0 1 0 4
0 0 1 0
0 0 0 1
TransMatrix插入4,4 0旋转
0.707106781186547 0.707106781186548 0 0
-0.707106781186548 0 0
0 0 1 0
4 2 0 1
>TransposedMatrix
0.707106781186547-0.707106781186548 0 4
0.707106781186548 0.707106781186547 0 2
0 0 1 0
0 0 0 1
转置的外观符合犹太教规,并且完美地将从块记录复制的ent带到块参考。
我刚开始做逆运算。
我可能在整数和双打之间混淆了
回复

使用道具 举报

69

主题

875

帖子

15

银币

顶梁支柱

Rank: 50Rank: 50

铜币
1146
发表于 2006-7-31 21:38:16 | 显示全部楼层
有些东西看起来不对劲,向量下面的底行应该是0,这些只是为了“平方”矩阵,或者也许对于投影计算,你的平移向量应该在右边。我从帮助文档中附加了一张可能有帮助的图片。无论如何,他们绝对不应该从底部到右侧交换,我不会想到。
回复

使用道具 举报

69

主题

875

帖子

15

银币

顶梁支柱

Rank: 50Rank: 50

铜币
1146
发表于 2006-7-31 21:45:45 | 显示全部楼层
我认为你所需要的只是“反转”它而不是转置,尝试否定值而不是交换它们。
也就是说,你可以用一个向量(3,2,1)移动它,另一个方向移动它就是向量否定(-3,-2,-1),它应该指向另一个方向。轮换也应如此。
嗯,
米克.
回复

使用道具 举报

170

主题

1424

帖子

8

银币

顶梁支柱

Rank: 50Rank: 50

铜币
2119
发表于 2006-7-31 22:25:07 | 显示全部楼层
好吧,米克,你为了胜利而破解了它。
反转然后转置似乎有效。
感谢您的提示。
现在,我必须解决乘法公式。
回复

使用道具 举报

170

主题

1424

帖子

8

银币

顶梁支柱

Rank: 50Rank: 50

铜币
2119
发表于 2006-8-3 23:44:38 | 显示全部楼层
到目前为止,这些似乎都有效,它们有待讨论,我相信它们会更好
这就是我想使用矩阵的原因
  1. Sub TestMultiplyMatrix()
  2.     Dim P, Ent As AcadEntity
  3.     Dim i As Integer
  4.     Dim M, ContextData, TransMatrix
  5.    
  6.     ThisDrawing.Utility.GetSubEntity Ent, P, TransMatrix, ContextData
  7.     ThisDrawing.ModelSpace.AddPoint P
  8.     If VarType(ContextData) = vbEmpty Then
  9.         MsgBox "This is not a block"
  10.         Exit Sub
  11.     End If
  12.     M = InverseMatrix(TransMatrix)
  13.      
  14.     P = TransformPt(M, P)
  15.     P = NearestPtOnObject(Ent, P)
  16.     P = TransformPt(TransMatrix, P)
  17.     ThisDrawing.ModelSpace.AddPoint P
  18.    
  19. End Sub

NearestPtOnObject(Ent, P)函数不包括在内,因为我仍在研究它。
我以为走到这一步会让我从数学中休息一下,但相反,我似乎打开了潘多拉的盒子。
离椭圆最近的点是疯狂的。我甚至不知道这篇文章是提供了证明还是问题。我倾向于使用提到“最佳猜测”的那个,
回复

使用道具 举报

发表回复

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

本版积分规则

  • 微信公众平台

  • 扫描访问手机版

  • 点击图片下载手机App

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

GMT+8, 2025-7-6 03:51 , Processed in 1.189177 second(s), 60 queries .

© 2020-2025 乐筑天下

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