D3 + SVG,使用mm单位

时间:2016-03-18 08:48:09

标签: javascript d3.js svg

我正在创建一个应用程序,在使用D3 + SVG绘制相当复杂的2D视图时,我需要使用物理单位(在我的情况下为mm)。我可以创造我所有的物体并平移而没有任何问题,但我偶然发现旋转问题。

我创建矩形的代码基本上是

var svgobject = svg.append("rect") .attr("x", "10mm") .attr("y", "10mm") .attr("width", "5mm") .attr("height", "5mm") /* .attr("transform", "rotate(45 '20mm' '20mm')")*/;

我需要围绕一个点(通常是对象的中心,但不总是)旋转许多对象。但是,我无法找到指定旋转参考点的可靠方法。

最简单的方法是如果我可以如上所示指定旋转,但是当我尝试在旋转变换中使用mm作为单位时,我得到类似于

的错误消息
  

“错误:属性转换的值无效=”旋转(45'20mm''20mm')“”

我已尝试使用D3和vanilla SVG,但我找不到任何方法。

我的另一个攻击计划是用“svg单位”来指定旋转点,但我还没有找到一种从mm转换为svg单位的可靠方法。当我尝试获取对象的x或y属性时,我只获取mm属性。

任何帮助都会非常感激,因为我几天来一直坚持这个特殊问题。

0 个答案:

没有答案