libalmath  2.8.7.4
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Friends Macros Groups Pages
Classes | Namespaces | Enumerations | Functions
gltf.h File Reference
#include <cstdint>
#include <limits>
#include <sstream>
#include <type_traits>
#include <boost/config.hpp>
#include <boost/lexical_cast.hpp>
#include <boost/optional.hpp>
#include <boost/archive/iterators/binary_from_base64.hpp>
#include <boost/archive/iterators/base64_from_binary.hpp>
#include <boost/archive/iterators/transform_width.hpp>
#include <boost/endian/buffers.hpp>
#include <boost/algorithm/string/join.hpp>
#include <boost/range/adaptor/transformed.hpp>
#include <almath/types/alposition2d.h>
#include <almath/types/alpose2d.h>
#include <Eigen/Geometry>

Go to the source code of this file.

Classes

struct  AL::Math::glTF::data_type_traits< element >
 
struct  AL::Math::glTF::data_type_traits< DataType::SCALAR >
 
struct  AL::Math::glTF::data_type_traits< DataType::VEC3 >
 
struct  AL::Math::glTF::data_type_traits< DataType::VEC4 >
 
struct  AL::Math::glTF::data_type_traits< DataType::MAT2 >
 
class  AL::Math::glTF::BufferAccessor< T, N >
 
class  AL::Math::glTF::AsJSONArray< T, IT >
 
struct  AL::Math::glTF::Buffer
 
struct  AL::Math::glTF::BufferView
 
struct  AL::Math::glTF::Accessor< T, DTYPE >
 
struct  AL::Math::glTF::Mesh
 
struct  AL::Math::glTF::rst
 
struct  AL::Math::glTF::Node
 
struct  AL::Math::glTF::Scene
 
struct  AL::Math::glTF::Sampler
 
struct  AL::Math::glTF::Target
 
struct  AL::Math::glTF::Channel
 
struct  AL::Math::glTF::Animation
 
struct  AL::Math::glTF::Animation::Indexes
 
class  AL::Math::glTF::Document
 

Namespaces

 AL
 
 AL::Math
 
 AL::Math::glTF
 

Enumerations

enum  AL::Math::glTF::ComponentType {
  AL::Math::glTF::ComponentType::GL_BYTE = 5120, AL::Math::glTF::ComponentType::GL_UNSIGNED_BYTE = 5121, AL::Math::glTF::ComponentType::GL_SHORT = 5122, AL::Math::glTF::ComponentType::GL_UNSIGNED_SHORT = 5123,
  AL::Math::glTF::ComponentType::GL_UNSIGNED_INT = 5125, AL::Math::glTF::ComponentType::GL_FLOAT = 5126
}
 
enum  AL::Math::glTF::DataType {
  AL::Math::glTF::DataType::SCALAR, AL::Math::glTF::DataType::VEC3, AL::Math::glTF::DataType::VEC4, AL::Math::glTF::DataType::MAT2,
  AL::Math::glTF::DataType::MAT3, AL::Math::glTF::DataType::MAT4
}
 
enum  AL::Math::glTF::Mode { AL::Math::glTF::Mode::LINE_STRIP = 3 }
 
enum  AL::Math::glTF::Interpolation { AL::Math::glTF::Interpolation::LINEAR }
 

Functions

void AL::Math::glTF::buffer_put (std::ostream &os, char val)
 
void AL::Math::glTF::buffer_put (std::ostream &os, unsigned char val)
 
void AL::Math::glTF::buffer_put (std::ostream &os, std::int16_t val)
 
void AL::Math::glTF::buffer_put (std::ostream &os, std::uint16_t val)
 
void AL::Math::glTF::buffer_put (std::ostream &os, std::uint32_t val)
 
void AL::Math::glTF::buffer_put (std::ostream &os, float val)
 
std::string AL::Math::glTF::encode64 (const std::string &val)
 
template<typename T >
std::string AL::Math::glTF::toJSON (T val)
 
template<typename T , typename IT >
AsJSONArray< T, IT > AL::Math::glTF::asJSONArray (IT b, IT e)
 
template<typename T , typename R , typename IT = typename R::const_iterator>
AsJSONArray< T, IT > AL::Math::glTF::asJSONArray (const R &range)
 
Buffer AL::Math::glTF::make_base64_Buffer (const std::string &binbuffer)
 
std::ostream & AL::Math::glTF::operator<< (std::ostream &os, const Buffer &v)
 
std::ostream & AL::Math::glTF::operator<< (std::ostream &os, const BufferView &v)
 
template<typename T , DataType _type>
std::ostream & AL::Math::glTF::operator<< (std::ostream &os, const Accessor< T, _type > &v)
 
std::ostream & AL::Math::glTF::operator<< (std::ostream &os, const Mesh &v)
 
std::ostream & AL::Math::glTF::operator<< (std::ostream &os, const Node &v)
 
std::ostream & AL::Math::glTF::operator<< (std::ostream &os, const Scene &v)
 
std::string AL::Math::glTF::to_string (Interpolation val)
 
std::ostream & AL::Math::glTF::operator<< (std::ostream &os, const Sampler &v)
 
std::string AL::Math::glTF::to_string (Target::Path path)
 
std::ostream & AL::Math::glTF::operator<< (std::ostream &os, const Target &v)
 
std::ostream & AL::Math::glTF::operator<< (std::ostream &os, const Channel &v)
 
std::ostream & AL::Math::glTF::operator<< (std::ostream &os, const Animation &v)
 
size_t AL::Math::glTF::add_base64_bva (glTF::Document &doc, const std::vector< float > &vecs)
 
size_t AL::Math::glTF::add_base64_bva (glTF::Document &doc, const std::vector< std::array< float, 3 >> &vecs)
 
size_t AL::Math::glTF::add_path (glTF::Document &doc, const std::vector< std::array< float, 3 >> &verts, boost::optional< std::string > node_name)
 
size_t AL::Math::glTF::add_path (glTF::Document &doc, const std::vector< Math::Position2D > &path, boost::optional< std::string > node_name)
 
void AL::Math::glTF::animate (glTF::Document &doc, size_t node, size_t animation, const std::vector< std::pair< float, Math::Pose2D >> &traj)