UserControl de la forme de l'image ? [Résolu]

Signaler
Messages postés
54
Date d'inscription
mardi 22 mars 2005
Statut
Membre
Dernière intervention
13 mars 2007
-
Messages postés
3246
Date d'inscription
lundi 25 avril 2005
Statut
Modérateur
Dernière intervention
27 octobre 2012
-
Salut.

Je souhaite réaliser un UserControl de la forme d'une image, pour faire mettons un jeu de plateau qui a des cases non carrées. C'est pour pouvoir cliquer dessus case par case, je pensais faire un usercontrol par case.
J'ai vu le principe du GraphicsPath, qui m'a l'air interessant, mais je pige pas trop les coordonnées à rentrer (ok, point par point, mais les coordonnées relatives elles fonctionnent comment ?)
Mon autre solution c'est de choper pixel par pixel, de ranger, et au click on chope X, Y et ca ressort un identifiant de zone.

Bref, il n'y a pas moyen de dire automatiquement "ce UserControl a pour region l'image qui le compose" ? ou de choper la Region de la zone dessinée de l'image pour l'affecter à la region de l'userControl ?

Merci d'avance !

3 réponses

Messages postés
3246
Date d'inscription
lundi 25 avril 2005
Statut
Modérateur
Dernière intervention
27 octobre 2012
39
Salut, c'est pas forcement une bonne idéee d'utiliser un contrôle par case, ça va être trop couteux en terme de performance. Utilises plutôt des sprites. c-à-d une structure qui contient une image et sa position.

Pour delimiter la region d'un contrôle depuis un bitmap :
http://www.csharpfr.com/infomsg_MODIFICATON-DIMENSIONS-PANEL_635176.aspx

Pour les sprites :
http://www.csharpfr.com/infomsg_FAIRE-ASSEMBLAGE-IMAGES_821749.aspx
Messages postés
3246
Date d'inscription
lundi 25 avril 2005
Statut
Modérateur
Dernière intervention
27 octobre 2012
39
Je ne me souviens de Dune que sur Amiga.  par trop compris le truc des secteurs mais si c'est une carte cliquable que tu fais, dans ce cas il faut utiliser la technique de la "color-map", j'explique brièvement le principe ici :

http://www.csharpfr.com/infomsg_GERER-CLIC-SUR-IMAGE-AVEC-FOND-PICTUREBOX_895871.aspx
Messages postés
54
Date d'inscription
mardi 22 mars 2005
Statut
Membre
Dernière intervention
13 mars 2007

Par contre je ne comprend pas très bien ta technique pour le sprite.
Je vais expliciter plus en avant mon problème :

Je souhaite faire une adaptation de Dune le jeu de plateau en version reseau.

En gros, je dois découper le plateau pour le rendre cliquable : http://files.boardgamegeek.com/viewfile.php3?fileid=14933 (attention, Format poster lol)

en gros sur la carte tu as des zones que nous nommerons Secteur (les camemberts) et des régions.
Il faut que je coupe la carte en Regions par secteurs. (en gros je redécoupe une region par l'intersection des secteurs)

Ensuite il faudrait que je ré-assemble le tout pour faire la plateau de jeu cliquable.

Avec ta partie Sprite, si j'ai bien compris, je ferais mon découpage photoshop, je mettrais un fond vert, je mettrais cette couleur de fond en mask.
Par contre, si ca ignore le click, ca prendra en compte celui du control en dessous ?
Et y'a pas de problèmes de chevauchements ? Parce que les cases ne sont pas droites, donc chevauchement de plusieurs "zone verte" du coup ca risque pas de rendre des zones invisibles ?