63 typedef memory::shared_ptr<gsPeriodicOverlap<T> > uPtr;
82 const gsOptionList &list = gsPeriodicParametrization<T>::defaultOptions())
83 : gsPeriodicParametrization<T>(mesh, verticesV0, paramsV0, verticesV1, paramsV1, list),
101 void calculate(
const size_t paraMethod);
106 return this->m_mesh.getVertexIndex(m_overlapHEM.getVertexUnsorted(vertexId));
123 void constructTwinsBetween(
size_t& currentNrAllVertices,
124 std::list<size_t> vertexIndices,
125 size_t from,
size_t to,
bool rightHandSide);
132 std::list<size_t> vertexIndices,
137 return constructTwinsBetween(currentNrAllVertices,
139 m_overlapHEM.findVertex(from),
140 m_overlapHEM.findVertex(to),
145 void constructTwins();
148 void constructAndSolveEquationSystem(
const Neighbourhood &neighbourhood,
159 void updateLambdasWithTwins(std::vector<T>& lambdas,
160 size_t vertexId)
const;
181 gsMesh<T> createExtendedFlatMesh(
const std::vector<size_t>& right,
182 const std::vector<size_t>& left)
const;
187 std::vector<std::pair<size_t, size_t> >
m_twins;
198 #ifndef GISMO_BUILD_LIB
199 #include GISMO_HPP_HEADER(gsPeriodicOverlap.hpp)
const gsHalfEdgeMesh< T > m_overlapHEM
The mesh of the overlap, cf. the introduction to the class.
Definition: gsPeriodicOverlap.h:193
void constructTwinsBetween(size_t ¤tNrAllVertices, std::list< size_t > vertexIndices, gsVertexHandle from, gsVertexHandle to, bool rightHandSide)
Definition: gsPeriodicOverlap.h:131
Class that maintains neighbourhood information of triangle mesh. Represents the neighbourhood propert...
Definition: gsParametrization.h:285
std::vector< std::pair< size_t, size_t > > m_twins
Definition: gsPeriodicOverlap.h:187
gsPeriodicOverlap(const gsMesh< T > &mesh, const gsMatrix< T > &verticesV0, const gsMatrix< T > ¶msV0, const gsMatrix< T > &verticesV1, const gsMatrix< T > ¶msV1, const gsMesh< T > &overlap, const gsOptionList &list=gsPeriodicParametrization< T >::defaultOptions())
Definition: gsPeriodicOverlap.h:76
size_t findTwin(size_t vertexId) const
Finds the twin of the vertex nr. vertexId in the mesh.
Definition: gsPeriodicOverlap.h:104
Class Representing a triangle mesh with 3D vertices.
Definition: gsMesh.h:31
Provides a list of labeled parameters/options that can be set and accessed easily.
Definition: gsPeriodicOverlap.h:57
Class which holds a list of parameters/options, and provides easy access to them. ...
Definition: gsOptionList.h:32
Abstract class with the functionality common to gsPeriodicStitch and gsPeriodicOverlap.
gsHalfEdgeMesh is a gsMesh implementation that handles Halfedges
Definition: gsHalfEdgeMesh.h:46
gsVertex class that represents a 3D vertex for a gsMesh.
Definition: gsVertex.h:26