关于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+") ";

©著作权归作者所有,转载或内容合作请联系作者
【社区内容提示】社区部分内容疑似由AI辅助生成,浏览时请结合常识与多方信息审慎甄别。
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

相关阅读更多精彩内容

  • byzhangxinxufromhttp://www.zhangxinxu.com 本文地址:http://www...
    凌雲木阅读 12,033评论 0 8
  • Transform字面上就是变形,改变的意思。在CSS3中transform主要包括以下几种:旋转rotate、扭...
    hzrWeber阅读 22,218评论 0 19
  • 看了很多视频、文章,最后却通通忘记了,别人的知识依旧是别人的,自己却什么都没获得。此系列文章旨在加深自己的印象,因...
    DCbryant阅读 5,859评论 0 4
  • 1 CSS属性 1.1 滤镜 1.1.1 blur属性 1.1.1.1 代码示例 CSS代码: .blur { ...
    Kevin_Junbaozi阅读 4,066评论 1 4
  • 不要奢求自己的文章能有多少人看,因为你不仅没什么可写的故事,而且你在写一篇文章之前所付出的准备也很少。 一直以来我...
    璐锦阅读 3,240评论 4 15

友情链接更多精彩内容