当前位置: 首页 > news >正文

苏州建设网站找网络公司婚庆策划公司的商业模式

苏州建设网站找网络公司,婚庆策划公司的商业模式,织梦dedecms官网,正版网页游戏平台排行榜ArcGIS Pro SDK (七)编辑 13 注解 文章目录 ArcGIS Pro SDK (七)编辑 13 注解1 注释构建工具2 以编程方式启动编辑批注3 更新批注文本4 修改批注形状5 修改批注文本图形6 接地到网格 环境:Visual Studio 2022 .NET6 …

ArcGIS Pro SDK (七)编辑 13 注解

文章目录

  • ArcGIS Pro SDK (七)编辑 13 注解
    • 1 注释构建工具
    • 2 以编程方式启动编辑批注
    • 3 更新批注文本
    • 4 修改批注形状
    • 5 修改批注文本图形
    • 6 接地到网格

环境:Visual Studio 2022 + .NET6 + ArcGIS Pro SDK 3.0

1 注释构建工具

// 在您的 config.daml 中设置 categoryRefID
// <tool id="..." categoryRefID="esri_editing_construction_annotation" caption="Create Anno" ...>// 在构造函数中选择 Sketch 类型 Point 或 Line 或 BezierLine...
internal class AnnoConstructionTool : MapTool
{public AnnoConstructionTool(){IsSketchTool = true;UseSnapping = true;SketchType = SketchGeometryType.Point;}protected async override Task<bool> OnSketchCompleteAsync(Geometry geometry){if (CurrentTemplate == null || geometry == null)return false;// 创建编辑操作var createOperation = new EditOperation();createOperation.Name = string.Format("Create {0}", CurrentTemplate.Layer.Name);createOperation.SelectNewFeatures = true;var insp = CurrentTemplate.Inspector;var result = await QueuedTask.Run(() =>{// 获取注释属性类AnnotationProperties annoProperties = insp.GetAnnotationProperties();// 设置自定义注释属性annoProperties.TextString = "自定义文本";annoProperties.Color = ColorFactory.Instance.RedRGB;annoProperties.FontSize = 24;annoProperties.FontName = "Arial";annoProperties.HorizontalAlignment = ArcGIS.Core.CIM.HorizontalAlignment.Right;annoProperties.Shape = geometry;// 将注释属性分配回检查器insp.SetAnnotationProperties(annoProperties);// 队列特征创建createOperation.Create(CurrentTemplate.Layer, insp);// 执行操作return createOperation.Execute();});return result;}

2 以编程方式启动编辑批注

var plugin = FrameworkApplication.GetPlugInWrapper("esri_editing_EditVerticesText");
if (plugin.Enabled)((ICommand)plugin).Execute(null);

3 更新批注文本

await QueuedTask.Run(() =>
{// annoLayer 是您的注释图层...// 使用检查器方法学// 在 2.x 版本中 - var insp = new Inspector(true);var insp = new Inspector();insp.Load(annoLayer, oid);// 获取注释属性AnnotationProperties annoProperties = insp.GetAnnotationProperties();// 设置属性annoProperties.TextString = "Hello World";// 将注释属性分配回检查器insp.SetAnnotationProperties(annoProperties);// 创建和执行编辑操作EditOperation op = new EditOperation();op.Name = "Update annotation";op.Modify(insp);op.Execute();
});

4 修改批注形状

await QueuedTask.Run(() =>{// 不要使用 'Shape'....Shape 是注释文本的边界框,这不是您想要的...// 在 2.x 版本中 - var insp = new Inspector(true);var insp = new Inspector();insp.Load(annoLayer, oid);AnnotationProperties annoProperties = insp.GetAnnotationProperties();var shape = annoProperties.Shape;if (shape.GeometryType != GeometryType.GeometryBag){var newGeometry = GeometryEngine.Instance.Move(shape, 10, 10);annoProperties.Shape = newGeometry;insp.SetAnnotationProperties(annoProperties);EditOperation op = new EditOperation();op.Name = "Change annotation angle";op.Modify(insp);op.Execute();}});

5 修改批注文本图形

await QueuedTask.Run(() =>{var selection = annoLayer.GetSelection();if (selection.GetCount() == 0)return;// 使用第一个选中的要素// 在 2.x 版本中 - var insp = new Inspector(true);var insp = new Inspector();insp.Load(annoLayer, selection.GetObjectIDs().FirstOrDefault());// 如果不是注释要素,则应返回 null 的 getAnnoPropertiesAnnotationProperties annoProperties = insp.GetAnnotationProperties();// 获取文本图形CIMTextGraphic textGraphic = annoProperties.TextGraphic;// 修改文本textGraphic.Text = "Hello world";// 通过符号设置 x、y 偏移量var symbol = textGraphic.Symbol.Symbol;var textSymbol = symbol as CIMTextSymbol;textSymbol.OffsetX = 2;textSymbol.OffsetY = 3;textSymbol.HorizontalAlignment = HorizontalAlignment.Center;// 加载更新后的文本图形annoProperties.LoadFromTextGraphic(textGraphic);// 将注释属性分配回去insp.SetAnnotationProperties(annoProperties);EditOperation op = new EditOperation();op.Name = "modify symbol";op.Modify(insp);bool result = op.Execute();});

6 接地到网格

CIMGroundToGridCorrection correction = null;
bool isCorecting = correction.IsCorrecting();   // 等同于 correction != null && correction.Enabled;
bool UsingOffset = correction.UsingDirectionOffset();   // 等同于 correction.IsCorrecting() && correction.UseDirection;
double dOffset = correction.GetDirectionOffset(); // 等同于 correction.UsingDirectionOffset() ? correction.Direction : DefaultDirectionOffset;
bool usingDistanceFactor = correction.UsingDistanceFactor();  // 等同于 correction.IsCorrecting() && correction.UseScale;
bool usingElevation = correction.UsingElevationMode(); // 等同于 correction.UsingDistanceFactor() && c.ScaleType == GroundToGridScaleType.ComputeUsingElevation;
bool usingSFactor = correction.UsingConstantScaleFactor();  //; 等同于 correction.UsingDistanceFactor() && correction.ScaleType == GroundToGridScaleType.ConstantFactor;
double dSFactor = correction.GetConstantScaleFactor(); // 等同于 correction.UsingDistanceFactor() ? correction.ConstantScaleFactor : DefaultConstantScaleFactor;
http://www.yayakq.cn/news/876399/

相关文章:

  • 专业网站设计建设公司杭州网站搭建多少钱
  • wordpress怎么加目录湖南seo服务电话
  • 强生网站还要怎样做备案核验单 网站类型
  • 怎么寻找网站关键词并优化买链接网站
  • 网站开发背景策划书博罗建设银行网站
  • 微信里的商家链接网站怎么做的做图片网站 解决版权
  • 专业网站定制团队微官网与公众号
  • 推广型网站开发简历模板免费可编辑
  • 购买网站空间送域名网站设计专业需要什么软件
  • 公司网站平台建设网站空间ip地址
  • 榆林电商网站建设网站怎样做才能有点击率
  • o2o家电维修网站开发山东网站营销seo哪家好
  • 唐山公司建设网站ajax实现wordpress导航栏
  • 做商业网站兰溪优秀高端网站设计地址
  • 微信怎么做链接网站文章类型网站
  • 阿里云 企业网站选哪种微网站与微信公众号
  • 外贸seo网站建站贵州网站推广公司
  • 陕西省住房城乡建设厅网站管理中心个人备案网站名称
  • 境外电商网站建设文山网站建设联系电话
  • 网站后台视频百度站长工具seo
  • 有什么专业做心理的网站建设银行网站打不开用什么浏览器
  • 徐州IT兼职网站开发水务局政务网站建设工作总结
  • 沈阳手机网站开发网页设计1000字心得
  • 微信做自己网站网站建设注意哪些问题
  • 网站 运营工作如何做做网站方法
  • 网站建设怎样宣传比较好大港网站建设公司
  • 成都网站开发工作室中建西部建设网站
  • 简单网站建设模板下载WordPress可编辑文档
  • 投诉做单骗子网站临沂网站维护
  • 公司网站登陆后台管理中心不能修改前台主页甘肃庆阳网红排名