function polygon2PathList(vPoints) {
    var isAbs;
    polygon2PathList.currentPoint = null;
    return vPoints.reduce(function(pathList, vPoint) {
      var point = getPointObject(vPoint), points;

      if (!polygon2PathList.currentPoint) {
        polygon2PathList.currentPoint = {x: point.x, y: point.y}; // abs
        isAbs = false; // default

      } else {
        if (point.isAbs != null) {
          isAbs = point.isAbs;
        }
        points = [polygon2PathList.currentPoint];
        points.push((polygon2PathList.currentPoint = {
          x: point.x + (isAbs ? 0 : polygon2PathList.currentPoint.x),
          y: point.y + (isAbs ? 0 : polygon2PathList.currentPoint.y)
        }));
        pathList.push(points);
      }

      return pathList;
    }, []);
  }
@param {VPoint[]} vPoints - All points of polygon.
@returns {Array} pathList