1. Geofence (polyine, circles, point): we need a model called geofence.
a. We need tree view, form view, and map view.
b. Process: In the mapview the user can draw a geofence of one of these three types (polyline, circle, or point), then he save the geofence and the user can see the geofence in the map view, in form view or all records in tree view.
c. The user can select the color of the geofence, and in point type geofence can select an image in order to display it in map view.
2. Groups: we need a model called groups.
a. It must group only point type geofences with a sequence (or an index number).
b. We need these view: tree, form and map view.
c. In the map view, odoo automatically draw all the points with their respective image, and a line between points, following the sequence or index. The user can select the color of the lines, and the thickness of the lines.
d. When I putt he mouse over a point in the map. It must show a tooltip with data of the point like (latitude, longitude, name, etc)
e. When I click the point it will open the form view of that point.
f. When I double click that point a wizard must be opened in order to edit the data of the point (name, image, etc). When I click save in wizard, tha map view must be updated. If I discard changes, it only return to the map without changes.
3. An special window in group model map view, when the user make click in some point, a right menu (like a drop menu) will appear with the data of the point taken from the model geofences.
NOTE: You could use google maps or open street map. We need the module in odoo v10