canvas绘图——根据鼠标位置进行缩放的实现原理

本文介绍了在canvas中实现根据鼠标位置进行缩放的基本原理,通过以鼠标位置A点为中心,计算缩放后的坐标和画布位移,确保A点在缩放后保持不变。详细阐述了缩放公式及代码实现,包括缩放比例、原点位移和位移调整,帮助理解canvas的动态缩放机制。
摘要由CSDN通过智能技术生成

以任一点 A 缩放的基本原理:

A 点为鼠标位置,正常放大是以原点放大,那么放大后 A 点就会变到 A1 点的位置 x1, y1。然后再将画布进行位移,将 A1 的位置移动到 A,则完成以 A 点缩放的功能。

 

 

 

 代码示例:

this.scale 是当前缩放比例,this.offsetX, this.offsetY 是当前原点位移距离,step 是每次缩放的增量

            if (wheelDelta > 0) {  // 放大
                if (this.scale < max) {  // 缩放值小于设定的最大值,则可以继
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值