FhSim  3.1.0
Marine systems simulation
Loading...
Searching...
No Matches
FlatSeafloor.h
1#pragma once
3
4#include <marenv/seafloor/BathymetryField.h>
5
6namespace marenv::seafloor
7{
8
16{
17public:
19
20 FlatSeafloor() = default;
22
23 ~FlatSeafloor() override = default;
25
26 [[nodiscard]] marenv::Status GetDepth(const double pos[2], double& depthOut) override;
28
29 [[nodiscard]] marenv::Status ComputeSurfaceUnitNormal(const double pos[2], double unitNormalOut[3]) override;
34 [[nodiscard]] marenv::Status GetSoilState(const double pos[3], SoilState& soilOut) override;
47 [[nodiscard]] marenv::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;
48};
49
50} // namespace marenv::seafloor
Definition BathymetryField.h:25
Definition FlatSeafloor.h:16
~FlatSeafloor() override=default
Destructor.
marenv::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
marenv::Status GetDepth(const double pos[2], double &depthOut) override
marenv::Status GetSoilState(const double pos[3], SoilState &soilOut) override
FlatSeafloor()=default
Constructor.
marenv::Status ComputeSurfaceUnitNormal(const double pos[2], double unitNormalOut[3]) override
Status
Definition marenv.h:40
Definition SoilState.h:14