# PclCSharp **Repository Path**: Xmmm0569/pcl-csharp ## Basic Information - **Project Name**: PclCSharp - **Description**: 对pcl点云库的.NET包装,可在C#、VB.net语言中使用pcl - **Primary Language**: C# - **License**: BSD-3-Clause - **Default Branch**: master - **Homepage**: None - **GVP Project**: No ## Statistics - **Stars**: 0 - **Forks**: 34 - **Created**: 2022-06-16 - **Last Updated**: 2022-06-16 ## Categories & Tags **Categories**: Uncategorized **Tags**: None ## README # PclCSharp ## 简介 PclCSharp是**Pcl1.8.1**点云库的.Net包装。该库能使用户在C#、VB.net等基于.NET框架的语言中使用。目前仅支持Windows X64平台。 # 1 使用方法 本库主要封装了四个Dll,分别是PointCloudSharpDll、PclCSharp、PointCloudDll和PclDll。其中前两个是用C#封装的Dll,它们是对后两个dll的包装。它们之间具体的依赖关系见下图。 在实际使用时,只需要在.net中引用PointCloudSharpDll、PclCSharp这两个dll即可。但是需要把其他两个dll以及这两个dll依赖的所有dll全部放在exe所在目录。除此之外,你也可以放在system32目录,或者放在环境变量中指定的文件夹中也可以。不过建议放在exe所在目录。**依赖的dll全部放在depend/x64目录中**。 切记,**下图所列的所有dll必须一个不漏的和PointCloudSharpDll、PclCSharp这两个dll放在一起**,不然会报System.DllNotFoundException:“无法加载 DLL这个错误。 还有一个点需要注意,对于pcl_common_release这个dll,它依赖的都是系统级的dll和C++运行时的dll。对于系统级的dll,只要是正常的window10系统(笔者是在win10上封装的,所以得是win10系统)都会在system32目录中包含相应的dll,所以无需额外添加。至于C++的dll,大部分安装了编程软件的电脑也都会包含,所以也无需额外添加。 # 2 PointCloudSharp命名空间 PointCloudSharp中封装了pcl中存储点云的基本数据结构,包括`pcl::PointCloud`、`vector`和`pcl::PointCloud`等。目前封装好的只有`pcl::PointCloud`、`vector`这两类,其他的数据结构后续逐步封装。**具体见doc目录中的函数说明**。 # 3 PclCSharp命名空间 该命名空间中包含了pcl中点云处理的算法,暂时封装了Io、Filter、Segmentation、SampleConsensus和Util五个静态类,每个类大体对应着pcl的一个模块,后续会慢慢增加其他模块。各个类之间的依赖关系见下图。具体见doc目录中的函数说明。