仅需不到50行代码!ThingJS把这种常用效果加入官方示例

简介: 地图的信息窗口会提供当前的地址信息,提示用户后续操作或者完成浏览

地图的信息窗口会提供当前的地址信息,提示用户后续操作或者完成浏览。ThingJS提供了基于JS语法的基础示例。

无论是2D地图还是3D地图,经常会有展示信息面板的需求,可以用来表示物体对象的位置,也可以实时展示某物体的状态。在ThingJS开发教程中,这些有地理位置的坐标,我们称之为“信息弹窗InfoWindow”。
2.png

thingjs开发中支持使用layer来显示Web界面的信息弹窗。为了更加方便前端用户操作,我们使用THING.Utils.dynamicLoad引用layer的官方JS文件,可在场景上2D界面创建一个按钮,点击按钮既可出现layer弹窗。
1.png

ThingJS底层内置了三种信息面板的标准形式,会根据对象userData身上的属性自动生成信息面板,这是我们底层定义的界面样式,用户无法修改。此外用户还可以自定义信息面板,通过代码自行开发,自行规划界面样式和操作。
标准参数说明如下,包括displayMode,type和style,都是预设的。

1.displayMode:三种显示模式

CMAP.DisplayMode.Click 点击显示
CMAP.DisplayMode.Always 常显
CMAP.DisplayMode.MouseEnter 鼠标移入显示(悬浮显示)

2.type:信息面板类型

CMAP.InfoWindowType.Standard 标准
CMAP.InfoWindowType.Custom 自定义

3.style:预置的样式

在type为CMAP.InfoWindowType.Standard时生效
CMAP.InfoWindowStyle.Default 默认黑色
CMAP.InfoWindowStyle.Blue 蓝色
CMAP.InfoWindowStyle.White 白色

这是标准信息面板的代码示例。


var geoPoint = app.create({
type: 'GeoPoint',
name: 'geoPoint0',
coordinates: [ 116.405, 39.906],
userData: {'type': '地铁站','name':'前门地铁站'},
renderer: {
    type: 'image', // image代表创建图片类型的点
    url: 'image/uGeo/pop.png', // 图片的url
    size: 5  // 尺寸
},
infoWindow:
    {
    'title': '标题',
    'displayMode': CMAP.DisplayMode.Click,//点击显示
    'type': CMAP.InfoWindowType.Standard,//标准indoWindow
    'style': CMAP.InfoWindowStyle.Default,//默认样式 黑色
    'pivot': [0.5, 1.3],//界面的轴心,以百分比表示界面轴心位置。[0,0] 代表界面左上;[1,1] 代表界面右下 pivot可大于1用于像素级的偏移
    'fieldData': [
        {
        'field': 'name',
        'alias': '名称'
        },
    {
        'field': 'type',
        'alias': '类型'
        }]
    },//配置要展示哪些字段以及设置字段名称的别名(显示的名称)
});

这是自定义信息面板的代码示例。

var infoWindowHtml = '\n'
+ '    \n'
+ '        \n'
+ '            {{name}}\n'
+ '            {{type}}\n'
+ '        \n'
+ '    \n'
+ '';
var geoPoint = app.create({
type: 'GeoPoint',
name: 'geoPoint0',
coordinates: data.features[3].geometry.coordinates,
userData: data.features[3].properties,
renderer: {
    type: 'image', // image代表创建图片类型的点
    url: 'image/uGeo/pop.png', // 图片的url
    size: 5  // 尺寸
},
infoWindow:
    {
    'displayMode': CMAP.DisplayMode.Click,//点击显示
    'type': CMAP.InfoWindowType.Custom,//自定义InfoWindow
    'customHtml': infoWindowHtml
    },
});
pointLayer.add(geoPoint);
注意:自定义html的标签中{{name}}代表使用对象userData中的name字段的值。

ThingJS把这种常用的效果加入官方示例,每个显示仅需不到50行代码!

相关文章
|
12月前
|
数据采集 运维 监控
金融行业RPA案例全解析:银行、证券、保险落地实践与价值数据
凌晨两点,银行、证券、保险、基金从业者仍在与数据搏斗。RPA“数字员工”正颠覆这一现状,通过自动化处理开户、清算、理赔、净值计算等高重复任务,大幅提升效率与合规性。实在智能的实在Agent以AI能力破解非结构化数据难题,助力金融行业实现从“人海战术”到“智能协同”的跨越,释放人力聚焦高价值服务,推动数字化转型迈向新阶段。
1027 1
|
数据采集 JSON JavaScript
Cypress 插件实战:让测试更稳定,不再“偶尔掉链子”
本文分享如何通过自定义Cypress插件解决测试不稳定的痛点。插件可实现智能等待、数据预处理等能力,替代传统硬性等待,有效减少偶发性失败,提升测试效率和可维护性。文内包含具体实现方法与最佳实践。
|
10月前
|
人工智能 自然语言处理 安全
8B端侧智能写作体开源:DeepResearch,让您告别云端依赖
当深度研究能力被云端大模型垄断,企业却面临数据无法出域的安全禁令,这曾是一道无解的选择题。直到最近,清华大学、面壁智能等联合开源了仅8B参数却具备深度研究写作能力的智能体。它在完全本地部署的前提下,通过重构“写作即推理”的底层机制,首次将闭源云端模型的深度分析能力带入了内网,为高保密场景下的自动化研究打开了新局面。
|
11月前
|
存储 弹性计算 安全
阿里云特惠云服务器对比测评:2核2G3M99元与2核4G5M199元性能、适用场景及用户反馈
在阿里云目前的活动中,有两款价格非常实惠的云服务器,经济型e实例2核2G3M带宽40G ESSD Entry盘(99元/1年)和通用算力型u1实例2核4G5M带宽80G ESSD Entry盘(199元/1年),备受用户关注。本文将从多个维度对这两款云服务器进行详细对比评测,以供对比和选择参考。
667 1
|
机器学习/深度学习 人工智能 并行计算
124_数据并行扩展:Megatron框架 - 分析模型分片的独特通信开销
2025年,大型语言模型的规模已达到数千亿甚至数万亿参数,单GPU训练已成为不可能的任务。高效的分布式训练技术成为训练超大模型的关键。Megatron框架作为业界领先的分布式训练解决方案,通过创新性的并行策略,实现了对超大语言模型的高效训练。
1018 3
124_数据并行扩展:Megatron框架 - 分析模型分片的独特通信开销
|
算法 机器人 语音技术
由通义千问驱动的人形机器人具身智能Multi-Agent系统
申昊科技人形机器人小昊,集成通义千问多模态大模型的具身智能系统,旨在讲解销售、迎宾表演等场景。机器人通过语音、动作等方式与用户互动,利用云端大语言模型处理自然语言,结合视觉、听觉等多模态感知技术,实现流畅的人机对话、目标追踪、展厅讲解等功能。
2224 4
由通义千问驱动的人形机器人具身智能Multi-Agent系统
|
人工智能 运维 Cloud Native
实战基于阿里云的AIGC在运维领域的探索
传统运维模式已难以应对日益复杂的海量数据和业务需求,效率低下,故障难解。而人工智能的崛起,特别是AIGC技术的出现,为运维领域带来了新的机遇。AIGC能够自动生成运维脚本、分析海量数据,预测潜在故障,甚至提供解决方案,为运维工作注入智能化力量,推动运维向更高效、更智能的方向发展。
17597 19
实战基于阿里云的AIGC在运维领域的探索
|
监控 安全 Linux
启用Linux防火墙日志记录和分析功能
为iptables启用日志记录对于监控进出流量至关重要
740 1
|
人工智能 自然语言处理 搜索推荐
【云栖实录】大模型驱动,开源融合的AI搜索产品发布
本文介绍了2024云栖大会上,阿里云发布的年度AI搜索产品详情。
1377 8
|
前端开发 JavaScript API
React、Vue.js 和 Angular前端三大框架对比与选择
前端框架是用于构建用户界面的工具和库,它提供组件化结构、数据绑定、路由管理和状态管理等功能,帮助开发者高效地创建和维护 web 应用的前端部分。常见的前端框架如 React、Vue.js 和 Angular,能够提高开发效率并促进团队协作。
2076 4