MayaFlux 1.0.0
Digital-First Multimedia Processing Framework
Loading...
Searching...
No Matches

◆ refit()

void MayaFlux::Nexus::Hull::refit ( )

Read the buffer's geometry again and take its bounds.

For a deforming mesh or a drifting cloud. Blocks for a ComputeMeshBuffer or a buffer a GpuFieldOperator drives, so call it off the graphics thread. The previous bounds are kept if nothing can be read.

Definition at line 65 of file Hull.cpp.

66{
67 if (!m_buf) {
68 return;
69 }
70
71 if (const auto bounds = read_bounds(m_buf, m_collection)) {
73 } else {
75 "Hull::refit kept the previous bounds: no geometry could be read from the buffer");
76 }
77}
#define MF_WARN(comp, ctx,...)
const std::optional< Kinesis::AABB3D > & bounds() const
The box, if set.
Definition Expanse.hpp:153
std::optional< uint32_t > m_collection
Definition Hull.hpp:62
std::optional< Kinesis::AABB3D > m_local
Definition Hull.hpp:63
std::shared_ptr< Buffers::VKBuffer > m_buf
Definition Hull.hpp:61
@ Runtime
General runtime operations (default fallback)
@ Nexus
Spatial indexing and scheduling for user-defined behaviour.
std::optional< Kinesis::AABB3D > read_bounds(const std::shared_ptr< Buffers::VKBuffer > &buf, const std::optional< uint32_t > &collection)
Bounds of a buffer's geometry in its own stored coordinates.
Definition Survey.cpp:256

References MayaFlux::Nexus::Expanse::bounds(), m_buf, m_collection, m_local, MF_WARN, MayaFlux::Journal::Nexus, MayaFlux::Nexus::read_bounds(), and MayaFlux::Journal::Runtime.

+ Here is the call graph for this function: