2026-07-22 18:01:26 +02:00
|
|
|
//SPDX-License-Identifier: LGPL-3.0-only
|
|
|
|
|
//SPDX-FileCopyrightText: Copyright (C) 2026 Catcrafts®
|
2025-05-05 02:01:44 +02:00
|
|
|
|
2026-02-11 02:52:03 +01:00
|
|
|
export module Crafter.Math:Basic;
|
2026-01-29 20:19:20 +01:00
|
|
|
import std;
|
2026-03-31 14:22:18 +02:00
|
|
|
import :VectorF32;
|
2025-05-05 02:01:44 +02:00
|
|
|
|
|
|
|
|
namespace Crafter {
|
2026-02-11 02:52:03 +01:00
|
|
|
template<typename T>
|
|
|
|
|
constexpr T ToRadian(T degrees) {
|
|
|
|
|
return degrees * (std::numbers::pi / 180);
|
|
|
|
|
}
|
2026-03-22 20:53:17 +01:00
|
|
|
|
2026-05-18 20:33:47 +02:00
|
|
|
#if (defined(__x86_64) && !defined(__AVX512FP16__)) || defined(__riscv_vector) || !defined(__FLT16_MAX__)
|
2026-03-23 21:42:40 +01:00
|
|
|
export template <std::uint32_t Len, std::uint32_t Packing>
|
2026-03-25 00:42:04 +01:00
|
|
|
using VectorF16 = VectorF32<Len, Packing>;
|
|
|
|
|
#endif
|
2025-05-05 05:14:39 +02:00
|
|
|
}
|