PolygonShape

Inheritance: java.lang.Object, com.aspose.imaging.ObjectWithBounds, com.aspose.imaging.Shape

All Implemented Interfaces: com.aspose.imaging.IOrderedShape

public class PolygonShape extends Shape implements IOrderedShape

表示多边形形状。

构造函数

构造函数描述
PolygonShape()初始化 PolygonShape 类的新实例。
PolygonShape(PointF[] points)初始化 PolygonShape 类的新实例。
PolygonShape(PointF[] points, boolean isClosed)初始化 PolygonShape 类的新实例。

方法

方法描述
getPoints()获取或设置曲线点。
setPoints(PointF[] value)获取或设置曲线点。
isClosed()获取或设置一个值,指示形状是否闭合。
setClosed(boolean value)获取或设置一个值,指示形状是否闭合。
getBounds()获取对象的边界。
getCenter()获取形状的中心。
getSegments()获取形状的段。
hasSegments()获取指示形状是否具有段的值。
getStartPoint()获取起始形状点。
getEndPoint()获取结束形状点。
reverse()反转此形状的点顺序。
getBounds(Matrix matrix)获取对象的边界。
getBounds(Matrix matrix, Pen pen)获取对象的边界。
transform(Matrix transform)对形状应用指定的变换。
equals(Object obj)确定指定的对象是否等于当前对象。
hashCode()用作默认的哈希函数。

Example: This example creates a new Image and draws a variety of shapes using Figures and GraphicsPath o…

此示例创建一个新的 Image 并在图像表面使用 Figures 和 GraphicsPath 绘制各种形状。

//创建一个 BmpOptions 实例并设置其各种属性。
com.aspose.imaging.imageoptions.BmpOptions bmpOptions = new com.aspose.imaging.imageoptions.BmpOptions();
bmpOptions.setBitsPerPixel(24);

//创建 FileCreateSource 的实例并将其指定为 BmpOptions 实例的 Source。
//第二个布尔参数决定要创建的文件是否为 IsTemporal。
bmpOptions.setSource(new com.aspose.imaging.sources.FileCreateSource("c:\\temp\\output.bmp", false));

//创建 Image 的实例
com.aspose.imaging.Image image = com.aspose.imaging.Image.create(bmpOptions, 500, 500);
try {
    //创建并初始化 Graphics 类的实例
    com.aspose.imaging.Graphics graphics = new com.aspose.imaging.Graphics(image);

    //清除 Graphics 表面
    graphics.clear(com.aspose.imaging.Color.getWheat());

    //创建 GraphicsPath 类的实例
    com.aspose.imaging.GraphicsPath graphicspath = new com.aspose.imaging.GraphicsPath();

    //创建 Figure 类的实例
    com.aspose.imaging.Figure figure1 = new com.aspose.imaging.Figure();

    //向 Figure 对象添加 Shape。
    figure1.addShape(new com.aspose.imaging.shapes.EllipseShape(new com.aspose.imaging.RectangleF(50, 50, 300, 300)));
    figure1.addShape(new com.aspose.imaging.shapes.PieShape(
            new com.aspose.imaging.RectangleF(
                    new com.aspose.imaging.PointF(110, 110),
                    new com.aspose.imaging.SizeF(200, 200)), 0, 90));

    //创建 Figure 类的实例
    com.aspose.imaging.Figure figure2 = new com.aspose.imaging.Figure();

    //向 Figure 对象添加 Shape。
    figure2.addShape(new com.aspose.imaging.shapes.ArcShape(new com.aspose.imaging.RectangleF(10, 10, 300, 300), 0, 45));
    figure2.addShape(new com.aspose.imaging.shapes.PolygonShape(
            new com.aspose.imaging.PointF[]
                    {
                            new com.aspose.imaging.PointF(150, 10),
                            new com.aspose.imaging.PointF(150, 200),
                            new com.aspose.imaging.PointF(250, 300),
                            new com.aspose.imaging.PointF(350, 400)}, true));
    figure2.addShape(new com.aspose.imaging.shapes.RectangleShape(
            new com.aspose.imaging.RectangleF(
                    new com.aspose.imaging.PointF(250, 250),
                    new com.aspose.imaging.SizeF(200, 200))));

    //将 Figure 对象添加到 GraphicsPath
    graphicspath.addFigures(new com.aspose.imaging.Figure[]{figure1, figure2});

    //使用颜色为 Black 的 Pen 对象绘制路径
    graphics.drawPath(new com.aspose.imaging.Pen(com.aspose.imaging.Color.getBlack(), 2), graphicspath);

    // 保存所有更改。
    image.save();
} finally {
    image.dispose();
}

