Medial axis transform (MAT) is a very useful shape interrogation tool in NC tool path generation for pocket milling. This paper presents a new, efficient approach to calculating MATs of planar profiles with boundaries of free-form curves. The proposed approach is mainly based on profile boundary tracing and decomposition. By studying the basic elements of MAT and their geometric properties, several algorithms of finding contact circles are developed. The boundary tracing algorithm can handle profiles with/without internal holes. For a profile without internal holes, it is continuously divided into simpler sub-profiles while travelling along the boundary, and a tree data structure is adopted to keep track of the boundary decomposition process. For a profile with internal holes, it is divided into several simple profiles without internal holes. After generating the MAT of each simple profile, the completed MAT can be found by combining these MATs. This proposed approach is implemented and some illustrative samples are presented to demonstrate its advantages.