[DEFI] Dessiner

Vous débutez et vous avez besoin d'aide ? N'hésitez pas à poser vos questions
Backup
Messages : 14526
Inscription : lun. 26/avr./2004 0:40

Re: [DEFI] Dessiner

Message par Backup »

bon , je donne ma langue a la chatte ! :)
Avatar de l’utilisateur
djes
Messages : 4252
Inscription : ven. 11/févr./2005 17:34
Localisation : Arras, France

Re: [DEFI] Dessiner

Message par djes »

J'aurais bien voulu participer, mais il y a un truc qui m'échappe dans l'énoncé, du coup j'ai renoncé.
J'ai quand même regardé du côté de Bresenham car j'adore cet algo, et j'ai trouvé deux très beaux liens :

Pleins d'algos pour le tracé de lignes, de cercles, de courbes avec ou sans antialiasing:
http://members.chello.at/easyfilter/bresenham.html

Un vieil algo qui mériterait (peut-être) d'être remis au goût du jour.
http://www.zoo.co.uk/~murphy/thickline/index.html
Mesa
Messages : 1126
Inscription : mer. 14/sept./2011 16:59

Re: [DEFI] Dessiner

Message par Mesa »

Il faut trouver une procédure comme celle-ci:
Procedure rectangle(X0,Y0, X1, Y1, E, Couleur)
...
EndProcedure


A(X0;Y0) et B(X1;Y1) sont fixés, par exemple A(100,100) et B(200,50)
E est l'"épaisseur du rectangle", par exemple E=30, et Couleur est la couleur du trait.
Par exemple : rectangle(100,100,200, 50, 30, RGB(255,255,0))


Il faut donc trouver les coordonnées des 2 points manquants C(x2,y2) et D(x3,y3) pour former et dessiner ce rectangle.

Sauf que dans cette procédure, il ne faut utiliser que : +, -, *, /, sqr, line() et lineXY().

A(x0,y0)_________________B(x1,y1)
.........|......................|
.........|......................|
.........|......................|
C(x2,y2)_________________D(x3,y3)
UN INDICE
Si vous regarder le 1er code de cette page
http://www.purebasic.fr/english/viewtop ... 40&t=58231
vous serez capable de faire une rotation d'un point d'un angle de 90° très facilement...
Vous pouvez donc dessiner un carré très facilement aussi,non ?
Alors pourquoi pas un rectangle !

M.
Backup
Messages : 14526
Inscription : lun. 26/avr./2004 0:40

Re: [DEFI] Dessiner

Message par Backup »

tu peux rotationer de 90 deg , mais pas de 33 , 54 ...
Avatar de l’utilisateur
Micoute
Messages : 2584
Inscription : dim. 02/oct./2011 16:17
Localisation : 35520 La Mézière

Re: [DEFI] Dessiner

Message par Micoute »

Dobro a écrit :tu peux rotationer de 90 deg , mais pas de 33 , 54 ...
Peut-être pas, mais des sous multiples de 90, avec un diviseur, ça doit être faisable !
Microsoft Windows 10 Famille 64 bits : Carte mère : ASRock 970 Extreme3 R2.0 : Carte Graphique NVIDIA GeForce RTX 3080 : Processeur AMD FX 6300 6 cœurs 12 threads 3,50 GHz PB 6.20 LTS (x64)
Un homme doit être poli, mais il doit aussi être libre !
Avatar de l’utilisateur
Fig
Messages : 1176
Inscription : jeu. 14/oct./2004 19:48

Re: [DEFI] Dessiner

Message par Fig »

djes a écrit :J'aurais bien voulu participer, mais il y a un truc qui m'échappe dans l'énoncé, du coup j'ai renoncé.
J'ai quand même regardé du côté de Bresenham car j'adore cet algo, et j'ai trouvé deux très beaux liens :

Pleins d'algos pour le tracé de lignes, de cercles, de courbes avec ou sans antialiasing:
http://members.chello.at/easyfilter/bresenham.html

Un vieil algo qui mériterait (peut-être) d'être remis au goût du jour.
http://www.zoo.co.uk/~murphy/thickline/index.html
Le premier est un très bon lien.
Il y a deux méthodes pour écrire des programmes sans erreurs. Mais il n’y a que la troisième qui marche.
Version de PB : 6.00LTS - 64 bits
Mesa
Messages : 1126
Inscription : mer. 14/sept./2011 16:59

Re: [DEFI] Dessiner

Message par Mesa »

@Dobro
L'indice ne parle pas de rotatutionaliser le rectangle en entier mais 1 point seulement... 8)

@Fig
Je vais traduire le code C en PB et commencer une bibliothèque 2D que j'appellerai "Shape".
Avatar de l’utilisateur
Fig
Messages : 1176
Inscription : jeu. 14/oct./2004 19:48

Re: [DEFI] Dessiner

Message par Fig »

Je crois que Bresenham (le cercle au moins) a déja été codé... Fait une recherche :wink:
Sinon, tu nous le donne le code de ce défit ? :mrgreen:
Il y a deux méthodes pour écrire des programmes sans erreurs. Mais il n’y a que la troisième qui marche.
Version de PB : 6.00LTS - 64 bits
Mesa
Messages : 1126
Inscription : mer. 14/sept./2011 16:59

Re: [DEFI] Dessiner

Message par Mesa »

Et voilà.
La réponse est dans le premier post. :D

Mesa.
Répondre