Я использую обычный полигон kineticjs (в данном случае шестиугольник), и я заполняю его изображением с помощью setFillPatternImage. Это работает. Я создаю динамическую реализацию, поэтому мне нужно масштабировать исходное изображение в зависимости от текущего размера многоугольника. Это включает вычисление setFillPatternOffset и setFillPatternScale, поскольку размеры правильного многоугольника относительно центра. Нет четкой документации, которую я могу найти относительно контрольной точки для заполняющего изображения, а также того, должен ли коэффициент масштабирования использовать радиус в качестве прокси для отношений ширины и высоты или нет. Следующий код приводит к неуместному изображению на многоугольнике. Кто-нибудь знает, какие правила выравнивания для fillPatternImage?kineticjs regular polygon setFillPatternImage alignment issue
imageObj.onload = function() {
var whex = hexagon.getRadius() * 2;
var xratio = whex/imageObj.width;
var yratio = whex/imageObj.height;
hexagon.setFillPatternImage(imageObj);
hexagon.setFillPatternOffset(-whex/2,-whex/2);
hexagon.setFillPatternScale([ xratio, yratio ]);
};
Спасибо!