按比例放大和按比例缩小
1.添加菜单
2.编写代码
private void 放大ToolStripMenuItem_Click(object sender, EventArgs e)
{
IEnvelope pEnvelope;
pEnvelope = axMapControl1.Extent;
pEnvelope.Expand(0.5, 0.5, true); //这里设置放大为2倍,可以根据需要具体设置
axMapControl1.Extent = pEnvelope;
axMapControl1.ActiveView.Refresh();
}
private void 缩小ToolStripMenuItem_Click(object sender, EventArgs e)
{
IActiveView pActiveView = axMapControl1.ActiveView;
IPoint centerPoint = new PointClass();
centerPoint.PutCoords((pActiveView.Extent.XMin + pActiveView.Extent.XMax) / 2, (pActiveView.Extent.YMax + pActiveView.Extent.YMin) / 2);
IEnvelope envlope = pActiveView.Extent;
envlope.Expand(1.5, 1.5, true); //和放大的区别在于Expand函数的参数不同
pActiveView.Extent.CenterAt(centerPoint);
pActiveView.Extent = envlope;
pActiveView.Refresh();
}
3.引用文件
using ESRI.ArcGIS.Carto;
using ESRI.ArcGIS.Geometry;