23#ifndef VCL_MESH_ELEMENTS_EDGE_H
24#define VCL_MESH_ELEMENTS_EDGE_H
26#include "base/element.h"
27#include "edge_components.h"
45template<
typename MeshType, comp::ComponentConcept... Comps>
49 using VRefs =
typename Edge::VertexReferences;
52 using VertexType = VRefs::VertexType;
53 using VRefs::setVertices;
80 VRefs::setVertex(0u,
v0);
81 VRefs::setVertex(1u, v1);
92 VRefs::setVertex(0u,
vi0);
93 VRefs::setVertex(1u,
vi1);
97template<
typename MeshType, comp::ComponentConcept... Comps>
120 IsDerivedFromSpecializationOfV<T, Edge> &&
A class representing a box in N-dimensional space.
Definition box.h:46
The Edge class represents an Edge element of the vcl::Mesh class.
Definition edge.h:47
void setVertices(uint vi0, uint vi1)
Sets the vertices of the edge.
Definition edge.h:90
Edge()=default
Empty constructor.
friend void swap(Edge &a, Edge &b)
Swap function that delegates to the base Element swap.
Definition edge.h:70
void setVertices(VertexType *v0, VertexType *v1)
Sets the vertices of the edge.
Definition edge.h:78
The Element class.
Definition element.h:75
A concept that checks whether a class has (inherits from) an Edge class.
Definition edge.h:119
Definition edge_components.h:71
Definition edge_components.h:91
A simple structure that wraps a list of variadic templates, without instantiating anything....
Definition type_wrapper.h:39