标签:javascript mxgraph 图形 定位 选中
往往在一个绘图区域会有很多个图形,如果通过右键拖动画布或者通过滚动条来查找,是一件很烦人的事情。下面我就给出解决这个问题的方案。
前提是有一个整个绘图区域的tree或者datagrid,我们需要选择直接要定位的图形cell。
首先我们需要一个mxGraph的全局对象,暂且就定义为ylEditor.ylCanvas吧。
接下来我们要定义一个查找图形cell的方法,只有通过这个方法,才能找到画布中我们想要的那个cell。
ylCommon.findCellById=function(id){
ylEditor.ylCanvas.selectAll();
var cells=ylEditor.ylCanvas.getSelectionCells();
ylEditor.ylCanvas.clearSelection();
for(var i=0;i<cells.length;i++){
if(cells[i].id==id){
return cells[i];
}
if(cells[i].children.length>0){
for(var j=0;j<cells[i].children.length;j++){
var child=cells[i].children[j];
if(child.id==id){
return child;
}
}
}
}
return null;
}ylCommon.selectCell=function(id){
var cell=ylCommon.findCellById('cell-'+id);
if(cell){
ylEditor.ylCanvas.setSelectionCell(cell);
var x=-cell.geometry.x+($('#canvas').width()-cell.geometry.width)/2;
var y=-cell.geometry.y+($('#canvas').height()-cell.geometry.height)/2;
ylEditor.ylCanvas.getView().setTranslate(x,y);
}else{
alert('您选择的图形不在画布中!');
}
}mxGraph定位盲区图形到绘图区域中心位置,布布扣,bubuko.com
标签:javascript mxgraph 图形 定位 选中
原文地址:http://blog.csdn.net/gua_381091614/article/details/36409435