最美情侣中文字幕电影,在线麻豆精品传媒,在线网站高清黄,久久黄色视频

歡迎光臨散文網(wǎng) 會(huì)員登陸 & 注冊(cè)

CocosCreator:畫線

2021-11-02 10:45 作者:會(huì)飛的蝸牛007  | 我要投稿

Cocos Creator有一個(gè)繪制組件graphics,該組件提供了畫點(diǎn)、線、圓等接口。最開始是有一個(gè)動(dòng)態(tài)的在兩個(gè)點(diǎn)之間畫線的需求。以下是錯(cuò)誤思維:于是在代碼中動(dòng)態(tài)創(chuàng)建了一個(gè)節(jié)點(diǎn),暫且叫做line的節(jié)點(diǎn),給它添加了父節(jié)點(diǎn)后又addcomponent了一個(gè)graphics組件,然后按照creator官方提供的畫線方法實(shí)現(xiàn)了一下,運(yùn)行預(yù)覽的結(jié)果就是什么都沒有。懶的檢測(cè)啥的,加上有其他的事情要做,原因以后再整理。下面直接附上以實(shí)現(xiàn)的畫線方法。

畫直線:在編輯器上添加一個(gè)graphics節(jié)點(diǎn)

在代碼中獲取節(jié)點(diǎn)lineNode,畫線drawLine

drawLine(startPos:Vec3,tarPos:Vec3){

????????console.log("畫線>>>>");

????????let ctx = this.lineNode.getComponent(Graphics);

????????ctx.lineWidth = 20;

????????ctx.strokeColor = Color.GREEN;

????????ctx.moveTo(startPos.x, startPos.y);

????????ctx.lineTo(tarPos.x, tarPos.y);

????????ctx.stroke();

????????//如果想要清除歷史的線, 可以執(zhí)行clear方法

????????// ctx.clear();

}

下面也列一下測(cè)試時(shí)實(shí)現(xiàn)的畫點(diǎn)和畫曲線的方法:

畫點(diǎn):

ctx.circle(100,100,20);

ctx.fillColor = Color.YELLOW;

ctx.fill();

在(100,100)處畫一個(gè)半徑20像素的黃點(diǎn)并填充,同樣的清除還是調(diào)用clear方法

畫曲線:

ctx.lineWidth = 20;

ctx.strokeColor = Color.GREEN;

ctx.moveTo(startPos.x, startPos.y);

let midpos1 = v2(x,y);//控制點(diǎn)

let midpos2 = v2(x1,y1);//控制點(diǎn)

ctx.bezierCurveTo(midpos1.x,midpos1.y,midpos2.x,midpos2.y,tarPos.x,tarPos.y);

ctx.stroke();

和畫直線的區(qū)別其實(shí)就是加了兩個(gè)控制點(diǎn)并調(diào)用貝塞爾曲線的畫線接口,然后繪制就行了,具體控制點(diǎn)怎么設(shè)置就看實(shí)際需求

CocosCreator:畫線的評(píng)論 (共 條)

分享到微博請(qǐng)遵守國(guó)家法律
北票市| 寿光市| 绥棱县| 从化市| 广河县| 雷波县| 霍林郭勒市| 平陆县| 东丽区| 涟水县| 巴彦县| 普兰县| 彩票| 罗山县| 洛阳市| 浠水县| 托里县| 富平县| 金门县| 股票| 蓝田县| 林周县| 汉阴县| 密云县| 临沂市| 富民县| 改则县| 定襄县| 合阳县| 化隆| 黄龙县| 嘉鱼县| 乳源| 高雄县| 都兰县| 甘泉县| 柘荣县| 宁陕县| 读书| 铜川市| 谷城县|