Download

Online

Gallery

Blog

  Index  | Recent Threads  | List Attachments  | Search
 Welcome Guest  |  Register  |  Login
Login Name  Password
 

Sweet Home 3D Forum



No member browsing this thread
Thread Status: Active
Total posts in this thread: 72
Posts: 72   Pages: 8   [ Previous Page | 1 2 3 4 5 6 7 8 | Next Page ]
[ Jump to Last Post ]
Post new Thread
Author
Previous Thread This topic has been viewed 69761 times and has 71 replies Next Thread
fma
Member




Joined: Mar 15, 2010
Post Count: 62
Status: Offline
Reply to this Post  Reply with Quote 
Re: Écrire un plugin pour simuler l'éclairage de la course du soleil

Ok, je vais essayer de trouver plus d'infos sur sunflow ; j'ai remarqué que le truc est sioux, car il tient compte de la position par rapport à l'horizon pour déterminer l'intensité lumineuse. Il joue en particulier sur la lumière diffuse du ciel (on le voit bien au halo au pied des fenêtres, dans la capture ci-dessous)... Mais dans mon cas, ça ne m'arrange pas trop, car lorsque le soleil est bas, je ne vois plus l'ombre projetée... Il faudrait que j'arrive à jouer sur le ratio des 2 types de lumière.

J'ai commencé à bricoler dans le GUI (PhotoPanel), et ajouté 2 spinner, pour l'azimuth et l'élévation (pour l'instant, je calcule ça dans un petit programme python ; je l'intégrerai après dans SweetHome3D, avec, comme tu le suggères, quelque chose pour changer la date et l'heure).

Par contre, j'ai des soucis avec le GUI : l'un des spinner ne fonctionne pas avec les petites flèches. Et aucun des 2 ne conserve sa valeur, ni même n'a la bonne valeur par défaut. J'ai pourtant en principe ajouté tout ce qu'il fallait dans les classes PhotoController et HomeEnvironment...

Est-ce que je peux déposer les classes modifiées quelques part, pour que tu y jettes un oeil, et me dire où je me plante ?


----------------------------------------
Frédéric
[Mar 17, 2010, 7:26:27 PM] Show Printable Version of Post    View Member Profile    Send Private Message [Link] Report threatening or abusive post: please login first  Go to top 
fma
Member




Joined: Mar 15, 2010
Post Count: 62
Status: Offline
Reply to this Post  Reply with Quote 
Re: Écrire un plugin pour simuler l'éclairage de la course du soleil

Voici les classes modifiées...
----------------------------------------
Attachment sh3d-sun-shadow.zip (21990 bytes) (Download count: 1790) (Fichiers HomeEnvironment.java, PhotoRenderer.java, PhotoPanel.java, PhotoController.java)

----------------------------------------
Frédéric
[Mar 18, 2010, 8:37:15 AM] Show Printable Version of Post    View Member Profile    Send Private Message [Link] Report threatening or abusive post: please login first  Go to top 
fma
Member




Joined: Mar 15, 2010
Post Count: 62
Status: Offline
Reply to this Post  Reply with Quote 
Re: Écrire un plugin pour simuler l'éclairage de la course du soleil

J'ai oublié de préciser que je suis parti des sources de la version 2.2, et non pas du dépôt. J'aurais peut-être dû récupérer la 2.3-béta...
----------------------------------------
Frédéric
[Mar 18, 2010, 9:38:31 AM] Show Printable Version of Post    View Member Profile    Send Private Message [Link] Report threatening or abusive post: please login first  Go to top 
Puybaret
Expert
Member's Avatar

France
Joined: Nov 7, 2005
Post Count: 9141
Status: Offline
Reply to this Post  Reply with Quote 
Re: Écrire un plugin pour simuler l'éclairage de la course du soleil

Le spinner de l'azimuth est initialisé avec une valeur 0 qui est en dehors des bornes que tu lui as fixées, et ça ne plait pas au spinner.

