With the increasing application of high speed machining for pockets, the conventional methods of tool path generation show their limitations, such as the existence of a high curvature region along the tool path. This paper presents a level set approach of tool path generation for high speed machining of pockets. Pocket boundary is first embedded into a higher dimensional function, namely, the level set function. Then the tool paths are realised by the propagation of the pocket boundary. The topological changes of tool path can be naturally handled during the evolution of moving fronts. In order to avoid the appearance of high curvature corners along tool paths, a curvature-dependent term is adopted to regulate the velocity function of the level set equation. At the same time, the curvature flow motion is used to identify the machinable region of pockets. The vector level-set functions are utilised to handle complex pockets with multiple islands. The simulation of material removal rate based on the implicit description is also discussed. Numerical examples are presented to demonstrate the robustness of the proposed approach on different kinds of pockets with islands.