bonjour
Je cherche a faire un programme (voir mes aciens post, je sais, je spam un peut, mais je n'ai que peut de réponses), je cherche juste des "pistes" pour ceux-ci.
Par contre la je bute un peut sur un truc, l'importateur JPEG que j'aimerais convertir en importateur 3ds ou obj, j'ai convertis quelques trucs mais ça ne fonctionne pas...
... Quelques pistes (pour le moment je privilégie l'objloader)?
/** filechooser taken from http://processinghacks.com/hacks:filechooser @author Tom Carden */ import javax.swing.*; // set system look and feel try { UIManager.setLookAndFeel(UIManager.getSystemLookAndFeelClassName()); } catch (Exception e) { e.printStackTrace(); } // create a file chooser final JFileChooser fc = new JFileChooser(); // in response to a button click: int returnVal = fc.showOpenDialog(this); if (returnVal == JFileChooser.APPROVE_OPTION) { File file = fc.getSelectedFile(); // see if it's an image // (better to write a function and check for all supported extensions) if (file.getName().endsWith("jpg")) { // load the image using the given file path PImage img = loadImage(file.getPath()); if (img != null) { // size the window and show the image size(img.width,img.height); image(img,0,0); } } else { // just print the contents to the console // note: loadStrings can take a Java File Object too String lines[] = loadStrings(file); for (int i = 0; i < lines.length; i++) { println(lines[i]); } } } else { println("Open command cancelled by user."); }
Dernière modification par Malleat (2012-09-08 18:11:09)
Hors ligne
c'est le code modifié que tu as posté ?
Hors ligne
Non, j'ai carrement repris le code de base, ça ne va pas dans celui que j'ai fait, il y a trop d'erreur, et les corrections entraînent d'autres problèmes donc j'ai choisis de reprendre le truc.
Notez juste que je ne demande pas que vous me fassiez le code, mais juste qu vous me dite ce qu'il y a, a vus de nez, à changer.
Voila l'ancien, et il pose trop de problème à mon gout (j'aimerais réessayer avec de nouvelles pistes histoire d'apprendre de mes conneries):
import saito.objloader.*; /** filechooser taken from http://processinghacks.com/hacks:filechooser @author Tom Carden */ import javax.swing.*; OBJModel obj; // set system look and feel try { UIManager.setLookAndFeel(UIManager.getSystemLookAndFeelClassName()); } catch (Exception e) { e.printStackTrace(); } // create a file chooser final JFileChooser fc = new JFileChooser(); // in response to a button click: int returnVal = fc.showOpenDialog(this); if (returnVal == JFileChooser.APPROVE_OPTION) { File file = fc.getSelectedFile(); // see if it's an image // (better to write a function and check for all supported extensions) if (file.getName().endsWith("obj")) { // load the image using the given file path obj = new OBJModel(this, file.getPath()); obj.debugMode(); if (obj != null) { // size the window and show the image size(obj.width,obj.height,P3D); } } else { // just print the contents to the console // note: loadStrings can take a Java File Object too String lines[] = loadStrings(file); for (int i = 0; i < lines.length; i++) { println(lines[i]); } } } else { println("Open command cancelled by user."); }
Hors ligne
Je sais pas d'où tu sors ce vieux code mais pourquoi tu n'utilises pas la fonction selectInput()?
exemple d'utilisation avec PImage mais utilisable avec un objModel:
PImage img; void setup() { size(600, 600); } void draw() { if (img!=null) image(img, 0, 0); } void mousePressed() { String loadPath = selectInput(); // Opens file chooser if (loadPath == null) { // If a file was not selected println("No file was selected..."); } else { // If a file was selected, print path to file println(loadPath); if(loadPath.substring(loadPath.length()-4).equals(".jpg")) img=loadImage(loadPath); } }
Hors ligne
HO PUNAISE!!!
Je sortais ça d'un autre topic... ça veut dire que en la couplant avec la librairy IP5, je peux faire une fenêtre d'importation s'ouvrant directement en cliquant sur un bouton!! ça m'enlève une énorme épine du pied là!!!!!
Si je peux abuser un peut, vous auriez une piste pour afficher un obj (que je vais importer avec ce code) mais genre comme cela (une librairy ou n'importe quoi qui pourrait me faire avancer):
http://www.youtube.com/watch?v=UI7mtRI1-Qg
Je précise que j'utilise déjà peasycam pour le faire bouger, mais allez savoir comment séparer l'écran en Quatre et afficher les faces de l'objet >.< (une énigme même sur forum.processing)...
Hors ligne
le plus simple : quatre objet, que tu manipules en prenant compte de la vue, tu les dessines via des PGraphics ou PImages, ainsi tu peux faire ta rotation, pour les mettres en croix, et que l'objet ne passe pas dans une autre vue.
Peut être même est il possible de placer les caméras différement dans chaque PImage ou Pgraphics, et ainsi éviter le recalcul a chaque fois de ta rotation et translation de ton objet.
Par contre je pense pas que tu pourras conserver peasycam, il faudra te tourner vers une solution de camera mouse driven maison
Le plus complexe : http://forum.processing.org/topic/multi … -3d-object
Hors ligne
Donc, importer le même objet, sous 4 angles dans 4 caméras classiques ?
Hors ligne
Pages: 1