I3eber
Messages postés1Date d'inscriptionmardi 20 avril 2004StatutMembreDernière intervention28 avril 2004
-
28 avril 2004 à 12:28
ShareVB
Messages postés2676Date d'inscriptionvendredi 28 juin 2002StatutMembreDernière intervention13 janvier 2016
-
25 juin 2004 à 20:17
Jai fait un sous programme dessinant un triangle, ce sous programme est censé egalement remplir ce triangle, mais bien que les coordonées que je transmet a floodfill soient dans le triangle, il remplit l'exterieur. Comment faire??
voici le code de ma sous fonction
Private Sub Triangle(pt1x As Double, pt1y As Double, pt2x As Double, pt2y As Double, pt3x As Double, pt3y As Double)
Picture1.Line (pt1x, pt1y)-(pt2x, pt2y)
Picture1.Line (pt2x, pt2y)-(pt3x, pt3y)
Picture1.Line (pt1x, pt1y)-(pt3x, pt3y)
Picture1.Line (-1, -0.8)-(20, -0.8)
Picture1.Line (-0.8, -1)-(-0.8, 20)
ShareVB
Messages postés2676Date d'inscriptionvendredi 28 juin 2002StatutMembreDernière intervention13 janvier 201626 25 juin 2004 à 20:17
salut
utilise plutot ExtFloodFill (FloodFill est obsolète)
'res = ExtFloodFill(Picture1.hdc, (((((pt1x) + (pt2x)) / 2) + (pt3x)) / 2), (((((pt1y) + (pt2y)) / 2) + (pt3y)) / 2), vbBlack, FLOODFILLBORDER)
il faut par contre que les traits de ton triangle soient noirs (ForeColor vbBlack et FillStyle Solid). Enfin et c de la que vient ton prb, il faut que ScaleMode soit en Pixel et non en twip car FloodFill et ExtFloodFill attendent x et y en pixels