首页 问答社区 正文

更改 $BASE 以计算已旋转的框的新位置

你好。
所以我有一个关于尝试旋转 BASE 框架的问题。
下面我有一个黄色框和一个绿色框。我知道以下内容:
1) 我知道交点,即两个 BASE 的原点在哪里。
2) 我知道黄色盒子的中心,用黄色小圆圈表示。3) 我知道黄色盒子和绿色盒子之间的角度。4) 我知道盒子的尺寸。宽度为 500 毫米,长度为 700 毫米。
我想得到的是:
a) 我想计算绿色小圆圈的位置。

更改 $BASE 以计算已旋转的框的新位置
我的想法如下:

1) 我可以不只创建一个 BASE_normal 框架然后做这样的事情吗:

$BASE_normal.X = 0$BASE_normal.Y = 0$BASE_normal.Z = 0$BASE_normal .A = 0$BASE_normal.B = 0$BASE_normal.C = 0
然后像这样生成一个新的碱基:
$BASE_rotated.X = 0$BASE_rotated.Y = 0$BASE_rotated.Z = 0$BASE_rotated.A = angle$BASE_rotated.B = 0$BASE_rotated.C = 0
然后我使用框的宽度和长度信息。 (即绿色和黄色大小相同)$BASE_rotated.X = LENGTH /2$BASE_rotated.Y = WIDTH /2
我能从那里得到绿色圆圈位置吗?我可以命令机器人开到那里吗?
或者我应该使用旋转矩阵的其他方式,即
代码

这可能有效,但前提是您的“ normal" base 与 $WORLD 完美对齐。如果它相对于 $WORLD 完全倾斜,那么简单地将一个数字放入 $BASE.A 将失败。
处理此问题的正确方法是几何运算符。所以,像这样的东西:代码

海报

本文转载自互联网或由网友投稿发布,如有侵权,请联系删除

本文地址:http://www.yushouy.com/robots/b9a3b263.html

相关推荐

看起来这里没有任何东西...

发布评论

感谢您的支持