首页 > 解决方案 > 如何计算在 orcer 中打印一个圆圈需要多少张 A4 纸?

问题描述

我正在制作一个小程序,该程序生成一个图像,表示时钟周期中小时的位置。

算法很简单

我有一个具有给定坐标 (x,y) 和半径 r 的中心点。

3 点钟位置在 (x+r,y) 位置 9 点钟位置在 (xr,y) 位置 12 点钟位置在 (x,y+r) 位置 6 点钟位置在 (x,yr) ) 位置

对于一个 1 点钟的位置,我可以使用这个答案来计算 1 点钟和 2 点钟的位置:

1点钟的位置是:

t=60
float x_1 = r*cos(t) + h;
float y_1 = r*sin(t) + k;

并且对于 2 点钟是

对于 1 点钟的位置是:

t=30
float x_2 = r*cos(t) + h;
float y_2 = r*sin(t) + k;

然后我可以将其余位置的 x 或 y 设为负数。例如,11 点钟位置是 (-x_1,y_1),而 4 点钟位置是 (x_1,-y_1),而 8 点钟位置是 (-x_1,-y_1)。

此外,对于给定的 2 点钟位置 (x_2, y_2),我可以计算 11 点钟、5 点钟和 7 点钟的位置。

一旦我计算了我的位置,我想生成适合多张 A4 纸的适当图像,以便我可以将其转移到现实生活中的项目中。

但是如何将给定内存画布的虚拟坐标转换为真实大小的图片呢?为了制作一个真实尺寸的时钟,我可能需要多张 A4 尺寸的纸。

标签: algorithmcoordinate-systems

解决方案


推荐阅读