function dragElement(evt) {
var target = evt.target;
var id = target.id;
var dx = evt.dx, dy = evt.dy;
var scale = svgcanvas.scale();
var transformBaseVal = target.transform.baseVal;
if(transformBaseVal.numberOfItems == 0){
var transformObject = svgRoot.createSVGTransform();
transformBaseVal.appendItem(transformObject);
}
var transformItem = transformBaseVal.getItem(0);
var transformMatrix = transformItem.matrix;
var ox = transformMatrix.e, oy = transformMatrix.f;
var x = ox + dx / scale, y = oy + dy / scale;
log("scale:" + scale + ",offset:" + dx / scale + "," + dy / scale);
transformItem.setTranslate(x,y);
}
}
svg translate 操作
最新推荐文章于 2024-05-16 09:13:08 发布
本文介绍了一种使用JavaScript实现SVG元素拖动的方法。通过监听鼠标事件并利用SVGDOM接口来更新元素的位置,实现了平滑的拖动效果。文中详细解释了如何创建变换对象、应用缩放和平移操作。
部署运行你感兴趣的模型镜像
您可能感兴趣的与本文相关的镜像
Stable-Diffusion-3.5
图片生成
Stable-Diffusion
Stable Diffusion 3.5 (SD 3.5) 是由 Stability AI 推出的新一代文本到图像生成模型,相比 3.0 版本,它提升了图像质量、运行速度和硬件效率
215

被折叠的 条评论
为什么被折叠?



