电子海图是为适用航海需要而绘制的包含海域地理信息和航海信息的一种数字化的专题地图,符合国际标准的电子海图数据统称为S-57电子海图.本文主要在S-57电子海图数据的理论模型和数据结构的基础上,实现对S-57电子海图数据文件的解析,将海图信息解析后保存到xml文件中,供后续调用和研究. 电子导航图(Electronic Navigational Chart, ENC)是由各个国家的航道官方部门根据国际航道组织的<数字海道测量数据传输标准>(S-57标准)而制作的,它是一种面向对象的矢量格式的电子…
此篇博文停止维护,欢迎移步最新地址(含源代码),https://www.yanlongwang.net/USV/ENC-analysis-store.md/, 查看最新文章. 电子海图是为适用航海需要而绘制的包含海域地理信息和航海信息的一种数字化的专题地图,符合国际标准的电子海图数据统称为S-57电子海图.本文主要在S-57电子海图数据的理论模型和数据结构的基础上,实现对S-57电子海图数据文件的解析,将海图信息解析后保存到xml文件中,供后续调用和研究. 电子导航图(Electronic Na…
不过多的废话了,直接上源码: addChartlayers()方法时“打开海图”按钮的triggered()信号所绑定的槽函数. //添加海图数据小按钮槽函数 void MainWindow::addChartlayers() { m_mapCanvas->freeze(true);//冻结或解冻地图画布对象,frozen (true) or thawed (false). Default is true. //步骤1:打开文件选择对话框 QString filename=QFileDialog…
文章版权由作者李晓晖和博客园共有,若转载请于明显处标明出处:http://www.cnblogs.com/naaoveGIS/ 1.前言 目前项目中基于控制点库进行SHP数据的坐标转换,流程大致为:遍历图层要素,获取每个要素的坐标串,查询控制点库,分别进行坐标转换,构建新的要素,最后构建新的图层.此方法效率如下: a.控制点库有100W个控制点对. b.待转换SHP数据有5K个面要素. 转换完毕大概需要120分钟. 此效率是相对较低的,如果想对更多包含大量要素的图层组数据进行批量转换,耗时会成倍…
基于 libpcap库的sniffer程序 Libpcap库是WireSharek和Tcpdump抓包程序的基础,利用libcap我们自己也可以实现自己的抓包程序,在网络上实时抓包分析,或者利用处理的结果用作业务用途. 1.   Libpcap抓取的数据包的结构 在实现我们的基于libcap的程序之前,我们先来了解一下libpcap(wiresharek和tcpdump也是这样)抓取的网络包的结构.下面以tcp/ip协议包为例: 上面的数据包一共有6部分:文件头,数据报报头,以太网帧头,IP头,…
接上篇博文:基于Platinum库的DMR实现(android) 文章讲述了如何使用Platinum库实现DMR 今天同样使用该库,来讲解一下DMS的实现 关于该库如何编译,请参考这篇博文:NDK下 将Platinum SDK 编译成so库 (android - upnp) 下面给出运行效果图: 界面很简单,就是一些开关和设备名以及设备运行状态的展现 下面看看代码片段: JNI接口文件: public class DMSJniInterface { static { System.loadLib…
这个功能的基本工作是这样的: 1.使用node运行jsmpeg库下的websocket-relay.js文件,这个文件的作用是创建一个websocket视频传输中继器 2.运行ffmpeg,将输出发送到中继的HTTP端口,这个http端口是使用node.js搭建的一个简易的http服务器 3.将浏览器中的JSMpeg连接到中继的Websocket端口,浏览器中的JSMpeg是node.js环境搭建的时候输出的一个html文件,文件里面引用了JSMpeg库,             并实例化一个新…
基于Mapxtreme for JAVA的电子地图设计与实现学生毕业设计,适合测绘类专业研究目标:        开发一个基于MapXtreme for JAVA的校园电子地图项目,使用MapInfo来绘制地图使用户能够实时的了解华南理工大学广州学院校园及周边的地理信息. 研究内容:      校园电子地图系统共分为4个功能模块来实现:      1.地图放大.缩小及漫游的功能模块:为了能够清晰的查看地图的某一角落的详细信息,了解学校的地理位置以及学校的地理规划.用户可以在电子地图上对感兴趣的地…
操作系统:win10 1.文件目录 (在cmd下用"cd 文件夹" 进入到要显示的文件夹,如cd d:\en.stsw-stm32054,然后输入tree 回车就会出现上图的目录结构) Libraries 文件夹下面有CMSIS和STM32F10x_StdPeriph_Driver两个目录, 其 中CMSIS目录下面是启动文件,STM32F10x_StdPeriph_Driver放的是STM32固件库源码文件.源文件目录下面的inc目录存放的是stm32f10x_xxx.h头文件,无需…
说明: 1.该工程基于HAL库实现动态存储器SDRAM驱动以及液晶控制器LCD驱动. 2.工程通过STM32CubeMX(Version 4.22.0)配置生成,可直接打开进行配置. 3.KEIL MDK版本Version5.17 功能: 基于emwin图形库实现液晶显示,实时显示触摸值. 截图: 工程包下载地址: 链接:https://pan.baidu.com/s/1slIAOC9 密码:4ssy GMT43液晶模块购买链接:…
一般的图像处理软件都对读入程序的图像文件建一个缩略图的列表,像ACDSee那样.笔者最近在做一个图像处理的项目,处理的原始数据就是图像文件.从项目一开始就想做一个缩略图,但一直苦于技术水平有限,且时间也不允许.最近两天闲暇之余就Google,百度了一下,仔细研究了一下缩略图的实现方法.其实用VC++实现一个缩略图的思想并不复杂.就是分两步:1.创建CListCtrl控件和CImageList图像列表,设置各自的相应属性.2.将你要显示的图像文件的缩略图做好,并制成位图文件加入到CImageLis…
acl 3.2.0 版本发布了,acl 是 one advanced C/C++ library 的简称,主要包括网络通信库以及服务器框架库等功能,支持 Linux/Windows/Solaris/FreeBsd/MacOS 平台:整个 acl 项目主要包含三个函数库:lib_acl(纯C开发的基础库,主要包含网络通信及服务器编程框架以及其它丰富的功能).lib_protocol(包含 HTTP/PING/SMTP 通信协议的C语言实现).lib_fiber(网络协程库).lib_acl_cpp…
基于从库+binlog方式恢复数据 将bkxt从库的全备份在rescs5上恢复一份,恢复到6306端口,用cmdb操作 恢复全备后执行如下操作 set global read_only=OFF; stop slave; reset slave all; 看xtrabackup_slave_info文件内容 分析主库上的binlog找到结束点position /usr/local/mysql/bin/mysqlbinlog --no-defaults -vv --base64-output=DEC…
基于bs4库的HTML查找方法 find_all方法 <>.find_all(name,attrs,recursive,string,**kwargs) 返回一个列表类型,内部存储查找的结果 name 对标签名称的检索字符串 import requests from bs4 import BeautifulSoup r=requests.get('http://python123.io/ws/demo.html') demo=r.text soup=BeautifulSoup(demo,'ht…
基于bs4库的HTML标签遍历方法 import requests r=requests.get('http://python123.io/ws/demo.html') demo=r.text HTML基本格式 HTML可以看做一棵标签树 遍历方法 ! 下行遍历 属性 说明 .contents 将该标签所有的儿子节点存入列表 .children 子节点的迭代类型,和contents类似,用于遍历儿子节点 .descendants 子孙节点的迭代类型,包含所有的子孙跌点,用于循环遍历 import…
使用innobackupex基于从库搭建mysql主从架构 现有的架构是一主一从,版本为Mysql5.6.37.实施要求是:利用从库,搭建第二个从库,版本为5.7.21 主库:192.168.1.21 从库:192.168.1.22 从库2:192.168.1.23 1.备份从库1[root@mysql02 ~]./innobackupex --user=root --password="xxxxxx" --slave-info --safe-slave-backup --parall…
一.信息提取实例 提取HTML中所有的URL链接 思路:1)搜索到所有的<a>标签 2)解析<a>标签格式,提取href后的链接内容 >>> import requests>>> r= requests.get("https://python123.io/ws/demo.html")>>> demo=r.text>>> demo'<html><head><tit…
抖音研发实践:基于二进制文件重排的解决方案 APP启动速度提升超15% 原创 Leo 字节跳动技术团队 2019-08-09 https://mp.weixin.qq.com/s/Drmmx5JtjG3UtTFksL6Q8Q   背景 启动是App给用户的第一印象,对用户体验至关重要.抖音的业务迭代迅速,如果放任不管,启动速度会一点点劣化.为此抖音iOS客户端团队做了大量优化工作,除了传统的修改业务代码方式,我们还做了些开拓性的探索,发现修改代码在二进制文件的布局可以提高启动性能,方案落地后在抖…
背景前提 地理空间数据抽象库(GDAL)是一个用于读取和编写栅格和矢量地理空间数据格式的计算机软件库,由开源地理空间基金会在许可的X / MIT风格免费软件许可下发布. 作为一个库,它为调用应用程序提供了一个抽象数据模型,用于所有支持的格式. 它还可以构建有各种有用的命令行接口实用程序,用于数据转换和处理. PROJ.4库支持投影和转换.(摘自维基百科) 相关的OGR库(OGR Simple Features Library [2])是GDAL源代码树的一部分,它为简单的特征矢量图形数据提供了类…
本设计思路:先打开一个普通wav音频文件,从定义的文件头前面的44个字节中,取出文件头的定义消息,置于一个文件头的结构体中.然后打开alsa音频驱动,从文件头结构体取出采样精度,声道数,采样频率三个重要参数,利用alsa音频驱动的API设置好参数,最后打开wav文件,定位到数据区,把音频数据依次写到音频驱动中去,开始播放,当写入完成后,退出写入的循环. 注意:本设计需要alsa的libasound-dev的库,编译链接时需要连接 —lasound. #include<stdio.h>#incl…
分享基于EF+WCF的通用三层架构及解析 本项目结合EF 4.3及WCF实现了经典三层架构,各层面向接口,WCF实现SOA,Repository封装调用,在此基础上实现了WCFContext,动态服务调用及一个分页的实例. 1. 项目架构图: 2. 项目解决方案: 在传统的三层架构上增加了WcfService(服务端),WcfClientProxy(客户端服务调用),及WcfExtension(一些扩展) 3. Wcf Service的实现: 工厂实现了RemoteServiceFactory(…
无法链接glew的解决办法-编译开源库出现: error LNK2001: 无法解析的外部符号 参考官方配置指南:http://glew.sourceforge.net/install.html 1. 编译build开源库中,引入了gluw, 正常引入:.h, .lib .dll 文件后,出现下列错误 <span style=>gpu_util.obj : error LNK2001: 无法解析的外部符号 ___glewMultiTexCoord1fARB >gpu_util.obj :…
GsonFormat插件主要用于使用Gson库将JSONObject格式的String 解析成实体,该插件可以加快开发进度,使用非常方便,效率高. 插件地址:https://plugins.jetbrains.com/idea/plugin/7654-gsonformat 这个教程主要是学习IntelliJ IDEA 如何通过GsonFormat插件将JSONObject格式的String 解析成实体. 一般来说 IDEA的插件安装非常简单,对于很多插件来说,只要你知道插件的名字就可以在IDEA…
目录 解析库--beautiful soup 一.BeautifulSoup简介 二.安装模块 三.Beautiful Soup的基本使用 四.Beautiful Soup查找元素 1.查找文本.属性--" . "的形式逐层查找 2.搜索文档树-- find() / find_all() 3.CSS选择器-- select('#id') 解析库--beautiful soup 一.BeautifulSoup简介 Beautiful Soup 是一个可以从HTML或XML文件中提取数据的…
前言: RFID电子客票具有检阅速度快.信息量大.安全性高和高速物理定位的独特优势,随着标准的统一和成本的减少,它在铁路上有着巨大的应用前景,同一时候鉴于车站对物联网化的需求,我们设想出新一代的检票机,它有着比已有检票机更广泛.更安全的信息採集和处理,帮助检票厅实现物联网化. 其创新点有三: 1) 多个检票口仅仅需一台检票机: 一个检票口配备一个RFID阅读器,通过RS232汇总到一台检票机,检票机可实现多检票口灵活切换和控制. 2) 将可信模块的理念应用到检票机: 其作用有二: a.作为车票内…
首先,需要特别感谢蓝斯老师的资料,我这里有很大一部分是参考蓝斯老师的,附上传送门:http://blog.csdn.net/lancees/article/details/9178385 一.DLNA相关设备说明 DMS:Digital Media Server的缩写,把本设备内的多媒体文件(自己控制需要共享哪些文件)到DLNA服务端: DMP:Digital Media Player的缩写,可以搜索局域网内,所有DMS提供的多媒体内容,并在本设备播放: DMC:Digital MediaCon…
前言 本文讲解在Python语言中使用MySQLdb库操纵MySQL数据库的方法. 准备工作 1. 安装Python和MySQL2. 安装MySQLdb (exe下载地址:http://sourceforge.net/projects/mysql-python/?source=typ_redirect) 总体步骤 1. 创建一个数据库:2. 导入MySQLdb库:3. 新建一个连接对象:4. 基于 2 中所创建的对象新建一个游标:5. 初始化SQL命令字符串:6. 将 4 中创建的字符串传递进…
继上篇:Android : alsa-lib 移植 ,这篇随笔实现一个demo基于移植好的alsa库在Android平台上播放wav文件: 一.利用ffmeg将一个mp3文件转换成wav文件: (1)ubuntu安装ffmeg工具: sudo add-apt-repository ppa:djcj/hybrid sudo apt-get update sudo apt-get install ffmpeg (2)mp3转wav:   ffmpeg -i duandian.mp3 -f wav d…
json(JavaScript Object Notation)是一种轻量级高效数据交换格式.相比于XML,其更加简洁,解析更加方便.在实习期间,我负责的程序模块,多次使用到json进行数据传输.由于之前只对json稍稍了解,而且不熟悉项目组使用的开源json解析库,故在编码过程中效率很低,而且还出现过bug.虽然,最后项目组的事情比较顺利的完成了,但感觉自己对json的编解码熟悉仍然不够,故翻阅了相关文档,写下这篇技术博客.与君共勉. 1.什么是json JSON(JavaScript Obj…
对于做海洋数据处理的同学,会经常遇到nc格式的文件,nc文件的格式全称是NetCDF,具体的详细解释请查询官网[https://www.unidata.ucar.edu/software/netcdf/docs/index.html],一般从全球大洋数据库里面下载的温盐.风场及云量等数据,基本上是nc文件格式,每一个文件里面包含多个数据集,例如最简单的海面表温数据(Sea surface temperature data),数据范围是全球,空间分辨率为0.25 *0.25(~25km),时间分辨…