I used to use Surfcam, it worked well with SolidWorks, there was a translator for going in either direction. I am not sure if Surfcam is even still around though, it has been a while. Surfcam was awesome for molds, it was originally developed by a mold shop by some of the same people that developed MasterCam, the layouts and tools were almost identical but Surfcam would allow you to do anything you want to a part, including scrapping the part, so you need to understand your intentions before machining with it.