Pour info, tu peux définir la fréquence d'affichage des frames avec la fonction frameRate() dans le setup().
Avec frameRate(2), les image s'afficheront deux fois par seconde sans avoir à utiliser un delay().
Hors ligne
Dont acte! Marche nickel!
Au prochain écueil!
Dernière modification par Pilou (2015-12-23 01:31:01)
Hors ligne
Un petit aparté qui n'a rien à voir avec ce qui précède!
Existe-t-il quelque chose de très simple qui permette l'export en format OBJ (format standard de la 3D) ?
Une connaissance me dit ceci qu'il a trouvé sur ce sujet, qui me rend perplexe!
citation :
J'ai vu des choses en Processing qui permettaient d'exporter des données 3D en OBJ, mais en regardant les bibliothèques utilisées, c'était d'un niveau de programmation un peu au-dessus des mes possibilités
Il n'y a aucun caractère d'urgence, c'est les fêtes, juste une information avisée sur ce sujet!
Dernière modification par Pilou (2015-12-24 01:18:47)
Hors ligne
Il existe une librairie pour exporter directement des .obj, c'est la librairie OBJExport :
https://github.com/nervoussystem/OBJExport
Tu peux la télécharger directement par l'IDE de Processing.
Hors ligne
Retour de fêtes que je vous souhaite joyeuses!
Quelques questions!
Une d'ordre pratique : il n'est pas possible de sauvegarder le code pour ici avec les couleurs de l'éditeur?
De manière générale : on ne peut ouvrir qu'une seule fenêtre de sortie avec Processing?
(par exemple le "graphique" de l'image qui ici chevauche)
Souci de sorti d'index de tableau! Quand on sort la souris de la fenêtre!
Thème du jour : Examen de la ligne de couleur horizontale sous la souris histoire de voir
les sauts de couleurs qui vont différencier les différents styles d'une image!
Si on devait les mettre bout à bout il faudrait une feuille de 200 mètres!
Je ne vois pas le code à l'arrivée sur le forum alors que je le vois chez moi! Je le mets en pièce jointe!
Dernière modification par Pilou (2016-08-31 11:10:18)
Hors ligne
Bonjour,
Il est possible d'activer la coloration syntaxique dans Codelab en ajoutant le nom du langage dans la balise code :
code=processing
Il y a actuellement un bug qui empêche l'affichage du code quand dans les commentaires, il y a des caractères accentués.
Pour l'ouverture d'une seconde fenêtre, je ne saurais trop te conseiller d'aller faire un tour ici :
http://wiki.labomedia.org/index.php/Pro … de_fenêtre
Comme tu mets des images dans ton code, il est préférable de compresser le dossier de ton sketch pour que nous ayons tous les éléments pour t'aider efficacement.
Si tu as des problèmes, tu peux contraindre des valeurs à rester dans un intervalle avec la méthode constrain() :
https://processing.org/reference/constrain_.html
Hors ligne
Bizarre ce bug des accents! Encore un coup des francophobes!
Parfait la colorisation syntaxique!
Les problèmes de la souris en dehors de la fenêtre : je croyais d'après la doc que cela était géré automatiquement
et qu'il n'y avait pas à s'en soucier!
OK je joints le fichier précédent "avec les images"! (il y a même du rab
(a-t-on un maximum d'envois en "poids" total cumulé post après post sur le forum ? )
Excellent les fenêtres multiples!
Bon à savoir le truc des accents dans le code!
Par mimétisme, je me suis permis une troisième fenêtre, "sans accent" of course!
Pas sûr que mon déroulé soit orthodoxe!
void settings() { size(200, 400); } void setup() { PApplet.runSketch(platformNames, new SecondApplet()); PApplet.runSketch(platformNames, new ThirdApplet()); } void draw() { background(0); ellipse(50, 50, 10, 10); } public class SecondApplet extends PApplet { public void settings() { size(400, 200); } public void setup() { surface.setTitle("Titre de ma seconde fenetre"); } public void draw() { background(255); fill(0); ellipse(100, 50, 10, 10); } } public class ThirdApplet extends PApplet { public void settings() { size(400, 200); } public void setup() { surface.setTitle("Titre de ma fenetre 3"); } public void draw() { background(255); fill(0); ellipse(100, 50, 30, 30); } }
Dernière modification par Pilou (2015-12-30 11:51:57)
Hors ligne
Question d'ordre général: faut-il apprendre Processing classique ou passer directement à P5.js ? Les deux ?
Y a-t-il une différence de "puissance" ? De vitesse ? ...
Le tout pour une utilisation "fun", soft, pour finir ses vieux jours paisiblement!
Dernière modification par Pilou (2015-12-30 11:59:45)
Hors ligne
Si ton objectif est de faire dans ton coin de la poésie avec des bits, je te conseille de commencer avec Processing parce qu'il a l'avantage d'en être à sa troisième version stable, d'avoir plus de librairie, d'être très bien documenté, d'avoir tout un tas de forum qui apportent tout un de réponses à tout un tas de questions et, surtout, de proposer un IDE qui fournit un environnement fonctionnel out-of-the-box.
P5.js est tout jeune et nécessite tout de même de se familiariser avec le HTML et le CSS pour pouvoir bien en profiter (sans parler du JavaScript, qu'il faut connaître indépendamment de P5.JS, là où il n'est pas nécessaire de maîtriser le Java pour écrire des sketchs avec Processing).
Il n'a pas non plus (pour l'instant, mais c'est en projet) d'IDE spécifique et oblige donc à se créer un environnement optimal pour pouvoir développer rapidement.
Ensuite, pour m'être mis récemment à P5.js, je trouve la syntaxe du JavaScript un peu rebutante (pour la création de class, par exemple).
Mais, le gros avantage, c'est que tu peux partager facilement ton travail avec le monde entier plutôt que de le laisser tout seul dans ton dossier sketchbook...
En terme de "puissance", Processing est plus "rapide" que P5.JS.
Voilà pour moi...
Hors ligne
Merci de cette réponse qui m'éclaire en cette fin d'année!
Y a plus qu'à!
Dernière modification par Pilou (2015-12-31 00:15:33)
Hors ligne
Ah c'était trop beau!
Comment envoyer les données d'une fenêtre à l'autre ?
Je suppose en passant les paramètres mais bon...encore un peu balourd...
(fichier joint)
PImage joko; int c=0; int my; int x; void settings() { size(999, 999); } void setup() { PApplet.runSketch(platformNames, new SecondApplet()); frameRate(50); joko = loadImage("joc2.jpg"); } void draw() { image(joko, 0, 0,999,999); my=mouseY; loadPixels(); for (int x=0; x<1000; x++){ color c=pixels[x+(my*width)]; stroke(c); c=abs(c%255); line(x,999,x,999-c); // comment envoyer ce dessin ? } } public class SecondApplet extends PApplet { public void settings() { size(999, 499); } public void setup() { surface.setTitle("Titre de ma seconde fenetre"); } public void draw() { background(125); line(x,499,x,499-c); // comment recevoir ces valeurs ? } }
Dernière modification par Pilou (2015-12-31 03:43:20)
Hors ligne
Bonjour,
Il faut voir ta second fenêtre comme une application Processing à part entière, donc il faut reconstruire tes lignes une à une.
Plutôt que de rescanner l'image, j'ai stocké les informations dans un tableau global que la seconde fenêtre lit ensuite. Mais cela demande beaucoup de ressource processeur.
PImage joko; int my; int x; color c; int[] ligne = new int[1000]; PApplet deuxiemeFenetre; void settings() { size(999, 999); } void setup() { deuxiemeFenetre = new SecondApplet(); runSketch(new String[] {"Seconde fenetre" }, deuxiemeFenetre); frameRate(50); joko = loadImage("joc2.jpg"); } void draw() { image(joko, 0, 0, 999, 999); my=mouseY; loadPixels(); for (int x=0; x<1000; x++) { c=pixels[x+(my*width)]; stroke(c); c=abs(c%255); ligne[x] = c; line(x, 999, x, 999-c); } } public class SecondApplet extends PApplet { public void settings() { size(999, 499); } public void setup() { surface.setTitle("Titre de ma seconde fenetre"); } public void draw() { background(255); for (int x=0; x<1000; x++) { line(x, this.height, x, this.height-ligne[x]); } } }
Hors ligne
Ah d'accord, donc faire deux fois la même chose, ou tout du moins engranger quelque chose de déjà présent n'est pas très efficace!
Il vaut mieux agrandir l'écran normal et partitionner à l'intérieur!
En espérant que l'utilisateur a une hauteur d'écran suffisante!
Pourquoi les mot clés (?) PApplet, RunSketch, surface.setTitle, height... ne sont pas dans la doc Processing ?
Dernière modification par Pilou (2015-12-31 12:13:13)
Hors ligne
Processing reste quand même un langage de prototypage. Il a été conçu pour que des artistes s'en saisissent facilement.
Si tu souhaite réaliser une application qui demande beaucoup de ressource, il faut peut-être envisager de passer à un langage type C++ ou java, mais l'apprentissage est plus ardu.
Ainsi, la documentation fournie sur processing.org est faite pour les méthodes basiques. Si tu souhaites ouvrir le capot du moteur, voici la documentation complète :
http://processing.github.io/processing-javadocs/core/
Hors ligne