自定义博客皮肤VIP专享

*博客头图:

格式为PNG、JPG,宽度*高度大于1920*100像素,不超过2MB,主视觉建议放在右侧,请参照线上博客头图

请上传大于1920*100像素的图片!

博客底图:

图片格式为PNG、JPG,不超过1MB,可上下左右平铺至整个背景

栏目图:

图片格式为PNG、JPG,图片宽度*高度为300*38像素,不超过0.5MB

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+

Sean的专栏

一个gis老菜鸟的工作经验之旅

  • 博客(121)
  • 资源 (4)
  • 问答 (1)
  • 收藏
  • 关注

原创 Visual Studio编译GDAL2.4.4(204)与Geos库,并使用pdb文件

由于接下来的工作要求,需要再次了解GDAL的VS编译方式;这里暂时不考虑GDAL3版本(因为必须整PROJ6和sqlite的库)。GDAL与GEOSGDAL中的空间谓词,一般返回bool型的方法,如intersect,contains;GDAL空间关系,一般返回几何运算结果,如buffer等;二者一般都是由GEOS库去实际运算的;GDAL一般调用GEOS的C接口方法,它封装了GEOS的c++实际的功能实现,方法名长期稳定,不会轻易修改或者Deprecated!环境时间:20210416

2021-04-17 16:32:20 546

原创 VS2017编译gdal-2.4.2与geos-3.7.2

GDAL目前最新版本3.0.1,但是编译的时候需要Proj6的库,所以还是选择2.4.2;geos 3.7.2目前是最新版本。IDE:VS2017 Communitygeos库生成过程:运行:autogen.bat,该文件生成一些版本相关头文件使用vs nmake.exe,一般是对应VS版本的x64 Native Tools Command Prompt 2017按照下列步骤运...

2019-08-24 15:03:41 2401 3

原创 OSG头文件引用不带.h后缀

问题:osg头文件都不带.h后缀,.cpp文件中的引用也是,使用cmake之后生成的工程文件中也是默认引用不带.h后缀的文件,在Visual Studio中看源代码指到头文件之后就进行不下去了,很不方便!!!思考:头文件与.cpp文件都是文本,可以直接c++读进来直接修改文件与引用;src文件夹中的CMakeLists.txt文件中头文件路径也可以加上.h后缀,这样在VS中也会只显示.h的文件...

2019-08-14 19:42:37 893

原创 WIN10设置程序osgviewer等程序的显示DPI

新配的电脑分辨率特别高,但是显示的logo实在是小的不行,幸好WIN10可以设置布局的大小在桌面上右键选中显示设置,将缩放与布局修改为200%(虽然推荐150%),感觉好多了~~但是之后在使用osgviewer看牛牛的时候,发现默认的尺寸变了;初始化出来了一个牛屁股…解决:找到osgviewer,右键属性——》兼容性——》更改所有用户设置——》更改高DPI设置——》勾选替代高DPI缩...

2019-08-01 21:17:14 651 1

原创 OpenSceneGraph学习文档大全下载

CSDN现在下载的积分都是自动设置的,导致有时候大家免费分享都很困难,由于下载需要积分过多,所以整合了部分资源打包在一起分享(只能网盘免费分享了,格局太小,你懂的):最长的一帧_王锐;OSG程序设计_杨石兴;osgEarth用户手册;OSGDocs3.4.0.chm;OpenSceneGraph三维渲染引擎设计与实践;OpenSceneGraph三维渲染引擎编程指南;OpenSce...

2019-07-31 10:24:51 2005 5

原创 编译osgViewerMFC出现错误啦!

编译环境:VS2017 Community系统:win10osg:3.6.3问题:使用默认的第三方库进行编译时,只有osgViewerMFC出现了错误:过程:一顿操作之后感觉自己找到了问题原因就是当前编译的目标平台问题,如果我们按照如下的参数编译实际上是没有问题的;但是osgViewerMFC工程中又默认根据当前的平台加了一个预编译头_WIN32_WINNT = 0x0A00,但...

2019-07-28 23:52:51 815

原创 Visual Studio 设置显示生成的起点时间与耗时

问题:工作中主要使用的IDE是Visual Studio,但是VS默认设置不显示生成的时间,这就很难受了。解决:VS工具栏——》选项——》工程与解决方案——》生成与运行:上图默认是最小,所以不显示时间,这里我们将这两个参数设置为正常:之后就可以显示生成时间的起点了:生成总共耗时:...

2019-07-28 23:37:00 6445 4

原创 关于ArcMap字段计算器数字补位脚本

