StrictGeomUtility.toExternalValue(w), StrictGeomUtility.toExternalValue(h));
return borderShape;
}
final GeneralPath generalPath = new GeneralPath(GeneralPath.WIND_NON_ZERO, 200);
generalPath.append(configureArc(x, y, 2 * topLeftWidth, 2 * topLeftHeight, -225, -45, Arc2D.OPEN), true);
generalPath.lineTo((float) (x + w - topRightWidth), (float) y);//2
generalPath.append(configureArc(x + w - 2 * topRightWidth, y, 2 * topRightWidth, 2 * topRightHeight, 90, -45,
Arc2D.OPEN), true);
generalPath.append(configureArc(x + w - 2 * topRightWidth, y, 2 * topRightWidth, 2 * topRightHeight, 45, -45,
Arc2D.OPEN), true);
generalPath.lineTo((float) (x + w), (float) (y + h - bottomRightHeight));//4
generalPath.append(configureArc(x + w - 2 * bottomRightWidth, y + h - 2 * bottomRightHeight, 2 * bottomRightWidth,
2 * bottomRightHeight, 0, -45, Arc2D.OPEN), true);
generalPath.append(configureArc(x + w - 2 * bottomRightWidth, y + h - 2 * bottomRightHeight, 2 * bottomRightWidth,
2 * bottomRightHeight, -45, -45, Arc2D.OPEN), true);
generalPath.lineTo((float) (x + bottomLeftWidth), (float) (y + h));//6
generalPath.append(configureArc(x, y + h - 2 * bottomLeftHeight, 2 * bottomLeftWidth, 2 * bottomLeftHeight, -90,
-45, Arc2D.OPEN), true);
generalPath.append(configureArc(x, y + h - 2 * bottomLeftHeight, 2 * bottomLeftWidth, 2 * bottomLeftHeight, -135,
-45, Arc2D.OPEN), true);
generalPath.lineTo((float) x, (float) (y + topLeftHeight));//8
generalPath.append(configureArc(x, y, 2 * topLeftWidth, 2 * topLeftHeight, -180, -45, Arc2D.OPEN), true);
generalPath.closePath();
generalPath.transform(BorderRenderer.scaleInstance);
borderShape = generalPath;
return generalPath;
}