28-03-2008 18:53:26
- wetneb
- Membres

- Date d'inscription:
- Messages: 29
- IP: 90.56.127.211
- Courriel Site web
Bonsoir,
La question peut parraître idiote (elle l'est sûrement), mais malgré de longues recherches sur le forum officiel, je n'ai pas trouvé comment dessiner un point (en 2D) à l'écran. Des rectangles, des lignes, pas de problème, ça il sait faire, mais un simple pixel...
J'ai vu une méthode qui consistait à modiffier le driver video pour lui ajouter une méthode setPixel(), mais je doûte que ce soit la meilleure méthode (et je n'ai pas tellement envie d'aller trifouiller dans le driver vidéo). J'ai essayé de dessiner une ligne dont le point de départ et le point d'arrivée sont identiques, mais ça n'a pas marché.
Une solution ?
Merci !
Hors ligne
29-05-2008 16:30:06
- Sakamakak
- Membres

- Date d'inscription:
- Messages: 18
- IP: 141.115.28.2
- Courriel
Ça tombe bien je suis à la recherche de la même chose.
j'ai testé le dessin d'une ligne ayant les même coordonnées de départ et d'arrivée. Aucun tracé. ![]()
Toujours pas de solution ?
Hors ligne
29-05-2008 18:47:26
- wetneb
- Membres

- Date d'inscription:
- Messages: 29
- IP: 92.130.30.152
- Courriel Site web
Ben, à priori, rien qui soit vraiment adapté.
Par contre, il est possible qu'en dessinant une ligne dont l'arrivée soit un px plus loin que le départ (dans n'importe quelle direction), on ne dessine qu'un seul px.
ça serait vraiment domage de faire un fork d'irrlicht juste pour ajouter cette feature... ![]()
Hors ligne
30-05-2008 00:02:09
- Copland
- Modérateurs
- Date d'inscription:
- Messages: 657
- IP: 86.210.195.73
- Courriel Site web
Heu j'ai jamais testé, mais pour dessiner un pixel, ta coordonée sera forcément 1 pixel plus loin...
Admétons X = 0, X1 sera = 1 pour 1 pixel... non ?
Si tu mets les même coordonées, c'est logique que ça ne dessine rien. Enfin perso je le vois comme ça.
Config : I5 2400, ATI HD6870 1Go DDR5, 4Go DDR3.
Single Boot : Windows Seven.
Hors ligne
30-05-2008 05:47:15
- wetneb
- Membres

- Date d'inscription:
- Messages: 29
- IP: 92.130.30.152
- Courriel Site web
Pour ma part, je pensais que quand il dessine une ligne, Irrlicht dessine aussi les extrémités quelque soient ses coordonnées.
Hors ligne
30-05-2008 07:53:20
- Sakamakak
- Membres

- Date d'inscription:
- Messages: 18
- IP: 141.115.28.2
- Courriel
En effet, il serait dommage de "forker" irrlicht pour un détail pareil. Je confirme maintenant pour dessiner un pixel, iol suffit de dessiner une ligne ayant des coordonnées de un pixel d'écart (par exemple (X,Y) / (X+1,Y) )
Mais je travaille sur un outil qui doit permettre de dessiner des zones (pour l'instant 2D planaire) et il me faut reproduire le comportement d'un lasso de sélection.
Mais j'ai trouvé ma solution pour dessiner un lasso, c'était assez élémentaire en fait. Voici un exemple si ça intéresse quelqu'un:
void dessinerLasso()
{
//points est un vecteur de points 2D composants le tracé du lasso
if(points.size() >= 2)
{
for(unsigned int i = 1; i < points.size(); i++)
{
driver->draw2DLine(points[i-1], points[i], video::SColor(255, 255, 0,0));
}
}
}Autre chose : Irrlicht fournit-il des algorithmes permettant de déterminer si un élément (un ISceneNode par exemple) est situé dans une zone prédéfinie ?
Hors ligne
30-05-2008 10:12:32
- firnafin
- Membres

- Date d'inscription:
- Messages: 150
- IP: 78.114.49.184
- Courriel
Ahaha, tu veux trouver les nodes "dans" le lasso dessiné a l'ecran c'est ca ?
C'et mathematiquement intéréssant , si besoin demande moi je sais comment faire.
Je ne pense vraiment pas qu'il un telle fonction native d'irrlicht .
Hors ligne
30-05-2008 12:30:33
- Sakamakak
- Membres

- Date d'inscription:
- Messages: 18
- IP: 141.115.28.2
- Courriel
firnafin Ecris:
Ahaha, tu veux trouver les nodes "dans" le lasso dessiné a l'ecran c'est ca ?
C'est exactement ça !
J'ai une scène 3D représentant un arbre de classification phylogénétique d'espèces, la 3D permet plein de manipulations très intéressantes (ça c'était pour préciser le domaine d'application, et merci Irrlicht
L'idée est de permettre à l'utilisateur de tracer un lasso pour sélectionner un ensemble d'espèces, qui ne sont ni plus ni moi que des node de ma scène.
Pour l'instant je travaille sur le tracé du lasso, mais je suis obliger le réaliser en mode pixellaire (vu qu'irrlicht ne fournis pas de tels outils, enfin pas à ma connaissance). Je me retrouve avec la problématique de savoir quels sceneNode sont dans le lasso. (qui lui je le rappelle est en 2D)
Hors ligne
30-05-2008 13:30:40
- firnafin
- Membres

- Date d'inscription:
- Messages: 150
- IP: 78.114.49.184
- Courriel
Ouvre peut etre un autre topic , je ne vais pas te repondre la , on parle deja hors sujet ( rappelle : "Dessiner un point ( juste un px )?" ) . ![]()
Hors ligne
30-05-2008 13:41:01
- Sakamakak
- Membres

- Date d'inscription:
- Messages: 18
- IP: 141.115.28.2
- Courriel
déplacé au topic : Index -> Mathématiques -> Déterminer si un element est situé dans une zone 2D
Hors ligne



