add_frontal_plane_knee_deviation: Add measures of medial and lateral knee deviation

View source: R/frontal_plane_kinematics.R

add_frontal_plane_knee_deviationR Documentation

Add measures of medial and lateral knee deviation

Description

add_frontal_plane_knee_deviation() adds distance measures of medial and lateral knee deviation in the frontal plane to the supplied tibble in the .data. argument. The measure is calculated in the anatomical frontal plane by drawing a line going through the hip and ankle joints. From this line, the shortest distance to the knee joint is calculated. Negative values indicate medial deviation of the knee (dynamic knee valgus).
"Frontal plane knee deviation" has also been described by Krosshaug et. al and Willis et. al as "Medial knee position" (see references). They use the "Medial knee position" to calculate the "Medial knee deviation."

Please note that the measure is prone to planar cross talk from especially knee flexion (See examples for details).

Usage

add_frontal_plane_knee_deviation(.data)

Arguments

.data

A tibble containg hip, knee, and ankle spatial joint center positions in the anatomical frontal plane. These positions can be created from global spatial joint center positions using project_full_body_to_AP()

Value

The tibble supplied in .data argument with the added columns LFPKD and RFPKD.

Equation

eqFPKD.png

Figure

pcFPKD.png

References

Krosshaug T, Steffen K, Kristianslund E, Nilstad A, Mok KM, Myklebust G, et al. The Vertical Drop Jump Is a Poor Screening Test for ACL Injuries in Female Elite Soccer and Handball Players: A Prospective Cohort Study of 710 Athletes. Am J Sports Med. 2016;44(4):874-83.

Harsted S, Holsgaard-Larsen A, Hestbaek L, Boyle E, Lauridsen HH. Concurrent validity of lower extremity kinematics and jump characteristics captured in pre-school children by a markerless 3D motion capture system. Chiropr Man Therap. 2019;27:39.

Willis BW, Hocker K, Razu S, Gray AD, Skubic M, Sherman SL, et al. Relationship Between 2-Dimensional Frontal Plane Measures and the Knee Abduction Angle During the Drop Vertical Jump. J Sport Rehab. 2019;28(4):399.

Examples

#' # Prepare data
df <- data.frame(
                 LH_APR = c(10,10,10, 0,10,20),
                 LK_APR = c(10,10,10,10,10,10),
                 LA_APR = c( 0,10,20,10,10,10),
                 LH_APU = c(30,30,30,30,30,30),
                 LK_APU = c(10,10,10,10,10,10),
                 LA_APU = c( 0, 0, 0, 0, 0, 0),
                 RH_APR = c(10,10,10, 0,10,20),
                 RK_APR = c(10,10,10,10,10,10),
                 RA_APR = c( 0,10,20,10,10,10),
                 RH_APU = c(30,30,30,30,30,30),
                 RK_APU = c(10,10,10,10,10,10),
                 RA_APU = c( 0, 0, 0, 0, 0, 0))

add_frontal_plane_knee_deviation(df)

# Explore the planar cross talk at deep positions of the hip-joint centers.

df2 <- dplyr::filter(mocapr::mocapr_synthetic_data, sample == 2)
df2 <- add_frontal_plane_knee_angle(df2)
df2 <- add_frontal_plane_knee_deviation(df2)
df2 <- add_frontal_plane_projection_angle(df2)
animate_anatomical(df2,
                  planes = "R",
                  return_plot = TRUE,
                  col_facets = col_fa,
                  row_facets = row_fa)+
ggplot2::geom_text(ggplot2::aes(label = paste0("LFPPA: ", round(LFPPA, 1)),
                  x = mean(value)-15, y= max(U)+30), color = "black", size = 3)+
ggplot2::geom_text(ggplot2::aes(label = paste0("RFPPA: ", round(RFPPA, 1)),
                  x = mean(value)+15, y= max(U)+30), color = "black", size = 3)+
ggplot2::geom_text(ggplot2::aes(label = paste0("LFPKA: ", round(LFPKA, 1)),
                  x = mean(value)-15, y= max(U)+20), color = "black", size = 3)+
ggplot2::geom_text(ggplot2::aes(label = paste0("RFPKA: ", round(RFPKA, 1)),
                  x = mean(value)+15, y= max(U)+20), color = "black", size = 3)+
ggplot2::geom_text(ggplot2::aes(label = paste0("LFPKD: ", round(LFPKD, 1)),
                  x = mean(value)-15, y= max(U)+10), color = "black", size = 3)+
ggplot2::geom_text(ggplot2::aes(label = paste0("RFPKD: ", round(RFPKD, 1)),
                  x = mean(value)+15, y= max(U)+10), color = "black", size = 3)


steenharsted/mocapr documentation built on Feb. 1, 2024, 1:49 p.m.