function measureRetroversion(obj) % Glenoid retroversion is the angle between the glenoid postero-anterior line % and the line perpendicular to the Friedman's line that goes through the most % anterior glenoid rim point. % % obj.measurePosteroAnteriorLine() and obj.scapula.measureFriedmansLine() must % have been run before measuring the glenoid retroversion. FL = obj.scapula.friedmansLine; anteriorRimPoint = obj.getAnatomicalExtremeRimPoints().anterior; FLToAnteriorRimPoint = FL.orthogonalComplementToPoint(anteriorRimPoint); % Lines projection on scapular axial plane. IS = Vector([0 0 0], obj.scapula.coordSys.IS); FLToAnteriorRimPointXZ = IS.orthogonalComplementToPoint(FLToAnteriorRimPoint.vector); glenoidPosteroAnteriorLineXZ = IS.orthogonalComplementToPoint(obj.posteroAnteriorLine.vector); retroversionRotation = vrrotvec(FLToAnteriorRimPointXZ.vector, glenoidPosteroAnteriorLineXZ.vector); obj.retroversion = -sign(dot(IS.vector,retroversionRotation(1:3)))*rad2deg(retroversionRotation(4)); end