需求:在ArcMap中给图层字段使用字段计算器生成值时,有时候需要进行数字的补位操作;分析:ArcGIS的字段计算器可以通过两种脚本语言进行补位操作实现:VB Script脚本:right([fieldname]+100000,5)fieldname代表字段名称,这里可以是Fid,也可以是其他数字Python:str(fieldname).zfill(5)zfill...

2019-07-05 15:54:21 2448

原创 osg3.4.0编译nvtt失败的原因

之前使用vs2013编译nvtt显示失败,但是我的设置没有问题,根据报错发现是缺少lib:nvtt.lib,nvmath.lib,nvimage.lib,nvcore.lib,nvthread.lib,bc6h.lib,bc7.lib,squish.lib,同时包括以 _d 结尾的Debug库(这里我奇怪的是为什么Debug库反而比Release库还小一些!);在引用这些库的时候,需要先将第三...

2018-12-14 22:57:14 2001

原创 osgvieweMFC 显示窗口问题

最近在使用编译后的osg3.4.0的osgviewerMFC查看osg数据时,发现osg视图窗口总是不会全部显示,似乎视图上下文的坐标存在问题。最后在osgChina的论坛一搜,发现已经有人解决了这个问题,核心问题在于下一段代码改变了视图的坐标://该构造函数内部修改了traits的x,y值!!!osg::GraphicsContext* gc = osg::GraphicsContext:...

2018-12-14 22:35:40 658

原创 关于ArcGIS Engine中Shape文件锁的释放(rd.lock,sr.lock,wr.lock)

本文主要介绍rd.lock与sr.lock的释放问题,之后可能会引申到多线程中的批处理shape时锁的问题!需求需要批处理点shape,根据点生成相关的面shape(其实我很想使用c++ ogr来做),在没有消除锁时则不能往shape写入数据,考虑到时间成本,先使用AE这个比较熟悉的库,后期有空再补上!调试在使用IFeatureClass.OpenFeatureClass()之后生成了...

2018-11-30 17:02:42 7499

原创 vs2013编译osg3.4.0(包括osgQt)

前一篇文章写了CMake,这一篇文章继续编译,这里只介绍我编译过程中出现的问题以及解决办法介绍。1.设置ALL_BUILD批生成:生成——》批生成,将Debug与Release模式勾选上,选择生成;这个过程如果成功将近3个小时!可惜进行到一半还是出现了错误,这个文件实在unix系统才会需要的:解决办法就是在VS2013的安装目录下:…/VS/include下添加unistd.h文件...

2018-11-18 15:04:03 1244 2

原创 CMake OSG+VS2013+Qt5.7.0

下载主要是各种库包的下载:1.osg:osgChina下载2.osgChina第三方库下载3.osgChina数据下载4.cmake:自己百度,安装的时候最好自动设置一下全局环境变量(安装过程可以选择)5.Qt:Qt专门下载通道6.vs的Qt插件 qt-vs-addin-1.2.5.exe过程1.先设置路径,下载后osg包的路径与cmake的输出路径,自由选择;2.Confi...

2018-11-17 21:01:06 772

原创 开发3ds Max两个月随笔

ds式开始搞3ds Max插件开发已经过去了两个月;从一个max零基础,c++基本为零基础(因为本科都还给老师了),三维知识基本零基础,切斜摄影测量知识零基础的我来说过去的两个月是煎熬的,不止是零基础带来的学习阻力,也有外部的环境压力等等;直到今天自己有了一个感觉:量变积累到了质变了~!其实本意不属于3d这一块,因为就像之前说的,基础太差也没有人带,埋头研究很考验一个人的各方面能力;最重要的是在未来

2017-06-24 15:19:53 1011 7

原创 3ds Max 2014插件安装(插件无效的原因~)

入坑3ds Max插件开发~项目需要,所以埋头研究3ds Max插件开发,上一篇文章费了老劲才找到完整的文档和开发社区~这一次在使用插件向导创建的插件死活不能加载到Max中!~问题描述使用wizard创建的utility插件项目加载生成.dlu文件添加到3ds Max安装路径下的stdplugs文件下之后,在如下路径上查看加载进来的插件:从下图可以看到描述一栏是空的,虽然后面的状态显示已经加载了~这

2017-04-25 16:36:38 17199 2

原创 3ds Max 2014 SDK配置开发环境以及遇到的问题

