+ //! \todo this isn't quite right; we should handle looped blines identically no matter where the loop happens
+ //! and we currently don't. this at least makes it a lot better than it was before
+ next_tangent_scalar=linear_interpolation(blp_next_off.get_origin()-blp_here_on.get_origin(), 1.0f, amount);
+ next_scale=next_tangent_scalar;
+
+ //blp_here_now.set_vertex(linear_interpolation(blp_here_off.get_vertex(), blp_here_on.get_vertex(), amount));
+ // if(false)
+ // {
+ // // My first try
+ // Point ref_point_begin(((*begin_iter->value_node)(off_time).get(prev).get_vertex() +
+ // (*end_iter->value_node)(off_time).get(prev).get_vertex()) * 0.5);
+ // Point ref_point_end(((*begin_iter->value_node)(on_time).get(prev).get_vertex() +
+ // (*end_iter->value_node)(on_time).get(prev).get_vertex()) * 0.5);
+ // Point ref_point_now(((*begin_iter->value_node)(t).get(prev).get_vertex() +
+ // (*end_iter->value_node)(t).get(prev).get_vertex()) * 0.5);
+ // Point ref_point_linear(linear_interpolation(ref_point_begin, ref_point_end, amount));
+ //
+ // blp_here_now.set_vertex(linear_interpolation(blp_here_off.get_vertex(), blp_here_on.get_vertex(), amount) +
+ // (ref_point_now-ref_point_linear));
+ // blp_here_now.set_tangent1(linear_interpolation(blp_here_off.get_tangent1(), blp_here_on.get_tangent1(), amount));
+ // blp_here_now.set_split_tangent_flag(blp_here_on.get_split_tangent_flag());
+ // if(blp_here_now.get_split_tangent_flag())
+ // blp_here_now.set_tangent2(linear_interpolation(blp_here_off.get_tangent2(), blp_here_on.get_tangent2(), amount));
+ // }
+ // else