First of all … the abstract
Tool class draw methods do not create model geometry. They draw in virtual view space. This is usually meant to show the user what geometry can be created. (ie, the rubber banding between the 1st point clicked and the mouse cursor for a linetool.)
When the user indicates to the tool that they like what was virtually drawn, then your tool’s code stops drawing to the view, and then use the
Sketchup::Entities class factory methods to actually add geometric faces and edges.
There is no easy quick answer for complex coding tasks. You are just going to have to try to write code that does these complex tasks.
When you encounter specific coding problems, come back and post a code snippet and explain the specific problem you are having.
We are not going to write a library or a tool extension for you.
The best thing you can do is read the examples …
… and study the various extensions by the SketchUp Team …