1
A
回答
0
让点是[P1, P2, P3, P4]
并且假设它们是由形式x -> Mx + b
其中M
是2x2
矩阵和b
是一个常数向量的仿射变换的手段转化为[Q1, Q2, Q3, Q4]
。想法是找到M
并将转换应用于P
以获得Q
。
让v1 = P2 - P1
,v2 = P3 - P1
,w1 = Q2 - Q1
,w2 = Q3 - Q1
。然后M
是将[v1, v2]
应用于[w1, w2]
的线性转换。找到M
的一种方法是通过计算矩阵乘积
M = S * T
其中S
是2x2
矩阵,它的列是向量w1
和w2
和T
是其列是v1
和v2
矩阵的逆。
关于位移矢量b
,它可以计算为
b = Q1 - M * P1
这里澄清的是,这一切是正确的只有第四点是与改造相一致,即如果
M * P4 + b = Q4
否则Q
-quadrilateral不是P
-quadrilateral的仿射变换。
0
相关问题
- 1. 从给定的四边形中找出符合矩形的最小四边形
- 2. matlab:找到一个平行四边形的第4个顶点
- 3. 返回CATransform3D将四边形映射到四边形
- 4. 区四边形
- 5. 如何在多边形内找到点?
- 6. 查找第四条线是否为四边形
- 7. '删除'在OpenGL中的四边形
- 8. Opencv在Python中检测四边形
- 9. 创建函数在平行四边形中生成随机点
- 10. 在高对比度图像中检测四边形点
- 11. 扭曲UIImage到平行四边形
- 12. 最佳拟合方到四边形
- 13. 找到地图中的点在哪个多边形中
- 14. 渐变平行四边形
- 15. JavaFX平行四边形CSS
- 16. 四边形的对角线
- 17. 反平行四边形
- 18. 确定相交四边形?
- 19. OpenGL四边形重叠
- 20. OpenGL的移动四边形
- 21. 寻找四边形内最大的矩形
- 22. 查找平行四边形的中间部分
- 23. 拉伸四边形以适合矩形
- 24. 矩形(四边形)通过ConvexHull检测
- 25. LWJGL基础:绘制四边形,在depth
- 26. Android中的平行四边形TextView
- 27. 在CSS3中制作一边平行四边形
- 28. 四列等宽,0外边距,相等内边距
- 29. 浮点等价?
- 30. 在每个多边形中查找一组多边形的最大点R
这是不可能的,除非(至少)一个四边形中的点与另一个中的相应点相关联。简单的例子是,如果一个四边形是一个正方形,另一个是菱形,那么你正在寻找的正方形的点位于正方形的左上角附近。你想让答案靠近钻石的左角,或者是顶角? –
@CharlesBretana好吧,也许另一种想法是,第二个四边形是第一个四边形的变形(缩放,移动,倾斜,旋转等)版本。这会让问题更容易解决吗? –
是的,如果对于原始四边形中的所有点(或者至少三个),则指定原始点转换成变换的四边形中的哪个点。 –