Processing, j'apprend j'apprend!

  • Auteur de la discussion floooooooooo_84
  • Date de début

floooooooooo_84

Nouveau membre
bonjours!!!! voila y'a t'il un dieu du logiciel "processing" pour me sauver la vie?
c'est simple, je suis en train de faire les tutoriel sur le site dans l'ordre (malgré ma défaillance indéniable en anglais) et je réussi a comprendre a peu prêt tout en me concentrant bien. Seulement voila, arrivé a un certain point je commence a ne plus comprendre, alors j'aimerai si vous pouviez avoir plus d'explication alors je lance "l'exemple auquel je suis" et j'annote entre parrenthese ce que je comprend pas.
j'en suis a l'étape des "arrays" et rien que le concept j'arrive pas a comprendre
alors voila:

Cell[][] grid;
(je ne comprend déja pas ce que sont "cell et grid", ok c'est deux variable changeable mais a quoi cela sert?)


int cols = 10;
int rows = 10;
(la je comprend qu'on enregistre des valeurs pour les 2 termes)

void setup() {
size(200,200);
grid = new Cell[cols][rows];
for (int i = 0; i < cols; i++) {
for (int j = 0; j < rows; j++) {
grid[j] = new Cell(i*20,j*20,20,20,i+j);
}
}
}
ici se que je comprend pas c'est :"grid=new cell" (pourquoi new?), je ne comprend pas non plus ce que signifie "i++" et "j++" et la je ne comprens pas du tout: " grid[j] = new Cell(i*20,j*20,20,20,i+j);"

void draw() {
background(0);

for (int i = 0; i < cols; i++) {
for (int j = 0; j < rows; j++) {
// Oscillate and display each object
grid[j].oscillate();
grid[j].display();
}
}
}
ici j'ai encore le probleme des ++ mais aussi je comprend pas pourquoi on met pas oscillate et display directement au lieu de rajjouter "grid [j]


class Cell {
float x,y;
float w,h;
float angle;
Cell(float tempX, float tempY, float tempW, float tempH, float tempAngle) {
x = tempX;
y = tempY;
w = tempW;
h = tempH;
angle = tempAngle;
}
(comprend pas du tout la)

void oscillate() {
angle += 0.02;
}

(pourquoi y a t'il un +?)

void display() {
stroke(255);
fill(127+127*sin(angle));
rect(x,y,w,h);


voila merci de votre aide, c'est vraiment important , je doit créé un logiciel d'ici 2 mois et je galère rien qu'avec les bases....
 

floooooooooo_84

Nouveau membre
[cpp]Cell[][] grid; [/cpp]
(je ne comprend déja pas ce que sont "cell et grid", ok c'est deux variable changeable mais a quoi cela sert?)

[cpp]
int cols = 10;
int rows = 10; [/cpp]
(la je comprend qu'on enregistre des valeurs pour les 2 termes)

[cpp]void setup() {
size(200,200);
grid = new Cell[cols][rows];
for (int i = 0; i < cols; i++) {
for (int j = 0; j < rows; j++) {
grid[j] = new Cell(i*20,j*20,20,20,i+j);
}
}
} [/cpp]
ici se que je comprend pas c'est :"grid=new cell" (pourquoi new?), je ne comprend pas non plus ce que signifie "i++" et "j++" et la je ne comprens pas du tout: " grid[j] = new Cell(i*20,j*20,20,20,i+j);"

void draw() {
background(0);

[cpp]for (int i = 0; i < cols; i++) {
for (int j = 0; j < rows; j++) {
// Oscillate and display each object
grid[j].oscillate();
grid[j].display();
}
}
} [/cpp]
ici j'ai encore le probleme des ++ mais aussi je comprend pas pourquoi on met pas oscillate et display directement au lieu de rajjouter "grid [j]


[cpp]class Cell {
float x,y;
float w,h;
float angle;
Cell(float tempX, float tempY, float tempW, float tempH, float tempAngle) {
x = tempX;
y = tempY;
w = tempW;
h = tempH;
angle = tempAngle;
} [/cpp]
(comprend pas du tout la)

[cpp]void oscillate() {
angle += 0.02;
} [/cpp]

(pourquoi y a t'il un +?)

[cpp]void display() {
stroke(255);
fill(127+127*sin(angle));
rect(x,y,w,h);[/cpp]
 

zeb

Modérateur
Bonjour,

Ah, là, c'est mieux :)
Au moins sur la forme, parce que sur le fond, :ouch:

J'ai déplacé ce sujet dans la cat' C/C++ parce que processing se rapproche tellement du beau langage céplusplus.

Je pense que tu devrais commencer par apprendre les rudiments du C puis du C++. On trouve facilement des cours et des tutoriels sur ces langages sur la toile. Cela te serait d'une aide essentielle.

Par exemple :
Code:
Cell[][] grid;
Ceci est la définition d'une variable grid comme tableau à deux dimension dont chaque cellule est de type Cell. C'est du C. (On observe plus loin que Cell n'est pas un type C mais une classe C++)

Autre exemple:
Code:
i++;
C'est encore du C. C'est un raccourcit pour
Code:
i=i+1;
(Avec la notion de pré/post-opération mais c'est trop en dire ;) à ce niveau)

Puisque Cell est une classe, il faut l'instancier. C'est le rôle de l'opérateur new et de la définition du constructeur Cell(). Là encore on est en plein C++.

Alors à moins de te faire un cours de C++, je te propose plutôt que tu te formes à ces deux langages. Les ressources sont faciles à trouver sur le net.

Si tu as d'autres questions, n'hésite pas ;)
 

floooooooooo_84

Nouveau membre
salut zeb!Déja merci pour ta réponse.
j'ai bien évidemment d'autres questions. La je viens de voir les cours de processing sur le site "d'école d'art d'aix en provence" y'a des très bon cours et en français! J'en sais déja un peu plus sur processing, mais toujours pas suffisament.

pour c++ tu as surement raison, il y'a forcément des raccords entre les deux et apprendre l'un évolue forcément ma capacité pour l'aute: le pb c'est qu'il ne me reste que quelques semaines pour réaliser mon programme (que je n'ai d'ailleur toujours pas commencé, favorisant l'apprentissage)... On m'a dit que C++ était un language plutot compliqué, et je n'aurais pas le temps de l'apprendre.

mon apprendtissage de processing terminé, je n'ai toujours pas les bases nécéssaire pour faire mon programme du moin je ne sais pas comment procédé... Est ce que vous savez comment créer dans processing: une zone texte, et un bouton clicable (validable?) pour ce texte?

ensuite la deuxieme question j'ai besoin de en fonction de ce que la personne écrie dans cette zone texte, d'une suite de carrée de couleurs qui s'affiche (autrement dit que quand la personne écrit, cela agisse directement sur le code héxadécimal de la couleur de petit carrés citués en dessous de la zone.
vous avez des idées la dessus? (ou des "librairie") a me conseiller que je pourrai ajouter a processing?


(une derniere chose, j'arrive plus a me connecter avec mon pseudo et je comprend pas pourquoi^^ mais bon c'est moin important^!^^)

(ah bin si finalement ca a marché!)
 
M

Membre supprimé 1

Invité
Processing est un langage basé sur Java et Java ressemble beaucoup au C++. Le problème est surtout que tu t'attaques à un code orienté-objet ce qui peut devenir laborieux en commençant.

Les librairies les plus complètes se retrouvent ici:
En voici une autre fournissant des éléments d'interface:

Pour le reste, fouille dans la documentation de Processing: , particulièrement fill() et rect().

C'est malheureux mais plutôt que d'apprendre le C++, il te serait plus utile d'apprendre l'anglais...

 
M

Membre supprimé 1

Invité
Je n'ai pas compris comment marche les courbes et tout les tralala.
J'essaye mais c assez dure de faire une courbe exactement comme je le veux ^^.
On pourrait m'expliquer ?
 
Vous devez vous inscrire ou vous connecter pour répondre ici.
Derniers messages publiés
Statistiques globales
Discussions
730 125
Messages
6 717 791
Membres
1 586 361
Dernier membre
Florian3549
Partager cette page
Haut