How to align node center of the grid after drop from the palate

Hi,
I am not unable to align the node center of the grid

this.diagram.grid = this.goMake(go.Panel, go.Panel.Grid,
{ gridCellSize: this.cellSize },
this.goMake(go.Shape, “LineH”, { stroke: “lightgray”, strokeWidth: 0.5 }),
this.goMake(go.Shape, “LineV”, { stroke: “lightgray”, strokeWidth: 0.5 }),
);
this.diagram.undoManager.isEnabled = true;
this.diagram.toolManager.draggingTool.isGridSnapEnabled = true;
this.diagram.toolManager.draggingTool.gridSnapCellSpot = go.Spot.Center,
this.diagram.animationManager.isEnabled = false;
and in the node
rotatable: true, rotateObjectName: “FIGURE”, locationSpot: go.Spot.Center, selectable: true

and while creating the node I am using

this.diagram.addDiagramListener(EventList.ExternalObjectsDropped, (e) => {
let dropLocation = e.diagram.selection.first().location;
//using dropLocation while creating the node.
}

This seems to be a duplicate of: How to align the node in center based on the background grid - GoJS - Northwoods Software (nwoods.com)

Yes I have seen but there we are using transferviewdoc for getting point after that we are doing align