diff --git a/src/sampling/sampledSurface/distanceSurface/sampledDistanceSurface.C b/src/sampling/sampledSurface/distanceSurface/sampledDistanceSurface.C index 3d9e7a597bcf533a28a53d0f65fb7302093e8934..a9d3bf06c11fab0d45b2a5a462a8e903d4c91819 100644 --- a/src/sampling/sampledSurface/distanceSurface/sampledDistanceSurface.C +++ b/src/sampling/sampledSurface/distanceSurface/sampledDistanceSurface.C @@ -64,6 +64,30 @@ Foam::sampledDistanceSurface::sampledDistanceSurface {} +Foam::sampledDistanceSurface::sampledDistanceSurface +( + const word name, + const polyMesh& mesh, + const bool interpolate, + autoPtr<searchableSurface>&& surface, + const scalar distance, + const bool useSignedDistance +) +: + sampledSurface(name, mesh, interpolate), + distanceSurface + ( + mesh, + interpolate, + std::move(surface), + distance, + useSignedDistance + ), + average_(false), // pass as param? + needsUpdate_(true) +{} + + // * * * * * * * * * * * * * * * Member Functions * * * * * * * * * * * * * // bool Foam::sampledDistanceSurface::needsUpdate() const diff --git a/src/sampling/sampledSurface/distanceSurface/sampledDistanceSurface.H b/src/sampling/sampledSurface/distanceSurface/sampledDistanceSurface.H index 5477ad3595a6eca27ef5eb36b158b3d1581a5728..7e72c12ae27af104811096f3c3ff53fb2af0bd9e 100644 --- a/src/sampling/sampledSurface/distanceSurface/sampledDistanceSurface.H +++ b/src/sampling/sampledSurface/distanceSurface/sampledDistanceSurface.H @@ -141,6 +141,18 @@ public: ); + sampledDistanceSurface + ( + const word name, + const polyMesh& mesh, + const bool interpolate, + autoPtr<searchableSurface>&& surface, + const scalar distance, + const bool useSignedDistance + //const isoSurfaceParams& params = isoSurfaceParams() + ); + + //- Destructor virtual ~sampledDistanceSurface() = default; diff --git a/src/sampling/surface/distanceSurface/distanceSurface.C b/src/sampling/surface/distanceSurface/distanceSurface.C index 3d0f1f4d9b1f8ba38366ae42741c106b5d0a21ea..06b44dc5185d25ae97196be2dd90434ae1b61fb2 100644 --- a/src/sampling/surface/distanceSurface/distanceSurface.C +++ b/src/sampling/surface/distanceSurface/distanceSurface.C @@ -349,9 +349,10 @@ Foam::distanceSurface::distanceSurface const isoSurfaceParams& params ) : - mesh_(mesh), - geometryPtr_ + distanceSurface ( + mesh, + interpolate, searchableSurface::New ( surfaceType, @@ -365,8 +366,26 @@ Foam::distanceSurface::distanceSurface IOobject::NO_WRITE ), dictionary() - ) - ), + ), + distance, + useSignedDistance, + params + ) +{} + + +Foam::distanceSurface::distanceSurface +( + const polyMesh& mesh, + const bool interpolate, + autoPtr<searchableSurface>&& surface, + const scalar distance, + const bool useSignedDistance, + const isoSurfaceParams& params +) +: + mesh_(mesh), + geometryPtr_(surface), distance_(distance), withZeroDistance_(equal(distance_, 0)), withSignDistance_ diff --git a/src/sampling/surface/distanceSurface/distanceSurface.H b/src/sampling/surface/distanceSurface/distanceSurface.H index 184b24d8c31c6f7ce1d74678d25b34acd706519f..6a4c296932229545dc420a2245763dd4b889e280 100644 --- a/src/sampling/surface/distanceSurface/distanceSurface.H +++ b/src/sampling/surface/distanceSurface/distanceSurface.H @@ -326,6 +326,16 @@ public: const isoSurfaceParams& params = isoSurfaceParams() ); + distanceSurface + ( + const polyMesh& mesh, + const bool interpolate, + autoPtr<searchableSurface>&& surface, + const scalar distance, + const bool useSignedDistance, + const isoSurfaceParams& params = isoSurfaceParams() + ); + //- Destructor virtual ~distanceSurface() = default;