[B4X] Measure line lenghts and intersection angles - draggable points

The attached project is a very short (250 lines) demo of how to draw sequences of lines and compute lengths and intersecting angles.
The units in the grid are abstract and can be any real world units.

I call it measure2X, since I learned early in my woodworking hobby to measure twice and cut once.
The various techniques in the code could be used anywhere you need them.

The code as a whole could also be useful in other situations.
For example given three sides of any triangle, what are the internal angles?
Or, given an angle between two line of a given length, who far apart are the bases of the lines?

It could also be the foundation of robotic movements - if line length constraints are introduced to the code.
I used crossplatform code, but only tested it in B4J (the touch handlers need to be adjusted to B4A and B4i - a minor task)

INSTRUCTIONS: 
1. Click anywhere on outer panel to add a point - more than one point will result in a line with its length in units (center of line)
2. The X and Y of the point will be shown in blue - X is units from left of the grid, and Y is units from bottom of grid)
3. When two or more lines are visible the smallest angle between (in degrees) will be shown below the intersection
4. Drag any point to see the changing numbers
5. The "X" above the grid clears the trail and starts with an empty grid
6. Mouse down and up without significant movement removes a point from the trail - confirmation asked - redo not implemented




