Crate simple_fcl [] [src]

Library for using FCL to do collision and distance checks between meshes

Examples

let mut model_builder_a = simple_fcl::ModelBuilder::default();
model_builder_a.add_triangle(
    simple_fcl::Vec3f::new(10.0, 0.0, 0.0),
    simple_fcl::Vec3f::new(0.0, 0.0, 1.0),
    simple_fcl::Vec3f::new(0.0, 0.0, -1.0),
);
let model_a = model_builder_a.build();

let mut model_builder_b = simple_fcl::ModelBuilder::default();
model_builder_b.add_triangle(
    simple_fcl::Vec3f::new(5.0, -10.0, -10.0),
    simple_fcl::Vec3f::new(5.0, -10.0, 10.0),
    simple_fcl::Vec3f::new(5.0, 10.0, 0.0),
);
let model_b = model_builder_b.build();

let rotation_none = simple_fcl::Rotation3f::identity();
let translation_none = simple_fcl::Translation3f::new(0.0, 0.0, 0.0);

assert!(simple_fcl::collide(
    &model_a,
    &rotation_none,
    &translation_none,
    &model_b,
    &rotation_none,
    &translation_none,
));

assert!(simple_fcl::distance(
    &model_a,
    &rotation_none,
    &translation_none,
    &model_b,
    &rotation_none,
    &translation_none,
    &simple_fcl::DistanceOptions::default(),
).is_none());

Reexports

pub extern crate nalgebra;
pub extern crate simple_fcl_sys as raw;

Structs

DistanceOptions

Options for distance check.

DistancePoints

Structure that holds the distance between objects, together with the points between which this distance is achieved.

Model

Model created by model builder, used for collision and distance checks.

ModelBuilder

Builds models out of passed triangles.

Functions

collide

Perform collision check between two models transformed in space.

distance

Perform distance check between two models transformed in space.

distance_points

Determine closest points between two models transformed in space.

Type Definitions

Rotation3f

Holds data for rotations

Translation3f

Holds data for translations

Vec3f

Holds data for one point