検索
ホームページウェブフロントエンドH5 チュートリアルhtml5 キャンバス描画チュートリアル (9) — Canvas_html5 チュートリアルのスキルで四角形と円を描画する

この記事では、キャンバスに四角形と円を描く方法について説明します。これらは基本的なグラフィックスです。もちろん、これら以外にも基本的なグラフィックスはありますが、キャンバスでは、他の方法を使用せずに四角形と円を描画することしかできません。

Canvas は長方形を描画します
1、fillRect およびストロークRect
fillRect は長方形を直接塗りつぶすことができ、塗りつぶしスタイルは現在設定されているスタイルです。同じストロークRectの原理は、長方形
を直接ストロークすることです。それらのパラメータは、順番に一貫しています(開始点x座標、開始点y、長方形の幅、長方形の高さ)。ここでの開始点は、長方形の左上隅を指します。
私たちは通常、単純なことを行うためにそれらを使用しますが、彼らは単純なことしか実行できません。なぜ?彼らが描いたグラフィックには「パス」がないので、それがそのまま出てきました。
たとえば、最初に fillRect で四角形を塗りつぶし、次にその四角形をストロークする場合、ストローク() を使用しても効果はありません。四角形はあってもパスがないためです。
この四角形をどうしてもストロークしたい場合は、ストロークRect() を使用して同じ位置に四角形をストロークできます。ただし、これらは実際には独立しており、位置が重なっているだけです。

コードをコピーします
コードは次のとおりです:

ctx.fillRect(200,100, 50,40 );
ctx.ストロークRect(200,100,50,40);

塗りつぶしとストロークの両方を含む四角形が必要な場合は、間違いなくfillRectとストロークRectを同時に使用します。面倒です。したがって、この場合、通常は次の方法を使用します。

2、rect
rect のパラメータは、fillRect やストローク Rect と変わりません。違いは、ストロークまたは塗りつぶしに関しては、次のことを行う必要があることです。後で自分で完成させてください。

コードをコピーします
コードは次のとおりです:

ctx.rect(300,100, 50,40 );
ctx.ストローク()
ctx.fill();

これを行う利点は何ですか?前の記事で、塗りつぶしやストロークは大量のリソースを消費することを述べました。そのため、多くの場合、一度に数百のパス (ループなど) を描画してから、それらをストロークしたり塗りつぶしたりする必要があります。このとき、rect を使用してパスを描画し、最後に塗りつぶしを行うことで、fillRect とストローク Rec が毎回塗りつぶしたりストロークしたりする必要があるという問題を回避できます。

3, lineTo
もちろん、私の線画チュートリアルのように 4 lineTo を使用して四角形を描くこともできます。ただし、これは必須ではありません。詳細については、その記事を参照してください。

Canvas は円を描きます
空には目はありません。実際には、Canvas が直接円を描く機能はありません。 360 度の円弧、円のように見えます。
円弧を描くキャンバスの機能、つまり円を描くために使用します:

コードをコピーします
コードは次のとおりです。

ctx.arc(300 25,100 20,20,0,Math.PI*2); >ctx.fill();


この円弧は四角形と同じであり、パスも描画します。塗りつぶしまたはストロークは後で完了する必要があります。
ただし、円の位置判定は長方形の位置判定とは異なることに注意してください。位置を決定する開始点として長方形の左上隅を使用しますが、通常は円の位置を決定するために円の中心を使用します。
水平方向と垂直方向の中心にある四角形と円のセットを描画したい場合は、四角形の始点を円の始点とみなさないように注意する必要があります。円の始点は円の中心です。サークル!


忘れてください。整列した円と長方形の場合、円の中心の座標 = 長方形の座標、長方形の幅と高さの半分です。 つまり、円の中心 x = 長方形 x 長方形の幅 / 2、円 y = 長方形 y 長方形の高さ / 2 です。このようにして、それらは完全に整列されます。
円弧は円を直接描く方法ほど使いやすくはありませんが、私が考えた円を直接描く方法では 3 つのパラメータ、つまり円の中心の座標と半径だけが必要ですが、円弧は円だけでなく半円なども描くことができるので、より強力な機能が使えます。
円があるから楕円もあるはずですが、キャンバスには楕円どころか円を描く正規の関数すらありません。したがって、楕円の描画は他の方法でシミュレートする必要があります。これはさらに複雑なので、後で説明します。
声明
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。
Vue和Canvas:如何实现手写签名和手势识别功能Vue和Canvas:如何实现手写签名和手势识别功能Jul 18, 2023 am 08:49 AM

Vue和Canvas:如何实现手写签名和手势识别功能引言:手写签名和手势识别功能在现代应用程序中越来越常见,它们可以为用户提供更加直观和自然的交互方式。Vue.js作为一款流行的前端框架,搭配Canvas元素可以实现这两个功能。本文将介绍如何使用Vue.js和Canvas元素来实现手写签名和手势识别功能,并给出相应的代码示例。一、手写签名功能实现要实现手写签

如何利用Vue和Canvas创建逼真的天气动态背景如何利用Vue和Canvas创建逼真的天气动态背景Jul 17, 2023 am 08:33 AM

