前文说过引路蜂二维图形库的画板(Canvas)是以width x height 的二维整型数组来表示的。这个数组的每个值为一个32为整数。格式为ARGB,分别代表透明度,红色,绿色,蓝色。在画板上的绘制操作(点,线,多边形,填充等)是修改这些颜色值。
Graphics2D的构造函数为public Graphics2D(int width,int height), width和height分别代表画板的宽度和长度,单位为像素。所需内存为width x height x 4字节。Graphics2D内部实现是通过长度为width x height x 4字节的一维数组来存储这些像素值的。
坐标系统
和大部分图形系统一样,引路蜂二维图形库采用的坐标系的坐标原点在设备的左上角,如下图所示。
Graphics 2D 图形绘制
类Graphics2D为图形库中的一个核心类,它提供和Java SE平台中Graphics2D类似的功能。可以绘制各种基本几何图形,并可以设置画笔,画刷的属性。支持图形填充,绘制文字,绘制图像。对于画笔来说,可以设置画板的线型,宽度,连接类型等属性。对于画刷,可以指定填充方式(线性,圆形,材质)。并支持坐标变换等。使用Graphics2D的一般过程是首先创建Graphics2D实例,然后为Graphics2D指定画笔,画刷,和颜色。然后调用Graphics2D的drawXXX() 来绘制图形的轮廓,或调用fillXXX()来填充图形。
各种基本几何图形
引路蜂二维图形库提供对一些基本几何图形的支持,如点,线,矩形,圆弧,圆,曲线,并可以通过各种几何图形组合成任意的图形。
点
Point代表了平面上的一个点,在引路蜂二维图形库代表一个像素,点用来定义其它图形。
线段
Line定义了一条线段,可以使用两个点来定义一条线段,也可以使用polyline来定义一条多义线,或Path来定义一条路径。
长方的图形
Rectangle,Arc,Ellipse,RoundRectangle都是类Rectangularshape的子类,类Rectangularshape一个特性是他们都有一个长方形的外框。
二次曲线和三次曲线
QuadCurve和CubicCurve定义多次曲线。可以由两个端点和一个或两个控制点来定义这些曲线。下图分别显示了二次曲线和三次曲线。
任意形状
类Path可以使用SVG定义任意的几何图形,这些图形可以通过连接线段,二次曲线或三次曲线来连接。
区域
通过Area类,可以对各种基本几何图形经过“交”,“并”,“差”来组合个复杂的几何图形,前面的例子“梨子”就是这种方式的结果。
引路蜂二维图形库也提供不矢量字库的支持。并支持文字绘制,填充,绘制文字外轮廓的支持。
图像
除了对矢量图形的支持外,引路蜂二维图形库也可以用来绘制栅格图像。支持对图像透明度等。
画笔
画笔类Pen定义了绘制图形外轮廓的各种属性。如宽度,连接类型,线端端点类型等。
画刷
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 [email protected] 举报,一经查实,本站将立刻删除。