« Découvrir le SVG/Chemins » : différence entre les versions

Contenu supprimé Contenu ajouté
→‎Courbes de Bézier : courbes cubiques/quadratiques (ébauche)
Ligne 71 :
== Arcs elliptiques ==
 
Un chemin peut porter des arcs elliptiques. Un arc relie le point courant (le dernier point déclaré) à un point de destination en respectant un certain nombre de contraintes : les rayons des deux axes et l'inclinaison des axes. Le centre de l'ellipse et l'angle balayé par l'arc sont donc déterminés automatiquement, en suivant deux consignes (puisque l'on peut tracer quatre arcs à partir des contraintes définies) :
<code>A</code>, <code>a</code>
* pour relier les deux points, trace-t-on l'arc le plus grand (représentant un angle de plus de {{unité|180|°}} ou bien l'arc le plus petit ?
* l'arc part-il dans le sens positif (des aiguilles d'une montre) ou bien négatifs ?
 
Le tracé d'un arc elliptique se fait avec l'attribut <code>A</code> (coordonnées absolues) ou bien <code>a</code> (coordonnées relatives) suivi des paramètres suivants, dans l'ordre :
{{...}}
* les rayons selon l'axe des ''x'' et l'axe des ''y'', ''r<sub>x</sub>'' et ''r<sub>y</sub>'' ;
* l'angle de rotation, l'inclinaison de l'axe des ''x'' de l'ellipse par rapport à l'axe des ''x'' du document ;
* un indicateur ''({{lang|en|flag}})'' « grand arc »''({{lang|en|large arc}})'' qui vaut <code>1</code> si l'on trace le grand arc et <code>0</code> si l'on trace le petit arc ;
* un indicateur « balayage » ''({{lang|en|sweep}})'' qui vaut <code>1</code> si l'on trace dans le sens positif (horaire) et <code>0</code> si l'on trace dans le sens négatif (anti-horaire) ;
* les coordonnées du point d'arrivée, ''x'' et ''y''.
Par exemple,
<source lang="xml">
<path
M0 0
A20 20, 15, 0 1, 10 10
/>
</source>
va relier le point (0, 0) au point (10, 10) avec un arc d'ellipse incliné de {{unité|15|°}}, dont le rayon ''x'' vaut 20 et le rayon ''y'' vaut 15, suivant le petit arc dans le sens positif.
 
== Courbes de Bézier ==