    

 ## On this page

  

 

 # PointCloud

 Last update: 17.07.2025 

<a id="l00001" name="l00001"></a> 1/\*

<a id="l00002" name="l00002"></a> 2 \* Copyright 2023 ANSYS, Inc. Unauthorized use, distribution, or duplication is prohibited.

<a id="l00003" name="l00003"></a> 3 \*/

<a id="l00004" name="l00004"></a> 4 

<a id="l00005" name="l00005"></a> 5\#pragma once

<a id="l00006" name="l00006"></a> 6 

<a id="l00007" name="l00007"></a> 7\#include "SystemCouplingParticipant/LibraryType.hpp"

<a id="l00008" name="l00008"></a> 8 

<a id="l00009" name="l00009"></a> 9\#include "SystemCouplingParticipant/CommonTypes.hpp"

<a id="l00010" name="l00010"></a> 10\#include "SystemCouplingParticipant/OutputIntegerData.hpp"

<a id="l00011" name="l00011"></a> 11\#include "SystemCouplingParticipant/OutputVectorData.hpp"

<a id="l00012" name="l00012"></a> 12 

<a id="l00013" name="l00013"></a> 13\#include &lt;cstddef&gt;

<a id="l00014" name="l00014"></a> 14 

<a id="l00015" name="l00015"></a> 15namespace sysc {

<a id="l00016" name="l00016"></a> 16 

<a id="l00025" name="l00025"></a>[ 25](classsysc_1_1PointCloud.xhtml)class SYSTEM_COUPLING_PARTICIPANT_DLL [PointCloud](classsysc_1_1PointCloud.xhtml) {

<a id="l00026" name="l00026"></a> 26public:

<a id="l00029" name="l00029"></a>[ 29](classsysc_1_1PointCloud.xhtml#ab0fa91555fbc8c62debedf8fdb9336e2) std::int64_t connectivityStamp{0};

<a id="l00030" name="l00030"></a> 30 

<a id="l00033" name="l00033"></a>[ 33](classsysc_1_1PointCloud.xhtml#a59b01ced48d42607a4e7e865b236e49c) std::int64_t coordinatesStamp{0};

<a id="l00034" name="l00034"></a> 34 

<a id="l00037" name="l00037"></a>[ 37](classsysc_1_1PointCloud.xhtml#a1e32fdf88ff05b2af20659bfd94f5fc0) std::int64_t partitioningStamp{0};

<a id="l00038" name="l00038"></a> 38 

<a id="l00047" name="l00047"></a>[ 47](classsysc_1_1PointCloud.xhtml#a1ced7091c7926176bf1cd0a0e3295056) [PointCloud](classsysc_1_1PointCloud.xhtml#a1ced7091c7926176bf1cd0a0e3295056)(

<a id="l00048" name="l00048"></a> 48 [OutputIntegerData](classsysc_1_1OutputIntegerData.xhtml) nodeIds,

<a id="l00049" name="l00049"></a> 49 [OutputVectorData](classsysc_1_1OutputVectorData.xhtml) nodeCoords);

<a id="l00050" name="l00050"></a> 50 

<a id="l00052" name="l00052"></a>[ 52](classsysc_1_1PointCloud.xhtml#acc45998b6b9a302675bca9b60d329d9c) [PointCloud](classsysc_1_1PointCloud.xhtml#acc45998b6b9a302675bca9b60d329d9c)() = default;

<a id="l00053" name="l00053"></a> 53 

<a id="l00055" name="l00055"></a>[ 55](classsysc_1_1PointCloud.xhtml#a070807ab97916c768bf33b3f70fff431) [PointCloud](classsysc_1_1PointCloud.xhtml#a070807ab97916c768bf33b3f70fff431)(const [PointCloud](classsysc_1_1PointCloud.xhtml)&amp;) = default;

<a id="l00056" name="l00056"></a> 56 

<a id="l00058" name="l00058"></a>[ 58](classsysc_1_1PointCloud.xhtml#a3581e641adfc3a77d6e7fb1f896a23b7) [PointCloud](classsysc_1_1PointCloud.xhtml#a3581e641adfc3a77d6e7fb1f896a23b7)([PointCloud](classsysc_1_1PointCloud.xhtml)&amp;&amp;) = default;

<a id="l00059" name="l00059"></a> 59 

<a id="l00061" name="l00061"></a>[ 61](classsysc_1_1PointCloud.xhtml#a78babf78bb0972dba58e1caade9eb15d) [PointCloud](classsysc_1_1PointCloud.xhtml)&amp; [operator=](classsysc_1_1PointCloud.xhtml#a78babf78bb0972dba58e1caade9eb15d)(const [PointCloud](classsysc_1_1PointCloud.xhtml)&amp;) = default;

<a id="l00062" name="l00062"></a> 62 

<a id="l00064" name="l00064"></a>[ 64](classsysc_1_1PointCloud.xhtml#a1849d96d82aea44c8c79c9938362e83e) [PointCloud](classsysc_1_1PointCloud.xhtml)&amp; [operator=](classsysc_1_1PointCloud.xhtml#a1849d96d82aea44c8c79c9938362e83e)([PointCloud](classsysc_1_1PointCloud.xhtml)&amp;&amp;) = default;

<a id="l00065" name="l00065"></a> 65 

<a id="l00067" name="l00067"></a>[ 67](classsysc_1_1PointCloud.xhtml#ad4a6bb5175f6fec7a5bfeaacfd2aea47) std::size_t [getNumNodes](classsysc_1_1PointCloud.xhtml#ad4a6bb5175f6fec7a5bfeaacfd2aea47)() const noexcept;

<a id="l00068" name="l00068"></a> 68 

<a id="l00070" name="l00070"></a>[ 70](classsysc_1_1PointCloud.xhtml#a5c5385f2219f3807902dd0227ba344c4) [OutputIntegerData](classsysc_1_1OutputIntegerData.xhtml) getNodeIds() const;

<a id="l00071" name="l00071"></a> 71 

<a id="l00073" name="l00073"></a>[ 73](classsysc_1_1PointCloud.xhtml#a7af3e505ed55ed9e9ad01ffc1dbf03c0) [OutputVectorData](classsysc_1_1OutputVectorData.xhtml) getNodeCoords() const;

<a id="l00074" name="l00074"></a> 74 

<a id="l00078" name="l00078"></a>[ 78](classsysc_1_1PointCloud.xhtml#a5624a75183bdf2f3783f135f69574872) [ValidityStatus](structsysc_1_1ValidityStatus.xhtml) checkValidity() const;

<a id="l00079" name="l00079"></a> 79 

<a id="l00080" name="l00080"></a> 80private:

<a id="l00081" name="l00081"></a> 81 [OutputIntegerData](classsysc_1_1OutputIntegerData.xhtml) m_nodeIds;

<a id="l00082" name="l00082"></a> 82 [OutputVectorData](classsysc_1_1OutputVectorData.xhtml) m_nodeCoords;

<a id="l00083" name="l00083"></a> 83};

<a id="l00084" name="l00084"></a> 84 

<a id="l00085" name="l00085"></a> 85} // namespace sysc

[sysc::OutputIntegerData](classsysc_1_1OutputIntegerData.xhtml)

Provide a class for output integer data.

**Definition:** [OutputIntegerData.hpp:25](OutputIntegerData_8hpp_source.xhtml#l00025)



[sysc::OutputVectorData](classsysc_1_1OutputVectorData.xhtml)

Provide a class for output vector data.

**Definition:** [OutputVectorData.hpp:27](OutputVectorData_8hpp_source.xhtml#l00027)



[sysc::PointCloud](classsysc_1_1PointCloud.xhtml)

Provide a point cloud access class.

**Definition:** [PointCloud.hpp:25](PointCloud_8hpp_source.xhtml#l00025)



[sysc::PointCloud::PointCloud](classsysc_1_1PointCloud.xhtml#a070807ab97916c768bf33b3f70fff431)

PointCloud(const PointCloud &amp;)=default

Provide a copy-constructor.



[sysc::PointCloud::operator=](classsysc_1_1PointCloud.xhtml#a1849d96d82aea44c8c79c9938362e83e)

PointCloud &amp; operator=(PointCloud &amp;&amp;)=default

Provide a move-assign operator.



[sysc::PointCloud::PointCloud](classsysc_1_1PointCloud.xhtml#a1ced7091c7926176bf1cd0a0e3295056)

PointCloud(OutputIntegerData nodeIds, OutputVectorData nodeCoords)

Constructor for PointCloud class.



[sysc::PointCloud::PointCloud](classsysc_1_1PointCloud.xhtml#a3581e641adfc3a77d6e7fb1f896a23b7)

PointCloud(PointCloud &amp;&amp;)=default

Provide a move-constructor.



[sysc::PointCloud::operator=](classsysc_1_1PointCloud.xhtml#a78babf78bb0972dba58e1caade9eb15d)

PointCloud &amp; operator=(const PointCloud &amp;)=default

Provide a copy-assign operator.



[sysc::PointCloud::PointCloud](classsysc_1_1PointCloud.xhtml#acc45998b6b9a302675bca9b60d329d9c)

PointCloud()=default

Provide a default constructor.



[sysc::PointCloud::getNumNodes](classsysc_1_1PointCloud.xhtml#ad4a6bb5175f6fec7a5bfeaacfd2aea47)

std::size_t getNumNodes() const noexcept

Provide a method to get the number of nodes for this mesh.



[sysc::ValidityStatus](structsysc_1_1ValidityStatus.xhtml)

Provide a struct that contains information about validity.

**Definition:** [CommonTypes.hpp:171](CommonTypes_8hpp_source.xhtml#l00171)