![]() |
【讨论】进来测试一下你的眼力
2 个附件
如图,将正立方体旋转,使对角线垂直向上,应该旋转多少度呢。
我用魔方比着试了下,好像是先沿X轴转45度,再沿y轴转30度。(Z轴垂直,XY平面水平) 可是测试了一下,不对。谁的眼力好,算算应该转多少度才对。 |
楼主差不多已经解决了,在x-y平面内旋转45度,使对角线所在的平面转到x-z平面或者y-z平面中,然后在x-z (y-z)中将对角线绕原点旋转arccos(1/sqrt(3))度,就可以将对角线弄到z轴上去。
解毕。 |
[QUOTE=dnping;6341]楼主差不多已经解决了,在x-y平面内旋转45度,使对角线所在的平面转到x-z平面或者y-z平面中,然后在x-z (y-z)中将对角线绕原点旋转arccos(1/sqrt(3))度,就可以将对角线弄到z轴上去。
解毕。...[/QUOTE] 版主暴强。佩服。我是把绕轴旋转和绕原点旋转搞混淆了。怪不得差一点点。 继续请教,绕原点旋转的转换矩阵是什么啊,arccos(1/sqrt(3))度,这个度数是怎么出来的。算出来的,还是有公式? |
其实这个题目很简单阿,假设边长是1,平面的对角线就是sqart(2),总对角线是sqart(3),这三条边组成了立方体的对角面中的直角三角形,这里不方便画出来,但是我相信你可以理解吧??而你所求的角度刚好就是边长为sqart(2)所对应的角度,因为你说的垂直刚好使得w'轴与原来的x轴(按一般定义的x,y,z轴的画法)平行,这样w'与w间的角度就等于之前所提到的角度,而之前提到的哪个角度是arcsin(sqart(2)/sqart(3)),也就是2楼求出来的arccos(1/sqart(3))
|
就是cos(theta)=1/sqrt(3);这里那些字符和希腊字母不好表示,就用字母或者matlab命令算符完成了,然后求角度的话就是求theta的反余弦,matlab有现成的命令,你可以去查查……
对于theta的求法,3楼已经说的很清楚了: 就是相当于你将z轴方向当作你一条边的方向,就是图中的垂直方向那条边,而我要处理的那个对角线所在的那个平面就是在z轴上的那条边与上下底面的对角线组成的一个平面,而立方体的一条对角线就是这个平面的对角线,可以理解吧?你的解法中先旋转45度,你是直接用对角线旋转的,尝试用这条对角线所在的对角平面来旋转试试看…… 而那个角度,就是对角线和垂直的那条边之间的夹角,算出来没问题吧? |
看来光凭眼睛看不行啊
:tongue: 深有收获
|
学习
很精彩,好帖就是要顶。
|
学习了!:tongue: :smile:
|
所有时间均为北京时间。现在的时间是 06:31。 |
Powered by vBulletin
版权所有 ©2000 - 2025,Jelsoft Enterprises Ltd.