About
A maxon::VolumeInterface is used to store and handle volume data. It is typically obtained from a VolumeObject, see VolumeObject Manual.
VolumeInterface
Volume information can be stored in a file:
if (volumeObj == nullptr)
doc->InsertObject(volumeObj,
nullptr,
nullptr);
Definition: lib_volumeobject.h:41
void SetVolume(const maxon::VolumeInterface *volumeObj)
static VolumeObject * Alloc()
Definition: lib_volumeobject.h:53
static MAXON_METHOD Result< Volume > CreateFromFile(const Url &url, Float scale, Int gridIndex)
Int64 Int
signed 32/64 bit int, size depends on the platform
Definition: apibase.h:188
#define MAXON_SOURCE_LOCATION
Definition: memoryallocationbase.h:67
const char * doc
Definition: pyerrors.h:226
#define iferr_return
Definition: resultbase.h:1519
The grid settings are accessed with:
const maxon::Volume volume = volumeObject->GetVolume();
if (volume.HasGrid())
{
const GRIDCLASS gridClass = volume.GetGridClass();
}
Definition: string.h:1235
#define DiagnosticOutput(formatString,...)
Definition: debugdiagnostics.h:176
GRIDCLASS
Volume Classes.
Definition: ge_prepass.h:1898
Iterator
The data stored in a volume is accessed with the maxon::GridIteratorInterface iterator:
const maxon::Volume volume = volumeObject->GetVolume();
for (; iterator.IsNotAtEnd(); iterator.StepNext())
{
}
PyObject * value
Definition: abstract.h:715
Definition: volumeiterators.h:28
void Py_ssize_t * pos
Definition: dictobject.h:50
for(i=0;i< length;i++)
Definition: unicodeobject.h:61
maxon::Float32 Float32
Definition: ge_sys_math.h:68
static auto Create(ARGS &&... args)
Definition: apibase.h:2773
A vector consisting of three components X, Y and Z.
Definition: vec.h:21
Accessor
The grid accessor can be used to both retrieve and set the volume data:
Volume data is accessed with:
if (volumeObj == nullptr)
doc->InsertObject(volumeObj,
nullptr,
nullptr);
volume.SetGridName("Example Grid"_s);
const
Vector scaleFactor { 10.0 };
const
Float scale = 100.0;
const
Float scaleY = 10.0;
while (offset < 50.0)
{
offset = offset + 0.01;
}
Definition: volumeaccessors.h:24
FOG
Definition: ge_prepass.h:2
maxon::Float64 Float64
Definition: ge_sys_math.h:67
maxon::Float Float
Definition: ge_sys_math.h:66
int32_t Int32
32 bit signed integer datatype.
Definition: apibase.h:176
MAXON_ATTRIBUTE_FORCE_INLINE void SinCos(Float32 val, Float32 &sn, Float32 &cs)
Calculates both sine and cosine of a value.
Definition: apibasemath.h:486
The maxon namespace contains all declarations of the MAXON API.
Definition: autoweight.h:14
VOLUMESAMPLER
Definition: volumeaccessors.h:16
Further Reading