GIS跟踪监管系统电子围栏
GIS跟踪监管系统电子围栏
- (1)电子围栏展示。
- ① 显示:
- ② 隐藏:
- (2)电子围栏修改。
- ① 新增电子围栏。
- ② 修改电子围栏。
- 工具箱
- (1)测量。
- ① 测量距离:
- ② 测量面积:
- (2)热力图。
本系统的电子围栏是一种地理电子围栏,用于物资的跟踪监控,将物资与相关电子围栏关联,当物资实时移动时,查询物资是否超出电子围栏,如果超出电子围栏,则客户端页面提示该物资已超出电子围栏。
(1)电子围栏展示。
① 显示:
创建电子围栏geofencingLayer图层组并将其添加到地图中,单击工具栏中的“围栏”下拉按钮,在弹出的下拉列表中选择“显示”选项,获取所有的电子围栏数据,将电子围栏数据以几何要素图层形式添加到geofencingLayer图层组,并显示在地图上,如图
② 隐藏:
在“围栏”下拉列表中选择“隐藏”选项,geofencingLayer图层组调用clearLayers()函数,清除图层组中的电子围栏数据,调用geofencingLayer.clearLayers()函数即可移除地图中的所有电子围栏。
本系统电子围栏显示与隐藏实现代码如下:
代码说明:通过Ajax的GetGeofencing接口获取电子围栏数据,通过addGeofencingToMap()函数将电子围栏数据添加到地图中,代码如下:
代码说明:使用addGeofencingToMap()函数,将电子围栏数据添加到featureGroup图层组,在地图上显示并缩放至可查看所有电子围栏的范围。
(2)电子围栏修改。
在工具栏的“围栏”下拉列表中选择“编辑围栏”选项,弹出围栏编辑需要的工具,编辑电子围栏功能有新增电子围栏、修改电子围栏、删除电子围栏。
① 新增电子围栏。
单击“新增”按钮,在地图上绘制电子围栏(参考程序代码7-3),绘制完成后弹出相应的对话框,输入电子围栏名称,单击“确认”按钮后通过Ajax请求将数据提交到后台服务,后台服务在数据库中新增一条电子围栏记录,地图上加载新增成功的电子围栏要素。
② 修改电子围栏。
单击“修改”按钮,在地图上拖动电子围栏几何顶点或中心,修改电子围栏要素(参考程序代码7-6),修改完成后弹出相应的对话框,可以修改电子围栏名称,单击“确认”按钮后通过Ajax请求将数据提交到后台服务,后台服务在数据库中更新该电子围栏数据,地图加载更新完成电子围栏要素。
③ 删除电子围栏。单击“删除”按钮,在地图上单击电子围栏要素(参考程序代码7-8),弹出相应的对话框询问是否要删除电子围栏,单击“确认”按钮后通过Ajax请求将电子围栏ID提交到后台服务,后台服务删除数据库中的电子围栏记录,删除成功后地图移除该电子围栏要素。
工具箱
(1)测量。
在工具栏中单击“工具”下拉按钮,在弹出的下拉列表中选择“测量”选项,打开“测量”对话框,激活“长度”按钮在地图上测量折线之间的距离,激活“面积”按钮在地图上测量多边形区域的面积,激活“清除”按钮将测量结果图层及数据删除。
① 测量距离:
单击“长度”按钮,激活测量距离工具。绘制折线,在绘制过程中不允许折线相交,在地图上双击即可完成绘制,绘制结果显示在折线的中心。
② 测量面积:
单击“面积”按钮,激活测量面积工具。绘制多边形,在地图上双击即可完成绘制,绘制结果显示在多边形的中心。
代码说明:使用leaflet.draw.js插件(插件下载地址为https://github.com/Leaflet/Leaflet.draw),绘制折线(L.Draw.Polyline)、多边形(L.Draw.Polygon),单击“长度”按钮、“面积”按钮激活绘制的折线和多边形,使用鼠标在地图上绘制几何图形,然后将几何图形添加到测量measureLayers图层组中。单击“清除”按钮,清空测量measureLayers图层组中已添加的几何图形。
(2)热力图。
热力图是以特殊高亮的形式显示不同仓库物资的数量多少及其所在的地理区域,如图7-24所示。通过热力图可以直观地查看物资聚集情况,对物资在区域的整合、调度提供参考。
在工具栏中单击“工具”下拉按钮,在弹出的下拉列表中选择“热力图”选项,激活热力图功能,在地图上添加热力图图层,再次选择“热力图”选项关闭热力图图层。本系统热力图实现代码如下:
相关文章:

GIS跟踪监管系统电子围栏
GIS跟踪监管系统电子围栏 (1)电子围栏展示。① 显示:② 隐藏:(2)电子围栏修改。① 新增电子围栏。② 修改电子围栏。工具箱(1)测量。① 测量距离:② 测量面积:…...
蓝桥杯2023年第十四届省赛真题-买瓜--Java题解
目录 蓝桥杯2023年第十四届省赛真题-买瓜 题目描述 输入格式 输出格式 样例输入 样例输出 提示 【思路解析】 【代码实现】 蓝桥杯2023年第十四届省赛真题-买瓜 时间限制: 3s 内存限制: 320MB 提交: 796 解决: 69 题目描述 小蓝正在一个瓜摊上买瓜。瓜摊上共有 n 个…...

Chatbot到底提供了哪些便利?来看看“中文版Chatbase”
Chatbot的出现可以说是在极大的程度上改变了企业与客户互动的方式。Chatbot凭借其先进的功能和全天候可用性提供了一系列便捷的功能,为企业和客户提供便利和高效。随着自然语言处理和机器学习算法的进步,Chatbot已经发展到可以提供准确和个性化的响应&am…...

2023-09-18 LeetCode每日一题(打家劫舍 III)
2023-09-18每日一题 一、题目编号 337. 打家劫舍 III二、题目链接 点击跳转到题目位置 三、题目描述 小偷又发现了一个新的可行窃的地区。这个地区只有一个入口,我们称之为 root 。 除了 root 之外,每栋房子有且只有一个“父“房子与之相连。一番侦…...

Python一行代码实现文件共享【内网穿透公网访问】
文章目录 1.前言2.本地文件服务器搭建2.1.python的安装和设置2.2.cpolar的安装和注册 3.本地文件服务器的发布3.1.Cpolar云端设置3.2.Cpolar本地设置 4.公网访问测试5.结语 1.前言 数据共享作为和连接作为互联网的基础应用,不仅在商业和办公场景有广泛的应用&#…...

uni-app 之 下拉刷新,上拉加载,获取网络列表数据
uni-app 之 下拉刷新,上拉加载,获取网络列表数据 image.png <template><view><!-- 车源模块 -->--- uni.request 网络请求API接口 ---<view v-for"(item) in newsArr" :key"item.id" style"display: fle…...

笔记1.2 计算机网络结构
网络边缘 主机、网络应用 接入网络,物理介质 有线或无线通信链路 网络核心(核心网络): 互联的路由器(或分组转发设备) 网络之网络 一、网络边缘 主机(端系统): 位…...
使用Ansible Template模块进行配置文件管理
Ansible是一种功能强大的自动化工具,它提供了各种模块来简化配置管理任务。其中,Template模块是一种特别有用的模块,它结合了Jinja2模板引擎的功能,使得在配置文件中进行动态内容渲染变得非常方便。本文将介绍Ansible的Template模…...
Secrets of RLHF in Large Language Models Part I: PPO
本文是LLM系列文章,针对《Secrets of RLHF in Large Language Models Part I: PPO》的翻译。 大型语言模型中RLHF的秘密(上):PPO 摘要1 引言2 相关工作3 人类反馈的强化学习4 有益和无害的奖励模型5 PPO的探索6 评估和讨论局限性…...
Java手写AVL树应用拓展案例
Java手写AVL树应用拓展案例 手写 AVL 树是一项有挑战性的任务,它是一种自平衡二叉搜索树,通过在每个节点上维护一个平衡因子(balance factor)来实现平衡。在实际应用中,AVL 树可以用于实现高效的查找、插入和删除操作…...

vue3+ts+uniapp小程序封装获取授权hook函数
vue3tsuniapp小程序封装获取授权hook函数 小程序授权的时候,如果点击拒绝授权,然后就再也不会出现授权了,除非用户手动去右上角…设置打开 通过uni官方api自己封装一个全局的提示: uni.getSetting :http://uniapp.dcloud.io/api/other/settin…...

绘图(一)弹球小游戏
AWT编程 语雀 仓库:Java图形化界面: Java图形化界面学习demo与资料 (gitee.com) 很多程序如各种小游戏都需要在窗口中绘制各种图形,除此之外,即使在开发JavaEE项目时, 有 时候也必须"动态"地向客户 端生成各种图形、…...
uniapp滑动事件
在Uniapp中,可以通过touchstart、touchmove和touchend等事件来监听滑动操作。以下是对这些事件的简要说明: touchstart:当手指触摸屏幕时触发该事件。可以通过event.touches属性获取到触摸点的信息。 touchmove:当手指在屏幕上滑…...

入门人工智能 —— 学习 python 使用 IDE :vscode 完成编程 (2)
入门人工智能 —— 学习 python 使用 IDE :vscode 完成编程 (2) 安装和配置 VSCode创建和运行 Python 代码使用 VSCode 的调试功能 在上一篇文章中,介绍了如何入门人工智能编程,并开始了学习 Python 编程语言的基础知识…...

MyBatis字段名和属性名不一样的解决方案
一、给字段起别名,保持和属性名一样 <! --List<Emp> getAllEmp( ); --><select id"getAllEmp" resultType"Emp">select eid , emp_name empName , age , sex, email from t_emp</ select>如上面的SQL语句将emp_name取别…...

Postman应用——Collection、Folder和Request
文章目录 Collection新建CollectionCollection重命名保存Request到Collection在Collection下创建Request删除Collection Folder新建FolderFolder重命名保存Request到Folder在Folder下创建Request在Folder下创建Folder删除Folder Request创建临时RequestRequest重命名删除Reques…...

驱动开发,stm32mp157a开发板的led灯控制实验
1.实验目的 编写LED灯的驱动,在应用程序中编写控制LED灯亮灭的代码逻辑实现LED灯功能的控制; 2.LED灯相关寄存器分析 LED1->PE10 LED1亮灭: RCC寄存器[4]->1 0X50000A28 GPIOE_MODER[21:20]->01 (输出) 0X50006000 GPIOE_ODR[10]-&g…...
黑客入侵机构,导致2万条信息被卖
近日据厦门日报报道,厦门一教育培训机构遭黑客入侵,2万条职工、学员信息被出售,教培机构被罚。 今年2月底,多名在厦门某教育培训机构学习的学员接到自称是该机构工作人员的电话,对方能准确说出学员的学科信息、缴费情…...

循环购:让消费者和商家共赢的新型电商模式
对于消费者来说,循环购可以让他们享受到优惠价格和高品质商品的同时,还能获得额外的收益和奖励。循环购可以激发消费者的积极性和忠诚度,增加他们对平台的信任和满意度。 对于商家来说,循环购可以让他们节省大量的营销成本和人力…...

分布式缓冲-Redis
个人名片: 博主:酒徒ᝰ. 个人简介:沉醉在酒中,借着一股酒劲,去拼搏一个未来。 本篇励志:三人行,必有我师焉。 本项目基于B站黑马程序员Java《SpringCloud微服务技术栈》,SpringCloud…...
DockerHub与私有镜像仓库在容器化中的应用与管理
哈喽,大家好,我是左手python! Docker Hub的应用与管理 Docker Hub的基本概念与使用方法 Docker Hub是Docker官方提供的一个公共镜像仓库,用户可以在其中找到各种操作系统、软件和应用的镜像。开发者可以通过Docker Hub轻松获取所…...
Java多线程实现之Callable接口深度解析
Java多线程实现之Callable接口深度解析 一、Callable接口概述1.1 接口定义1.2 与Runnable接口的对比1.3 Future接口与FutureTask类 二、Callable接口的基本使用方法2.1 传统方式实现Callable接口2.2 使用Lambda表达式简化Callable实现2.3 使用FutureTask类执行Callable任务 三、…...

基于Docker Compose部署Java微服务项目
一. 创建根项目 根项目(父项目)主要用于依赖管理 一些需要注意的点: 打包方式需要为 pom<modules>里需要注册子模块不要引入maven的打包插件,否则打包时会出问题 <?xml version"1.0" encoding"UTF-8…...

uniapp微信小程序视频实时流+pc端预览方案
方案类型技术实现是否免费优点缺点适用场景延迟范围开发复杂度WebSocket图片帧定时拍照Base64传输✅ 完全免费无需服务器 纯前端实现高延迟高流量 帧率极低个人demo测试 超低频监控500ms-2s⭐⭐RTMP推流TRTC/即构SDK推流❌ 付费方案 (部分有免费额度&#x…...
Java多线程实现之Thread类深度解析
Java多线程实现之Thread类深度解析 一、多线程基础概念1.1 什么是线程1.2 多线程的优势1.3 Java多线程模型 二、Thread类的基本结构与构造函数2.1 Thread类的继承关系2.2 构造函数 三、创建和启动线程3.1 继承Thread类创建线程3.2 实现Runnable接口创建线程 四、Thread类的核心…...

九天毕昇深度学习平台 | 如何安装库?
pip install 库名 -i https://pypi.tuna.tsinghua.edu.cn/simple --user 举个例子: 报错 ModuleNotFoundError: No module named torch 那么我需要安装 torch pip install torch -i https://pypi.tuna.tsinghua.edu.cn/simple --user pip install 库名&#x…...

AI+无人机如何守护濒危物种?YOLOv8实现95%精准识别
【导读】 野生动物监测在理解和保护生态系统中发挥着至关重要的作用。然而,传统的野生动物观察方法往往耗时耗力、成本高昂且范围有限。无人机的出现为野生动物监测提供了有前景的替代方案,能够实现大范围覆盖并远程采集数据。尽管具备这些优势…...

2025年渗透测试面试题总结-腾讯[实习]科恩实验室-安全工程师(题目+回答)
安全领域各种资源,学习文档,以及工具分享、前沿信息分享、POC、EXP分享。不定期分享各种好玩的项目及好用的工具,欢迎关注。 目录 腾讯[实习]科恩实验室-安全工程师 一、网络与协议 1. TCP三次握手 2. SYN扫描原理 3. HTTPS证书机制 二…...

破解路内监管盲区:免布线低位视频桩重塑停车管理新标准
城市路内停车管理常因行道树遮挡、高位设备盲区等问题,导致车牌识别率低、逃费率高,传统模式在复杂路段束手无策。免布线低位视频桩凭借超低视角部署与智能算法,正成为破局关键。该设备安装于车位侧方0.5-0.7米高度,直接规避树枝遮…...
Leetcode33( 搜索旋转排序数组)
题目表述 整数数组 nums 按升序排列,数组中的值 互不相同 。 在传递给函数之前,nums 在预先未知的某个下标 k(0 < k < nums.length)上进行了 旋转,使数组变为 [nums[k], nums[k1], …, nums[n-1], nums[0], nu…...