如何利用Vue和Canvas创建逼真的天气动态背景引言:在现代网页设计中,动态背景效果是吸引用户眼球的重要元素之一。本文将介绍如何利用Vue和Canvas技术来创建一个逼真的天气动态背景效果。通过代码示例,你将学习如何编写Vue组件和利用Canvas绘制不同天气场景,从而实现一个独特而吸引人的背景效果。步骤一:创建Vue项目首先,我们需要创建一个Vue项目。

Canvas的优势有哪些Canvas的优势有哪些Aug 17, 2023 pm 04:52 PM

canvas的优势有强大的绘图功能、高性能、跨平台兼容性、支持多种图形格式、可以与其他Web技术集成、可以实现动态效果和可以实现复杂的图像处理。详细介绍:1、Canvas提供了丰富的绘图功能,可以绘制各种形状、线条、文本、图像等;2、Canvas在浏览器中直接操作像素,因此具有很高的性能;3、Canvas是基于HTML5标准的一部分,可以在各种现代浏览器上运行等等。

canvas特效有哪些canvas特效有哪些Aug 18, 2023 pm 04:12 PM

canvas特效有粒子效果、线条动画、图片处理、文字动画、音频可视化、3D效果、游戏开发等。详细介绍:1、粒子效果,通过控制粒子的位置、速度和颜色等属性来实现各种效果,如烟花、雨滴、星空等;2、线条动画,通过在画布上绘制连续的线条,创建出各种动态的线条效果;3、图片处理,通过对图片进行处理,可以实现各种炫酷的效果,如图片切换、图片特效等;4、文字动画等等特性。

canvas插件有哪些canvas插件有哪些Aug 17, 2023 pm 05:00 PM

canvas插件有Fabric.js、EaselJS、Konva.js、Three.js、Paper.js、Chart.js和Phaser。详细介绍:1、Fabric.js 是一个基于Canvas的开源 JavaScript 库,它提供了一些强大的功能;2、EaselJS是CreateJS库中的一个模块,它提供了一套简化了Canvas编程的API;3、Konva.js等等。

Vue和Canvas:如何实现视频播放器的定制化界面Vue和Canvas:如何实现视频播放器的定制化界面Jul 18, 2023 pm 02:49 PM

Vue和Canvas:如何实现视频播放器的定制化界面引言:在现代互联网时代,视频已经成为人们生活中必不可少的一部分。为了提供良好的用户体验,许多网站和应用程序都提供了自定义的视频播放器界面。本文将介绍如何使用Vue和Canvas技术实现一个定制化的视频播放器界面。一、前期准备在开始之前,您需要确保您已经安装了Vue和Canvas,并且熟悉这两种技术的基本用法

Vue和Canvas:如何实现图片的马赛克效果Vue和Canvas:如何实现图片的马赛克效果Jul 16, 2023 pm 10:17 PM

Vue和Canvas:如何实现图片的马赛克效果引言:随着Web技术的不断发展,越来越多的人开始使用Vue框架来构建交互式的前端应用。而在前端开发中,常常需要为用户提供图片处理的功能。本文将介绍如何利用Vue和Canvas实现图片的马赛克效果,为用户带来更好的视觉体验。一、马赛克效果概述马赛克效果是一种将图像的细节部分进行像素化处理,使得整个图像变得模糊和抽象

如何使用Vue和Canvas开发网页截图工具如何使用Vue和Canvas开发网页截图工具Jul 19, 2023 am 08:36 AM

如何使用Vue和Canvas开发网页截图工具简介:随着互联网的发展,网页截图工具在我们的日常生活中扮演着越来越重要的角色。它们可以用来捕捉网页上的信息、制作教程或者分享你的见解。本文将介绍如何使用Vue和Canvas来开发一个简单的网页截图工具,以帮助读者了解如何实现这个常见但又有趣的功能。准备工作:在开始之前,我们需要准备好以下的开发环境和工具:安装Nod

See all articles

ホットAIツール

Undresser.AI Undress

Undresser.AI Undress

リアルなヌード写真を作成する AI 搭載アプリ

AI Clothes Remover

AI Clothes Remover

写真から衣服を削除するオンライン AI ツール。

Undress AI Tool

Undress AI Tool

脱衣画像を無料で

Clothoff.io

Clothoff.io

AI衣類リムーバー

AI Hentai Generator

AI Hentai Generator

AIヘンタイを無料で生成します。

ホットツール

Dreamweaver Mac版

Dreamweaver Mac版

ビジュアル Web 開発ツール

DVWA

DVWA

Damn Vulnerable Web App (DVWA) は、非常に脆弱な PHP/MySQL Web アプリケーションです。その主な目的は、セキュリティ専門家が法的環境でスキルとツールをテストするのに役立ち、Web 開発者が Web アプリケーションを保護するプロセスをより深く理解できるようにし、教師/生徒が教室環境で Web アプリケーションを教え/学習できるようにすることです。安全。 DVWA の目標は、シンプルでわかりやすいインターフェイスを通じて、さまざまな難易度で最も一般的な Web 脆弱性のいくつかを実践することです。このソフトウェアは、

ドリームウィーバー CS6

ドリームウィーバー CS6

ビジュアル Web 開発ツール

EditPlus 中国語クラック版

EditPlus 中国語クラック版

サイズが小さく、構文の強調表示、コード プロンプト機能はサポートされていません

SublimeText3 Linux 新バージョン

SublimeText3 Linux 新バージョン

SublimeText3 Linux 最新バージョン