4#include <marenv/seafloor/BathymetryField.h>
5#include <marenv/seafloor/BathymetryWavesSpec.h>
10namespace marenv::seafloor
68 std::shared_ptr<BathymetryWavesSpec>
GetSpec() {
return m_spec; }
115 Status ComputeRayIntersection(
const double origin[3],
const double direction[3],
double& distanceOut,
double maxSearchDistance = 100,
double startSearchDistance = -1,
double stepSize = 1.0,
double convergenceTolerance = 0.01)
override;
120 std::shared_ptr<BathymetryWavesSpec> m_spec;
129 double EstimateDistanceToSeafloor(
const double origin[3],
const double direction[3]);
Definition BathymetryField.h:24
Definition BathymetryWaves.h:24
~BathymetryWaves() override=default
Default destructor.
Status GetDepth(const double pos[2], double &depthOut) override
Status GetSeabedSigma(const double pos[3], double &sigmaOut) override
Status ComputeRayIntersection(const double origin[3], const double direction[3], double &distanceOut, double maxSearchDistance=100, double startSearchDistance=-1, double stepSize=1.0, double convergenceTolerance=0.01) override
Status GetSeabedRho(const double pos[3], double &rhoOut) override
Status ComputeSurfaceUnitNormal(const double pos[2], double unitNormalOut[3]) override
Status GetSeabedTau(const double pos[3], double &tauOut) override
std::shared_ptr< BathymetryWavesSpec > GetSpec()
Definition BathymetryWaves.h:68
BathymetryWaves(double averageDepth, int numComponents, double sumAmplitudes, double minWavelength, double maxWavelength, uint32_t seed)
Status
Definition marenv.h:40