Я делаю приложение планирования с блоками для .. блоков расписания. Они разделены прямоугольниками 1px. По большей части я могу просто использовать преобразования для масштабирования сетки, но я, очевидно, хочу, чтобы эти 1px-разделители оставались одинаковыми по ширине.
Возможно, это скорее вопрос мнения и, следовательно, противоречит правилам, но в настоящее время я могу думать только о том, чтобы сохранить свои строки в отдельном массиве, а затем переместить / масштабировать их по мере необходимости, пересчитав новые измерения на мероприятие по изменению размера, но я чувствую, что должен быть лучший способ сделать это, чтобы я не знал, что я новичок в додзё. Если это приемлемый способ сделать это, пожалуйста, скажите, так как я не хочу зацикливаться на анти-паттерне с самого начала. Есть ли более подходящий способ представления блоковых линий, чем просто рисовать их прагматично с векторами?
edit: был задан пример кода. Я мог бы опубликовать свой код, но это на самом деле не имеет значения, более простым примером будет что-то вроде этого:
var rect = surface.createRect({ x: 100, y: 50, width: 200, height: 100 })
.setFill("yellow");
Учитывая вышеизложенное, как бы я сделал что-то вроде изменения ширины до 300 или перемещения положения объекта? Я попытался изменить базовую форму, в данном случае rect.shape, но, похоже, это не относится к изменениям, что неудивительно.
Было бы удобно, если бы я мог изменить это, но я не могу найти способ применить эти изменения после того, как они будут сделаны. Просто предположив, что я попытался запустить rect._applyTransform (), но это тоже не сработало, и я не увидел ничего другого, проверяющего dom, который мог бы быть мне полезен, и я не нашел ничего в документации, кроме процентного масштабирования , который я мог бы заставить работать, но это было бы довольно неудобно, и я все еще не могу понять, как просто переместить объект / изменить его положение.
edit2: Найден ответ, см. Ниже.