Application of automated process plan for hole machining: a constraint approach for feature extraction and recognition