Dessiner un rectangle en biais?

liban123 Messages postés 19 Date d'inscription mercredi 9 février 2005 Statut Membre Dernière intervention 14 mars 2005 - 9 mars 2005 à 15:36
cs_bigpapa Messages postés 3 Date d'inscription lundi 14 mars 2005 Statut Membre Dernière intervention 16 mars 2005 - 14 mars 2005 à 11:09
Salut a tous!

je suis super coincé!!!

Je voudrai dessiner des rectangles dont les coté ne sont pas forcéments parrallèles aux axes X et Y.

Je souhaiterais par la suite remplire ce rectangle d'une couleur uniforme.

En réalité, j'arrive à tracé les rectangles que je veus en traçant 4 segments, 2 a 2 parrallèles mais je n'arrive pas a trouver comment remplir l'interieur des rectangle d'une couleur.

Je sais qu'en utilisant l'instruction "object.Line.....,color,BF" j'obtien un resultat, mais ces rectangles auront forcéments leurs coté parrallèles au axes X et Y...et ce n'est pas bon pour mon application!

Auriez vous une solution?

Je vous remerci énormément!

2 réponses

cs_bigpapa Messages postés 3 Date d'inscription lundi 14 mars 2005 Statut Membre Dernière intervention 16 mars 2005
14 mars 2005 à 11:06
Utilise cos(rad) et sin(rad)
...rad= degré * (4 * Atn(1) / 180)

par exemple , pour faire une ligne bleu dont la largeur =100, la hauteur=200, l'angle=10, la position x=90 et la posilion y=40, on écrit:
an * (4 * Atn(1) / 180)
---------------------------------
Object.line(90,40)-(90+200*sin(10*(4 * Atn(1) / 180)),40+100*cos(10*(4 * Atn(1) / 180))),rgb(0,0,255)
---------------------------------

C'est-à-dire:
Object.line(x, y)-(x+largeur*sin(angle*(4*Atn(1) / 180)), y+hauteur*cos(angle*(4*Atn(1) / 180))), couleur

Dans cet exemple, Object peut etre form1, image1, picture1, etc

Pour faire des rectangles, trouve la pente de la 2e droite, sa valeur en x et y et fait en sorte que le programme trouve toutes les lignes parallèles a la première!

Bonne chance!


__
Big Papa
__</gras>
0
cs_bigpapa Messages postés 3 Date d'inscription lundi 14 mars 2005 Statut Membre Dernière intervention 16 mars 2005
14 mars 2005 à 11:09
Erreur... la largeur=200, la hauteur=100


__
Big Papa
__</gras>
0
Rejoignez-nous