Novembre 2024 | Lun | Mar | Mer | Jeu | Ven | Sam | Dim |
---|
| | | | 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | 9 | 10 | 11 | 12 | 13 | 14 | 15 | 16 | 17 | 18 | 19 | 20 | 21 | 22 | 23 | 24 | 25 | 26 | 27 | 28 | 29 | 30 | | Calendrier |
|
|
| 3D_WORLD 3!!! | |
| | Auteur | Message |
---|
bignono
Nombre de messages : 1127 Age : 67 Localisation : Val de Marne Date d'inscription : 13/11/2011
| Sujet: 3D_WORLD 3!!! Mer 8 Fév 2012 - 0:16 | |
| Bonsoir à tous les panoramiciens, Je viens de finir de coder 3d_world 3!!! Dès que je peux, je m'attaque à l'aide. Demain je n'aurais pas le temps, donc ne comptez pas avoir le programme avant jeudi ou vendredi le temps que je fasse aussi quelques tests. Bon, les changements: Ajout dans le menu vue d'une fonction "Centrer Objet" qui permettra de remettre directement au point 0,0,0 un objet sélectionné. Dans le même menu, ajout de la fonction "Aligner Objet" qui permettra de recentrer un objet sur un seul axe (X ou Y ou Z). Rajout d'un menu Formes 3d: On pourra comme dans le menu objet 3d créer des objets, c'est à dire que vous avez le choix entre une pyramide, un tube, un dôme ou un ovoïde. Egalement vous pourrez sélectionner la forme Polygone qui vous donnera accès à des formes plates comme le 3d_plane, à savoir: le cercle, le 1/2 cercle, un triangle rectangle, un triangle, un losange, un pentagone, un hexagone, un heptagone, un octogone,un énnéangone, un décagone, un dodécagone, un pentadécagone, un icosagone, une étoile et un soleil. Tout ça c'est très pratique, j'ai fait un seau avec le tube et le cercle! Rajout d'une liste de commandes les plus utilisées disponibles au clic droit de la souris sur la scène 3d. Et pour finir dans le menu "vue", fonction "se déplacer" rajout du déplacement latéral, ce qui m'a permis de faire sur les 4 flèches le déplacement que l'on connaît déjà, (flèches haut= avance, bas= recule, gauche= rotation à gauche et droite= rotation à droite) et sur le pavé numérique chiffres 8= avance, 2=recule, 4= déplacement latéral gauche et 6=déplacement latéral droit. Si vous avez des propositions d'amélioration à me soumettre, n'hésitez pas. A bientôt | |
| | | Jicehel
Nombre de messages : 5947 Age : 52 Localisation : 77500 Date d'inscription : 18/04/2011
| Sujet: Re: 3D_WORLD 3!!! Mer 8 Fév 2012 - 10:00 | |
| Excellent bonne continuation | |
| | | bignono
Nombre de messages : 1127 Age : 67 Localisation : Val de Marne Date d'inscription : 13/11/2011
| Sujet: Re: 3D_WORLD 3!!! Jeu 9 Fév 2012 - 11:21 | |
| Bonjour à tous, La version 3 est arrivée: Vous pouvez télécharger tout sur: http://www.mydrive.ch/identifiant: panoramic@bignono mot de passe: panoramic123 Installez tout dans le dossier c:\3d_world et ça devrait marcher! Si vous avez déjà installez 3d_world2 avant, lisez d'abord la fin du fichier 00àlire.txt. 9a vous évitera de supprimer et recopier tout. N'oubliez pas de me faire part des éventuels bugs que vous pourriez trouver. Merci d'avance et bonne 3d à tous! Cordialement | |
| | | bignono
Nombre de messages : 1127 Age : 67 Localisation : Val de Marne Date d'inscription : 13/11/2011
| Sujet: Re: 3D_WORLD 3!!! Jeu 9 Fév 2012 - 17:42 | |
| Bon, je reviens sur le sujet, car je viens de m'appercevoir d'un tout petit bug dans mon programme. Pour ceux qui utilise le source, fichier 3d_world3.bas, il faut aller dans la section "---Tuiles de l'objet 3d_plane---" qui doit se situer entre les lignes 1246 et 1281 du programme et changer cette partie: - Code:
-
if clicked(152)=1 trace=0:ligne$(i)="":for q=0 to n-1:ligne$(i)=ligne$(i)+seg$(q)+"*":next q:' reconstitue ligne$(i) exit_while end_if
par ceci: - Code:
-
if clicked(152)=1 trace=0:ligne$(i)="":for q=0 to n-1:ligne$(i)=ligne$(i)+seg$(q)+"*":next q:' reconstitue ligne$(i) vx=val(seg$(17)):vy=val(seg$(18)) exit_while end_if
Merci de votre attention | |
| | | lodchjo
Nombre de messages : 162 Age : 53 Localisation : Anvers Date d'inscription : 26/12/2011
| Sujet: Re: 3D_WORLD 3!!! Ven 10 Fév 2012 - 12:14 | |
| J'ai testé et c'est très bien fait, bravo! Perso, j'ai eu du mal a me déplacer, a l'origine, il n'y avait que 'H' et 'B' qui marchaient. Après qqs temps, j'ai enfin découvert comment faire marcher le reste. C'est que je bosse sur un ordi portable et pour le "4", le "6", le "+", "-", ... je dois utiliser SHIFT, ce qui est repéré autrement de Panoramic. Finalement, ça marche quand j'utilise la touche "Fn" (blue) pour avoir les chiffres, + et -. (Je raconte pour le cas ou d'autres panoramiciens auront la même problème.) Et tout cas: génial ton programme! Lode | |
| | | bignono
Nombre de messages : 1127 Age : 67 Localisation : Val de Marne Date d'inscription : 13/11/2011
| Sujet: Re: 3D_WORLD 3!!! Ven 10 Fév 2012 - 13:15 | |
| Merci bien Lode, Moi aussi, j'ai un portable mais avec le pavé numérique et les flèches directionnelles à part. Donc pas de problème pour moi. C'est vrai que je n'ai pas pensé à ceux qui ont un portable dont le pavé numérique est accessible par la touche Fn. A l'origine je voulais faire ce programme juste pour moi, mais comme j'aime bien partager mes connaissances, c'est mieux pour tout le monde. On y gagne tous! Là je voudrais intégrer aux positionnements des objets un scroll bar pour améliorer le confort d'utilisation tout en gardant les "button" de -0.01 à +10. C'est Klaus qui avec sa dernière fonction télécommande dans son EDI m'a redonné envie de m'attaquer au problème. J'avais déjà essayé de le faire dans ma première ébauche du programme il y a 1 mois et demi, mais j'avais laissé tombé au profit des boutons qui me semblaient plus simples à programmer. Je cherche encore mais ça me parait difficile à réaliser. Bonne journée à toi et n'hésite pas à me faire part de tes remarques sur mon prog. | |
| | | Klaus
Nombre de messages : 12331 Age : 75 Localisation : Ile de France Date d'inscription : 29/12/2009
| Sujet: Re: 3D_WORLD 3!!! Ven 10 Fév 2012 - 13:21 | |
| Pour te donner un coup de main, voici mon proto-type que j'ai utilisé pour mettre au point ma "télé-commande". Le code est très réduit, mais on peut déplacer et redimensionner un bouton et un mémo, en les sélectionnant par un combo placé en haut du sélécteur. - Code:
-
label c_objet, c_hor, c_ver, c_wid, c_hgt, replacer, fermer
dim selected%, s$, i%, x%, y% dim border% : border% = 0 dim ln$ : ln$ = chr$(13)+chr$(10)
button 10 : top 10,10 : left 10,10 : caption 10,"Bouton"
memo 20 : top 20,50 : left 20,100
form 100 : command_target_is 100 top 100,10 : left 100,650 height 100,385 : width 100,358 if border%=0 then border_hide 100 : height 100,350 : width 100,350 if border%=1 then height 100,385 : width 100,358
if border%=0 picture 99 : top 99,1 : left 99,1 : width 99,348 : height 99,348 color 99,color_pixel_red(0,0,0),color_pixel_green(0,0,0),color_pixel_blue(0,0,0) 2d_target_is 99 2d_pen_color 122,150,223 2d_fill_color color_pixel_red(0,0,0),color_pixel_green(0,0,0),color_pixel_blue(0,0,0) 2d_pen_width 8 2d_rectangle 1,1,349,349 2d_target_is 0 end_if
combo 101 : top 101,20 : left 101,20 item_add 101,"button 10" item_add 101,"memo 20" on_change 101,c_objet
scroll_bar 102 : top 102,60 : left 102,120 : width 102,150 min 102,0 : max 102,width(0)-width(10)-8 : position 102,left(10) on_change 102,c_hor scroll_bar 103 : top 103,150 : left 103,20 : vertical 103 : height 103,150 min 103,0 : max 103,height(0)-height(10)-35 : position 103,top(10) on_change 103,c_ver
scroll_bar 104 : top 104,80 : left 104,70 : width 104,150 min 104,0 : max 104,width(0)-8-left(10) : position 104,left(10) on_change 104,c_wid scroll_bar 105 : top 105,100 : left 105,50 : vertical 105 : height 105,150 min 105,0 : max 105,height(0)-35-top(10) : position 105,top(10) on_change 105,c_hgt alpha 106 : top 106,20 : left 106,170 : caption 106,"objets" alpha 107 : top 107,50 : left 107,60 : caption 107,"Gauche ->" alpha 108 : top 108,50 : left 108,20 : caption 108,"H"+ln$+"a"+ln$+"u"+ln$+"t"+ln$+" "+ln$+"|"+ln$+"v" alpha 109 : top 109,80 : left 109,230 : caption 109,"<- Largeur" alpha 110 : top 110,260 : left 110,60 : caption 110,"^- Hauteur"
button 111 : top 111,280 : left 111,230 : caption 111,"Fermer" on_click 111,fermer end
fermer: hide 100 return replacer: x% = left(0) + width(0) + 20 if x%+width(100)>screen_x then x% = screen_x - width(100) top 100,10 : left 100,x% return c_objet: s$ = text$(101) i% = instr(s$," ") selected% = val(mid$(s$,i%+1,len(s$))) position 102,left(selected%) position 103,top(selected%) position 104,width(selected%) position 105,height(selected%) gosub replacer return c_hor: if selected%=0 then return max 102,width(0)-width(selected%)-8 left selected%,position(102) return c_ver: if selected%=0 then return max 103,height(0)-height(selected%)-35 top selected%,position(103) return
c_wid: if selected%=0 then return max 104,width(0)-left(selected%)-8 width selected%,position(104) return c_hgt: if selected%=0 then return max 105,height(0)-top(selected%)-35 height selected%,position(105) return
| |
| | | bignono
Nombre de messages : 1127 Age : 67 Localisation : Val de Marne Date d'inscription : 13/11/2011
| Sujet: Re: 3D_WORLD 3!!! Ven 10 Fév 2012 - 13:59 | |
| Bonjour Klaus, Je te remecie, mais toute la partie télécommande de ton programme je l'ai bien assimilée. Mon problème à moi, c'est qu'il faut que je concilie plusieurs évènements ensembles. Il faut que si j'actionne un bouton, la valeur de l'édit change (c'est ce qui se passe actuellement), mais aussi que la position sur le scroll bar change. La même chose à l'inverse si c'est le scroll_bar qui est actionné. D'autre part, les valeurs min et max de chaque scroll_bar pour les axes x y z doivent être calculées en fonction de la position de l'objet sur la scène. Si l'objet est au point z=10, il évoluera sur une valeur x de -20 à +20, si sa position est à z=20 il évoluera de par exemple -50 à +50. Il faut qu'il reste visible à l'écran avec le scroll bar. Si sa position z est inférieur à 1, donc pas visible à l'écran, car situé derrière la caméra, le scroll bar doit être inactif. Les difficultés sont tout autre en 3d. Je ne dis pas qu'il n'y a pas de solution, mais je piétine pour l'instant. Merci de ton attention, pour l'instant il faut que je m'absente. A + | |
| | | lodchjo
Nombre de messages : 162 Age : 53 Localisation : Anvers Date d'inscription : 26/12/2011
| Sujet: Re: 3D_WORLD 3!!! Ven 10 Fév 2012 - 14:34 | |
| Bignono, C'est un très bon programme! T'en fait pas pour moi. Je voulais juste signaler. On ne peut pas prévoir tout, n'est-ce-pas? Je suis très content que tu partages avec nous et j'ai trouvé comment faire . Je regarderai plus tard comment faire pour repérer avec ET sans "SHIFT". Lode | |
| | | Contenu sponsorisé
| Sujet: Re: 3D_WORLD 3!!! | |
| |
| | | | 3D_WORLD 3!!! | |
|
| Permission de ce forum: | Vous ne pouvez pas répondre aux sujets dans ce forum
| |
| |
| |