#include "geometric_shapes/mesh_operations.h"
#include "geometric_shapes/shape_operations.h"
#include <cstdio>
#include <cmath>
#include <algorithm>
#include <set>
#include <float.h>
#include <console_bridge/console.h>
#include <resource_retriever/retriever.h>
#include <assimp/scene.h>
#include <assimp/Importer.hpp>
#include <assimp/postprocess.h>
#include <Eigen/Geometry>
#include <boost/math/constants/constants.hpp>
Go to the source code of this file.
Namespaces | |
namespace | shapes |
Definition of various shapes. No properties such as position are included. These are simply the descriptions and dimensions of shapes. | |
namespace | shapes::detail |
Functions | |
Mesh * | shapes::createMeshFromAsset (const aiScene *scene, const Eigen::Vector3d &scale, const std::string &assimp_hint=std::string()) |
Load a mesh from an assimp datastructure. | |
Mesh * | shapes::createMeshFromAsset (const aiScene *scene, const std::string &assimp_hint=std::string()) |
Load a mesh from an assimp datastructure. | |
Mesh * | shapes::createMeshFromBinary (const char *buffer, std::size_t size, const std::string &assimp_hint=std::string()) |
Load a mesh from a binary stream that contains a mesh that can be loaded by assimp. | |
Mesh * | shapes::createMeshFromBinary (const char *buffer, std::size_t size, const Eigen::Vector3d &scale, const std::string &assimp_hint=std::string()) |
Load a mesh from a resource that contains a mesh that can be loaded by assimp. | |
Mesh * | shapes::createMeshFromResource (const std::string &resource) |
Load a mesh from a resource that contains a mesh that can be loaded by assimp. | |
Mesh * | shapes::createMeshFromResource (const std::string &resource, const Eigen::Vector3d &scale) |
Load a mesh from a resource that contains a mesh that can be loaded by assimp. | |
Mesh * | shapes::createMeshFromShape (const Shape *shape) |
Construct a mesh from a primitive shape that is NOT already a mesh. This call allocates a new object. | |
Mesh * | shapes::createMeshFromShape (const Box &box) |
Construct a mesh from a box. | |
Mesh * | shapes::createMeshFromShape (const Sphere &sphere) |
Construct a mesh from a sphere. | |
Mesh * | shapes::createMeshFromShape (const Cylinder &cylinder) |
Construct a mesh from a cylinder. | |
Mesh * | shapes::createMeshFromShape (const Cone &cone) |
Construct a mesh from a cone. | |
Mesh * | shapes::createMeshFromVertices (const EigenSTL::vector_Vector3d &vertices, const std::vector< unsigned int > &triangles) |
Load a mesh from a set of vertices. Triangles are constructed using index values from the triangles vector. Triangle k has vertices at index values triangles[3k], triangles[3k+1], triangles[3k+2]. | |
Mesh * | shapes::createMeshFromVertices (const EigenSTL::vector_Vector3d &source) |
Load a mesh from a set of vertices. Every 3 vertices are considered a triangle. Repeating vertices are identified and the set of triangle indices is constructed. The normal at each triangle is also computed. | |
void | shapes::writeSTLBinary (const Mesh *mesh, std::vector< char > &buffer) |
Write the mesh to a buffer in STL format. |
unsigned int index |
Definition at line 78 of file mesh_operations.cpp.
double x |
Definition at line 77 of file mesh_operations.cpp.
double y |
Definition at line 77 of file mesh_operations.cpp.
double z |
Definition at line 77 of file mesh_operations.cpp.