提供3000多款全球软件/控件产品
针对软件研发的各个阶段提供专业培训与技术咨询
根据客户需求提供定制化的软件开发服务
全球知名设计软件,显著提升设计质量
打造以经营为中心,实现生产过程透明化管理
帮助企业合理产能分配,提高资源利用率
快速打造数字化生产线,实现全流程追溯
生产过程精准追溯,满足企业合规要求
以六西格玛为理论基础,实现产品质量全数字化管理
通过大屏电子看板,实现车间透明化管理
对设备进行全生命周期管理,提高设备综合利用率
实现设备数据的实时采集与监控
利用数字化技术提升油气勘探的效率和成功率
钻井计划优化、实时监控和风险评估
提供业务洞察与决策支持实现数据驱动决策
翻译|使用教程|编辑:杨鹏连|2021-03-09 11:56:18.793|阅读 183 次
概述:在此博客文章中,我们将使用JavaScript地图库的CanvasLayer来构建一个网页,该网页呈现由各公司快递公司覆盖的具有覆盖区域的多边形的城市地图。每个区域都是不同颜色的单独区域。
# 慧都年终大促·界面/图表报表/文档/IDE等千款热门软控件火热促销中 >>
MindFusion.Diagramming for WinForms是一个能帮助你创建工作流和进程图表的.NET控件;数据库实体关系图表;组织图表;对象层次和关系图表;图表和树。它是基于对象-图表框,表格和箭头类型,将其归类分派给其他并结合成复杂的结构。该控件提供超过预先定义的50多种图表框,如自定义设计样式和对图表框着色等。MindFusion.Diagramming for WinForms现已加入在线订购,Standard Single Developer版本原价2848现在抢购立享优惠只需2345,立即查看详情>>
点击下载MindFusion.Diagramming for WinForms最新试用版
在此博客文章中,我们将使用JavaScript地图库的CanvasLayer来构建一个网页,该网页呈现由各公司快递公司覆盖的具有覆盖区域的多边形的城市地图。每个区域都是不同颜色的单独区域。这是最终结果:
I.常规设置
我们从一个空的网页开始,在其中添加对映射JavaScript文件和包含映射库使用的Utility类的其他文件的引用:
<script src="Scripts/MindFusion.Common.js" type="text/javascript"></script> <script src="Scripts/jscommon.js" type="text/javascript"></script> <script src="Scripts/jscollections.js" type="text/javascript"></script> <script src="Scripts/MindFusion.Mapping.js" type="text/javascript"></script>在网页的HEAD部分中,我们添加了对映射库可用的CSS主题的引用:
然后,我们需要创建一个具有ID的DIV。DIV元素是将在其中渲染地图的位置,因此我们必须为其赋予我们希望地图具有的位置和大小。如果网页:
<div style="top: 70px; bottom: 24px;"> <div style="position: absolute; width: 100%; height: 100%;"> <div id="mapView" style="height: 100%; width: 100%;"> </div> </div> </div>二.MapView和MapLayer
MindFusion映射库创建的每个地图均由MapView和MapLayer表示。该MapView类类需要一个HTML元素的引用,我们使用DIV,这是我们在网页中作为参数初始化。创建视图后,我们可以通过为其分配给定主题来自定义其外观。每个主题的名称与存储其设置的CSS文件的名称相对应。我们在地图中使用标准主题:
// create a new instance of the mapView var view = new m.MapView(document.getElementById("mapView")); view.theme = "standard";地图图块由“图块映射服务”提供。TMS服务器有免费和付费两种选择。在我们的示例中,我们使用stamen.com提供的地图并相应地记入它们。该MapLayer有一个叫做特殊的属性归属所在的位置在地图的Tile提供的网址和信用,如果需要的话。
var l = new m.MapLayer("Map"); l.urlTemplate = "//d.tile.stamen.com/terrain/{z}/{x}/{y}.png"; l.attribution = 'Map tiles by Stamen Design, under CC BY 3.0. Data by OpenStreetMap, under ODbL.'; view.layers.add(l);三.CanvasLayer实例
CanvasLayer是可容纳多边形或圆形附图层。两种类型的工程图都支持填充和描边,这是使多边形变为半透明的方式。在保利的构造要求与建设图中的点列表。该图可以闭合且光滑。在我们的情况下,我们需要一个封闭的图形,但要关闭“平滑”选项。我们还可以选择指定strokeThickness。请注意,厚度是以米为单位提供的,例如,它将随着地图的缩放比例而变化。这是带有区域区域之一的点的示例列表:
//John Wilson var points = [ new m.LatLong(42.70475564699256, 23.31153304748534), new m.LatLong(42.70557559570199, 23.3120480316162), new m.LatLong(42.70488179365276, 23.32380683593749), new m.LatLong(42.69773045026787, 23.32174689941405), new m.LatLong(42.699835727309186, 23.310202671813954)];然后,我们创建一个新的CanvasLayer并将其添加到MapView的layers
var drawings = new m.CanvasLayer("John Wilson"); view.layers.add(drawings);我们在构造函数中提供的图层名称将在地图图层图例中呈现:如果不将其关闭。然后,我们需要使用points数组创建Poly实例。定制后,我们需要将其添加到CanvasLayer的装饰集合中。重要的是要注意,工程图是装饰,而不是图层本身的直接部分。
// create a smooth polyline connecting the points var poly = new m.Poly(points); poly.stroke = "#4164BE"; poly.fill = "rgba(65, 100, 190, 0.4)"; // stroke thickness in meters poly.strokeThickness = 2; poly.strokeDashStyle = d.DashStyle.Solid; poly.smooth = false; poly.closed = true; drawings.decorations.add(poly);准备好之后,我们可以看到地形图上的多边形渲染。一旦完成CanvasLayer实例的初始化,就可以设置视图的活动层并指定在加载时将渲染的点。注意:只有在完成地图的所有其他初始化和自定义之后,才应指定页面加载时在中心渲染的点:
// set the topmost map layer
view.activeLayer = view.mapLayers.items()[0];
// load all layers
view.load(new m.LatLong(42.69743870212541, 23.3230343597412), 15);
可在MindFusion论坛上获得技术支持,网址为//mindfusion.eu/Forum/YaBB.pl
关于JavaScript的MindFusion映射:映射库是用纯JavaScript编写的,并支持丰富的API,用于创建和自定义任何类型的地图。该组件需要图块地图服务(TMS)作为地图的提供程序。如果需要的话,有一个特殊的属性可以记入TMS提供程序。
JavaScript映射支持无限数量的地图层。这些图层可以容纳图钉,标签,标记,图像图标,注释或多边形。它们可以打开或关闭。地图UI的外观是通过主题指定的。每个地图都支持缩放和平移。在//mindfusion.eu/javascript-map.html上找到有关JavaScript映射的更多信息。
本站文章除注明转载外,均为本站原创或翻译。欢迎任何形式的转载,但请务必注明出处、不得修改原文相关链接,如果存在内容上的异议请邮件反馈至chenjj@cahobeh.cn
文章转载自:本文探讨 SQL Server 中 NULL 和空值之间的区别,并讨论如何有效地处理它们。
Unity 是一款功能极其丰富的游戏引擎,允许开发人员将各种媒体集成到他们的项目中。但是,它缺少最令人兴奋的功能之一 - 将 Web 内容(例如 HTML、CSS 和 JavaScript)直接渲染到 3D 场景中的纹理上的能力。在本文中,我们将介绍如何使用 DotNetBrowser 在 Unity3D 中将 Web 内容渲染为纹理。
DevExpress v24.2帮助文档正式发布上线了,请按版本按需下载~
本教程将向您展示如何用MyEclipse构建一个Web项目,欢迎下载最新版IDE体验!
原生的Windows Forms编程组件,可为任何.NET应用程序提供专业的报表功能
MindFusion.Diagramming for WinFormsFlowChart.NET是一款能够帮助你轻松创建流程图和示意图的.NET控件,可以自定义设计样式和图表框颜色。
服务电话
重庆/ 023-68661681
华东/ 13452821722
华南/ 18100878085
华北/ 17347785263
客户支持
技术支持咨询服务
服务热线:400-700-1020
邮箱:sales@cahobeh.cn
关注我们
地址 : 重庆市九龙坡区火炬大道69号6幢