Tracé d’un cercle rempli à l’aide de la sortinggonomésortinge

Existe-t-il une fonction que je peux créer pour dessiner un cercle rempli à l’aide des fonctions de dessin de base:

  • putpixel(x, y);
  • lineto(x, y);

?


Notez qu’il doit utiliser des fonctions sortinggonomésortingques (videlicet sin , cos etc.) afin que je puisse facilement le transformer en hexagone et même plus loin – un carré ou un autre type de polygone. entrez la description de l'image ici


Et finalement, pas nécessairement mais toujours apprécié s’il n’est pas très lent à dessiner (une boucle devrait suffire je suppose) et encore plus nécessairement, mais toujours plus apprécié s’il n’est pas trop complexe et / ou constitué de plusieurs lignes que nécessaire pour une vie légère.

    Le moyen le plus rapide de dessiner un cercle rempli avec lineto est le suivant

     for each value of y that lies within the circle { compute the corresponding x values draw a line between (x1,y) and (x2,y) } 

    entrez la description de l'image ici

    Pour convertir le cercle en polygone, vous pouvez calculer les sumts du polygone en fonction du rayon des cercles et de l’angle par rapport à chaque sumt. Par exemple, avec un hexagone, les angles sont 0, 60, 120, 180, 240 et 300 degrés. Avec un carré, les angles sont 45, 135, 225 et 315. Une fois que vous avez les sumts du polygone, vous pouvez calculer les valeurs x1 et x2 pour chaque valeur y fonction des équations des lignes entre les sumts.

    entrez la description de l'image ici