angle of a vector centered at a certain point

9 views (last 30 days)
I am trying to calulate the hip, knee, ankle joints angles as the image shows
The hip angle is the angle between the "iliac crest marker - hip joint marker" vector extension and the "hip joint marker - knee joint marker" vector. in other words, it draws an x-y plane centered at the hip joint marker and the "iliac crest marker - hip joint marker" vector is its positive y axis, and the hip angle is the angle between the "hip joint marker - knee joint marker" vector and the negative y axis
The knee angle is the angle between the "hip joint marker - knee joint marker" vector extension and the "knee joint marker - ankle joint marker" vector. in other words, it draws an x-y plane centered at the knee joint marker and the "hip joint marker - knee joint marker" vector is its positive y axis, and the knee angle is the angle between the "knee joint marker - ankle joint marker" vector and the negative y axis
the ankle angle is the angle between the "ankle joint marker - toe marker" the positive x axis of an x-y plane that is centered at the ankle joint marker and the "knee joint marker - ankle joint marker" vector is its postive y axis
  2 Comments
James Tursa
James Tursa on 23 May 2023
You need to tell us how you have your data points stored. As x-y pairs? In a 2D matrix?
arabe jaradat
arabe jaradat on 23 May 2023
Edited: arabe jaradat on 23 May 2023
yes as x-y paries
I just have a problem with the equations that calculate the angles
iliac_point = [x_points_sorted(1), y_points_sorted(1)];
hip_point = [x_points_sorted(2), y_points_sorted(2)];
knee_point = [x_points_sorted(3), y_points_sorted(3)];
ankle_point = [x_points_sorted(4), y_points_sorted(4)];
toe_point = [g_center.Centroid(1) g_center.Centroid(2)];
hip_vector = [hip_point - iliac_point,0];
knee_vector = [knee_point - hip_point,0];
ankle_vector = [ankle_point - knee_point,0];
toe_vector = [toe_point - ankle_point,0];

Sign in to comment.

Answers (1)

James Tursa
James Tursa on 23 May 2023
Once you have the vectors, you can calculate the angles between the vectors using the technique I posted here:
  2 Comments
arabe jaradat
arabe jaradat on 24 May 2023
I dont want to claculate the angles between the vectors, i want to calculate the angle of each vector with respect to the drawn x -y plane centered at the joints' centers as in the instructions
James Tursa
James Tursa on 24 May 2023
Edited: James Tursa on 24 May 2023
From your drawing, it looks like the hip and knee joint angles are exactly the angle between vectors, and the ankle joint angle is 90 degrees minus the angle between vectors. Why don't you think your drawn angles are based on the angles between the vectors you created? How else would you calculate these angles if not between the vectors along the lines in your drawing?

Sign in to comment.

Community Treasure Hunt

Find the treasures in MATLAB Central and discover how the community can help you!

Start Hunting!