Pour corriger, les valeurs des angles par défaut que tu as données dans le constructeur de HomeEnvironment doivent l'être aussi dans le constructeur précédent (désolé je n'ai simplifié l'enchaînement les constructeurs que dans la version 2.3).
Il faut aussi recopier les valeurs des angles de l'objet HomeEnvironment dans l'objet PhotoController en ajoutant à la méthode updateProperties de PhotoController les instructions suivantes :

setSunAzimuth(homeEnvironment.getSunAzimuth());
setSunElevation(homeEnvironment.getSunElevation());


Tu peux rester sur la version 2.2 pour l'instant bien que la version 2.3 gère mieux l'arrêt du rendu. smile
----------------------------------------
Emmanuel Puybaret, Sweet Home 3D developer
[Mar 18, 2010, 6:42:40 PM] Show Printable Version of Post    View Member Profile    Send Private Message [Link] Report threatening or abusive post: please login first  Go to top 
fma
Member




Joined: Mar 15, 2010
Post Count: 62
Status: Offline
Reply to this Post  Reply with Quote 
Re: Écrire un plugin pour simuler l'éclairage de la course du soleil

Ok, vu ! Ça marche mieux, effectivement...

Bon, j'ai porté en java la classe python qui calcule les coordonnées azimutales du soleil en fonction de la date et de l'heure.

Comment coderais-tu la récupération de la date et de l'heure ? Quel widget utiliser ? Existe-t-il quelque chose de haut niveau, ou faut-il passer par des spinner ?
----------------------------------------
Frédéric
[Mar 18, 2010, 7:46:00 PM] Show Printable Version of Post    View Member Profile    Send Private Message [Link] Report threatening or abusive post: please login first  Go to top 
fma
Member




Joined: Mar 15, 2010
Post Count: 62
Status: Offline
Reply to this Post  Reply with Quote 
Re: Écrire un plugin pour simuler l'éclairage de la course du soleil

Bon, j'ai finalement mis 3 spinner : année/mois/jour/heure, et ça marche très bien !

Juste une petite question... Dans la béta 2.3, il y a un mode de prise de vue automatique, pour faire des vidéos :

http://www.sweethome3d.eu/support/forum/viewthread_thread,1362#5314

Est-ce que l'orientation de la caméra est aussi mémorisée ? Si oui, ça va permettre de faire des visites virtuelles : il suffit de générer autant d'images qu'il faut pour couvrir la sphère complète, en tournant simplement la caméra autour d'un point fixe, puis d'utiliser un logiciel comme Autopano Pro (ou Hugin) pour assembler les images, et Pano2Vr pour générer le flash.

Je coderai bien un truc pour générer automatiquement ces images, moi. Je vais transférer mes modifes vers la version 2.3...
----------------------------------------
Frédéric
[Mar 19, 2010, 10:28:24 PM] Show Printable Version of Post    View Member Profile    Send Private Message [Link] Report threatening or abusive post: please login first  Go to top 
Puybaret
Expert
Member's Avatar

France
Joined: Nov 7, 2005
Post Count: 9141
Status: Offline
Reply to this Post  Reply with Quote 
Re: Écrire un plugin pour simuler l'éclairage de la course du soleil

Comme toi sûrement, j'ai un peu cherché sur Internet des composants Swing pour gérer la date et l'heure, mais n'ai rien trouvé de convaincant aussi.

Le module de vidéo gère les 6 caractéristiques de la caméra (coordonnées + angles), et assemble les images avec JMF.

Tu fais bien de passer sous la version 2.3, car j'ai corrigé un bug majeur dans la classe PhotoRenderer hier.
----------------------------------------
Emmanuel Puybaret, Sweet Home 3D developer
[Mar 20, 2010, 6:44:50 AM] Show Printable Version of Post    View Member Profile    Send Private Message [Link] Report threatening or abusive post: please login first  Go to top 
fma
Member




Joined: Mar 15, 2010
Post Count: 62
Status: Offline
Reply to this Post  Reply with Quote 
Re: Écrire un plugin pour simuler l'éclairage de la course du soleil

