CONNEXION
  • RetourJeux
    • Sorties
    • Hit Parade
    • Les + populaires
    • Les + attendus
    • Soluces
    • Tous les Jeux
    • Gaming
  • RetourActu Gaming
    • News
    • Astuces
    • Tests
    • Previews
    • Toute l'actu gaming
  • RetourBons plans
    • Bons plans
    • Bons plans Smartphone
    • Bons plans Hardware
    • Bons plans Image et Son
    • Bons plans Amazon
    • Bons plans Cdiscount
    • Bons plans Decathlon
    • Bons plans Fnac
    • Tous les Bons plans
  • RetourJVTech
    • Actus High-Tech
    • Intelligence Artificielle
    • Smartphones
    • Mobilité urbaine
    • Hardware
    • Image et son
    • Tutoriels
    • Tests produits High-Tech
    • Guides d'achat High-Tech
    • JVTech
  • RetourCulture
    • Actus Culture
    • Culture
  • RetourVidéos
    • A la une
    • Gaming Live
    • Vidéos Tests
    • Vidéos Previews
    • Gameplay
    • Trailers
    • Chroniques
    • Replay Web TV
    • Toutes les vidéos
  • RetourForums
    • Hardware PC
    • PS5
    • Switch 2
    • Xbox Series
    • Switch
    • Pokemon pocket
    • FC 25 Ultimate Team
    • League of Legends
    • Tous les Forums
  • PC
  • PS5
  • Xbox Series
  • Switch 2
  • PS4
  • One
  • Switch
  • iOS
  • Android
  • MMO
  • RPG
  • FPS
En ce moment Genshin Impact Valhalla Breath of the wild Animal Crossing GTA 5 Red dead 2
Liste des sujets

fonctionalité bibliothèque graphique

dnob700
dnob700
Niveau 10
28 mai 2005 à 23:20:33

bon je sis en train d´écrire une bibliothèque graphique.

C´est pas du tout orienté jeux-vidéo mais c´est plutot das le style de ce qui existe nativement en Basic, en Caml ou dans d´autre langage comme ça, a savoir une manière ultra-simple de tracer des lignes, des cercles et quelques autres trucs, mais sans avoir beaucoup plus de possibilité.

Poru l´insant je gère déjà la couleur, des primitives graphiques simple ( celles évoquées plus haut en plus des rectangles plein ou non) et surtout, le vrai plus par rapport au bibliothèque des langages cités, ma bibliothèque permet le multi-fenêtrage.

Ce genre de lib ( que je destinne à des application comme on nous en fait coder en cours à savoir l´affichage de résultat de problèmes algorithmique) existe probablement déjà, mais je n´en connaissait pas et j´avais pas le temps de chercher donc j´ai coder la mienne.

Seulement le nombre de fonctionnalité que j´ai implémenter me semble assez limité et je me demande ce que vous attendriez d´uen telle bibliothèque si jamais vous aviez besoin de vous en servir.

Donc en gros, je vous demande des idées.

Merci d´avance.

JeanYvesYves
JeanYvesYves
Niveau 10
30 mai 2005 à 14:05:44

Alors pour les outils de dessin, voici les idées que je te propose et quelques astuces, n´hésite pas a me faire part des tiennes, car je suis toujours intéressé par ces algos :)

- Pour les boites remplies, un double for
- Pour les boites vides : 4 lignes horizontales et verticales.
- Pour les lignes quelconques, je te conseille l´algo de Bresenham : tres puissant et rapide
( la méthode de calcul de pente étant lente et faisant des cas particuliers)
- pareil pour les cercles : un algo de bresenham existe aussi.
- pour le disque ( cercle plein) tu peux te baser également sur des lignes horizontales délimitées par bresham, ou alors faire un for de -pi/2 a pi/2 et tracer la ligne horiz de -cos(t), cos(t)
- Pour les polygones quelquconques remplis, un algo de detection d´intersection est nécessaire : a intersection impaire tu es dans le poly, a intersection paire, tu es hors du poly.
- Pour les rotation, utilise les isométries.
- Pour le pot de peinture, une fonction récursive courte est tres puissante.

Qu´est ce que j´oublie ?

Bref, tiens moi au courant ! :)

dnob700
dnob700
Niveau 10
30 mai 2005 à 16:46:12

merci pour ces conseils, mais en fait j´utilise GDI pour les fonctions de ma lib. Donc même s´il faut ruser de tant en temps pour certaines chose avec les différentes fonctions disponible ( pour faire du remplissage par exemple) je n´ai pas besoin de descendre très bas dans l´implémentation.

Quoi que, le pot de peinture pourrait-être interessant et ça je ne croit pas que ça soit fourni tel quel par GDI ( sauf si on rempli en même temps qu´on dessine), je vais voir ce que je peut faire.

Mais globalement cette bibliothèque ( en peu comme l´autre) encapsule des fonctions qui existe déjà mais en les exposant d´une manière tellement simple que tout le monde peut les utiliser ( moi le premier). Là par exemple l´utilisateur échappe à 100% à la gestion des messages ( même s´il peut recevoir s´il le veut les messages du clavier et de la souris), à la gestions des surfaces ou à leur mise à jour quand c´est nécessaire.

Faut dire que l´utilisation de GDI n´est pas des plus intuitive, au début on s´y perd un peu entre les " pen", les " brush", les " path", etc...

Sous forums
  • Aide à l'achat Mac
  • Steam Deck
  • Création de sites web
  • Création de Jeux
  • Linux
  • Programmation
  • Internet
  • Macintosh
  • Hardware
La vidéo du moment