Javascript html画布上的缩放点

Javascript html画布上的缩放点,javascript,geometry,html5-canvas,Javascript,Geometry,Html5 Canvas,是否有一种方法可以缩放在mxn画布中绘制的一组点,然后在pxq画布中重新绘制一组等效点,其中p

是否有一种方法可以缩放在mxn画布中绘制的一组点,然后在pxq画布中重新绘制一组等效点,其中p
提前感谢

这难道不是像确定比例因子并相应地乘以每个点那样简单吗?假设两个画布共享高度/宽度比,比例因子为
p/m
,您可以乘以每个点的坐标,将它们映射到新画布

如果比率不相同,可以使用较小的系数
p/m
q/n
保持原始点之间的比例,或者使用
p/m
缩放x轴,使用
q/n
缩放y轴

例如(假设受支持或您创建了等效项):


这是缩放方法,但我错过了第二个场景。谢谢
var points = [{x:1,y:1}, {x:2,y:5}, {x:3,y:1}];
var scaleFactor = canvas2width/canvas1width;
var scaledPoints = points.map(function(p) { 
                       return { 
                           x:p.x*scaleFactor, 
                           y:p.y*scaleFactor
                       }; 
                   });