Превратности функции Canvas

211
20 марта 2017, 09:35

Скорее хочу поделиться, хотя неплохо было бы и узнать ответ. На днях столкнулся с интересной особенностью Canvas-a.

При построении оси координат при задании маленьких чисел записывается только пару чисел которые нравятся самому canvas-y.

Чтобы не быть голословным вот примеры:

sch.textAlign = "left";
sch.textBaseline = "middle";
x = useX(0);
for (mark = 0.1; mark <=zmax+zmax/10; mark += 0.1) {
    y = useY(mark);
    if (mark % 0.2 == 0) {
        sch.fillText(String(mark), x + 10, y);
        sch.fillRect(x + 4, y - 0.5, 3, 1);
    }
    else sch.fillRect(x + 2, y - 0.5, 3, 1);
}

Но при внесении небольших изменений (увеличения всех чисел на 10) всё работает.

sch.textAlign = "left";
sch.textBaseline = "middle";
x = useX(0);
for (mark = 1; mark <=zmax*10+zmax; mark += 1) {
    y = useY(mark/10);
    if (mark % 2 == 0) {
         sch.fillText(String(mark/10), x + 10, y);
         sch.fillRect(x + 4, y - 0.5, 3, 1);
    }
    else sch.fillRect(x + 2, y - 0.5, 3, 1);
}

Вообще сейчас всё работает отлично, но всё так хотелось бы узнать с чем это было связано. Заранее спасибо :)

READ ALSO
Как в HTML артибут data-id=&ldquo; &rdquo; записать значение

Как в HTML артибут data-id=“ ” записать значение

Пользователь вводит с клавиатуры, после этого происходит событи, которое добавляет в массив {id: 0, name: '123'} и добавляет в DOM дерево:

199
socket.io connect к удаленному серверу

socket.io connect к удаленному серверу

пытаюсь подконектиться к wss://socketcsgoexclusive

318
Как определить что элемент в зоне видимости окна браузера?

Как определить что элемент в зоне видимости окна браузера?

Здравствуйте, как определить что элемент в зоне видимости окна браузераДопустим есть элемент и если пользователь видит его, то отметь элемент...

679