首页 > 其他分享 >ArcGIS Pro sdk 地图自动旋转

ArcGIS Pro sdk 地图自动旋转

时间:2023-02-27 22:24:48浏览次数:28  
标签:autoCamera angle Pro ArcGIS mapFrame var return def sdk

internal class RotateTheMap : Button {

  private static double _angle = 0;

  protected override void OnClick() {

   if (LayoutView.Active == null)
    return;

   var layout = LayoutView.Active.Layout;
   var mapFrame = layout.Elements.OfType<MapFrame>().FirstOrDefault();
   if (mapFrame == null)
    return;

   QueuedTask.Run(() => {

    var def = mapFrame.GetDefinition() as CIMMapFrame;
    if (def.View.ViewingMode != MapViewingMode.Map)
     return; //2D only

    _angle -= 15;//Counter-clockwise
    if (_angle < -345) _angle = 0;

    var autoCamera = def.AutoCamera;
    if (autoCamera == null)
    {
     //unusual
     def.AutoCamera = new CIMAutoCamera()
     {
      Camera = new CIMViewCamera(),
      AutoCameraType = AutoCameraType.Extent
     };
    }
    else if (autoCamera.Source != AutoCameraSource.None &&
        autoCamera.Source != AutoCameraSource.Fixed)
    {
     return;
    }

    def.View.Camera.Heading = _angle;
    mapFrame.SetDefinition(def);
   });
  }
 }

 

标签:autoCamera,angle,Pro,ArcGIS,mapFrame,var,return,def,sdk
From: https://www.cnblogs.com/gisoracle/p/17162167.html

相关文章

  • hystrix学习(一)之Command Properties之Execution
        一、HystrixCommand.run执行时会用到isolation.strategy:有两个选项二选一:1、线程:在单独的线程上执行,并发请求受线程池中线程数的限制2、信号量:在......
  • C# SmoothProgressBar自定义进度条控件
    usingSystem;usingSystem.Collections;usingSystem.ComponentModel;usingSystem.Drawing;usingSystem.Data;usingSystem.Windows.Forms;namespaceSmoothProgres......
  • Prometheus配置Alertmanager(钉钉告警)
    Prometheus配置Alertmanager(钉钉告警)简介Alertmanager主要用于接收Prometheus发送的告警信息,它支持丰富的告警通知渠道,例如邮件、微信、钉钉、Slack等常用沟通工具,......
  • 使用npm包API Promise化
             ......
  • Prometheus配置Grafana监控大屏
    简介Grafana是一个跨平台的开源的度量分析和可视化工具,可以通过将采集的数据查询然后可视化的展示,并及时通知。主要特点展示方式:快速灵活的客户端图表,面板插件有许......
  • 手游SDK搭建开发的功能都有哪些?
    手游SDK搭建所需要的功能非常多,大致分为账号系统、支付系统、数据管理系统、运营系统等几大版块,今天小编来着重讲一下账号系统和支付系统。一、账号系统:互联网发展下,我们都......
  • 手游sdk搭建开发都需要哪些功能?如何挑选游戏sdk?
    众所周知,游戏研发一般只会负责游戏里的内容,游戏想要上架就必须要接入SDK,用以解决玩家的登录和注册,充值支付问题,还有后续对基础的数据进行统计与分析。而在实际研发过程中,我......
  • Proxifier配合burp抓包但是burp收不到响应包解决思路
    题记        最近公司的项目比较特殊,不是传统的在web端的测试。而是客户给了一个exe,安装在电脑之后需要登录在工作台点击相关系统测试,点击相关系统后会在exe内部......
  • getUserInfo和getUserProfile被废弃
    之前得知获取用户头像和昵称的两个接口getUserInfo和getUserProfile被废弃了,于是我就想深入探究一下。 一直抱有一个疑问,为啥有getUserInfo和getUserProfile两个接口?经......
  • log4j:WARN Please initialize the log4j system prop
    用eslipse做数据库JAR时显示如下提示:log4j:WARNPleaseinitializethelog4jsystemproperly.原因是没有对log4j这个jar进行文件配置。将log4j.properties文件放在src目录......