From e7fd6c8f30cd1161496831859da403eaa34fdf89 Mon Sep 17 00:00:00 2001 From: Campbell Barton Date: Tue, 19 Mar 2019 15:17:46 +1100 Subject: Cleanup: comment blocks --- intern/iksolver/extern/IK_solver.h | 40 +++++++++++++++++--------------------- 1 file changed, 18 insertions(+), 22 deletions(-) (limited to 'intern/iksolver') diff --git a/intern/iksolver/extern/IK_solver.h b/intern/iksolver/extern/IK_solver.h index a1d36c024a3..9af6cc6988f 100644 --- a/intern/iksolver/extern/IK_solver.h +++ b/intern/iksolver/extern/IK_solver.h @@ -24,35 +24,32 @@ /** - - * Copyright (C) 2001 NaN Technologies B.V. - * * \page IK - Blender inverse kinematics module. * * \section about About the IK module * - * This module allows you to create segments and form them into - * tree. You can then define a goal points that the end of a given + * This module allows you to create segments and form them into + * tree. You can then define a goal points that the end of a given * segment should attempt to reach - an inverse kinematic problem. * This module will then modify the segments in the tree in order * to get the as near as possible to the goal. This solver uses an * inverse jacobian method to find a solution. - * + * * \section issues Known issues with this IK solver. * * - There is currently no support for joint constraints in the * solver. This is within the realms of possibility - please ask * if this functionality is required. * - The solver is slow, inverse jacobian methods in general give - * 'smooth' solutions and the method is also very flexible, it - * does not rely on specific angle parameterization and can be - * extended to deal with different joint types and joint - * constraints. However it is not suitable for real time use. + * 'smooth' solutions and the method is also very flexible, it + * does not rely on specific angle parameterization and can be + * extended to deal with different joint types and joint + * constraints. However it is not suitable for real time use. * Other algorithms exist which are more suitable for real-time - * applications, please ask if this functionality is required. - * + * applications, please ask if this functionality is required. + * * \section dependencies Dependencies - * + * * This module only depends on Moto. */ @@ -76,25 +73,25 @@ extern "C" { */ /** - * IK_Segment defines a single segment of an IK tree. + * IK_Segment defines a single segment of an IK tree. * - Individual segments are always defined in local coordinates. - * - The segment is assumed to be oriented in the local + * - The segment is assumed to be oriented in the local * y-direction. - * - start is the start of the segment relative to the end + * - start is the start of the segment relative to the end * of the parent segment. * - rest_basis is a column major matrix defineding the rest * position (w.r.t. which the limits are defined), must * be a pure rotation * - basis is a column major matrix defining the current change * from the rest basis, must be a pure rotation - * - length is the length of the bone. + * - length is the length of the bone. * * - basis_change and translation_change respectively define * the change in rotation or translation. basis_change is a * column major 3x3 matrix. * * The local transformation is then defined as: - * start * rest_basis * basis * basis_change * translation_change * translate(0,length,0) + * start * rest_basis * basis * basis_change * translation_change * translate(0,length,0) */ typedef void IK_Segment; @@ -130,16 +127,16 @@ extern void IK_GetTranslationChange(IK_Segment *seg, float *translation_change); /** * An IK_Solver must be created to be able to execute the solver. - * + * * An arbitray number of goals can be created, stating that a given * end effector must have a given position or rotation. If multiple * goals are specified, they can be weighted (range 0..1) to get * some control over their importance. - * + * * IK_Solve will execute the solver, that will run until either the * system converges, or a maximum number of iterations is reached. * It returns 1 if the system converged, 0 otherwise. - */ + */ typedef void IK_Solver; @@ -162,4 +159,3 @@ int IK_Solve(IK_Solver *solver, float tolerance, int max_iterations); #endif #endif // __IK_SOLVER_H__ - -- cgit v1.2.3