Maison interface Web Tutoriel H5 Tutoriel de dessin sur toile html5 (5) : méthode d'arc pour dessiner des courbes dans les compétences du didacticiel canvas_html5

Tutoriel de dessin sur toile html5 (5) : méthode d'arc pour dessiner des courbes dans les compétences du didacticiel canvas_html5

May 16, 2016 pm 03:50 PM
canvas

Dans cet article Dessiner des lignes sur toile, j'ai expliqué comment dessiner des lignes droites. Logiquement, cet article sur le dessin de courbes aurait dû être publié depuis longtemps, mais comme dessiner des courbes sur toile est assez particulier, je ne l'ai pas fait. Je ne l'ai pas encore compris, alors essayez-le étape par étape.
L'une des difficultés du dessin de courbes dans Canvas est qu'il n'y a que 4 fonctions pour les courbes ! Ce sont arc, arcTo, quadraticCurveTo et bezierCurveTo. Permettez-moi de commencer par la méthode d'arc la plus simple.
La fonction de l'arc est de tracer un arc régulier, qui peut être un cercle complet ou un certain arc de cercle. La syntaxe de arc est la suivante : 🎜>

context.arc(x, y, radius, startAngle, endAngle, antihoraire)
Je vais vous expliquer ses paramètres, c'est-à-dire
arc(centre du cercle x, centre du cercle y, rayon, angle de départ, angle de fin, dans le sens inverse des aiguilles d'une montre ou non)

Que devons-nous faire si nous utilisons l'arc pour dessiner un cercle complet ? Tout le monde a remarqué qu'il y a un angle de départ et un angle de fin dans les paramètres. Si notre angle de départ est de 0 et l'angle de fin est de 360, n'est-ce pas un cercle parfait ?
Bonne réponse ! Mais il convient de noter que l'angle est ici exprimé en « radians » (il en va de même pour Flash). Un cercle complet fait 360 degrés, soit 2PI radians. On écrit donc comme ceci :


Copiez le code


Le code est le suivant :


ctx.arc(400,400,20,0,Math.PI*2 ctx.fill(); >
Comme lineTo, arc est également un chemin de dessin, nous devons donc appeler la méthode de remplissage ou de trait derrière lui pour afficher les graphiques (le style de trait rouge et le style de remplissage rouge translucide sont utilisés dans l'image).
Traçons maintenant un 1/4 de cercle, l'angle est de 90 degrés. Comme mentionné précédemment, un angle de 360 ​​degrés est de 2PI radians, donc un angle d'un degré est de 2PI/360=PI/180 radians, puis 90 degrés est de 2PI/360*90=PI/2 radians (veuillez calculer les autres angles par vous-même. ).

Copier le code


Le code est le suivant :


ctx.arc(400,400, 20,0 ,Math.PI*2/4);




À partir de la figure, nous pouvons déterminer que 0 degré d'arc est 0 degré couramment utilisé en mathématiques , mais l'angle par défaut est L'aiguille des heures est ouverte, ce qui est opposé au modèle mathématique (il est lié aux coordonnées, car les coordonnées du canevas sont également opposées aux coordonnées mathématiques).
Mais n'y a-t-il pas un paramètre devant pour déterminer si c'est dans le sens inverse des aiguilles d'une montre ? Et si on le mettait à vrai ?
Copier le code

Le code est le suivant :

ctx.arc(400,400, 20,0 ,Math.PI*2/4,true);




Vous verrez que l'angle devient dans le sens inverse des aiguilles d'une montre, ce qui fait que l'arc devient 360 -90. =270 degrés.
Mais ! Une chose à laquelle tout le monde devrait prêter attention est que la méthode de calcul du point de départ et du point final commence toujours à partir de 0 degré et s'étend dans le sens des aiguilles d'une montre. Il n'y a pas d'avant et d'arrière. Dans le sens horaire et antihoraire ne sont que les directions dans lesquelles les arcs sont dessinés.
Cela évite non seulement les allers-retours de confusion, mais facilite également les calculs. Cependant, une utilisation flexible dans le sens inverse des aiguilles d'une montre peut parfois être utile. Dans l'exemple ci-dessus, nos angles de départ sont tous 0. Essayons maintenant d'autres angles de départ, tels que 90 degrés.

Copier le code

Le code est le suivant :

ctx.arc(400,400, 20,Math .PI*2/4,Math.PI*2 Math.PI);


Si notre point de départ est de 90 degrés et que le point final est également de 90 degrés, le résultat est que rien peut être dessiné, j'ai donc mis le point final. L'angle a été modifié à 180 degrés, et finalement le graphique ci-dessous a été obtenu.


Question : Si on trace un cercle complet à partir d'un point de départ autre que 0 degré, est-ce que ça va ? Bien sûr, vous pouvez, à condition de définir le point final de l'arc sur l'angle de départ de 360 ​​degrés, comme :
Copier le code

Codez comme suit :

ctx.arc(400,400,20,Math.PI*2/4,Math.PI*2 Math.PI*2/4); /Le point de départ est de 90 degrés, le point final est de 360 ​​​​90 degrés


Cependant, cette approche ne fait que chercher les ennuis, et les gens normaux ne l'utiliseraient pas.
Résumé : La méthode de l'arc de Canvas est un moyen de dessiner un arc positif. Elle ne peut dessiner que des arcs positifs et ne peut pas dessiner d'autres arcs étranges, tels que la forme en S - même si je préfère celui-ci. -en forme.
Déclaration de ce site Web
Le contenu de cet article est volontairement contribué par les internautes et les droits d'auteur appartiennent à l'auteur original. Ce site n'assume aucune responsabilité légale correspondante. Si vous trouvez un contenu suspecté de plagiat ou de contrefaçon, veuillez contacter admin@php.cn

Outils d'IA chauds

Undresser.AI Undress

Undresser.AI Undress

Application basée sur l'IA pour créer des photos de nu réalistes

AI Clothes Remover

AI Clothes Remover

Outil d'IA en ligne pour supprimer les vêtements des photos.

Undress AI Tool

Undress AI Tool

Images de déshabillage gratuites

Clothoff.io

Clothoff.io

Dissolvant de vêtements AI

Video Face Swap

Video Face Swap

Échangez les visages dans n'importe quelle vidéo sans effort grâce à notre outil d'échange de visage AI entièrement gratuit !

Outils chauds

Bloc-notes++7.3.1

Bloc-notes++7.3.1

Éditeur de code facile à utiliser et gratuit

SublimeText3 version chinoise

SublimeText3 version chinoise

Version chinoise, très simple à utiliser

Envoyer Studio 13.0.1

Envoyer Studio 13.0.1

Puissant environnement de développement intégré PHP

Dreamweaver CS6

Dreamweaver CS6

Outils de développement Web visuel

SublimeText3 version Mac

SublimeText3 version Mac

Logiciel d'édition de code au niveau de Dieu (SublimeText3)

Quelles écoles utilisent la toile ? Quelles écoles utilisent la toile ? Aug 18, 2023 pm 05:59 PM

Les écoles utilisant Canvas comprennent l'Université de Stanford, le MIT, l'Université de Columbia, l'Université de Californie, Berkeley, etc. Introduction détaillée : 1. L'Université de Stanford utilise Canvas comme principale plate-forme d'apprentissage en ligne. Les enseignants et les étudiants de l'Université de Stanford utilisent Canvas pour gérer et communiquer le contenu des cours et apprendre grâce à des fonctions telles que les discussions en ligne, les soumissions de devoirs et les examens. L'Institut polytechnique et le MIT utilisent également Canvas comme système de gestion de l'apprentissage en ligne et gèrent les cours via la plateforme Canvas 3. Columbia University, etc.

Que sont les plug-ins de flèches de canevas ? Que sont les plug-ins de flèches de canevas ? Aug 21, 2023 pm 02:14 PM

Les plug-ins de flèches du canevas incluent : 1. Fabric.js, qui possède une API simple et facile à utiliser et peut créer des effets de flèche personnalisés ; 2. Konva.js, qui fournit la fonction de dessiner des flèches et peut créer diverses flèches ; styles ; 3. Pixi.js, qui fournit des fonctions de traitement graphique riches et peut obtenir divers effets de flèche ; 4. Two.js, qui peut facilement créer et contrôler des styles de flèches et des animations 5. Arrow.js, qui peut créer divers effets de flèche ; ; 6. Rough .js, vous pouvez créer des flèches dessinées à la main, etc.

Quels sont les détails de l'horloge en toile ? Quels sont les détails de l'horloge en toile ? Aug 21, 2023 pm 05:07 PM

Les détails de l'horloge sur toile incluent l'apparence de l'horloge, les graduations, l'horloge numérique, les aiguilles des heures, des minutes et des secondes, le point central, les effets d'animation, d'autres styles, etc. Introduction détaillée : 1. Apparence de l'horloge, vous pouvez utiliser Canvas pour dessiner un cadran circulaire comme apparence de l'horloge, et vous pouvez définir la taille, la couleur, la bordure et d'autres styles du cadran 2. Lignes d'échelle, tracez des lignes d'échelle dessus ; le cadran pour représenter les heures ou les minutes. Position ; 3. Horloge numérique, vous pouvez dessiner une horloge numérique sur le cadran pour indiquer l'heure et les minutes actuelles ; 4. Aiguille des heures, aiguille des minutes, aiguille des secondes, etc.

Apprenez le cadre de canevas et expliquez en détail le cadre de canevas couramment utilisé Apprenez le cadre de canevas et expliquez en détail le cadre de canevas couramment utilisé Jan 17, 2024 am 11:03 AM

Explorez le framework Canvas : Pour comprendre quels sont les frameworks Canvas couramment utilisés, des exemples de code spécifiques sont nécessaires. Introduction : Canvas est une API de dessin fournie en HTML5, grâce à laquelle nous pouvons obtenir des graphiques et des effets d'animation riches. Afin d'améliorer l'efficacité et la commodité du dessin, de nombreux développeurs ont développé différents frameworks Canvas. Cet article présentera certains frameworks Canvas couramment utilisés et fournira des exemples de code spécifiques pour aider les lecteurs à mieux comprendre comment utiliser ces frameworks. 1.Cadre EaselJSEa

Quelles versions de html2canvas existe-t-il ? Quelles versions de html2canvas existe-t-il ? Aug 22, 2023 pm 05:58 PM

Les versions de html2canvas incluent html2canvas v0.x, html2canvas v1.x, etc. Introduction détaillée : 1. html2canvas v0.x, qui est une première version de html2canvas. La dernière version stable est la v0.5.0-alpha1. Il s'agit d'une version mature qui a été largement utilisée et vérifiée dans de nombreux projets ; 2. html2canvas v1.x, il s'agit d'une nouvelle version de html2canvas.

uniapp implémente comment utiliser Canvas pour dessiner des graphiques et des effets d'animation uniapp implémente comment utiliser Canvas pour dessiner des graphiques et des effets d'animation Oct 18, 2023 am 10:42 AM

Comment utiliser Canvas pour dessiner des graphiques et des effets d'animation dans Uniapp nécessite des exemples de code spécifiques 1. Introduction Avec la popularité des appareils mobiles, de plus en plus d'applications doivent afficher divers graphiques et effets d'animation sur le terminal mobile. En tant que framework de développement multiplateforme basé sur Vue.js, uniapp offre la possibilité d'utiliser un canevas pour dessiner des graphiques et des effets d'animation. Cet article présentera comment Uniapp utilise Canvas pour obtenir des effets de graphique et d'animation, et donnera des exemples de code spécifiques. 2. toile

Quelles sont les propriétés de la toile tkinter ? Quelles sont les propriétés de la toile tkinter ? Aug 21, 2023 pm 05:46 PM

Les attributs du canevas tkinter incluent bg, bd, relief, width, height, curseur, highlightbackground, highlightcolor, highlightthickness, insertbackground, insertwidth, selectbackground, selectforeground, les attributs xscrollcommand, etc. Présentation détaillée

Explorez le rôle puissant et l'application du canevas dans le développement de jeux Explorez le rôle puissant et l'application du canevas dans le développement de jeux Jan 17, 2024 am 11:00 AM

Comprendre la puissance et l'application du canevas dans le développement de jeux Présentation : Avec le développement rapide de la technologie Internet, les jeux Web deviennent de plus en plus populaires parmi les joueurs. En tant qu'élément important du développement de jeux Web, la technologie Canvas a progressivement émergé dans le développement de jeux, démontrant sa puissance et ses applications puissantes. Cet article présentera le potentiel du canevas dans le développement de jeux et démontrera son application à travers des exemples de code spécifiques. 1. Introduction à la technologie Canvas Canvas est un nouvel élément HTML5 qui nous permet d'utiliser

See all articles