领导让研究一下Max插件,于是从一个坑立刻跳到另一个坑中!目前SDK已经更新到了2018,真是一年一个版本。。。环境机器:Win7 旗舰 64+SP1 IDE : VS2010(由于使用3ds Max 2014和vs的版本之间有对应关系) Max:3ds Max 2014+3ds Max 2014 SDK由于我预想的开发是使用c++,所以开发环境先主要介绍c++的环境,除此之外,根据帮助文档的介

2017-04-21 09:46:02 6041 6

原创 error LNK2019 : 无法解析的外部符号 __imp____glutInitWithExit@12... ...

本来尝试使用VS2017的,奈何c++在17中貌似改变了很多,不方便和之前的库一起使用,只好暂时放弃;转而使用VS2013… …下载安装配置freeglut3.0很顺利,毕竟已经被坑过很多次了;在编译的时候遇到了如下如题问题:切换成windows内置的3.7版本的glut是没有问题的,在搜索后发现了解决方案:在文件头加上#ifndef GLUT_DISABLE_ATEXIT_HACK #defi

2017-04-13 10:33:44 1782

原创 Qt实现读取显示obj文件——动态绑定纹理与消除纹理

上一篇文章讲到了多线程加载纹理,感觉效果很满意,如果你在后台加载纹理的时候转动模型,已经绑定的纹理将会一个个加上去,视觉上竟然有了动画的感觉~~~需求然后我想看模型的时候,有时候不想要显示纹理怎么办呢?就是存在一个按钮,点击按下则显示纹理,弹起不显示纹理~就像meshlab中那样!问题但是在实现效果时,如果只是简单的重绘中不进行纹理名的绑定,那么纹理其实并没有取消绑定,只是不显示了,然后你重绘出来的

2017-04-01 09:19:20 2688 2

原创 Qt实现读取显示obj文件——多线程加载纹理

在之前的程序中,已经实现了基本的加载,但是大家知道纹理的加载实在太慢了,整个界面都是卡死的状态,所以得想办法实现多线程加载纹理;我的想法是一个线程先将没有纹理的图形读取出来,另一个线程读取纹理,读取出来以后再重绘实现多线程绑定纹理功能~由于OpenGL中不支持直接多线程的操作~所以需要曲线救国~~在博客园里找到了一位兄弟的博客OpenGL多线程创建纹理,经过他的启发,实现了在Qt中的多线程加载纹理,

2017-03-31 16:28:45 2055 2

原创 Qt实现读取显示obj文件——绘制数据

前面的工作做好之后,绘制的代码就没那么麻烦了,但是要注意纹理坐标和面的节点坐标是交替进行的,就是一个纹理坐标,一个节点坐标~否则显示不出来纹理!//渲染模型void _glDraw(_GLModel* model, size_t mode){ if (mode & _GL_FLAT && model->list_FaceNormal.size() == 0) {

2017-03-17 15:49:41 4591 5

原创 Qt实现读取显示obj文件——归一化坐标

归一化坐标的最大用处就是将节点坐标转换在-1~1的范围内,从而可以显示在我们的视线范围内!~总体的思路就是找出节点中最大值作为基数,然后平移,缩放!//将图形移到屏幕中间来float _glUnitize(_GLModel* model){ float maxx, minx, maxy, miny, maxz, minz; float cx, cy, cz, w, h, d;

2017-03-17 15:42:37 2298

原创 Qt实现读取显示obj文件——创建并绑定纹理

