Loading...
Searching...
No Matches
levelSet.cpp
192 m_kernel = std::unique_ptr<LevelSetKernel>(new LevelSetCartesianKernel(*cartesian, m_expectedFillIn));
194 m_kernel = std::unique_ptr<LevelSetKernel>(new LevelSetOctreeKernel(*octree, m_expectedFillIn));
196 m_kernel = std::unique_ptr<LevelSetKernel>(new LevelSetUnstructuredKernel(*unstructured, m_expectedFillIn));
217int LevelSet::addObject( std::unique_ptr<SurfUnstructured> &&segmentation, double angle, int id ) {
219 auto object = std::unique_ptr<LevelSetObject>(new LevelSetSegmentationObject(id, std::move(segmentation), angle));
234 auto object = std::unique_ptr<LevelSetObject>(new LevelSetSegmentationObject(id, segmentation, angle));
248int LevelSet::addObject( SurfUnstructured *segmentation, double angle, LevelSetSurfaceSmoothing surfaceSmoothing, int id ) {
250 auto object = std::unique_ptr<LevelSetObject>(new LevelSetSegmentationObject(id, segmentation, angle, surfaceSmoothing));
265 auto surfUnstructured = std::unique_ptr<SurfUnstructured>(dynamic_cast<SurfUnstructured *>(segmentation.release())) ;
270 auto object = std::unique_ptr<LevelSetObject>(new LevelSetSegmentationObject(id, std::move(surfUnstructured), angle));
290 auto object = std::unique_ptr<LevelSetObject>(new LevelSetSegmentationObject(id, surfUnstructured, angle));
304int LevelSet::addObject( SurfaceKernel *segmentation, double angle, LevelSetSurfaceSmoothing surfaceSmoothing, int id ) {
311 auto object = std::unique_ptr<LevelSetObject>(new LevelSetSegmentationObject(id, surfUnstructured, angle, surfaceSmoothing));
327 auto object = std::unique_ptr<LevelSetObject>(new LevelSetMaskObject(id, list, *m_kernel->getMesh()));
341int LevelSet::addObject( const std::vector<long> &list, long refInterface, bool invert, int id ) {
345 auto object = std::unique_ptr<LevelSetObject>(new LevelSetMaskObject(id, list, refInterface, invert, *m_kernel->getMesh()));
536 if( const LevelSetProxyBaseObject *parentProxyObject = dynamic_cast<const LevelSetProxyBaseObject *>(parentObject) ){
555 if( const LevelSetProxyBaseObject *parentProxyObject = dynamic_cast<const LevelSetProxyBaseObject *>(parentObject) ){
784 log::warning() << " It is not possible to update the levelset for a specific objects." << std::endl;
801void LevelSet::update( const std::vector<adaption::Info> &adaptionData, const std::vector<int> &ids ){
805 log::warning() << " It is not possible to update the levelset for a specific objects." << std::endl;
Implements LevelSetKernel for cartesian meshes.
Definition levelSetCartesianKernel.hpp:34
Implements the levelset around a set of cells or interfaces of the kernel.
Definition levelSetMaskObject.hpp:42
Interface class for all objects with respect to whom the levelset function may be computed.
Definition levelSetObject.hpp:55
void setNarrowBandSize(double size)
Definition levelSetObject.cpp:400
virtual void setKernel(LevelSetKernel *)
Definition levelSetObject.cpp:242
std::size_t getReferenceCount() const
Definition levelSetObject.cpp:221
void update(const std::vector< adaption::Info > &adaptionData)
Definition levelSetObject.cpp:337
Implements LevelSetKernel for octree meshes.
Definition levelSetOctreeKernel.hpp:34
Implements visitor pattern fo segmentated geometries.
Definition levelSetSegmentationObject.hpp:187
Implements LevelSetKernel for unstructured meshes.
Definition levelSetUnstructuredKernel.hpp:38
std::vector< LevelSetObject * > getObjectPtrs() const
Definition levelSet.cpp:586
void update(const std::vector< adaption::Info > &adaptionData)
Definition levelSet.cpp:113
LevelSet(LevelSetFillIn expectedFillIn=LevelSetFillIn::SPARSE)
Definition levelSet.cpp:83
void partition(const std::vector< adaption::Info > &)
Definition levelSet.cpp:817
int addObject(LevelSetBooleanOperation, int, int, int id=levelSetDefaults::OBJECT)
Definition levelSet.tpp:60
The SurfUnstructured class defines an unstructured surface triangulation.
Definition surfunstructured.hpp:36
The SurfaceKernel class provides an interface for defining surface patches.
Definition surface_kernel.hpp:35
The VolUnstructured class defines a dummy unstructured volume patch.
Definition volunstructured.hpp:35
The VolumeKernel class provides an interface for defining volume patches.
Definition volume_kernel.hpp:33
void write(std::ostream &stream, const std::vector< bool > &container)
Definition binaryUtils.cpp:41
void read(std::istream &stream, std::vector< bool > &container)
Definition binaryUtils.cpp:72
@ SIGN_PROPAGATION
Sign is propagated from the narrow band, no other data will be evaluated.
Definition levelSetCommon.hpp:157
