- 博客(142)
- 收藏
- 关注
原创 C++标准详细介绍:C++11/C++14/C++17
C++11标准引入了多项核心语言特性和标准库改进,显著提升了编程效率和性能。核心特性包括自动类型推导(auto)、范围for循环、nullptr空指针、using类型别名、Lambda表达式、移动语义、override/final关键字、静态断言(static_assert)等。标准库方面新增了智能指针(unique_ptr/shared_ptr)、并发支持(thread/mutex/async/future)、正则表达式、元组(tuple)、哈希容器(unordered_map/set)、固定数组(arr
2025-12-20 18:01:14
534
原创 Visual Studio详细介绍:行业内最主流的开发工具之一
Visual Studio开发工具链解析 Visual Studio作为微软核心开发工具,集成了完整的MSVC工具链,涵盖从编码到部署的全流程开发。其主要组件包括: 编译器(cl.exe):处理预处理/编译/汇编,关键配置如附加包含目录(/I)、预处理器定义(/D)和运行时库选择(/MT//MD) 链接器(link.exe):负责目标文件和库的链接,配置项包含库路径(/LIBPATH)和子系统类型(/SUBSYSTEM) 资源编译器(rc.exe):编译界面资源(.rc),支持多语言(/l)和自定义输出路径
2025-12-06 17:38:40
960
原创 VC6.0详细介绍:Window平台专属的C/C++集成开发环境(IDE)
VC6.0是一款经典的C++集成开发环境,集成了编辑器、编译器、调试器和资源管理器等功能。它支持Windows界面可视化设计,内置MSVC 6.0编译器,但仅部分支持C++98标准。随着技术发展,VC6.0因与现代C++标准脱节、64位系统不兼容等问题被淘汰。安装时需设置兼容模式,其界面包含菜单栏、工具栏、工作区和编辑区等模块。常用快捷键包括F7编译、F5调试等。编译器配置主要通过项目属性窗口完成,可设置预处理器、代码生成等选项。尽管功能有限,VC6.0仍是学习Windows开发的入门工具。
2025-12-01 19:30:00
1613
原创 Git详细介绍:版本控制工具Git
Git的本质使用“快照+引用链”串联所有的历史快照:项目中所有文件的完整切片,被修改的文件会被完整记录,没有被修改的文件会复用;通过 “硬链接复用”—— 未修改的文件,新快照不存新数据,只存一个指向旧快照中该文件数据的 “指针”引用链:每次git commit,都会生成一个提交对象,这个提交对象包含三个数据区域(一个父指针、一个快照指针、还有一些元数据);父指针记录前一个提交的指针,快照指针记录当前提交时刻的快照对象,元数据包含提交时的注释、提交时间、作者信息等;
2025-11-26 20:00:00
876
原创 Modbus协议详细介绍
本质是 “通过差分信号实现多设备总线型通信” 的物理层规范 —— 仅负责数据的底层传输,需搭配上层协议(如 Modbus RTU、Profibus)才能实现设备间的数据交互。传输效率高(二进制编码紧凑,无冗余字符),抗干扰能力强(适配工厂电磁复杂环境),数据帧格式简洁(含地址、功能码、数据、校验码)——TXD(发送数据)、RXD(接收数据)、GND(信号地),其余引脚(如 RTS、CTS)用于流控,非必需。连接方式:点对点通信(1 个主设备对应 1 个从设备),不支持多设备组网(同一总线最多 2 个设备)
2025-11-13 22:16:17
608
原创 TCP/IP协议族详细介绍
本文系统介绍了TCP/IP协议族各层常用协议及其通信流程。应用层包含HTTP、FTP等协议,负责特定应用服务;传输层TCP提供可靠连接,UDP实现轻量传输;网络层IP协议处理寻址路由,ICMP传递差错信息,ARP解析MAC地址;网络接口层以太网协议实现局域网数据传输。各层协议相互配合,共同完成网络通信任务,其中重点阐述了TCP三次握手/四次挥手、IP封装转发、ARP地址解析等核心机制,展现了协议栈分层协作的完整工作流程。
2025-11-13 21:15:19
994
1
原创 Window系统UDP通信编程类(可直接使用)
本文介绍了UDP通信协议及其C++实现。UDP是一种无连接、不可靠但高效的传输层协议,适用于实时性要求高且可容忍少量数据丢失的场景。文章详细说明了UDP通信的四个步骤:创建套接字、设置目标地址、发送和接收消息。通过LvMyUDP类封装了UDP通信的细节,包括初始化、地址配置、数据收发和关闭连接等功能的实现。代码示例展示了如何建立UDP通信,发送"Hello"消息并等待接收响应。该实现使用Windows套接字API,包含错误处理和资源清理机制,为开发高效UDP应用提供了参考框架。
2025-11-03 15:59:47
320
原创 5 VTK图形处理(二)
本文介绍了VTK中的多分辨率处理和表面重建技术。多分辨率处理包括模型抽取(如vtkDecimatePro)和模型细化(如vtkLinearSubdivisionFilter),分别用于降低和提升模型分辨率。表面重建部分讨论了从点云或体数据重建表面的常用算法,如Delaunay三角化和移动立方体算法,并提供了VTK读取和合并点云数据的代码示例。这些技术是连接原始数据与三维可视化分析的重要桥梁。
2025-10-28 17:01:16
254
原创 5 VTK图形处理(一)
摘要 本文介绍了VTK中vtkPolyData数据结构的基本操作与应用。首先阐述了vtkPolyData的三大要素:几何结构(点集)、拓扑结构(单元连接)和属性数据,并通过代码示例演示了如何创建包含多边形和三角形的多边形数据集。其次,文章详细讲解了四种重要的图形操作:(1)欧式距离计算;(2)利用vtkMassProperties计算模型表面积和体积;(3)使用vtkDijkstraGraphGeodesicPath计算三维模型表面的测地距离;(4)通过vtkOutlineFilter生成模型的包围盒用于碰
2025-10-28 16:52:46
773
原创 4 VTK+QT基本渲染流程
VTK与QT结合的基本渲染流程包含5个步骤:1)使用vtkConeSource创建数据;2)通过vtkPolyDataMapper配置VTK管线;3)建立渲染引擎,包括vtkActor、vtkRenderer和vtkRenderWindow;4)创建QVTKOpenGLWindow并设置渲染窗口;5)将QWindow转换为QWidget并添加到界面布局中。整个过程实现了从VTK数据生成到QT界面集成的完整链路,代码示例展示了圆锥体渲染的典型实现方式。
2025-10-28 16:41:28
245
原创 3 VTK中的数据结构
VTK数据模型的核心是数据对象(vtkDataObject)和数据集(vtkDataset)。数据集由几何结构、拓扑结构和属性数据组成,包括多种类型如vtkImageData、vtkPolyData等。单元数据(vtkCell)通过点索引定义拓扑关系,分为线性单元和非线性单元。属性数据包含标量、矢量和张量类型。VTK采用连续内存存储,使用vtkDataArray管理单/多分量数组。数据读写通过Reader/Writer类实现,支持多种格式导入导出。整体上,VTK数据模型采用"几何+拓扑+属性&qu
2025-10-28 16:37:55
631
原创 2 VTK的基本概念
本文介绍了三维场景可视化中的核心要素与技术框架。主要内容包括:1) 三维场景基本要素:灯光(聚光/平行/点光源)、相机(位置/焦点/视角等参数)、颜色与纹理映射;2) 坐标系统与空间转换:Model/World/View/Display四种坐标系统,以及线性/透视/非线性三类空间变换方法;3) VTK技术框架:管线系统(数据加工处理)和渲染引擎(可视化实现)的组成与工作原理。这些内容构成了三维可视化的基础技术体系。
2025-10-28 16:30:30
425
原创 1 VTK简要概述
VTK是一个开源跨平台的可视化工具库,广泛应用于医学影像三维重建与手术规划、工程仿真可视化(包括有限元分析、流体动力学等数据展示)以及工业检测中的三维建模等场景。它能够处理复杂科学数据,实现从数据到直观可视化的转换。
2025-10-28 16:23:17
211
原创 VTK基础(05):VTK的渲染窗口嵌入到QT的控件当中
本文介绍了如何将VTK渲染窗口嵌入到QT控件中。关键是通过OpenGL上下文共享实现VTK与QT的集成。代码示例展示了完整流程:首先生成立方体数据,配置可视化管线;然后创建渲染器和OpenGL渲染窗口;最后通过QVTKOpenGLWindow将VTK渲染窗口嵌入到QT的QWidget容器中。这种方法允许在QT应用程序中无缝集成VTK的可视化功能。
2025-09-24 15:28:55
269
原创 VTK基础(04):VTK中图像的处理
本文介绍了VTK中图像处理的基本操作,包括图像创建、显示和处理方法。图像可通过数据源或手动创建,显示方式包括vtkImageActor和vtkImageViewer2。医学图像常用矢状面、冠状面和横断面三个切面。图像处理涵盖信息获取与修改、像素访问与修改以及类型转换,使用vtkImageCast和vtkImageShiftScale等类实现数据类型转换和数值调整。这些功能为医学影像处理和可视化提供了基础支持。
2025-09-22 15:36:43
708
原创 VTK基础(03):VTK中数据的读和写
VTK提供了多种数据读写工具,主要分为Reader/Writer和场景导入导出两类。对于vtkImageData、vtkPolyData等数据类型,有专门的读写器如vtkBMPReader/vtkBMPWriter、vtkPolyDataReader/vtkPolyDataWriter等。场景导入导出则通过Importer/Exporter类实现,支持3DS、VRML等格式,可处理包含灯光、相机等完整场景信息。这些工具覆盖了常见的数据类型和文件格式,为VTK中的数据处理提供了完整的IO支持。
2025-09-14 15:51:57
283
原创 VTK基础(02):VTK中的数据结构
数据对象是整个可视化流程的核心载体,本质是对现实世界中各类数据的结构化抽象,目的是统一描述数据的“几何信息”、“拓扑结构“和”属性数据“vtk中的数据一般是以数据对象的形式表现的,vtkDataObj是顶级抽象基类。
2025-09-14 15:27:35
382
原创 VTK基础(01):VTK中的基本概念
VTK三维可视化系统包含三大核心要素:1)三维场景组件(灯光、相机、颜色和纹理映射),其中灯光分为位置光和方向光,相机负责3D到2D投影;2)坐标系统与变换,包含Model/World/View/Display四种坐标系,支持平移、旋转、缩放等线性变换;3)管线架构与渲染引擎,通过数据流管线处理模型数据,由渲染引擎将Actor、Renderer、RenderWindow等组件组合实现最终可视化呈现,支持用户交互操作。整个系统采用惰性执行机制,确保高效渲染。
2025-09-14 10:45:11
851
原创 Linux:socket实现进程通信
需要说明的是:服务端创立的套接字对象需要绑定ip地址和端口号;客户端connect服务端的时候需要提供服务端的ip地址和端口号(服务端提供服务的进程的端口号)本文展示了服务端和客户端进行网络通信的示例:服务端向客户端发送数据,客户端读取服务端发送过来的数据;废话不多说,直接上代码!
2024-10-25 16:36:15
310
1
原创 Linux:linux系统中目录的遍历
Linux下目录的递归遍历:(1)opendir函数介绍和使用;(2)readdir函数介绍和使用;(3)closedir函数的介绍和使用
2024-10-11 09:25:56
824
原创 Linux:文件描述符的复制与重定向
Linux文件描述符的复制于重定向:(1)dup函数进行文件描述符的复制;(2)dup2函数实现对文件描述符的复制和重定向;(3)fcntl函数实现对文件描述符的复制、获取文件的状态标志、设置文件的状态标志
2024-10-10 17:19:07
584
原创 Linux:文件IO介绍
Linux系统中文件IO的介绍:(1)open和close函数;(2)read和write函数;(3)lseek函数和文件指针的介绍;(4)文件的拓展和截断
2024-10-08 19:00:07
1046
原创 Linux:文件描述符介绍
文件描述符介绍:1.虚拟地址空间:什么是虚拟地址空间、虚拟地址空间的作用;2.文件描述符:文件描述符的概念和文件描述符表基本介绍
2024-09-30 13:35:49
1269
原创 opencv:使用主成分分析PCA计算轮廓的偏转角度
PCA能够不过于依赖特定的轮廓形状来计算多个轮廓之间的偏转角度,比最小外接矩形法、最小外接椭圆法计算轮廓之间的偏转角度更为适用。总的来说,就是利用主成分分析方法得到轮廓的主特征向量,根据主特征向量来计算轮廓的角度。读取图像,对图像进行HSV转换,使用明暗通道的图像进行处理轮廓提取。使用主成分分析计算轮廓的特征向量,根据特征向量得到轮廓的偏转角度。
2024-09-30 09:20:01
833
原创 Window下动态链接库在VC++6.0中使用时编译器环境和C++标准的差异引起的不兼容现象
VC++6.0使用VS编译的动态链接库出现的引用vector参数不兼容问题记录,及解决方法
2024-09-11 16:15:47
356
原创 数据结构(02):算法的度量-时间复杂度
算法运行效率的度量:事后统计方法和事前分析估算方法;时间复杂度:什么是时间复杂度、时间复杂度的计算步骤、时间复杂度计算的示例
2024-08-14 14:30:13
1056
原创 Linux:线程同步机制(互斥锁、读写锁、条件变量、信号量详细分析总结)
Linux:线程同步机制(互斥锁、读写锁、条件变量、信号量详细分析总结)
2024-08-07 19:21:01
2143
原创 Linux:线程同步之条件变量(条件变量的概念、作用、使用方法、手写实现生产者-消费者模型)
Linux:线程同步之条件变量(条件变量的概念、作用、使用方法、手写实现生产者-消费者模型);1.条件变量的相关函数:pthread_cond_init、pthread_cond_siginal、pthread_cond_broadcast、pthread_cond_wait、pthread_cond_timewait等使用;2.生产者消费者模型的实现(使用条件变量和互斥锁实现该模型)
2024-08-06 14:33:01
1256
原创 Linux:线程同步之读写锁(读写锁的本质、读写锁的作用、如何使用读写锁、读写锁的特征)
Linux:线程同步之读写锁(读写锁的本质、读写锁的作用、如何使用读写锁、读写锁的特征);初始化读写锁对象pthread_rwlock_init、pthread_rwlock_wrlock、pthread_rwlock_rdlock、pthread_rwlock_unlock、pthread_rwlock_destroy等
2024-08-06 10:06:16
478
2022-吴恩达机器学习课程(原始讲义)高清完整版PPTpdf
2023-05-08
《C++ Prime Plus》Stephen Prata 图书笔记
2023-06-08
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人
RSS订阅