flex白板之图形绘制函数
圖形的繪制
Graphics類提供了相關(guān)的方法:
1,清空畫布
?
graphics.clear();?
2,設(shè)置畫筆
?
?
graphics.lineStyle(thickness:Number?=?NaN,?color:uint?=?0,?alpha:Number?=?1.0,?pixelHinting:Boolean?=?false,?scaleMode:String?=?"normal",?caps:String?=?null,?joints:String?=?null,?miterLimit:Number?=?3):void?
?
設(shè)置畫筆后,就可以使用當(dāng)前設(shè)置的畫筆粗細(xì),顏色,透明度等繪制圖形,直到再次調(diào)用lineStyle方法改變畫筆設(shè)置。
3,設(shè)置畫筆起點(diǎn)
?
graphics.moveTo(startX,startY);?
參數(shù)為橫縱坐標(biāo)
4,繪制直線
?
graphics.lineTo(endX,endY);?
參數(shù)為直線終點(diǎn)橫縱坐標(biāo)
5,繪制矩形
?
graphics.drawRect(startX,startY,w,h);?
參數(shù)分別為,開始橫坐標(biāo),開始縱坐標(biāo),寬度,高度
6,繪制橢圓:
?
graphics.drawEllipse(startX,startY,w,h);?
參數(shù)分別為:起點(diǎn)橫坐標(biāo),起點(diǎn)縱坐標(biāo),寬度,高度
7,繪制三角形
我在as3中沒有找到繪制三角形的方法,可以繪制收尾相連的三條直線代替
???????{
???????????this.graphics.moveTo(point1.x,point1.y);
???????????this.graphics.lineTo(point2.x,point2.y);
???????????this.graphics.lineTo(point3.x,point3.y);
???????????this.graphics.lineTo(point1.x,point1.y);
???????????
???????}
?
?
8,繪制不規(guī)則多邊形
其實(shí)就是很多很多小直線連成的
?
?
?
private?function?drawPolygon(pointArray:Array):void???????{??????graphics.moveTo(Point(this.pointArray[0]).x,Point(this.pointArray[0]).y);
????????
???????????for(var?i:Number=1;i<this.pointArray.length;i++)
???????????{
??????????????graphics.lineTo(Point(this.pointArray[i]).x,Point(this.pointArray[i]).y);
???????????}
???????graphics.moveTo(Point(this.pointArray[0]).x,Point(this.pointArray[0]).y);
???????}
數(shù)組里存放的是一系列鼠標(biāo)經(jīng)過的點(diǎn)。
9,填充封閉圖形
?
graphics.beginFill(this.fillColor,this.fillAlpha);???????????
???????????this.drawPolygon(this.pointArray);//something?like?this
???????
???????????graphics.endFill();
beginFill方法的前兩個(gè)參數(shù)是填充顏色和透明度
beginFill和endFill方法之間必須有一個(gè)使用畫筆繪制的封閉區(qū)域,可以是圓,矩形等,也可以是多條直線收尾相接形成的封閉圖形。
注:1,坐標(biāo)位置都是相對(duì)于父容器的
??? 2,所有繼承Sprite的類都有一個(gè)屬性graphics用來得到一個(gè)Graphics的實(shí)例。
?
轉(zhuǎn)載于:https://www.cnblogs.com/zzy0471/archive/2008/06/28/1231715.html
總結(jié)
以上是生活随笔為你收集整理的flex白板之图形绘制函数的全部內(nèi)容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: java 面试700问_JAVA面试70
- 下一篇: laravel 集成采集_新版2020