七之阿瑞安赫德

在实践中学习

How it works(11) NodeODM源码阅读(B) 任务控制与任务后处理

任务运行时 上一节的最后,通过"TaskManager.singleton().addNew(task);"方法,新建的任务被加入进了任务管理器,自此,任务的一切都交由任务管理器来调控了. 由上方的代码可以看出,TaskManager是一个单例实例.原因是保证当Taskmana...

2019-03-22 20:01:19

阅读数 16

评论数 0

How it works(10) NodeODM源码阅读(A) 鉴权与任务初始化

引入 OpenDroneMap(ODM)是一款非常强大的无人机成果处理软件,可以直接将无人机拍摄的照片处理成正摄影像甚至进行三维建模.ODM本身是基于python的OpenSFM编写的命令行工具,为了方便实际使用,NodeODM出现了. NodeODM是Nodejs编写的一套带有可视化界面的API...

2019-03-19 22:15:13

阅读数 15

评论数 0

How it works(9) GDAL2Mbtiles源码阅读(C) 影像预处理与核心流程

gdal.py gdal.py封装了所需的与gdal相关的操作.主要用来进行切割前的处理. 主要操作有投影变换与抽取波段: def preprocess(inputfile, outputfile, band=None, spatial_ref=None, resam...

2019-03-03 13:00:13

阅读数 93

评论数 0

How it works(8) GDAL2Mbtiles源码阅读(B) 影像切割与处理

vips.py 最重要的切图模块,使用的是libvips这一快速轻量的c++模块的py绑定pyvips,这也是g2m里最大的一个模块. 切图主要分为两部分: 瓦片分隔 波段处理 瓦片分割 瓦片分割是g2m的核心功能.基本流程是: 获取图片(直接使用原片或重采样后的图片) 从图片中裁取固定大小...

2019-03-03 12:59:40

阅读数 118

评论数 0

How it works(7) GDAL2Mbtiles源码阅读(A) 框架与存储

引入 gdal2Mbtiles是个小工具(以下简称g2m),其作用是将栅格地图(主要是Tiff格式)切成瓦片,存入Mbtiles格式的数据库中,以便于其他支持Mbtiles格式的地图服务器直接调用. 一开始我也是为了用它来切割Tiff底图,发布Tileserver-GL服务的,不过用了一下,发现其...

2019-03-03 12:58:54

阅读数 104

评论数 0

How it works(6) TileStache源码阅读(B) 自带功能模块

引入 TileStache的核心阅读完了,就可以看看具体的功能部分是如何运行的. 功能部分有4大类: Caches.py PixelEffects.py Pixels.py Providers.py 模块 Caches.py 缓存的使用在上一篇已经看过了: 读取缓存不需要锁 写入缓存必须先加...

2019-03-03 12:57:43

阅读数 13

评论数 0

How it works(5) TileStache源码阅读(A) 核心框架

引入 作为一个维护时间更长久的地图服务器(从2010年至今),Python编写的TileStache有着跟Nodejs编写的Tiletrata不同的设计理念: 全面专业.包含较多常用或不常用的专业地理信息功能. 配置文件.与Tilestrata的代码即配置不同,TileStache完全基于一个独...

2019-03-03 12:57:06

阅读数 54

评论数 0

How it works(4) Tilestrata源码阅读(B) 地图负载均衡

引入 阅读Tilestrata的源码是绕不开Tilestrata-Balancer(以下简称TB)这个默认的负载均衡服务的.其特性是: 支持动态增加,减少节点 定时检查节点健康状况 简单的请求过滤 大多数服务会采取专业的负载均衡或者反向代理,比如常见的nginx.理论上讲,nodejs的htt...

2019-03-03 12:56:11

阅读数 75

评论数 0

How it works(3) Tilestrata源码阅读(A)

引入 什么是Tilestrata 在地图服务领域,我们的选择其实是不多的.商业的首推arcgis server,开源的一般是mapserver和geoserver.这些专业地图服务其专业性很强,强大到可以满足几乎所有地图需求.不过正是因为有许多我们日常几乎用不到的专业功能,它们都十分的重,无论是从...

2019-03-03 12:55:36

阅读数 70

评论数 0

How it works(2) autocannon源码阅读(A)

autocannon是纯node实现的接口压力测试工具,市面上类似的产品很多,老牌的AB,带有图形界面的soap ui等.不过autocannon可以方便的进行命令行调用,甚至在代码内调用,这对于nodejs项目的单元测试来说是相当方便的. 下面就来简单分析一下他的源码. 综述 上一篇我对wins...

2019-03-03 12:54:41

阅读数 51

评论数 0

How it works(1) winston3源码阅读(A)

winston 是我在 nodejs 下最常用的日志框架,那么他到底是如何工作的呢? winston 的运行核心 winston 中有两个关键词: 记录器(logger)和传输器(transport). 记录器负责收集/修饰分配进入的每一条日志,传输器则负责最终把日志记录到的哪, 整个 win...

2019-03-03 12:53:11

阅读数 66

评论数 0

Sequelize的原始查询的时区问题

在postgres数据库sequelize的raw query也是受时区影响的. 同样的语句,用sequelize直接执行某些跟时间相关的query和在数据库执行是不一样的. 语句如下: update table_A set is_enable=1 where EXTRACT(hour from ...

2018-10-26 09:57:31

阅读数 651

评论数 0

从零开始的Docker ELK+Filebeat 6.4.0日志管理

我们自己的地图服务会打印如下json格式的日志:(时间字段和位置字段已针对ELK的处理) {"apikey":"XXXXXXX","ip":&...

2018-09-28 08:32:50

阅读数 1085

评论数 0

C#修改JPG图片EXIF信息中的GPS信息

/// <summary> /// 设置图片的经纬高 /// </summary> /// <param name=&...

2018-03-13 11:26:04

阅读数 1425

评论数 3

记一次断电恢复ORA-01033错误

客户的电脑因为频繁断电,造成orcle无法连接,报ORA-01033:oracle初始化或者关闭错误. 按照传统方法 进入cmd sqlplus sys/password@user as sysdba 可以连接.关闭数据库 shutdown immediateORA-01109: 数据库未...

2017-01-04 16:39:13

阅读数 2406

评论数 0

Arcsde报ora-29861: 域索引标记为loading/failed/unusable错误

连接数据库的软件在编辑要素时突然报出这个错误: 解决方法很简单,找出错误索引,再删除这个错误索引. 先执行 select owner,index_name from all_indexes where domidx_status != 'VALID' or domidx_opstatus...

2016-12-27 11:53:51

阅读数 1048

评论数 0

DEV TreeList的节点设置

存个档,以后直接用了。 基本做到:1.选中父节点,子节点根据父节点选中状态调整自身状态。2选中子节点,父节点根据子节点的兄弟节点的状态调整自身状态。 private void treeList1_BeforeCheckNode(object sender, DevExpress.XtraTr...

2016-10-25 09:12:27

阅读数 2650

评论数 0

Arcsde表空间自动增长

Pl/Sql中执行"alter database datafile 'E:\app\Administrator\product\11.2.0\dbhome_1\database\SDE_TBS' autoextend on;" E:\app\Administrator\pro...

2016-10-09 13:32:46

阅读数 809

评论数 0

提取面狭长角

提取面要素类中出现狭长角的要素 private void PRV_CheckSliver(IFeatureClass IN_Featureclass) { List Temp_AllError = new List();//记录所有错误OID ...

2016-08-20 16:41:36

阅读数 1368

评论数 5

规范性附录 属性值代码

using System; using System.Collections.Generic; using System.Linq; using System.Text; namespace WindowsFormsApplication4 { static class C_Contra...

2016-08-10 08:58:31

阅读数 275

评论数 0

提示
确定要删除当前文章?
取消 删除
关闭
关闭