Показать сообщение отдельно
  #7 (permalink)  
Старый 05.12.2018, 16:44
Новичок на форуме
Отправить личное сообщение для Vad0k Посмотреть профиль Найти все сообщения от Vad0k
 
Регистрация: 30.11.2018
Сообщений: 8

Я немного изучил характеристики данного примера
Физ. размер svg (x: 840px) в обозревателе, viewbox width: 1000px для svg => w:0.84 per 1px.
Значение отображается x: 84,0px относительно вложенной группы не учитывая другие вложенности.

По сути из примера я бы хотел бы получить значение: x: 100 + 100 + 25
независимо от уровня вложенности, без перевода viewbox в viewport.

Возможно, я не сумел объяснить, что мне нужно... мне просто бы хотелось получить физ. абсолютное позиционирование внутри SVG

<svg width="100%" height="100%" viewBox="0 0 1000 1000" preserveAspectRatio="xMidYMin slice" x="0" y="0" class="canvas-svg" tabindex="1">
<g transform="translate(100 100)">
     <g transform="translate(100 100)"> 
          <circle r="50" cx="25" cy="25" fill="yellow" />
     </g>
</g>
<svg>


function getAbsoluteCoords(element, x, y) {
        let matrix = element.getCTM();

        return {
            x: (x + matrix.e),
            y: (y + matrix.f)
        };
    }

но данный пример возвращает относительно вложенной выше группы родителя, тоесть x: 84px.

Последний раз редактировалось Vad0k, 05.12.2018 в 17:33.
Ответить с цитированием