code: function _insertPoint(eventData, insertInfo) {
    const toolData = getToolState(eventData.element, this.name);
  
    if (toolData === undefined) {
      return;
    }
  
    // Get the toolData from insertInfo
    const data = toolData.data[insertInfo.toolIndex];
  
    const insertIndex = _getInsertionIndex(insertInfo);
  
    if (insertIndex === Infinity) {
      return;
    }
  
    const handleData = new FreehandHandleData(eventData.currentPoints.image);
  
    const points = data.handles.points;
  
    // Add the new handle
    points.splice(insertIndex, 0, handleData);
  
    // Add the line from the previous handle to the inserted handle (note the tool is now one increment longer)
    points[insertIndex - 1].lines.pop();
    points[insertIndex - 1].lines.push(eventData.currentPoints.image);
  
    addLine(points, insertIndex);
  
    data.active = true;
    data.highlight = true;
  
    // Force onImageRendered to fire
    data.invalidated = true;
    external.cornerstone.updateImage(eventData.element);
  }
docs: Inserts a new point into a freehand tool.
  @private
  @method
  
  @param {Object} eventData - The data object associated with the event.
  @param {Object} insertInfo - Object containing information about where to insert the point.
  @returns {void}