关于svg的旋转平移缩放

x,y为svg对象点的坐标,offset_x,offset_y为偏移坐标,scale为缩放倍数。

保证svg对象绕着它的中心旋转缩放平移且不会发生偏差。

          let tx = x-offset_x*mapRate;

          let ty = y-offset_y*mapRate;

          let translateX = -offset_x*mapRate*scale+(1-scale)*x;

          let translateY = -offset_y*mapRate*scale+(1-scale)*y;

          "rotate(" + angle + ", " + (tx)+ " " + (ty)+ ") " +"translate("+translateX+","+translateY+")"+ "scale("+scale+") ";

你可能感兴趣的:(关于svg的旋转平移缩放)