OGS
Node.h
Go to the documentation of this file.
1 
15 #pragma once
16 
17 #include <cstdlib>
18 #include <limits>
19 #include <vector>
20 
21 #include "MathLib/Point3dWithID.h"
22 
23 namespace ApplicationUtils
24 {
25  class NodeWiseMeshPartitioner;
26 }
27 
28 namespace MeshLib
29 {
34 {
35  /* friend classes: */
36  friend class Mesh;
37  friend class NodePartitionedMesh;
38  friend class MeshRevision;
39  friend class MeshLayerMapper;
41 
42 public:
44  explicit Node(const double coords[3],
45  std::size_t id = std::numeric_limits<std::size_t>::max());
46 
48  explicit Node(std::array<double, 3> const& coords,
49  std::size_t id = std::numeric_limits<std::size_t>::max());
50 
52  Node(double x, double y, double z, std::size_t id = std::numeric_limits<std::size_t>::max());
53 
55  Node(const Node &node);
56 
57 protected:
60  void updateCoordinates(double x, double y, double z);
61 
62 }; /* class */
63 } // namespace MeshLib
Definition of the Point3d class.
Manipulating and adding prism element layers to an existing 2D mesh.
void updateCoordinates(double x, double y, double z)
Definition: Node.cpp:39
Node(const double coords[3], std::size_t id=std::numeric_limits< std::size_t >::max())
Constructor using a coordinate array.
Definition: Node.cpp:21