开启辅助访问     
收藏本站

站内搜索

搜索

Minecraft(我的世界)苦力怕论坛

[其他教程] xz/xy/zy平面点移动至其他平面

 发表于 2024-9-13 02:05:47 来自手机|显示全部楼层|阅读模式 IP:安徽省
如有错误请指出,毕竟高中不教这个,我不能保证这个变换是否正确

大多数人可能和我一样,想要生成圆之类的图形,计算各点坐标时发现自己只会在这三个面上计算,平面稍微歪一点就不知道怎么算了

进过几页草稿纸过后,我发现好像可以这样搞
首先,任意一个平面都可以由两个不共线的向量表示
比如v1=(a,b,c),v2=(A,B,C)表示了空间里某一个平面
那么我们想要在这个面上画圆之类的图形,不妨先在原来的二维面上计算出各点,比如Q(X,Y)
然后再在这个新平面上找到一个基底,为了保证长度关系和角度关系不变,新的基底需要互相垂直且长度为1
那么对于v1v2确定的平面,我们可以用v1的单位向量作为一个基向量q,而v1和v2不一定垂直,表示平面上的各向量又是至少需要两个向量,所以我们需要构建出一个和v1垂直的v3(x,y,z)
v3满足
v3 = mv1+nv2(平面向量基本定理,我们需要保证v3在这个平面内)=>{
x:ma+nA,
y:mb+nB,
z:mc+nC
}
ax+by+cz = 0(要和v1垂直)
最终推导出m/n,令m=1,k = -(v1**2/v1•v2)
那么v3= {
x:a+kA
y:b+kB.
z:c+kC
}
取v3的单位向量作为基向量p
那么Q在新平面的坐标就是Xq+Yp,其他点也进行相同的变换,可以在新平面上得到一个与原来图形相同的图形,只不过不在原来那个平面了
苦力怕论坛,感谢有您~

本版积分规则

本站
关于我们
联系我们
坛史纲要
官方
哔哩哔哩
技术博客
下载
网易版
安卓版
JAVA
反馈
意见建议
教程中心
更多
捐助本站
QQ群
QQ群

QQ群

访问手机版

访问手机版

手机版|小黑屋|系统状态|klpbbs.com

粤公网安备 44200002445329号 | 由 木韩网络 提供支持 | GMT+8, 2024-12-13 02:29

声明:本站与Mojang以及微软公司没有从属关系

Powered by Discuz! X3.4 粤ICP备2023071842号-3