function getRoundCorner(previousPoint, currentPoint, nextPoint, radiusMax) {
  var isArcRadius = arguments.length > 4 && arguments[4] !== undefined ? arguments[4] : true;
  if (radiusMax === 0 || currentPoint.radius === 0) return {
    cx: currentPoint.x,
    cy: currentPoint.y,
    radius: 0,
    startX: currentPoint.x,
    startY: currentPoint.y,
    stopX: currentPoint.x,
    stopY: currentPoint.y,
    startAngle: undefined,
    endAngle: undefined,
    counterClockwise: undefined
  };
  calcCornerArc(previousPoint, currentPoint, nextPoint, radiusMax, isArcRadius);
  return {
    cx: x,
    cy: y,
    radius: cRadius,
    startX: startX,
    startY: startY,
    stopX: stopX,
    stopY: stopY,
    startAngle: v1.ang + Math.PI / 2 * radDirection,
    endAngle: v2.ang - Math.PI / 2 * radDirection,
    counterClockwise: drawDirection
  };
}
Get round corner from a point and its previous and next neighbours in a path

@param previousPoint {{x: number, y:number, radius: number?}}
@param currentPoint {{x: number, y:number, radius: number?}}
@param nextPoint {{x: number, y:number, radius: number?}}
@param radiusMax :number
@param isArcRadius :boolean
@return {{
cx:number, cy:number, radius:number,
startX:number, startY:number,
stopX:number, stopY: number,
endAngle: number, startAngle: number, counterClockwise: boolean
}}