For an example of a camera made with a CNC machine, see my link below for my 6x12 camera. This was made with an Excellon CNC router. This is a bit limited compared with a full function 3 axis router or mill as the Z axis height is not as easy to control in G code as the X and Y (it is possible but it's usually easier to run separate programmes at various depths).
I do not use a 3D CAD package like Solidworks. I draw the part in Autocad, offset the profile by the radius of the cutter and write the G code by hand based on the coordinates of the offset path. This sounds more of a hassle than it really is. For more complex parts, I ask our CAD expert to convert my file for me although I do now have a good DXF to G code convertor.