Patrick,
shape.predictor is like a mapping function to map how shape changes along some predictor vectors. In your previous post you referenced plotTangentSpace. A component of that function is to map shape change along PC axes. Yes, one can get PCs and use shape.predctor to get the same deformation grids for maximum values along the first PC, for example, as one would get in plotTangentSpace. What you proposed with just submitting the means to plotTangentSpace is different, as it would find different PCs, thus different predictors.
1. The previous code did indeed show how to project means onto different PCs.
2. They might not be different, unless there were other factors taken into account. The preds$symJord is the predicted vector, given the model, which is the same as the mean but does not have to be if there is a different model.
It seems to me that you are struggling with multiple ways to do the same thing and questioning why one would do something they could do one way a different way? Does a linear model not estimate means if all it contains are factors for constructing the means? So, in this case there is no difference but to emphasize what the difference is, for example, add centroid size to the model and now shape.predictor is not estimating means but some kind of allometric projection.
Cheers