Next I started with snapping to center and snapping to end points, the next two types of snapping after snapping to grid. The centers and end points are added to two different lists which are then iterated to check the distance of position of mouse from these different points added in the lists, with an offset limit added to the mouse position.
A question popped up during discussion:
Would it be efficient to make use of list to store these specific points in case the number of entities in the drawing proliferated? This is really to be explored. The principles of efficient usage of different data structures are not quite clear to us. Experience to be gained.
Also along with these, I made myself involved in dimensioning. Gurjot and I are working on linear specifically horizontal dimensioning under this, vertical will be pursued after this.