Before we get started, you will need:

You don't need the same light that I have, I just happened to have this on hand. The techniques can apply to any type of light. The light that I have is round, can lay flat and is battery operated. Instead of gutting the unit, I decided I would make a sort of sculptural lamp shade with a housing that holds the light as its base. You could omit the housing part that I make for the light (the little inward feet) and make only a plain shade that you can place over a small candle or LED light.

I've also uploaded the generic versions of this design as .STL files to Thingiverse

Step 1: Getting Started: Planning & Measuring

As with any new project, I always start with pencil and paper. I measured the light that I have to get the measurements that I would need to work with. Since my light was round, I used a protractor to draw it on paper to visually see how much space I was working with. I used digital calipers to accurately measure the light. You also have to take into account that if you print in ABS plastic, there will be a little shrinkage so it's probably a good idea to go a bit bigger or round up your measurements. You can always change the sizing. Even with accurate measuring for the model, I took multiple test prints for the base alone to test the fitment so there would be no wasted filament when I printed the entire thing. Something to think about. You will notice that I have a cut out pattern in my final lantern shade. It was free hand and I didn't plan a design for that. If you want to, you can pre-plan your design ahead of time with a rough sketch.

You can use any 3d program that you want such as Blender which is free. I'll be using 3ds max but the techniques/suggestions can be used in any program or are basic enough so that you can apply the way I build a model to any project. It does help to know a little 3d modeling but even a beginner should be able to follow my steps.