之前在读取数据的时候,Qt实现读取显示obj文件——读取数据,已经读取纹理,也就是png格式的文件到model的集合中去了,我们需要根据图片创建我们的纹理:for (int i = 0; i < model->list_ImagePath.length(); i++) { glEnable(GL_TEXTURE_2D); GLint MaxTextureSiz

2017-03-17 15:36:06 4230

原创 Qt实现读取显示obj文件——计算面的单位法向量

计算面的法向量是一个数学过程,相信很多人都已经将这个知识还给老师了!~此处应有一个哭脸~其实主要的原理就是计算两个向量的点积(dot product)(我发誓这个概念真的第一次出现在我人生中~)也就是交叉乘积!~a=[a1,a2,a3] b=[b1,b2,b3] a × b= [a2b3-a3b2,a3b1-a1b3, a1b2-a2b1] 下面是计算面的法向量的方法://计算面的法向量

2017-03-16 17:34:00 2622 4

原创 Qt实现读取显示obj文件——读取数据

前一篇写了关于实现的一些说明Qt实现读取显示obj文件——说明,这一篇说一说数据的读取~说明在头文件中我们建立一个OBJ文件的数据模型类;记录一些模型的结构与之后可能会使用的数据结构;(之后会在Github上上传所有的源码,但是数据不会上传~)class _GLModel{public: QString path;//obj文件路径 QString mtllibName;//材质文

2017-03-16 15:57:21 12417 21

原创 Qt实现读取显示obj文件——说明

年后回来一个多月基本上都在研究OpenGL的东西~由于C++,Qt和三维的基础基本都是0,所以有些吃力,好在在动手写代码将近20天之后总算做出了一点成绩~环境Qt 5.5 +AddIn+VS2013,qt相关下载戳这里,VS2010也可以,不过写c++感觉2013之后好用一些~OpenGL我直接用的系统里面的glu32和opengl32(不懂如何在c++中引用的可以自己稍微花点时间研究一下~搞c++

2017-03-16 15:16:22 6674 4

原创 Shape文件IFeatureCursor.NextFeature()最后一次特别慢~

今天在使用IFeatureCursor对Shape文件做空间查询的时候发现游标在最后一次确定为null时跳出的时候总是特别慢~前面的速度都正常~~~经过排查发现Shape文件没有建立空间索引,解决方法有两个:在ArcCatalog目录下找到Shape文件,右键属性——》索引(Indexes),这里可以设置属性索引和空间索引~~在下面的空间索引点击Add(添加)就创建空间索引成功了;将Shape数

2017-02-10 16:35:52 2099

原创 IQueryFilter,ISpatialFilter与IQueryDef的区别

在使用ArcEngine查询空间数据库的时候主要使用三种查询接口:IQueryFilterISpatialFilterIQueryDef那么这三个接口的区别是什么呢? 要求 IQueryFilter ISpatialFilter IQueryDef 属性约束 True True True 空间约束 False True False 查询结果包

2017-02-10 08:04:24 1760

原创 获得Mxd中的Map集合

年前虽然没有什么特别多的事,但是研究三维的东西确实比较挣扎,尤其是在基础基本为0的情况下~~新年刚来,还没有什么进一步的研究,先来看看ArcEngine的东西~前沿做一个批量出图的程序,MXD中有两个Map,即两个Data Frame(一个叫做Layers的一般是默认的,新建的默认为New Data Frame),在ArcMap中可以找到插入选项创建新的Frame~创建好的Frame添加数据,但是在

2017-02-08 14:57:15 949

转载 三维建模

一、 专业3D建模软件3DS Max 美国Autodesk公司的3D Studio Max(前身是Discreet公司的,后被Autodesk收购)是基于PC系统的三维建模、动画、渲染的制作软件,为用户群最为广泛的3D建模软件之一。常用于建筑模型、工业模型、室内设计等行业。因为其广泛性,它的插件也很多,有些很强大,基本上都能满足一般的3D建模的需求。我们的学生也需要经常用到3DS Max来构建模型。

2017-01-19 10:01:47 11604 8

原创 配置Qt调试环境~

尽管可以在VS中开发Qt,但是发现Qt5中的QML语言在VS2010中是不支持的~而且很多开发资料都是基于Qt Creator的~虽然很不熟悉这个IDE的快捷键,但是我还是决定跳到Qt Creator~环境QtCreator:3.5.1 系统;win7 64位 旗舰参考Qt Creater 3.5.1 Windows 下调试官方英文文档用Qt创建了一个新的项目Qt Quick Controls A

2016-12-13 10:22:30 6730 3

原创 编译MeshLab(4)—VS2010编译MeshLab源码之编译meshlab_full.pro

编译meshlab_full.pro文件还是同样的操作,但是由于该项目的工程文件太多,我们需要批量操作~第一个common不选,选中第二个工程文件,按住Shift按键,拖动到最后的工程文件,右键选择属性,这样我们就可以批量改变属性了!~注意不要将<不同选项>删除了~编译filter_csg编译完了之后,发现又出现了错误,前面的无法打开文件common.lib先不用管~定位到错误3445,这个错误是说

2016-12-11 15:10:54 2774 1

原创 编译MeshLab(3)—VS2010编译MeshLab源码之编译meshlab_mini.pro

有了前面的基础编译MeshLab(1)—软件安装与代码下载编译MeshLab(2)—VS中引用Lib文件下面我们开始编译源码!编译external编译的第一步是将外部相关的库文件进行编译: 打开VS2010,如下图操作选择...\meshlab\src\external路径下的external.pro文件!(出现提醒点yes好,no也行,看心情~)打开后直接生成解决方案,不需要任何配置,

2016-12-11 11:35:45 2221 6

原创 编译MeshLab(2)—VS中引用Lib文件

上一篇编译MeshLab(1)—软件安装与代码下载已经将环境和代码下载下来了,那么接下来就是编译了~作为一个大学没毕业就丢掉了C++的菜鸡,我表示我只有写一行C++代码出现几百个错误的悲惨回忆~C++引用lib文件在VS2010中引用lib文件需要在工程文件的配置中引入,习惯了dll的引用,作为小白的我表示很不方便啊~lib,dll区别 及 VS中如何添加lib,dll在VS中添加lib的第三种

2016-12-09 23:48:32 1710 2

原创 编译MeshLab(1)—软件安装与代码下载

最近需要看MeshLab源码,虽然满脸懵逼但是只能硬着头皮上~虽然整过程个过程很痛苦~但是最终迈过了编译这个槛!~网上很多介绍编译的博客或者文章基本上只说了过程,而且很多互相抄袭~或者一带而过,完全不考虑我们初学者的心情,所以下面我会尽量详细,不懂的地方地方可以给我留言,我基本每天都上CSDN~QtCreator我不懂,也不习惯~下载只是因为MeshLab必须用到他的链接库文件…参考网上找到的有一定

2016-12-09 15:59:47 4357 6

原创 VS2010未能正确安装RadLangSvc.Package...包等问题

系统:win7 64位 IDE:VS2010 旗舰问题由于一些原因重装了VS2010,但是每次打开都出现如下问题:未能正确加载 “RadLangSvc.Package…”未能正确加载“Language Package”包未能正确加载“VSTS for Database Professional Sql Server Data-tier Application”包未能正确加载“VSTS fo

2016-12-06 12:05:36 5337

原创 Visual Studio2013中动态生成注释中的时间__修改模板文件

上一篇说道VS2010中动态生成注释时间的方法,也在最后提到了之后的VS版本不在有宏功能,所以说之前的方法无效了~该篇讲的方法也适合VS2010中使用参考:VS2013修改模板,增加类文件的头注释VS2015 自动添加头部注释方法总体的方法思路很明确,就是去安装文件夹下面修改指定的配置模板Class.cs文件:你的VS安装路径下\Common7\IDE\ItemTemplates\CSharp

2016-11-30 10:25:25 5963 4

原创 Visual Studio2010中动态生成注释中的时间__使用宏命令

在VS2010写自己业余项目的时候使用自定义的Snippet添加注释的时候发现不能自动匹配时间,如果每次都自己改时间实在浪费时间~搜索后发现只有使用宏才能动态生成时间~参考:StackOverflow解决方法自动添加注释—VS2010宏的使用创建宏在VS2010中选择工具—》宏—》Macro 资源管理器,或者直接Alt+F8下图管理器,选择新建模块ClassHead;双击打开宏命令编辑器,添加

2016-11-29 14:38:51 2824

转载 C#读取与写入.ini文件

一般来说该文件都是保存在本地的,操作.ini文件的同时,我们会将写入的字符串进行简单的MD5加密~下面的内容转自C#中对INI文件进行读写操作,同时增加了些许补充(黑体字~)C#中对INI文件进行读写操作时主要用到Windows API函数WritePrivateProfileString和GetPrivateProfileString函数。WritePrivateProfileString函数此函

2016-11-21 09:48:06 5606

转载 【.net 深呼吸】程序集的热更新

转发的老周的文章,现在主要是在微信上看一些推送,有一些觉得有意思或者有用的文章并没有分享,以后需要多多的转发一些文章~这篇文章主要介绍如何在程序运行的时候修改dll,当然当前被锁定的程序集是不能被修改的,但是可以绕过这个坑~详细的介绍看下面这篇博文吧~传送门:【.net 深呼吸】程序集的热更新~

2016-11-21 09:16:52 1120

原创 VS2010安装本地HelpViewer

之前在VS2008上开发的时候,安装的AO的帮助文档都是可以直接本地HelpViewer直接查看的,非常的方便~但是到了VS2010之后,帮助文档变成了本地的web版本,非常的不好用和不习惯,网上看了一堆东西发现HelpViewer不能单独安装的~最后发现在VS2010安装之后安装SP1就可以继续本地HelpViewer访问AO了,爽~

2016-11-08 14:11:48 2211

最长的一帧_王锐.zip

最长的一帧,王锐

2019-07-31

OpenGL头文件,lib库,dll库

全套OpenGL的.h文件,.lib文件,dll文件

2016-12-10

meshlab源码

meshlab源码,编译已通过,不会的可以给我留言~

2016-12-05

安卓入门教程

这是一个适合新手的基础安卓教程,适合入门级的新手。

2014-07-08

TA创建的收藏夹 TA关注的收藏夹

TA关注的人

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