mxgraph 画布


画布自动扩大/缩小计算:

//得到所拖拽图形相对于画布的位置(-880,-100)
var x = Math.ceil(bounds.x / this.view.scale - this.view.translate.x);
var y = Math.ceil(bounds.y / this.view.scale - this.view.translate.y);
//根据缩放比例拿到长宽
var w = Math.floor(bounds.width / this.view.scale);
var h = Math.floor(bounds.height / this.view.scale);
		
//计算左上角相对于原始画布大小的比例
var x0 = Math.floor(x / size.width);
var y0 = Math.floor(y / size.height);
//计算右下角相对于原始画布大小的比例
var w0 = Math.ceil((x + w) / size.width) - x0;
var h0 = Math.ceil((y + h) / size.height) - y0;
//(-2,-1,3,2)
return new mxRectangle(x0, y0, w0, h0);  

  

放大/缩小后图形位置计算:

//paddingLeft 加上相对于画布的x乘以缩放的n
X = left + x*n 

  

 


免责声明!

本站转载的文章为个人学习借鉴使用,本站对版权不负任何法律责任。如果侵犯了您的隐私权益,请联系本站邮箱yoyou2525@163.com删除。



 
粤ICP备18138465号  © 2018-2025 CODEPRJ.COM