Classes | Namespaces | Functions
test_fcl_utility.h File Reference
#include <array>
#include <fstream>
#include <iostream>
#include "fcl/common/unused.h"
#include "fcl/math/constants.h"
#include "fcl/math/triangle.h"
#include "fcl/geometry/shape/box.h"
#include "fcl/geometry/shape/sphere.h"
#include "fcl/geometry/shape/cylinder.h"
#include "fcl/geometry/bvh/BVH_model.h"
#include "fcl/geometry/octree/octree.h"
#include "fcl/narrowphase/collision.h"
#include "fcl/narrowphase/distance.h"
#include "fcl/narrowphase/collision_object.h"
#include "fcl/narrowphase/collision_result.h"
#include "fcl/narrowphase/continuous_collision_object.h"
#include "fcl/narrowphase/continuous_collision_request.h"
#include "fcl/narrowphase/continuous_collision_result.h"
#include <sys/time.h>
Include dependency graph for test_fcl_utility.h:
This graph shows which files directly or indirectly include this file:

Go to the source code of this file.

Classes

struct  fcl::test::DistanceRes< S >
 Structure for minimum distance between two meshes and the corresponding nearest point pair. More...
 
class  fcl::test::Timer
 
struct  fcl::test::TStruct
 

Namespaces

 fcl
 Main namespace.
 
 fcl::test
 

Functions

template<typename S >
void fcl::test::eulerToMatrix (S a, S b, S c, Matrix3< S > &R)
 
template<typename S >
void fcl::test::generateEnvironments (std::vector< CollisionObject< S > * > &env, S env_scale, std::size_t n)
 Generate environment with 3 * n objects: n boxes, n spheres and n cylinders. More...
 
template<typename S >
void fcl::test::generateEnvironmentsMesh (std::vector< CollisionObject< S > * > &env, S env_scale, std::size_t n)
 Generate environment with 3 * n objects, but all in meshes. More...
 
template<typename S >
void fcl::test::generateRandomTransform (const std::array< S, 6 > &extents, Transform3< S > &transform)
 
template<typename S >
void fcl::test::generateRandomTransform (S extents[6], Transform3< S > &transform)
 Generate one random transform whose translation is constrained by extents and rotation without constraints. The translation is (x, y, z), and extents[0] <= x <= extents[3], extents[1] <= y <= extents[4], extents[2] <= z <= extents[5]. More...
 
template<typename S >
void fcl::test::generateRandomTransforms (S extents[6], aligned_vector< Transform3< S >> &transforms, std::size_t n)
 Generate n random transforms whose translations are constrained by extents. More...
 
template<typename S >
void fcl::test::generateRandomTransforms (S extents[6], S delta_trans[3], S delta_rot, aligned_vector< Transform3< S >> &transforms, aligned_vector< Transform3< S >> &transforms2, std::size_t n)
 Generate n random transforms whose translations are constrained by extents. Also generate another transforms2 which have additional random translation & rotation to the transforms generated. More...
 
template<typename S >
void fcl::test::generateRandomTransforms_ccd (S extents[6], aligned_vector< Transform3< S >> &transforms, aligned_vector< Transform3< S >> &transforms2, S delta_trans[3], S delta_rot, std::size_t n, const std::vector< Vector3< S >> &vertices1, const std::vector< Triangle > &triangles1, const std::vector< Vector3< S >> &vertices2, const std::vector< Triangle > &triangles2)
 Generate n random tranforms and transform2 with addtional random translation/rotation. The transforms and transform2 are used as initial and goal configurations for the first mesh. The second mesh is in I. This is used for continuous collision detection checking. More...
 
std::string fcl::test::getGJKSolverName (GJKSolverType solver_type)
 
std::string fcl::test::getNodeTypeName (NODE_TYPE node_type)
 
template<typename S >
void fcl::test::loadOBJFile (const char *filename, std::vector< Vector3< S >> &points, std::vector< Triangle > &triangles)
 Load an obj mesh file. More...
 
template<typename S >
fcl::test::rand_interval (S rmin, S rmax)
 
template<typename S >
void fcl::test::saveOBJFile (const char *filename, std::vector< Vector3< S >> &points, std::vector< Triangle > &triangles)
 


fcl
Author(s):
autogenerated on Tue Dec 5 2023 03:40:50