Classes | Functions
fcl::test Namespace Reference

Classes

struct  DistanceRes
 Structure for minimum distance between two meshes and the corresponding nearest point pair. More...
 
class  Timer
 
struct  TStruct
 

Functions

template<typename S >
void eulerToMatrix (S a, S b, S c, Matrix3< S > &R)
 
template<typename S >
void 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 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 generateRandomTransform (const std::array< S, 6 > &extents, Transform3< S > &transform)
 
template<typename S >
void 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 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 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 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 getGJKSolverName (GJKSolverType solver_type)
 
std::string getNodeTypeName (NODE_TYPE node_type)
 
template<typename S >
void loadOBJFile (const char *filename, std::vector< Vector3< S >> &points, std::vector< Triangle > &triangles)
 Load an obj mesh file. More...
 
template<typename S >
rand_interval (S rmin, S rmax)
 
template<typename S >
void saveOBJFile (const char *filename, std::vector< Vector3< S >> &points, std::vector< Triangle > &triangles)
 

Function Documentation

◆ eulerToMatrix()

template<typename S >
void fcl::test::eulerToMatrix ( a,
b,
c,
Matrix3< S > &  R 
)

Definition at line 313 of file test_fcl_utility.h.

◆ generateEnvironments()

template<typename S >
void fcl::test::generateEnvironments ( std::vector< CollisionObject< S > * > &  env,
env_scale,
std::size_t  n 
)

Generate environment with 3 * n objects: n boxes, n spheres and n cylinders.

Definition at line 476 of file test_fcl_utility.h.

◆ generateEnvironmentsMesh()

template<typename S >
void fcl::test::generateEnvironmentsMesh ( std::vector< CollisionObject< S > * > &  env,
env_scale,
std::size_t  n 
)

Generate environment with 3 * n objects, but all in meshes.

Definition at line 505 of file test_fcl_utility.h.

◆ generateRandomTransform() [1/2]

template<typename S >
void fcl::test::generateRandomTransform ( const std::array< S, 6 > &  extents,
Transform3< S > &  transform 
)

Definition at line 329 of file test_fcl_utility.h.

◆ generateRandomTransform() [2/2]

template<typename S >
void fcl::test::generateRandomTransform ( 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].

◆ generateRandomTransforms() [1/2]

template<typename S >
void fcl::test::generateRandomTransforms ( extents[6],
aligned_vector< Transform3< S >> &  transforms,
std::size_t  n 
)

Generate n random transforms whose translations are constrained by extents.

Definition at line 349 of file test_fcl_utility.h.

◆ generateRandomTransforms() [2/2]

template<typename S >
void fcl::test::generateRandomTransforms ( extents[6],
delta_trans[3],
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.

Definition at line 376 of file test_fcl_utility.h.

◆ generateRandomTransforms_ccd()

template<typename S >
void fcl::test::generateRandomTransforms_ccd ( extents[6],
aligned_vector< Transform3< S >> &  transforms,
aligned_vector< Transform3< S >> &  transforms2,
delta_trans[3],
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.

Definition at line 421 of file test_fcl_utility.h.

◆ getGJKSolverName()

std::string fcl::test::getGJKSolverName ( GJKSolverType  solver_type)

Definition at line 182 of file test_fcl_utility.cpp.

◆ getNodeTypeName()

std::string fcl::test::getNodeTypeName ( NODE_TYPE  node_type)

Definition at line 135 of file test_fcl_utility.cpp.

◆ loadOBJFile()

template<typename S >
void fcl::test::loadOBJFile ( const char *  filename,
std::vector< Vector3< S >> &  points,
std::vector< Triangle > &  triangles 
)

Load an obj mesh file.

Definition at line 194 of file test_fcl_utility.h.

◆ rand_interval()

template<typename S >
S fcl::test::rand_interval ( rmin,
rmax 
)

Definition at line 305 of file test_fcl_utility.h.

◆ saveOBJFile()

template<typename S >
void fcl::test::saveOBJFile ( const char *  filename,
std::vector< Vector3< S >> &  points,
std::vector< Triangle > &  triangles 
)

Definition at line 281 of file test_fcl_utility.h.



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