#include "MRVectorTraits.h"
#include "MRMacros.h"
#include <cassert>
#include <optional>
Go to the source code of this file.
|
| #define | DETAIL_MR_UNIT_ENUMS(X) X(NoUnit) X(LengthUnit) X(AngleUnit) X(PixelSizeUnit) X(RatioUnit) X(TimeUnit) X(MovementSpeedUnit) X(AreaUnit) X(VolumeUnit) X(InvLengthUnit) |
| | A list of all unit enums, for internal use.
|
| |
| #define | DETAIL_MR_UNIT_VALUE_TYPES(X, ...) |
| |
| #define | MR_X(E) || std::same_as<T, E> |
| | ignore for bindings to prevent GCC14 error: undefined symbol: ZN2MR11getUnitInfoITkNS_8UnitEnumENS_8TimeUnitEEERKNS_8UnitInfoET
|
| |
| #define | MR_X(E) template <> [[nodiscard]] MRMESH_API MR_BIND_IGNORE const UnitInfo& getUnitInfo( E unit ); |
| | ignore for bindings to prevent GCC14 error: undefined symbol: ZN2MR11getUnitInfoITkNS_8UnitEnumENS_8TimeUnitEEERKNS_8UnitInfoET
|
| |
|
| enum class | MR::NoUnit { MR::NoUnit::_count
} |
| | A stub measurement unit representing no unit. More...
|
| |
| enum class | MR::LengthUnit {
MR::LengthUnit::microns
, MR::LengthUnit::millimeters
, MR::LengthUnit::centimeters
, MR::LengthUnit::meters
,
MR::LengthUnit::inches
, MR::LengthUnit::feet
, MR::LengthUnit::_count
} |
| | Measurement units of length. More...
|
| |
| enum class | MR::AngleUnit { MR::AngleUnit::radians
, MR::AngleUnit::degrees
, MR::AngleUnit::_count
} |
| | Measurement units of angle. More...
|
| |
| enum class | MR::PixelSizeUnit { MR::PixelSizeUnit::pixels
, MR::PixelSizeUnit::_count
} |
| | Measurement units of screen sizes. More...
|
| |
| enum class | MR::RatioUnit { MR::RatioUnit::factor
, MR::RatioUnit::percents
, MR::RatioUnit::_count
} |
| | Measurement units for factors / ratios. More...
|
| |
| enum class | MR::TimeUnit { MR::TimeUnit::seconds
, MR::TimeUnit::milliseconds
, MR::TimeUnit::_count
} |
| | Measurement units for time. More...
|
| |
| enum class | MR::MovementSpeedUnit {
MR::MovementSpeedUnit::micronsPerSecond
, MR::MovementSpeedUnit::millimetersPerSecond
, MR::MovementSpeedUnit::centimetersPerSecond
, MR::MovementSpeedUnit::metersPerSecond
,
MR::MovementSpeedUnit::inchesPerSecond
, MR::MovementSpeedUnit::feetPerSecond
, MR::MovementSpeedUnit::_count
} |
| | Measurement units for movement speed. More...
|
| |
| enum class | MR::AreaUnit {
MR::AreaUnit::microns2
, MR::AreaUnit::millimeters2
, MR::AreaUnit::centimeters2
, MR::AreaUnit::meters2
,
MR::AreaUnit::inches2
, MR::AreaUnit::feet2
, MR::AreaUnit::_count
} |
| | Measurement units for surface area. More...
|
| |
| enum class | MR::VolumeUnit {
MR::VolumeUnit::microns3
, MR::VolumeUnit::millimeters3
, MR::VolumeUnit::centimeters3
, MR::VolumeUnit::meters3
,
MR::VolumeUnit::inches3
, MR::VolumeUnit::feet3
, MR::VolumeUnit::_count
} |
| | Measurement units for body volume. More...
|
| |
| enum class | MR::InvLengthUnit {
MR::InvLengthUnit::inv_microns
, MR::InvLengthUnit::inv_millimeters
, MR::InvLengthUnit::inv_centimeters
, MR::InvLengthUnit::inv_meters
,
MR::InvLengthUnit::inv_inches
, MR::InvLengthUnit::inv_feet
, MR::InvLengthUnit::_count
} |
| | Measurement units for 1/length. More...
|
| |