
C++应用
文章平均质量分 52
C++常规应用方面
欧特克_Glodon
C++开发Qt/MFC,三维可视化,OpenGL/OSG/VTK/cesium,3D医学影像可视化开发,GIS应用开发,AutoCAD二次开发(Arx开发),矿山智能通风算法研究。
展开
-
C++地图下载器:支持多线程下载不同数据源卫星影像、街道路网、地形、海洋、高程瓦片Tile数据
C++地图下载器:1、简洁界面,操作明了;MFC界面,可以快速修改为Qt界面;2、可以依据配置下载各类卫星影像、街道路网、地形、海洋、高程的瓦片Tile数据;3、默认下载ArcGis,可通过配置支持天地图、谷歌、高德、百度等地图源;4、支持多线程下载,进度条显示实时进度和下载时间;5、支持将各级别Tile瓦片进行拼接形成大图,1000张小图拼接为1张大图,速度大约2秒;6、支持预览各级别影像图片;7、简单美化界面后可以作为课程设计或大作业进行提交。原创 2024-08-12 18:53:38 · 1579 阅读 · 0 评论 -
图像处理必须要用OpenCV 吗? ??试一下CImage类像素级处理图像:复制、截屏、拼接、裁剪、缩放、灰度图!!!
图像处理必须要用OpenCV 吗? ??试一下CImage类像素级处理图像:复制、截屏、拼接、裁剪、缩放、灰度图!!!CImage是MFC和ATL共享的新类,它能从外部磁盘中调入一个JPEG、GIF、BMP和PNG格式的图像文件加以显示,而且这些文件格式可以相互转换。它具有下列最酷特性:- 加载图片- 另存为不同格式图片- 灰度处理- 像素级复制图片- 放大缩小图片- 截屏功能- 裁剪图片- AlphaBlend支持像素级的颜色混合,从而实现透明和半透明的效果;原创 2024-08-11 10:13:59 · 1301 阅读 · 0 评论 -
常用MQ消息中间件Kafka、ZeroMQ和RabbitMQ对比及RabbitMQ详解
了解常用MQ消息中间件Kafka、ZeroMQ和RabbitMQ的基础知识,对三者特性进行对比,选取合适的MQ。着重讲解RabbitMQ详解。原创 2024-06-24 10:27:07 · 1814 阅读 · 0 评论 -
C++异步回调示例:多线程执行任务,主线程通过回调监测任务状态
C++异步回调示例:多线程执行任务,主线程通过回调监测任务状态原创 2024-04-18 10:32:09 · 2160 阅读 · 0 评论 -
jsoncpp库用法:读取、写入和修改json文件
jsoncpp库用法:读取、写入和修改json文件原创 2023-04-19 18:30:00 · 1355 阅读 · 0 评论 -
C++ 版本UrlEncoder编码解码工具:支持ANSIC和UTF8格式
C++ 版本UrlEncoder编码解码工具:支持ANSIC和UTF8格式原创 2023-03-02 17:00:52 · 985 阅读 · 0 评论 -
C++关于开源包7zip压缩工具的编译及使用
7-Zip是一款免费开源的压缩与解压软件,基本能够满足绝大多数常见的压缩和解压文件需求,此外还支持了分卷压缩和解压,非常好用。但是调用7-zip库需要用到一个叫bit7z的库,bit7z是一个C++静态库,其封装了简单易用的接口,用于调用7-zip库。原创 2023-01-31 17:36:53 · 4861 阅读 · 1 评论 -
利用FILE*拆分文件
File*拆分处理大文件原创 2022-12-28 15:41:09 · 294 阅读 · 0 评论 -
5 款常用的 C++ 在线编译器推荐
常用的C++ 在线编译器推荐原创 2022-08-15 10:37:06 · 29506 阅读 · 4 评论 -
Cesium: 如何将倾斜摄影数据转换为3dTiles格式
随着Cesium平台的开源易于上手性和优秀快速开发出活原因,国内GIS平台越来越多的将Cesium作为自己产品的web端来进行使用,但面临建一个不大不小的问题:对于小模型数据一般采用.gltf或.glb格式即可加载显示,但对于较大面积批量的数据如何快速有效加载成了一个问题,官方提出了3D tiles格式来解决,但如何将自己的模型转化为3D tiles格式?官方没有提供工具,原因有很多,比如划片的合理性,不同专业数据采用不同的划片方式等等,官方知识提供了3D tiles格式的介绍,具体操作还需要自己来写。原创 2022-06-24 11:16:54 · 4303 阅读 · 0 评论 -
利用libcurl库实现post数据上传
具体用例可以从postman进行复制,比较方便,后台接口api写好以后,在postman运行,然后点击右侧编辑按钮,下拉框选择C-libcurl,下面会自动显示出示例代码:struct fileInfo { fileInfo() { } fileInfo::fileInfo(const fileInfo& other) { strFilePath = other.strFilePath; strFileDir = other.strFileDir; } fil原创 2022-02-23 09:29:43 · 1672 阅读 · 1 评论 -
stb_image图像库处理tga转png
利用stb_image库将tga图片转png并压缩图片大小:代码如下:// PicturePro.cpp : 此文件包含 "main" 函数。程序执行将在此处开始并结束。//#include <iostream>#define STB_IMAGE_IMPLEMENTATION#include "stb_image.h"#define STB_IMAGE_WRITE_IMPLEMENTATION#include "stb_image_write.h"#define STB原创 2021-07-09 15:10:50 · 1354 阅读 · 1 评论 -
C++:获取指定目录下的所有文件
1.获得指定目录下的所有文件(不搜索子文件夹)//需要包含的头文件#include <io.h>#include <string>#include <vector>#include <fstream>void getAllFiles(string path, vector<string>& files) { // 文件句柄 long hFile = 0; // 文件信息 struct _finddata_t file转载 2021-11-04 10:06:50 · 7785 阅读 · 5 评论 -
文件夹处理
namespace UploadUtils{ // 判断程序是否已经启动 bool IsAlreadyRunning(); // 字符串转换 char* ConvertLPSTRToLPSTR(LPCTSTR lpwszStrIn); // 创建文件目录 void CreateDir(const char *dir); // 读取某给定路径下的当前文件夹名 void GetCurrentDir(string path, vector<string>& dirs);原创 2021-10-21 17:37:03 · 198 阅读 · 0 评论 -
字符格式相互转换:Unicode ansi utf8 wstring string
字符格式相互转换:Unicode转UTF8、string转UTF8、 string与wstring 互转原创 2020-09-03 09:51:50 · 1293 阅读 · 2 评论 -
删除文件夹及其里面所有内容,可能需要修改文件属性
void RemoveFolder(PCTSTR szDirPath){ CString strDir(szDirPath); CString strDest(strDir); strDest += _T("\\*.*"); _tfinddata_t findData; intptr_t handle = _tfindfirst(strDest, &findData); // 查找目录中的第一个文件 if (handle != -1) { do { if ((_t原创 2020-09-03 09:37:48 · 412 阅读 · 0 评论 -
基于TCP的网络应用程序的编写
1、说明这是一个最基本的实例,一个服务端,一个客户端;代码在vs2019下编译通过;服务端和客户端放在同一台机器上运行效果如下:2、代码1)服务端// TCPSrv.cpp : 此文件包含 "main" 函数。程序执行将在此处开始并结束。//#include <Winsock2.h>#include <time.h>#include <stdio.h>#include <windows.h>#include <WS2tcpip.h原创 2020-06-14 00:24:35 · 1390 阅读 · 0 评论 -
3damx插件dle无法初始化 126找不到指定的模块
3damx 插件 DLL<C:\Program Files\Autodesk\3ds Max 2017\Plugins\export.dle>无法初始化 错误代码126 - 找不到指定的模块问题描述: 自己写的3damx导出插件.dle,里面调用了其他的dll动态库,但运行时候却报错126,虽然我把用到的dll都拷贝到了C:\Program Files\Autodesk\3ds Max 2017\Plugins\export.dle同级目录下仍然报错。解决方案: 用了depen原创 2020-05-26 14:58:36 · 12798 阅读 · 0 评论 -
Visual Studio各个版本对应关系
1.下面列举Visual Studio 各版本对应关系2.查看方式1.在电脑中打开Visual Studio2.在启动页面中点击“继续单无需代码”,(本文使用的Visual Studio 2…3.点击主菜单中的“帮助”,4.在帮助子菜单中选择“关于Microsoft Visual Studio”并点击,5.在新打开的窗口中,可以查看到当前安装的Visual Studio的具体版本号 END...原创 2020-05-19 08:47:01 · 1188 阅读 · 0 评论 -
C++读取图片二进制数据并保存
1、将图片读取为char* 数据char* pData = NULL;bool GetTextureData(CString sFilePath,char* &pData){ int nLen = 0; FILE* fp = NULL; const char* chFileName = sFilePath.AllocANSIString(); fopen_s(&f...原创 2020-03-19 08:55:12 · 5894 阅读 · 5 评论 -
一种使用GDI+对图片尺寸和质量的压缩方法
https://blog.youkuaiyun.com/weixin_33701251/article/details/85928103转载 2020-03-10 18:46:04 · 279 阅读 · 0 评论 -
C#调用C++的dll方法
C#调用C++的dll总归可以有两种方法:1、非托管C++创建的dll库,需要用静态方法调用;2、直接使用CLR,生成托管C++dll库。原创 2018-07-30 09:57:01 · 76885 阅读 · 11 评论 -
创建进程CreateProcess()函数的简单实用
创建进程方法: // lpCommandLine字符串的格式:“exe路径+空格+参数1+空格+参数2+……” CString sParam = ::GetInstance()->GetInstallPath(); sParam += _T("Program2.exe "); // argv[0] 参数0 sParam += _T("params1 "); // argv[1]...原创 2019-10-22 18:23:36 · 705 阅读 · 0 评论 -
C++中统计程序运行时间方法
一、clock()计时函数clock()是C/C++中的计时函数,而与其相关的数据类型是clock_t。在MSDN中,查得对clock函数定义如下:clock_t clock(void) ;简单而言,就是该程序从启动到函数调用占用CPU的时间。这个函数返回从“开启这个程序进程”到“程序中调用clock()函数”时之间的CPU时钟计时单元(clock tick)数,在MSDN中称之为挂钟时间(w......原创 2019-10-16 11:12:59 · 9044 阅读 · 0 评论 -
LibXL库使用详解:libxl读取显示Excel表格数据
LibXL是一个可以读写Excel文件的商业库。它不需要Microsoft Excel和.NET框架,结合了易于使用和强大的功能。LibXL库可用于从头开始生成新的电子表格以及从现有电子表格中提取数据或修改现有电子表格。原创 2019-08-09 08:55:57 · 1095 阅读 · 0 评论 -
C、C++一次将整个文件读入内存
1.问题描述:C和C++的初学者经常采用一行一行读入文件的办法对文件数据进行处理。但是经常会有一些情况需要将一个文件整体一次读入内存处理。而C和C++库中并没有提供直接一次读入文件全部数据的函数。2.解决方法:目前给出C和C++的解决方案,下面两个程序只是用于演示,不过这些代码已经很容易改写成想要的函数了。解决这个问题的思路是:1.由于要将文件完整读入,所以必须使用二进制方式打开(若文本......原创 2019-01-23 09:57:43 · 7118 阅读 · 3 评论 -
CString与char[] 的相互转换以及结尾乱码问题的分析解决
一、CString 转化成char[]方法一:运用 CString.GetBuffer(0) 与 strcpy[cpp] CString str; int len = str.GetLength(); char* arr = new char[len]; strcpy(arr,str.GetBuffer(0));方法二:char *转为CString可以直接赋值,比如MF......原创 2019-01-23 09:51:26 · 7851 阅读 · 1 评论 -
C++程序员的职业生涯规划
一、C++服务器程序员(流媒体后台,游戏后台,高性能服务器后台) 精通C++,STL,Linux等,熟悉设计模式; 熟练掌握一门脚本语言(Lua, Python, Perl等); 对多线程环境编程有一定的理解,能独立完成服务器端模块的开发、维护和优化; 熟练掌握MySQL数据库的开发维护、性能优化;1.精通C++编程,3年以上服务器开发经验;2.有手机游戏或......原创 2018-11-15 11:17:29 · 2285 阅读 · 0 评论 -
C++判断是否是Win10系统
// 判断是否是Win10系统BOOL IsWin10System(){ //string与CString转换 //string sPath = (LPCSTR)(CStringA)(strPath); std::string vname; // 先判断是否为win8.1或win10 typedef void(__stdcall*NTPROC)(DWORD*, DWORD*, DWO...原创 2018-11-21 15:39:02 · 4455 阅读 · 0 评论 -
C++获取某个文件夹下的所有文件名称
// path---文件路径// strAry---得到的所有文件名称组成的数组void GetAllFileNamesInFolder( string path, CStringArray& strAry){ struct _finddata_t fileinfo; string strP; vector<string> files; if (IsWin10S...原创 2018-11-21 15:35:47 · 775 阅读 · 0 评论 -
C++读取ArcGis数据.shp格式
#include "shpopen.h"#include "dbfopen.h"bool UnicodeToAnsi(const WCHAR* pSrc, char* pDes) { char defaultChar[100]; BOOL bUseDefaultChar; WideCharToMultiByte(CP_ACP, 0, pSrc, -1, pDes, 1024, ...原创 2019-03-13 09:37:40 · 1505 阅读 · 0 评论 -
多字节编码与Unicode码的区别及MFC中 CString 转 char *
C++基本数据类型中表示字符的有两种:char、wchar_t。char叫多字节字符,一个char占一个字节,之所以叫多字节字符是因为它表示一个字时可能是一个字节也可能是多个字节。一个英文字符(如’s’)用一个char(一个字节)表示,一个中文汉字(如’中’)用3个char(三个字节)表示。做界面时遇到需要从界面编辑框接受输入字符(用户名,密码之类),然后转为char *类型交给程序处理,记录...原创 2019-05-14 17:33:56 · 765 阅读 · 0 评论 -
利用二进制方式存入读出vector文件
#include<iostream>#include <fstream>using namespace std;#include <vector>struct TestInfo{ int id; double salary; string strName;};typedef std::vector<TestInfo> vecTes...原创 2019-07-03 16:57:50 · 4372 阅读 · 5 评论 -
<九>objectARX开发:ObjectARX中矩阵AcGeMatrix3d的使用介绍
objectARX开发:ObjectARX中矩阵AcGeMatrix3d的使用介绍原创 2019-08-16 11:32:11 · 4190 阅读 · 0 评论 -
C++获取某个文件夹下的所有文件夹名称
// path---文件路径// strAry---得到的所有文件名组成的数组void GetJustCurrentDir(string path, CStringArray&amp;amp; strAry) { //文件信息 struct _finddata_t fileinfo; string strP; vector&amp;lt;string&amp;gt; files; if (IsWin1...原创 2018-11-21 15:31:33 · 978 阅读 · 0 评论