1. 程式人生 > >Canvas  繪圖  --圖形繪製

Canvas  繪圖  --圖形繪製

     Canvas,是螢幕上一個由JavaScript控制的即時模式點陣圖區域,即時模式是指在畫布上呈現畫素的方式,canvas通過JavaScript呼叫canvas API,在每一幀中完全重繪螢幕上的點陣圖。我們所要做的就是在每一幀渲染之前設定螢幕的顯示內容,這樣才能顯示正確的畫素。下面總結了幾種常繪製的圖形

var canvas = document.getElementById("canvas");

var ctx = canvas.getContext("2d");

一、矩形繪製

ctx.fillRect(x,y,width,height); //在位置(x,y)處繪製寬為width,高為height的填充矩形

ctx.strokeRext(x,y,width,height); //在位置(x,y)處繪製一個矩形邊框

ctx.fillStyle="#ffffaa";

ctx.strokeStyle="#000000";

二、線段繪製

首先了解線段所擁有的幾個點:

(1)開始、結束、繪畫

beginPath,closePath,stroke()

(2)lineCap屬性 定義上下文中線的端點,butt,round,square

(3)lineJoin屬性 定義兩條相交線產生的拐角,miter,level,round

(4)linewidth屬性 定義線的寬度

(5)strokeStyle屬性 定義線和形狀邊框的顏色和樣式

  1. 圓形端點,斜角連線,在畫布左上角

 ctx.strokeStyle = “black”;

ctx.lineWidth = 10;

ctx.lineJoin = “bevel”;

ctx.lineCap = “round”;

ctx.beginPath();

ctx.moveTo(0,0);

ctx.lineTo(25,0);

ctx.line(25,25);

ctx.stroke();

ctx.closePath();

2.圓形端點,斜角連線,不在畫布左上角

ctx.beginPath();

ctx.moveTo(10,50);

ctx.lineTo(35,50);

ctx.lineTo(35,75);

ctx.stroke();

ctx.closePath();

3.平直端點,圓形連線,不在畫布左上角

ctx.lineJoin = “round”;

ctx.lineCap = “butt”;

ctx.beginPath();

ctx.moveTo(10,100);

ctx.lineTo(35,100);

ctx.lineTo(35,125);

ctx.stroke();

ctx.closePath();

三、弧形繪製

ctx.arc(x,y,radius,startAngle,endAngle,anticlockwise)

x和y定義圓心的位置,radius定義弧線的半徑,startAngle和endAngle使用弧度值,而不是角度值,anticlockwise的值可以是true或false,用於定義弧線的方向。例如:繪製一個圓心在(100,100),半徑為20的圓

ctx.arc(100,100,20,(math.PI/180)*0,(Math.PI/180)*360,false)

四、貝塞爾曲線

立方:ctx.bezierCurveTo(cp1x,cp1y,cp2x,cp2y,x,y);

平方:  ctx.quadraticCurveTo(cpx,cpy,x,y)

相關推薦

Canvas  繪圖  --圖形繪製

     Canvas,是螢幕上一個由JavaScript控制的即時模式點陣圖區域,即時模式是指在畫布上呈現畫素的方式,canvas通過JavaScript呼叫canvas API,在每一幀中完全重繪螢幕上的點陣圖。我們所要做的就是在每一幀渲染之前設定螢幕的顯示內容,這樣才能

Canvas繪圖——使用Canvas繪製圖形的基本教程

HTML5火的正熱,最近有個想法也是要用到HTML的相關功能,所以也要好好學習一把。 好好看了一下Canvas的功能,感覺HTML5在客戶端互動的功能性越來越強了,今天看了一下Canvas繪圖,下邊是幾個例項,記下以備後用。 1、使用Canvas繪製直線: &

圖形繪製——分割槽繪圖

