33#include <NDEVR/Geometry.h>
Stores an angle in an optimized internal format with support for efficient trigonometric operations.
The equivelent of std::vector but with a bit more control.
Class to easily restore calculated data in a Geometry after a location altering process.
A core class within the model hierarchy containing vertex-based data (Usually 3D data) within a set c...
A light-weight base class for Log that allows processes to update, without the need for additional in...
A light-weight wrapper that will be a no-op if there is not a valid log reference,...
Forward declaration of InfoPipe for progress/logging support.
static void NormalSmoothing(Geometry &geo, NormalMode normal_mode, const Angle< fltp08 > &max_smooth_angle, const void *lock, LogPtr log)
Recalculates and smooths the surface normals of a geometry.
static void CotangentLaplacianSmoothing(Geometry &geo, const Geometry::SmoothingParameters &smoothing_parameters)
Applies cotangent-weighted Laplacian smoothing to a geometry mesh.
static void LaplacianSmoothing(Geometry &geo, const Geometry::SmoothingParameters &smoothing_parameters)
Applies Laplacian smoothing to a geometry mesh.
static void ClearSmoothing(Geometry &geo, const Geometry::SmoothingParameters &smoothing_parameters)
Removes any previously applied smoothing from a geometry, restoring original vertex positions.
static void RestoreGeo(Geometry &geo, const Buffer< Vector< 3, fltp08 > > &verts, GeometryPositionModRestore &restore, const void *lock, LogPtr log)
Restores geometry vertex positions and associated cached data after a smoothing operation.
A fixed-size array with N dimensions used as the basis for geometric and mathematical types.
The primary namespace for the NDEVR SDK.
NormalMode
Describes how surface normals are computed or stored for a Geometry object.
@ normal_mode
Normal calculation mode (smooth, no normal, or hard).
Parameters controlling mesh smoothing operations.