Почему? А elementfrompoint разве не подойдёт?
Но! Не получится для фона загружать картинки целиком - они весят десятки мб и размером 20000х10000px (примерно пишу). Не каждый слабый комп/ноут такое потянет. Поэтому такие картинки нарежу на квадраты и буду подгружать по мере надобности.
А как с свг? Его можно загрузить целиком, да, но спозиционировать и уменьшить масштаб под текущий размер фона можно?
даже для рисования можно поверх всего канвас налепить и по нему рисовать путь
И как быть с передвиганием карты?
И ещё вопрос, т.к. с свг я никогда не работала, если в фоне показана часть картинки, то нужны и только части свг, соответствующие для этой части фона. Часть фона показать просто с css, а часть свг показать можно?
нельзя рисовать путь как в paint
И прямой доступ к объектам через инструмент. Т.о. можно просто в стилях объектов менять их места, удалять и менять как угодно.
И будет постоянная динамика - одновременное движение и героев других игроков и их круги обзора
анимация разных объектов и природы (напр., течение воды).
However, I should be aware of what are the constraints of the software I’m writing. If I knew the list would accommodate a few pairs of elements and never grow in size, and if the sequence is in the heart of a process that potentially can block the render thread for too long, I would put more thinking on it.
Рисовать путь надо "как в paint",
т.е. обычные прямоугольные элементы, которые своими краями будут перекрывать другие элементы.
У пользователя есть прямой доступ ко всем элементам через инструмент разработчика.
Плавной последовательной анимации не сделать - только то, что может css + js.
Получается как-то ещё более загонно, чем на канвасе.
document.querySelectorAll(`.value1 [class^=line]`).forEach(div => {
document.querySelector(`.value1 .${div.className}`).classList.add('visible');
});
document.querySelectorAll(`.value1 [class^=line]`).forEach(div => {
div.classList.add('visible');
});
for( i in a.length)
[(a[i],b[i])]
var a = {}
var b = {}
var c = {}
for (var x = 0; x < (n+1); x++) {
a[x] = [(Math.round(cos(2*pi/n*x)*r))]
b[x] = [(Math.round(sin(2*pi/n*x)*r))]
for( i in a.length) {
c[i] = [(a[i],b[i])]
}
Alixx, опечатка же.)
Если так, то да, но тогда, имхо, лучше сделать наоборот, свг держать дисплей нон и когда надо диплей блок/флот/что угодно. Причём можно сделать визабилити хайден или опасити 0, чтобы даже теоретического мерцания не было.