(1)在同一視窗繪製income曲線(上)和outgo曲線(下) %建立曲線 income=[3.2 4.1 5.0 5.6]; outgo=[2.5 4.0 3.35 4.9]; %在第一個視窗繪製曲線income subplot(2,1,1); plot(i

HTML5畫布Canvas線段、矩形、弧形及貝塞爾曲線等簡單圖形繪製

HTML5中最有意思的就是這個canvas了 通過它我們可以畫自己想要的圖形 它也是十分重要的技術 應用於遊戲、圖表等等 或者繪製各種酷炫的東西 這裡給大家分享一個網站 傳送門 裡面都是canvas技術繪製的圖形畫布建立canvas是html的一個標籤 是一個圖形容器 首先要

[實驗]在同一個 canvas 元素中繪製不同顏色的圖形

實驗背景: 在做一個 HTML 5 的一個遊戲專案的時候,想在同一個 canvas 元素中繪製多個具有不同顏色的圖畫,但是由於當時對 HTML 5 canvas 元素不是很熟悉,結果總是所有圖畫都具有一樣的顏色。去網上查詢,也沒有找到這個問題的答案,於是只能自己研究了。

HTML5利用Canvas繪製圖形(繪製漸變、模式、變換)

繪製漸變 漸變是一種很普遍的視覺形象,能帶來視覺上的舒適感。在Canvas中,繪圖API提供了兩個原生的漸變方法,包括線性漸變和徑向漸變。漸變,在顏色集上使用逐步抽樣的演算法,可以應用的描邊樣式和填充樣式中。使用漸變需要三個步驟:首先是建立漸變物件;其次是設定漸變顏色和過渡

【Visual C++】遊戲開發筆記之四——遊戲畫面繪圖(一)基本圖形繪製

毛星雲,網路ID「淺墨」,90後,熱愛遊戲開發、遊戲引擎、計算機圖形、實時渲染等技術,就職於騰訊互娛。 微軟最有價值專家 著作《Windows遊戲程式設計之從零開始》、《OpenCV3程式設計入門》 碩士就讀於南京航空航天大學航天學院(2013級碩士研究生),已於2016年三月畢業。本科

HTML5 Canvas 開發 繪圖方法整理 【四、canvas曲線圖形 / 圓形】

其實在Canvas 中的基本圖形就只有兩個 : 直線圖形 和 曲線圖形 。 圓形也算是在曲線圖形中,一般畫圓的時候必須配套使用 beginPath() 和 closePath(),圓形屬於一個“閉合圖形”,先在畫布上開闢一個路徑,畫完以後結束路徑。 語法

微信小程式(四)canvas繪圖並儲存到手機相簿並分享到朋友圈和fileText繪製文字進行自動換行

思路 首先準備好一張圖片,本地圖片和網路圖片均可作為你的背景圖小程式目前不支援截圖,這裡講解本地圖片。 會用到 wx.createCanvasContext(#獲取畫布的id)、 drawImage(

HTML5 canvas圖形繪製基礎(矩形,線條,漸變色,圓形,圖片,多邊形)

<!DOCTYOE html> <html>    <head>    <meta charset="utf-8">    <style type="text/css">    div{    margin-lef

Canvas繪圖

弧度 can 曲線 基本知識 是你 使用 填充 lob 坐標 1、概念 canvas一般就是用來繪制圖像的 2、基本知識 上下文對象 var canvas = doucment.getElementById("canvas"); var ctx = canva

canvas基本圖形

基本 ash tex spa set lang 移動 圓角矩形 tle 1 <!DOCTYPE html> 2 <html lang="en"> 3 <head> 4 <meta charset="UTF-8"&g

canvas 繪圖api的位置問題

寬高 如果 我們 之前 浪費 api 設置 color width 今天因為canvas繪圖的為之問題浪費了一些時間。 我們知道canvas的默認寬高是300X150嘛。 實際使用的時候當然是自定義一個高寬啦。 在js中通過canvasDom.style設置了某個高寬的時候

canvas 繪圖失敗

fun get script win canvas 繪圖 window cti 文檔 dom 1 檢測瀏覽器是否支持canvas 2 <script></script> 代碼是否有錯? 3 我的代碼的問題是:js 腳本執行在dom文檔加載完之前,所以

微信小程序 | canvas繪圖

base 資深 none 高清 can 知識 status dff link 1、新的尺寸單位 rpx   rpx(responsive pixel): 可以根據屏幕寬度進行自適應。   規定屏幕寬為750rpx。如在 iPhone6 上,屏幕寬度為375px,共有750個

微信小程序 canvas 繪圖問題總結

全局變量 矩形 wot hcm 像素 ces 地圖 源碼 order 業務中碰到微信小程序需要生成海報進行朋友圈分享,這個是非常常見的功能,沒想到實際操作的時候花了整整一天一夜才搞好,微信的 canvas 繪圖實在是太難用了,官方快點優化一下吧。 業務非常簡單,只需要將用到

Canvas繪圖 (html5新增特性)

get back etc lur rect() odata 調用方法 ima 圖像 Canvas 使用<canvas>對象,需要設置屬性:width,height。指定繪圖的區域大小。在canvas標簽前後出現的信息將在不支持<canvas

c++中txt檔案的讀取以及在MFC中讀取txt座標資料並完成圖形繪製

主要介紹如何讀取txt檔案中的座標資料,並在MFC視窗中繪製出來,工程建立方法和繪圖方法與上一篇博文基本一致,這裡就不再詳贅述,可參考上一篇博文vs2010、MFC視窗中繪製點、線、面。 C++中讀取檔案的方法有兩種,一種是來自於C語言的“檔案指標”方法,另一種是C++中的“檔案流”思想。

Python123(Python程式語言設計)-------練習2:Python基本圖形繪製

例項2: Python蟒蛇繪製 使用turtle庫繪製一個蟒蛇形狀的圖形 #PythonDraw.py import turtle turtle.setup(650, 350, 200, 200) turtle.penup() turtle.fd(-250) turtle.pend

007.Zabbix監控圖形繪製

一 Graphs配置 1.1 新建圖形 Graphs是將資料展示為影象,以視覺化形式展示,Graphs的配置儲存在主機和模板中。 Configuration---->Hosts---->Graphs---->Graphs---->Create graph,新建所需