use k::nalgebra as na;
use ncollide3d::shape::Compound;
use openrr_planner::FromUrdf;
fn main() {
let planner = openrr_planner::JointPathPlannerBuilder::from_urdf_file("sample.urdf")
.expect("failed to create planner from urdf file")
.collision_check_margin(0.01)
.finalize();
let solver = openrr_planner::JacobianIkSolver::default();
let solver = openrr_planner::RandomInitializeIKSolver::new(solver, 100);
let mut planner = openrr_planner::JointPathPlannerWithIK::new(planner, solver);
let target_name = "l_tool_fixed";
let obstacles = Compound::from_urdf_file("obstacles.urdf").expect("obstacle file not found");
let mut ik_target_pose = na::Isometry3::from_parts(
na::Translation3::new(0.40, 0.20, 0.3),
na::UnitQuaternion::from_euler_angles(0.0, -0.1, 0.0),
);
let plan1 = planner
.plan_with_ik(target_name, &ik_target_pose, &obstacles)
.unwrap();
println!("plan1 = {:?}", plan1);
ik_target_pose.translation.vector[2] += 0.50;
let plan2 = planner
.plan_with_ik(target_name, &ik_target_pose, &obstacles)
.unwrap();
println!("plan2 = {:?}", plan2);
}