PolygonShape()

public PolygonShape()

初始化 PolygonShape 类的新实例。

PolygonShape(PointF[] points)

public PolygonShape(PointF[] points)

初始化 PolygonShape 类的新实例。

Parameters:

参数类型描述
pointsPointF[]点数组。

PolygonShape(PointF[] points, boolean isClosed)

public PolygonShape(PointF[] points, boolean isClosed)

初始化 PolygonShape 类的新实例。

Parameters:

参数类型描述
pointsPointF[]点数组。
isClosedboolean如果设置为 true,则多边形是闭合的。

getPoints()

public PointF[] getPoints()

获取或设置曲线点。

值:曲线点。

Returns: com.aspose.imaging.PointF[]

setPoints(PointF[] value)

public void setPoints(PointF[] value)

获取或设置曲线点。

值:曲线点。

Parameters:

参数类型描述
valuePointF[]

isClosed()

public boolean isClosed()

获取或设置一个值,指示形状是否闭合。

值:如果形状是闭合的则为 true;否则为 false

Returns: boolean

setClosed(boolean value)

public void setClosed(boolean value)

获取或设置一个值,指示形状是否闭合。

值:如果形状是闭合的则为 true;否则为 false

Parameters:

参数类型描述
valueboolean

getBounds()

public RectangleF getBounds()

获取对象的边界。

值:对象的边界。

Returns: RectangleF

getCenter()

public PointF getCenter()

获取形状的中心。

值:形状的中心。

Returns: PointF

getSegments()

public ShapeSegment[] getSegments()

获取形状的段。

值:形状段。

Returns: com.aspose.imaging.ShapeSegment[]

hasSegments()

public boolean hasSegments()

获取指示形状是否具有段的值。

值:如果形状有段,则为 True;否则为 false

Returns: boolean

getStartPoint()

public PointF getStartPoint()

获取起始形状点。

值:起始形状点。

Returns: PointF

getEndPoint()

public PointF getEndPoint()

获取结束形状点。

值:结束形状点。

Returns: PointF

reverse()

public void reverse()

反转此形状的点顺序。

getBounds(Matrix matrix)

public RectangleF getBounds(Matrix matrix)

获取对象的边界。

Parameters:

参数类型描述
matrixMatrix在计算边界之前要应用的矩阵。

Returns: RectangleF - The estimated object’s bounds.

getBounds(Matrix matrix, Pen pen)

public RectangleF getBounds(Matrix matrix, Pen pen)

获取对象的边界。

Parameters:

参数类型描述
matrixMatrix在计算边界之前要应用的矩阵。
penPen用于对象的笔。它可能影响对象的边界尺寸。

Returns: RectangleF - The estimated object’s bounds.

transform(Matrix transform)

public void transform(Matrix transform)

对形状应用指定的变换。

Parameters:

参数类型描述
transformMatrix要应用的转换。

equals(Object obj)

public boolean equals(Object obj)

确定指定的对象是否等于当前对象。

Parameters:

参数类型描述
objjava.lang.Object被比较的对象。

Returns: boolean - equals 的结果

hashCode()

public int hashCode()

用作默认的哈希函数。

Returns: int - 当前对象的哈希码。