Javascript 围绕它旋转svg模式';使用objectBoundingBox时的s中心

Javascript 围绕它旋转svg模式';使用objectBoundingBox时的s中心,javascript,svg,rotatetransform,wheelnav.js,Javascript,Svg,Rotatetransform,Wheelnav.js,我需要围绕中心旋转用作svg元素(wheelnav.js菜单的一部分)背景的模式。我知道我可以使用patternTransform=rotate(angle,centerX,centerY),但是该模式使用objectBoundingBox作为patternUnits,我不知道如何获取元素的宽度和高度 有没有办法得到它的尺寸?或者在不知道宽度和高度的情况下围绕中心旋转 编辑: 以下是我使用的代码: var bounRect = document.getElementById("wheelnav-

我需要围绕中心旋转用作svg元素(wheelnav.js菜单的一部分)背景的模式。我知道我可以使用
patternTransform=rotate(angle,centerX,centerY)
,但是该模式使用
objectBoundingBox
作为
patternUnits
,我不知道如何获取元素的宽度和高度

有没有办法得到它的尺寸?或者在不知道宽度和高度的情况下围绕中心旋转

编辑:

以下是我使用的代码:

var bounRect = document.getElementById("wheelnav-piemenu" + 3 + "-slice-" + 0).getBoundingClientRect()
var patt = document.createElementNS('http://www.w3.org/2000/svg', 'pattern');
patt.setAttribute('id', 'img' + itemId);
patt.setAttribute('patternUnits', 'objectBoundingBox');
patt.setAttribute('width', '1');
patt.setAttribute('height', '1');
patt.setAttribute('x', '0');
patt.setAttribute('y', '0');
patt.setAttribute('patternTransform',"rotate(" + itemId*-36 + ", 0.5, 0.5)")

var image = document.createElementNS('http://www.w3.org/2000/svg', 'image');
image.setAttributeNS('http://www.w3.org/1999/xlink', 'xlink:href', 'assets/images/Logo-cropper.png');
image.setAttribute('width', bounRect.width*1.12);
image.setAttribute('height', bounRect.height*1.12);
image.setAttribute('x', -bounRect.height*0.06);
image.setAttribute('y', -bounRect.height*0.04);

var defs = document.getElementsByTagName('defs')[0];
patt.appendChild(image);
defs.appendChild(patt);

但是它不会围绕其中心旋转。

objectBoundingBox单位中某个对象的宽度和高度为1,所以中心为(0.5,0.5),我知道,但使用
旋转(180,0.5,0.5)
不起作用(或者可能我做错了什么)。请创建一个并将其添加到问题中。它不完整,我们如何运行您的示例?@RobertLongson要运行示例,您需要将
wheelnav.js
添加到您的站点,并将
“wheelnav piemenu”+3+“-slice-”+0
替换为菜单元素之一的id。我认为这很明显,所以我没有写它。objectBoundingBox单位中某个东西的宽度和高度是1,所以中心是(0.5,0.5),我知道,但是使用
旋转(180,0.5,0.5)
不起作用(或者可能我做错了什么)。请创建一个并将其添加到问题中。它不完整,我们如何运行您的示例?@RobertLongson要运行示例,您需要将
wheelnav.js
添加到您的站点,并将
“wheelnav piemenu”+3+“-slice-”+0
替换为菜单元素之一的id。我认为这很明显,所以我没有写。