- 博客(59)
- 资源 (20)
- 收藏
- 关注
原创 ossim windows下编译
1、通过地址https://github.com/ossimlabs/ossim下载ossim最新代码;2、编译依赖库geos、geotiff、tiff、jpeg、json、sqlite3、proj等依赖库;3、安装CMAKE4、通过CMAKE-UI配置OSSIM5、修改CMakeLists.txt文件,去掉对GEOTIFF、JPEG、TIFF、JsonCpp、PROJ等依赖...
2019-11-27 18:37:57 617
原创 libxml2库编译
libxml2库编译1、下载libxml2,官网是:http://www.xmlsoft.org/downloads.html,下载地址是:ftp://gd.tuwien.ac.at/pub/libxml/.2、解压文件到目录D:\libxml2-2.9.73、新建文件夹D:\xml把安装libiconv生成的iconv.lib、iconv.h文件夹拷贝到xml文件夹下的lib和includ...
2019-11-27 15:22:25 1075 1
原创 window下编译静态SQLite库
解压 将下载好的两个文件sqlite-amalgamation-3280000.zip、和sqlite-dll-win32-x86-3280000.zip解压到SQLite文件夹内,如下所示:F:.├─sqlite-amalgamation-3280000│ shell.c│ sqlite3.c│ sqlite3.h│ sqli...
2019-11-27 14:13:39 617
转载 向量点乘叉乘等理解和应用
1.标量和矢量 2(1,2,3) = (2,4,6) (2,4,6)/2=(1,2,3) 2.矢量和矢量的加减三角形定则解决向量加减的方法:将各个向量依次首尾顺次相接,结果为第一个向量的起点指向最后一个向量的终点。平行四边形定则解决向量加法的方法:将两个向量平移至公共起点,以向量的两条边作平行四边形,向量的加法结果为公共起点的对角线。平行四...
2019-11-26 10:54:06 5852
原创 设计模式---外观模式
有天老板如果让你给PS一个张图,而你对Photoshop一窍不通,这个时候你可以选择傻瓜式的美图秀秀,轻松搞定美图。其实这就是外观模式的设计想法,将复杂的处理过程封装成简单对外接口,便于使用。#include <iostream>class CPhotoProgress{public: virtual ~CPhotoProgress() { } virtua...
2019-11-25 21:19:38 96
原创 设计模式---模板方法模式
在工作中,见过很多模板,比如填写一个申请表,发给你一份申请的表的电子模板,根据模板内容填写,这其实就是模板方法模式的设计思想,即对处理某一问题有明确的步骤,对于每个步骤怎么干根据情况而定,就好比填写申请表,不同类型的申请表填写内容就截然不同。#include <iostream>class Apply{public: virtual ~Apply() { } v...
2019-11-21 22:42:52 129
原创 设计模式---原型模式
原型模式在日常生活中比较常见,比如Ctrl+C/Ctrl+V、小学生抄作业等,其将一个某个对象复制N份,稍作修改形成一个新的对象,这就是原型模式。class Prototype{public: virtual ~Prototype() { } virtual Prototype* clone() = 0;protected: Prototype() { }};c...
2019-11-20 22:06:30 100
原创 代理模式
在日常生活中,我们见过很多代理,比如明星经纪人。如果你要去找明星拍广告,你是不会直接找明星,明星也没时间搭理你;需要找到明星的经纪人,先跟经纪人谈,价格合适才接你的广告,否则人家就拒掉了,我们就用这个场景来写一个代理的示例。//定义明星接口#pragma onceclass IStar{public: virtual ~IStar(); virtual void PlayAD(i...
2019-03-05 22:51:37 145
原创 装饰模式
一年又一年,元宵节到了,看看电视,吃吃汤圆,听听远处阵阵传来鞭炮声,给“年”说拜拜了。。。言归正传,大家一起学习装饰模式,从字面意思来说,就是装饰一个对象,给一个对象扩展一新的功能或者职责。比如说我们现在要装修一个房子,我们要先铺地板,铺水管,装灯等等,但总有一些事情我们想不到。在遵守“开放-封闭”原则下,可以通过继承子类,扩展父类功能,也可以通过装饰模式,更方便的扩展对象的功能。接下里来实现...
2019-02-19 23:23:55 121
原创 开放-封闭原则
时间过来真快,距离上次写设计模式的博客已经快两年了,时间跨度真心太大,整天忙忙碌碌,还是需要沉下心来好好整理一下对知识的理解。今天,分享一下开发过程中,一个比较重要的原则:开放-封闭原则。开放-封闭原则是指软件在开发过程中,对于软件实体(类、模块、函数等)支持可扩展,但是不可修改。软件开发过程中,新的需求难免提出,但如何在影响现有功能的情况下扩展新的功能,开放-封闭原则给了我们一个比较好软...
2019-02-17 21:46:20 862
原创 window快速查找修改文件并复制
forfiles /P D:\open\gdal-2.1.1 /D +2018/05/01 /s /m *.c /c "cmd /c copy @path C:\Users\wanguangtong\Desktop\change"
2018-05-31 18:25:39 804
原创 类之间关系
关联:连接模型元素及链接实例,用一条实线来表示; 依赖:表示一个元素以某种方式依赖于另一个元素,用一条虚线加箭头来表示; 聚合:表示整体与部分的关系,用一条实线加空心菱形来表示; 组成:表示整体与部分的有一关系,用一条实线加实心菱形来表示; 泛化(继承):表示一般与特殊的关系,用一条实线加空心箭头来表示; 实现:表示类与接口的关系,用一条虚线加空心箭头来表示;
2017-09-11 22:10:27 214
原创 ubuntu GitHub服务器搭建
1、安装OpenSSH 通过命令 sudo apt-get install openssh-server,安装SSH服务。 2、创建用户git,用来管理运行git服务 sudo useradd git sudo passwd git 3、配置无密码SSH登陆 这步主要是方面后面登录,不需要每次都输入密码。 在客户端上,我们使用命令:ssh-keygen –t rsa 生成密钥; 将客
2017-09-09 13:53:44 1133
原创 设计模式---策略模式
又是一个情人节,帅哥们正用各种办法取悦自己的女朋友或者老婆,买花、买包、吃顿烛光晚餐等等,而此刻我对着屏幕,敲击着无趣的26个字母...想到上面哄女孩子开心的各种形式,突然想到一种设计模式---策略模式。各位帅哥的目的很明确就是让女孩子高兴,那么怎么让他们高兴那?每人选择针对自己适合的方法策略...策略模式就是很好管理各种方法策略,根据需求灵活替换扩展。比如排序算法,方法有很多种,冒泡、快排、希
2017-08-28 23:57:55 356
原创 设计模式---简单类工厂
在编程学习过程中,开始是随性的写,觉得只要能实现自己想要的功能,便可完事。当需求发生改变时,乐此不彼地修改凌乱的代码,没有领悟到编程这门艺术,只是一个代码搬运工。慢慢去阅读一些书籍,发现自己知道的东西太少,思想过于简单,考虑问题比较单一。希望能通过每天的学习去充实自己,并将这些点滴记录下来。 今天就开始设计模式的学习,设计模式是一种解决问题的方式,针对不同的场景使用一种或者多种设计模式解决问题。首
2017-08-22 23:35:49 719
原创 openssl、qca、qca-ossl
Openssl编译一、安装perl软件二、perl Configure VC-WIN64A --prefix=D:\WGIS2.0\Win64三、ms\do_win64a四、nmake -f ms\ntdll.mak如果报警告为错误,修改ms/mtddl.mak的W3->W0五、nmake -f ms\ntdll.mak test 测试编译是否成功六、、
2017-07-15 22:00:50 1301
转载 FTP的主动模式和被动模式
1.FTP的PORT(主动模式)和PASV(被动模式) (1) PORT(主动模式) PORT中文称为主动模式,工作的原理: FTP客户端连接到FTP服务器的21端口,发送用户名和密码登录,登录成功后要list列表或者读取数据时,客户端随机开放一个端口(1024以上),发送 PORT命令到FTP服务器,告诉服务器客户端采用主动模式并开放端口;FTP服务器收到PORT主动模式命令
2017-04-12 13:57:20 371
原创 内存操作函数memcpy,memccpy,memmove,memchr,memcmp,memicmp,memset
(1)函数原型:extern void *memcpy(void *dest, void *src, unsigned int count);参数说明:dest为目的字符串,src为源字符串,count为要拷贝的字节数。 所在库名:#include 函数功能:将字符串src中的前n个字节拷贝到dest中。返回说明:src和dest所指内存区域不能重叠,函数返回vo
2016-12-31 08:34:46 880
原创 Qt发布exe
直接使用Qt的自带命令行工具windeployqt,可以自动将依赖的dll拷贝到可执行exe目录下,命令如下:windeployqt 可执行程序
2016-12-27 08:29:58 317
原创 linux下使用mkae_rt命令打包idl code为可执行程序
make_rt命令使用方法共四步:IDL> .reset_session//这是第一步 重置编译器进程IDL> .compile test.pro//编译你需要的code% Compiled module: TEST.IDL> Resolve_All, /continue_on_error, skip_routines='envi'//设置环境 直接照抄% Compiled m
2016-12-09 17:12:58 1458
原创 postgresql数据库导出和恢复命令
文本形式导出:pg_dump 数据库名称 > /home/xiaoming/ mydb.dmp文本形式恢复:创建数据库,createdb mydbpsql mydb /home/xiaoming/ mydb.dmp二进制形式导出:pg_dump -b 数据库名称 > /home/xiaoming/ mydb.dmp二进制形式恢复:
2016-11-18 15:38:10 3672
原创 NDK编译libspatialite
1、下载最新的libspatialite源码(http://www.gaia-gis.it/gaia-sins/libspatialite-sources/)2、使用libtool的config.sub替换libspatialite里面的文件3、修改configure对geos_c库的判断将下面两句用“#”进行注释else as_fn_error $? "could no
2016-10-10 21:54:56 1173
原创 NDK编译常用开源库-libiconv
1、配置NDK的linux环境(1)下载libtool(http://mirrors.kernel.org/gnu/libtool/),进入目录,执行./configure和make(2)下载NDK(http://wear.techbrood.com/tools/sdk/ndk/)创建一套工具链,进入NDK的build/tools/目录,执行如下命令:./make-standa
2016-10-10 10:43:15 2825
原创 win_flex_bison常用命令-QGIS编译中使用
win_flex.exe -o F:/QGIS/build/src/core/flex_qgsexpressionlexer.cpp F:/QGIS/Source/qgis-2.6.0/src/core/qgsexpressionlexer.llwin_bison.exe -o F:/QGIS/build/src/core/qgsexpressionparser.cpp -d -v -t F:
2016-10-05 21:07:42 588
原创 大小端字节序
端模式可以分为小端字节序((little-endian)和大端字节序(big-endian),也就是字节在内存中存储顺序。小端字节序低字节存在内存的低地址,高字节存在内存的高地址,即低位在前,高位在后。如一个unsigned init型数据 i = 0xFFEEBBAA内存地址 数值0x0029F458 0xAA0x0029F45
2016-07-22 11:04:53 1129
原创 Qt for Android自定义AndroidManifest.xml
在工程文件pro文件中添加contains(ANDROID_TARGET_ARCH,armeabi-v7a) { ANDROID_PACKAGE_SOURCE_DIR = $$PWD/android}$$PWD/android:为当前工程下的android目录,在里面添加AndroidManifest.xml配置文件即可
2016-07-12 18:48:48 1064
原创 SVN Server Ubuntu环境配置
1、安装软件包:sudo apt-get install subversion2、选择SVN服务文件及配置文件的放置位置例如:/homesudo mkdir -p /home/svnsvn版本仓库叫testcd /home/svnsudo mkdir test3、目录建好后,创建版本仓库sudo svnadmin create /home/svn/tes
2016-07-12 13:23:46 1195
原创 Android学习第二课
Android技术结构图安卓结构的有四个层:Linux Kernel、Libraries、Application Framework、ApplicationsLinux Kernel:是针对安卓,对Linux Kernel进行优化;Libraries: Android Rumtime:Core Libraries + Dalvik Virtual machi
2016-04-22 13:53:48 295
转载 C++注释规范
1、源文件头部注释列出:版权、作者、编写日期和描述。示例:/*************************************************Copyright:radiAuthor:Date:2016-04-22Description:描述主要实现的功能**************************************************/
2016-04-22 12:54:52 1150
原创 Android学习第一课
Android的环境搭建1、IDE可以选用eclipse、下载adt(Android Developer Tools)、AndroidSDK、eclipse、jdk;2、选用Android Studio3、直接下载adt-bundle(将adt、sdk集成与eclipse);Android的环境测试1、第一个安卓程序-HelloWorld2、结构分析src:
2016-04-21 15:06:32 347
原创 GDAL获取投影坐标系注意问题
GDAL提供了获取投影坐标系的C函数GDALGetProjectionRef以及对应的C++函数GetProjectionRef,但在获取投影坐标系之前需要设置通过CPLSetConfigOption函数设置”GDAL_DATA”环境变量,例如:CPLSetConfigOption(“GDAL_DATA”, “D:/gdal/data”);其中“D:/gdal/data”为GDAL源码下的data;
2016-02-14 00:19:04 2827
原创 NDK编译源码
环境为Linux下,或者在Win7配置Linux环境 1、下载最新NDK; 2、创建一套工具链,进入NDK的build/tools/目录,执行如下命令: ./make-standalone-toolchain.sh –platform=android-8 –install-dir=工具路径; 3、将工具路径下的bin和NDK的目录添加到环境变量PATH里面,例如 export PATH=/
2016-01-29 12:29:54 779
原创 GDAL---Windows下32位与64位编译
32位:1、启动cmd,输入”D:\Program Files (x86)\Microsoft Visual Studio 12.0\VC\vcvarsall.bat” x86(替换成自己的vcvarsall.bat路径);2、cd到GDAL的源码路径; 3、使用命令:nmake -f makefile.vc MSVC_VER=1600 DEBUG=1 ANALYZE=1 WITH_PDB=1
2016-01-19 22:08:58 4042
原创 GDAL编译支持中文
很多人编译后GDAL发现打开文件不支持中文,这是因为字符编码问题,需要改两个地方:frmts文件夹下的“gdalallregister.cpp” 在GDALAllRegister()函数中添加CPLSetConfigOption(“GDAL_FILENAME_IS_UTF8”,”NO”);ogr\ogrsf_frmts\generic文件夹下的“ogrregisterall.cpp” 在GD
2016-01-14 13:43:08 1563
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人