zoukankan      html  css  js  c++  java
  • Map3D中获取地图中心及Zoom到新的中心点

    如题,不更改当前比例尺,把指定点Zoom到地图中心。

            Editor ed = Autodesk.AutoCAD.ApplicationServices.Application.DocumentManager.MdiActiveDocument.Editor;

            [CommandMethod("ZoomCenter")]
            public void ZoomCenter()
            {
                AcMapMap map = AcMapMap.GetCurrentMap();
                MgEnvelope mapExtent = map.GetMapExtent();

                double centerX = mapExtent.LowerLeftCoordinate.X + mapExtent.Width / 2;
                double centerY = mapExtent.LowerLeftCoordinate.Y + mapExtent.Height / 2;

                ed.WriteMessage("center:"+centerX.ToString()+","+centerY.ToString()+"\n");

                Point3d centerPt;
                PromptPointOptions ppo = new PromptPointOptions("Click on map to zoom center:");
                PromptPointResult ppr = ed.GetPoint(ppo);
                if (ppr.Status == PromptStatus.OK)
                {
                    centerPt = ppr.Value;

                    MgEnvelope newExtent = new MgEnvelope(centerPt.X - mapExtent.Width / 2,
                                                                        centerPt.Y - mapExtent.Height / 2,
                                                                        centerPt.X + mapExtent.Width / 2,
                                                                        centerPt.Y + mapExtent.Height / 2);

                    map.ZoomToExtent(newExtent);
                }

            }
    作者:峻祁连
    邮箱:junqilian@163.com
    出处:http://junqilian.cnblogs.com
    转载请保留此信息。
  • 相关阅读:
    【模块汇总】
    【葵花宝典@2020Python面试】
    【数据库汇总】
    【Python初阶汇总】
    【葵花宝典@职场动物园】
    【2020Python修炼记】web框架之Django实战-BBS-高仿版博客园
    【2020Python修炼记】web框架之 权限管理+Auth模块
    Java SE基础2:Class类与反射 反射破坏了封装吗?
    Java SE基础1:面向对象三大基本特性
    11.堆与堆的应用
  • 原文地址:https://www.cnblogs.com/junqilian/p/2208849.html
Copyright © 2011-2022 走看看