Les membres ayant 30 points peuvent parler sur les canaux annonces, projets et hs du chat.
La shoutbox n'est pas chargée par défaut pour des raisons de performances. Cliquez pour charger.

Forum Casio - Projets de programmation


Index du Forum » Projets de programmation » FXPaint
Cartix Hors ligne Membre Points: 2748 Défis: 98 Message

FXPaint

Posté le 11/08/2014 18:14

Salut à tous. J'ouvre ici un topic pour parler de l'avancement de mon projet d'éditeur de bitmap.
Ajd je n'ai pas le temps de faire un long message, donc je changerai ça demain. Néanmoins, je poste ici ajourd'hui afin de récolter, si possible, des idées d'outils que vous aimeriez voir dans un éditeur d'image.

Voici donc la liste des outils disponibles et celle des outils prévus. Si vous avez d'autres idées, n'hésitez pas à proposer
Outils Disponibles
Cliquer pour enrouler
Dessiner une ligne
Dessiner un rectangle (comme dans le premier .gif)
Fonction de pinceau, comme celle disponible dans le menu SKTCH de l'application GRAPH
Fonction de remplissage (Pot de peinture) (comme à la fin du premier .gif)
Dessiner un cercle
Dessiner une ellipse
Copier-Couper-Coller-Déplacer
Fonction de zoom, permettant de modifier l'image pixel par pixel, de façon précise (comme dans le second .gif)
Ouverture d'une bitmap dans la mémoire de stockage
Enregistrement d'une bitmap dans la mémoire de stockage (Save et Save As)
Ouverture d'une Picture (actuellement il faut avoir transférer cette picture dans la mémoire de stockage, mais j'y travaille)
Enregistrement d'une Picture

Outils Prévus
Cliquer pour enrouler
Exportation sous forme de liste pour le drawstat
Exportation sous forme de sprite pour le LuaFX
Bombe de peinture
Différents motifs de pinceaux/brosse (comme dans paint)



Lephenixnoir En ligne Administrateur Points: 24235 Défis: 170 Message

Citer : Posté le 11/08/2014 19:18 | #


Ben voyons. Et tu crois qu'elle fonctionne comment, la structure ?

Mon graphe (11 Avril): ((Rogue Life || HH2) ; PythonExtra ; serial gint ; Boson X ; passe gint 3 ; ...) || (shoutbox v5 ; v5)
Drac0300 Hors ligne Membre Points: 839 Défis: 39 Message

Citer : Posté le 11/08/2014 19:25 | #


Elle alloue dynamiquement à chaque ajout d'élément.
(ne pas me hurler dessus si c'est pas faisable sur calto)

Ajouté le 11/08/2014 à 19:46 :
Et comme je suis gentil, je mets même ListsLIFO.hpp
struct Element{
Element(int argx,int argy,Element* argprevious)
[purple]int[/purple] x;
[purple]int[/purple] y;
Element* previous;
}

class ListLIFO{

public :
ListLIFO();
~ListLIFO();
void add(int x,int y); [green]
bool depile(int* x,int* y);//renvoie 0 si l[gray]'opération ne s'[/gray]est pas bien passée[/green]

private :
Element* current;
};


et ListLIFO.cpp
[brown]#include [gray]"ListLIFO.hpp"[/gray][/brown]
[brown]#include <stdlib.h>[/brown]

ListLIFO::ListLIFO(){current=NULL;}

Element::Element(int argx,int argy,Element* argprevious){
x=argx;
y=argy;
previous=argprevious;
}


ListLIFO::~ListLIFO(){
[purple]int[/purple] x;
[purple]int[/purple] y;
[b][blue]while[/blue][/b](current!=NULL){
  this[b]->[/b]depile(&x,&y);
}
}

ListLIFO::add(int x, [purple]int[/purple] y){
Element* current2=new Element(x,y,current);
current=current2;
}


ListLIFO::depile(int* x,int* y){
[b][blue]if[/blue][/b] (current!=null){
Element* current2=current;
current=current[b]->[/b]previous;
*x=current2[b]->[/b]x;
*y=current2[b]->[/b]y;
delete current2;
[b][blue]return[/blue][/b] 1;
}
[b][blue]else[/blue][/b] return 0;

}

ListLIFO::isEmpty{
[b][blue]if[/blue][/b](current==NULL) [b][blue]return[/blue][/b] 1;
[b][blue]else[/blue][/b] return 0;
}


Il y a sûrement une ou deux erreurs mais dans le fond, c'est ça

Ajouté le 11/08/2014 à 19:54 :
En fait, c'est un peu une application de ce qui se trouve dans le cours de m@teo21
Dans Z/1Z, 42==666
Coïncidence ? Je ne pense pas.

LienAjouter une imageAjouter une vidéoAjouter un lien vers un profilAjouter du codeCiterAjouter un spoiler(texte affichable/masquable par un clic)Ajouter une barre de progressionItaliqueGrasSoulignéAfficher du texte barréCentréJustifiéPlus petitPlus grandPlus de smileys !
Cliquez pour épingler Cliquez pour détacher Cliquez pour fermer
Alignement de l'image: Redimensionnement de l'image (en pixel):
Afficher la liste des membres
:bow: :cool: :good: :love: ^^
:omg: :fusil: :aie: :argh: :mdr:
:boulet2: :thx: :champ: :whistle: :bounce:
valider
 :)  ;)  :D  :p
 :lol:  8)  :(  :@
 0_0  :oops:  :grr:  :E
 :O  :sry:  :mmm:  :waza:
 :'(  :here:  ^^  >:)

Σ π θ ± α β γ δ Δ σ λ
Veuillez donner la réponse en chiffre
Vous devez activer le Javascript dans votre navigateur pour pouvoir valider ce formulaire.

Si vous n'avez pas volontairement désactivé cette fonctionnalité de votre navigateur, il s'agit probablement d'un bug : contactez l'équipe de Planète Casio.

Planète Casio v4.3 © créé par Neuronix et Muelsaco 2004 - 2024 | Il y a 128 connectés | Nous contacter | Qui sommes-nous ? | Licences et remerciements

Planète Casio est un site communautaire non affilié à Casio. Toute reproduction de Planète Casio, même partielle, est interdite.
Les programmes et autres publications présentes sur Planète Casio restent la propriété de leurs auteurs et peuvent être soumis à des licences ou copyrights.
CASIO est une marque déposée par CASIO Computer Co., Ltd