5#include <CesiumGltf/Box.h>
6#include <CesiumGltf/Capsule.h>
7#include <CesiumGltf/Cylinder.h>
8#include <CesiumGltf/Library.h>
9#include <CesiumGltf/NamedObject.h>
10#include <CesiumGltf/Sphere.h>
23 static constexpr const char* TypeName =
"Shape";
31 inline static const std::string sphere =
"sphere";
35 inline static const std::string box =
"box";
40 inline static const std::string capsule =
"capsule";
45 inline static const std::string cylinder =
"cylinder";
54 std::string type = Type::sphere;
59 std::optional<CesiumGltf::Sphere>
sphere;
64 std::optional<CesiumGltf::Box>
box;
69 std::optional<CesiumGltf::Capsule>
capsule;
84 accum += int64_t(
sizeof(
Shape));
99 accum += this->cylinder->getSizeBytes() -
Classes for working with glTF models.
Parameters describing a box shape.
Parameters describing a capsule shape.
Parameters describing a cylinder shape.
The base class for objects in a glTF that have a name.
int64_t getSizeBytes() const
Calculates the size in bytes of this object, including the contents of all collections,...
Known values for Specifies the shape type.
Parameters describing an implicit shape.
std::optional< CesiumGltf::Cylinder > cylinder
A set of parameter values that are used to define a cylinder shape.
int64_t getSizeBytes() const
Calculates the size in bytes of this object, including the contents of all collections,...
std::optional< CesiumGltf::Sphere > sphere
A set of parameter values that are used to define a sphere shape.
std::optional< CesiumGltf::Box > box
A set of parameter values that are used to define a box shape.
std::optional< CesiumGltf::Capsule > capsule
A set of parameter values that are used to define a capsule shape.
Parameters describing a sphere shape.