首页 > 解决方案 > 动态网格线计算

问题描述

问题

你好!我正在创建一个图形应用程序。现在我正在为图形计算器创建网格线。

为了设法缩放,我有两个变量;scale_x用于 X 轴和scale_yY 轴。当我缩放网格线时,必须根据缩放比例进行相应更改。

我正在尝试完成类似https://www.geogebra.org/calculator的网格线的事情。

他们的网格线总是用一个数字隔开,a*10^b 其中 a∈{1,2,5} 和 b 就是你所在的“步骤”。只需尝试缩小并查看网格线。

我得到了什么

我目前正在相对于网格坐标系来间隔网格线,而不是屏幕的宽度和高度。

var distance_x = 100 / (2**Math.floor((getBaseLog(2, scale_x))));
var distance_y = 100 / (2**Math.floor((getBaseLog(2, scale_y))));

这段代码很好地分隔了网格线,但只有 2^something。

我什至不确定为什么会这样,但我需要它作为 GeoGebra 的网格线。

有人有想法吗?

标签: javascriptmathgraphicsp5.js

解决方案


推荐阅读