PhysicsBasedAnimationToolkit 0.0.10
Cross-platform C++20 library of algorithms and data structures commonly used in computer graphics research on physically-based simulation.
Loading...
Searching...
No Matches
Morton.cuh
1#ifndef PBAT_GPU_IMPL_GEOMETRY_MORTON_H
2#define PBAT_GPU_IMPL_GEOMETRY_MORTON_H
3
4#include "Aabb.cuh"
6#include "pbat/gpu/Aliases.h"
7#include "pbat/gpu/impl/common/Buffer.cuh"
8#include "pbat/math/linalg/mini/Matrix.h"
9
10namespace pbat {
11namespace gpu {
12namespace impl {
13namespace geometry {
14
15class Morton
16{
17 public:
18 using Bound = pbat::math::linalg::mini::SVector<GpuScalar, 3>;
20
21 Morton(std::size_t n);
22
23 void Encode(Aabb<3> const& aabbs, Bound const& wmin, Bound const& wmax);
24
26};
27
28} // namespace geometry
29} // namespace impl
30} // namespace gpu
31} // namespace pbat
32
33#endif // PBAT_GPU_IMPL_GEOMETRY_MORTON_H
This file contains functions to compute Morton codes.
Definition Buffer.cuh:21
Type aliases for GPU code.
std::uint32_t MortonCodeType
Type used to represent Morton codes.
Definition Morton.h:24
GPU algorithm implementations.
Definition VertexTriangleMixedCcdDcd.h:21
GPU related public functionality.
Definition Buffer.cu:16
The main namespace of the library.
Definition Aliases.h:15
Definition Aabb.cuh:24