Vector 缩放圆中的位置点。看起来像正常缩放

Vector 缩放圆中的位置点。看起来像正常缩放,vector,geometry,trigonometry,Vector,Geometry,Trigonometry,我有艺术学位,不涉及数学,所以有时候在做3D图形和想象问题时,很难在互联网上搜索解决方案,因为我没有很好的搜索词指针。 我相信这是一个很小的问题,有一个合适的名称/解决方案。基本上,我只想抓取P并缩放它的位置向量,使它匹配P',在y轴上缩放0.5的版本上的位置 我的想法是对所有三个轴应用相同的原理,即使我现在只需要在2上进行 提前谢谢 注意:我是一个视觉化的人,如果你要解释的不仅仅是分享链接,请不要用冗长或神秘的函数来轰炸我:D谢谢建立从p'到X轴的垂直线,并将X轴的交点表示为C'和圆圈的交点表

我有艺术学位,不涉及数学,所以有时候在做3D图形和想象问题时,很难在互联网上搜索解决方案,因为我没有很好的搜索词指针。 我相信这是一个很小的问题,有一个合适的名称/解决方案。基本上,我只想抓取P并缩放它的位置向量,使它匹配P',在y轴上缩放0.5的版本上的位置

我的想法是对所有三个轴应用相同的原理,即使我现在只需要在2上进行

提前谢谢


注意:我是一个视觉化的人,如果你要解释的不仅仅是分享链接,请不要用冗长或神秘的函数来轰炸我:D谢谢

建立从p'到X轴的垂直线,并将X轴的交点表示为C'和圆圈的交点表示为D',如下图所示:

那么我们有

|OC'|=LcosA,其中A是角度C'OP',L=|OP'| |C'P'|=0.5 | C'D'|=L*sinA

我们还有| OC'^2+| C'D'^2=1,所以我们可以解L为


L=1/sqrtcosA*cosA+4*sinA*sinA

通过椭圆方程

x'² + 4y'² = 1
通过p和p′的对齐

x'/x = y'/y
解决办法是

 x' = x / d
 y' = y / d

其中d=√x²+4y²。

这似乎更合适。请回答您的问题。我投票将这个问题作为离题题结束,因为它是关于数学而不是编程的,并且已经发布在Math SE论坛上。实际上,我正在3D应用程序中应用它,所以当我得到公式时,答案没有多大帮助,但不管它解决了什么。交叉口是真的,所以。