Concernant le GUI, as-tu pensé à utiliser QtJambi (le binding Java pour Qt) ? Je développe en PyQt (Python Qt), et je peux t'assurer que c'est un vrai bonheur ! Entre le builder (Designer), et le haut niveau des Widgets et classes disponibles, faire le GUI est un jeu d'enfant.

Concernant le module vidéo, je viens de me rendre compte que tu génères directement la vidéo ; ce n'est pas tout à fait ce que je pense faire : j'ai juste besoin de générer un certain nombre d'images à une position fixe, en faisant juste tourner la caméra...

D'ailleurs, où donnes-tu le ratio pour le rendu final ? Je ne le vois pas dans la classe Camera.
----------------------------------------
Frédéric
[Mar 20, 2010, 8:06:58 AM] Show Printable Version of Post    View Member Profile    Send Private Message [Link] Report threatening or abusive post: please login first  Go to top 
Puybaret
Expert
Member's Avatar

France
Joined: Nov 7, 2005
Post Count: 9141
Status: Offline
Reply to this Post  Reply with Quote 
Re: Écrire un plugin pour simuler l'éclairage de la course du soleil

Même si la séparation vue / contrôleur devrait faciliter grandement le passage d'un toolkit à l'autre, on va éviter de changer l'interface dans un avenir proche. wink

De quel ratio parles-tu?
----------------------------------------
Emmanuel Puybaret, Sweet Home 3D developer
[Mar 20, 2010, 9:07:22 AM] Show Printable Version of Post    View Member Profile    Send Private Message [Link] Report threatening or abusive post: please login first  Go to top 
fma
Member




Joined: Mar 15, 2010
Post Count: 62
Status: Offline
Reply to this Post  Reply with Quote 
Re: Écrire un plugin pour simuler l'éclairage de la course du soleil

Même si la séparation vue / contrôleur devrait faciliter grandement le passage d'un toolkit à l'autre, on va éviter de changer l'interface dans un avenir proche. wink

C'est clair que ce ne serait pas trivial...

De quel ratio parles-tu?

Du ratio de l'image finale calculée ; en fait, j'ai trouvé : c'est donné directement à SunFlow.

Par contre, à quoi correspond la focale donnée ? Est-ce la diagonale ? La largeur ? La doc de SunFlow n'est vraiment pas terrible...

J'ai fait des essais en générant des images pour couvrir toute la sphère, mais aucun des logiciels d'assemblage n'arrive à quoi que ce soit. Je ne sais pas si c'est dû à la mauvaise focale (que je force un peu au pif, pour avoir l'angle de champ utilisé), ou si c'est un problème plus sioux, dû au type de la caméra utilisée (pinhole) ? En sais-tu un peu plus, là dessus ? Je viens de relancer des calculs en utilisant la caméra fisheye... On va voir si c'est mieux.

À vue de nez, est-ce que ce serait compliqué de faire un plugin qui générerait les images en se basant sur les réglages effectués dans le PhotoPanel ? Je n'aurais pas besoin de rendu en temps réel, mais juste savoir l'avancement (à quelle photo on en est), et quand c'est fini. Faudrait-il refaire une partie de ce qui est fait dans PhotoPanel (computePhoto, en fait) ? Ou peut-on juste partir sur l'utilisation de PhotoRenderer ? Je n'ai pas tout pigé à quoi servait OffScreenImage, et BufferedImage...
----------------------------------------
Frédéric
[Mar 20, 2010, 6:21:29 PM] Show Printable Version of Post    View Member Profile    Send Private Message [Link] Report threatening or abusive post: please login first  Go to top 
Posts: 72   Pages: 8   [ Previous Page | 1 2 3 4 5 6 7 8 | Next Page ]
[ Jump to Last Post ]
Show Printable Version of Thread  Post new Thread

    Get Sweet Home 3D at SourceForge.net. Fast, secure and Free Open Source software downloads
   
© Copyright 2006-2024 eTeks - All rights reserved