int main() { // First, some point examples tracktable::TrajectoryPoint tp1(100.0,40); tracktable::TrajectoryPoint tp2(105.0,45); // This works, but... boost::geometry::distance< tracktable::PointBaseLonLat<double>, tracktable::PointBaseLonLat<double> >(tp1,tp2); // This doesn't. Probably a boost geometry registration issue... boost::geometry::distance(tp1,tp2); // Now some point/track distance examples tracktable::TrajectoryPoint tp3(110.0,30); tracktable::TrajectoryPoint tp4(115.0,35); tracktable::TrajectoryPoint tp5(120.0,40); tracktable::TrajectoryPoint tp6(125.0,45); tracktable::PointBaseLonLat<double> ll3(110.0,30); tracktable::PointBaseLonLat<double> ll4(115.0,35); tracktable::PointBaseLonLat<double> ll5(120.0,40); tracktable::PointBaseLonLat<double> ll6(125.0,45); tracktable::Trajectory<tracktable::TrajectoryPoint> tp_traj; tracktable::Trajectory<tracktable::PointBaseLonLat<double> > ll_traj; tp_traj.add_point(tp3); tp_traj.add_point(tp4); tp_traj.add_point(tp5); tp_traj.add_point(tp6); ll_traj.add_point(ll3); ll_traj.add_point(ll4); ll_traj.add_point(ll5); ll_traj.add_point(ll6); // This doesn't work, but probably would if the linestring was registered boost::geometry::distance(ll_traj,ll3); // This doesn't work and needs to linestring and point registered boost::geometry::distance(tp_traj,tp3); // Now some math examples // This doesn't work... boost::geometry::multiply_value(tp3,0.5); // ...but this does. Again, probably a registration issue boost::geometry::multiply_value(ll3,0.5); return 0; }
inline void init_tp(){ sbi(DDRB, 1); //LED sbi(DDRC, 3); //TP6 tpl(OFF); tp6(LOW); }