function output = plotLandmarks(obj,color,faceColor) % get landmarks AI = obj.angulusInferior; TS = obj.trigonumSpinae; PC = obj.processusCoracoideus; AC = obj.acromioClavicular; AA = obj.angulusAcromialis; SG = obj.spinoGlenoidNotch; if not(isempty(obj.groove)) % sort groove from most lateral to most medial rawGroove = obj.groove; groove = []; for i = 1:size(rawGroove,1) nextGrooveIndex = findLongest3DVector(TS-rawGroove); groove(i,:) = rawGroove(nextGrooveIndex(1),:); rawGroove(nextGrooveIndex,:) = []; end end % plot wireframe acromion = [SG; AA; AC]; clavicle = [SG; PC]; scapulaPlane = [groove(1,:); TS; AI; groove(1,:); SG]; plotHandle = []; plotHandle(end+1) = plot3(acromion(:,1),acromion(:,2),acromion(:,3),... '-o',... 'Color',color,... 'MarkerSize',10,... 'MarkerFaceColor',faceColor); hold on plotHandle(end+1) = plot3(clavicle(:,1),clavicle(:,2),clavicle(:,3),... '-o',... 'Color',color,... 'MarkerSize',10,... 'MarkerFaceColor',faceColor); plotHandle(end+1) = plot3(scapulaPlane(:,1),scapulaPlane(:,2),scapulaPlane(:,3),... '-o',... 'Color',color,... 'MarkerSize',10,... 'MarkerFaceColor',faceColor); plotHandle(end+1) = plot3(groove(:,1),groove(:,2),groove(:,3),... '-o',... 'Color',color,... 'MarkerSize',10,... 'MarkerFaceColor',faceColor); output = plotHandle; end