【发布时间】:2018-10-11 03:54:53
【问题描述】:
我有一个使用以下代码以非动态方式完美地围绕圆圈旋转的对象。
Radius = 4.7f;
angle += .25f;
float x = Radius * Mathf.Cos(angle);
float y = Radius * Mathf.Sin(angle);
float z = 0;
ball.transform.position = new Vector3(x,y,z);
我希望动态获取圆的半径并将圆作为画布内的 UI 图像。 UI Image 的宽度为 125,可以通过蓝色箭头看到。我认为可行的逻辑是半径=宽度/ 2。
125/2=62.5,不接近 4.7f。还有什么我没有考虑到的?缩放或像素图像大小?
感谢任何帮助!
【问题讨论】:
-
您的
BackgroundImages也有Scale=3。所以你也必须做(125 / 3) / 2...因为这仍然不是4.7...父画布的设置到底是什么?除了1,1,1之外,它还有其他的Scales 吗? -
我的父画布有 0.02574536 缩放 x 和 y。子父级 OutterWheel 的缩放比例为 1.29。
标签: c# unity3d canvas game-physics