我正在使用本教程:http ://www.html5canvastutorials.com/labs/html5-canvas-graphing-an-equation/
在该drawEquation
方法内部,还有另一个方法transformContext
(第 153 行)被调用:
transformContext = function() {
var context = this.context;
// move context to center of canvas
this.context.translate(this.centerX, this.centerY);
/*
* stretch grid to fit the canvas window, and
* invert the y scale so that that increments
* as you move upwards
*/
context.scale(this.scaleX, -this.scaleY);
};
这种方法可以绘制引用 a 的方程0,0 origin
,而不是画布的左上角原点(我知道这一点,因为我将其注释掉并观察了结果)。但是,我不明白这种方法内部发生了什么。atranslate
到画布的中心和a如何scale
使从原点绘制方程成为可能?
代码中的注释也不是很有帮助。移动上下文或拉伸上下文是如何产生这种效果的?
请帮忙。