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 |
|
|
| comment se fait la collision? | |
| | Auteur | Message |
---|
mindstorm
Nombre de messages : 685 Age : 55 Localisation : charente Date d'inscription : 13/02/2013
| Sujet: comment se fait la collision? Mar 19 Nov 2013 - 23:36 | |
| bonsoir j avance sur mon imprimante 3D mais la collision panoramic me pose un souci si quelqu un a une idee? - Code:
-
dim i,y,a ,j label testy , testcoll rem créer un monde 3D scene3d 1 :full_space 1
3d_cube 12,1 3d_color 12,2,2,2 3d_scale 12,1,1,1 3d_collision_as_cube 12
3d_cube 11,1 3d_color 11,247,32,8 3d_scale 11,0.5,0.5,0.5 3d_position 11,0,1,0 3d_collision_as_cube 11
for i=1 to 10 pause 10 gosub testy 3D_x_rotate 12,(i*8)
next i end
testy: for j=1 to 5000 gosub testcoll if a =0 y=(0.5*(j*-0.005)) 3d_y_position 11,a else message "contact" pause 500 3d_y_position 11,1 return
end_if next j
return
testcoll: a=o3D_collision (12,11) return la collision ne se fait pas a la surface j'ai testé plusieurs objets et 3d_mesh bizar | |
| | | treehouse
Nombre de messages : 28 Localisation : UK Date d'inscription : 21/10/2013
| Sujet: Re: comment se fait la collision? Dim 24 Nov 2013 - 14:41 | |
| Bonjour mindstorm. Je pense que la collision à la surface sera vrai quand un objet est dans une autre. Cela semble être ce que vous avez fait. Je pense que la collision à la surface d'abord déclencher lorsque des objets se rapprochent et touche à leurs surfaces. Collision à un point ignorera la surface et déclenche à la «position» (x, y, z) de l'objet, et les autres substituer la forme réelle de l'objet avec une forme approximative (cube, ellipsoïde, sphère). Quand vous avez écrit: - Code:
-
if a =0 y=(0.5*(j*-0.005)) 3d_y_position 11,a ... (a=0)...je me demande si vous vouliez - Code:
-
3d_y_position 11,y (Mais cela pourrait aussi mettre un cube à l'intérieur de l'autre. Je n'ai pas encore calculé.) Si vous déplacez la camera à - Code:
-
cam_position 4,0,0 point_position 0,0,0 et faire - Code:
-
3d_transparent 12,200
vous pouvez voir plus. | |
| | | mindstorm
Nombre de messages : 685 Age : 55 Localisation : charente Date d'inscription : 13/02/2013
| Sujet: Re: comment se fait la collision? Dim 24 Nov 2013 - 21:16 | |
| hello treehouse thank you for your help Unfortunately, the problem is the same. I can not determine the height of a contact scanner subject I may be try changing of scale
malheureusement le probleme est le même. je n'arrive pas a determiner la hauteur du contact pour scanner l'objet merci
have a good week | |
| | | mindstorm
Nombre de messages : 685 Age : 55 Localisation : charente Date d'inscription : 13/02/2013
| Sujet: Re: comment se fait la collision? Dim 24 Nov 2013 - 22:17 | |
| voici la derniere version ce n'est pas parfait mais cela marche suffisament pour le test - Code:
-
dim i,y,a ,j label testy , testcoll rem créer un monde 3D scene3d 1 :full_space 1 cam_position 4,0,0 point_position 0,0,0
3d_teapot 12 3d_color 12,2,2,2 3d_scale 12,2,2,2 3d_collision_as_faces 12 3d_transparent 12,200
3d_cube 11,0.05 3d_color 11,247,32,8 3d_position 11,0,1,0 3d_collision_as_cube 11
for i=1 to 30 pause 10 gosub testy 3D_x_rotate 12,(i*8)
next i end
testy: for j=1 to 4000 gosub testcoll pause 100 if a =0 y=1.2+(0.05*(j*-2)) 3d_y_position 11,y else message "contact" pause 500 3d_y_position 11,1 return
end_if next j
return
testcoll: a=o3D_collision (12,11) return bonne soirée | |
| | | treehouse
Nombre de messages : 28 Localisation : UK Date d'inscription : 21/10/2013
| Sujet: Re: comment se fait la collision? Lun 25 Nov 2013 - 2:26 | |
| La théière est probablement une exception (et autres objets complexes). En outre, notez que la scene3D a perspective. Si vous êtes près de cube, le scanner semble être à l'intérieur (si le cube est transparent), mais se repose sur le dessus et l'on peut voir à travers le côté. Ici, j'ai fait un cube opaque encore et soulevé la caméra juste au-dessus du cube. Il semble fonctionner. - Code:
-
dim i,y,a ,j label testy rem créer un monde 3D scene3d 1 :full_space 1 cam_position 4,1.3,0 point_position 0,0,0 light_position 20,4,20
3d_cube 12,2 3d_color 12,12,20,200 ' 3d_scale 12,2,2,2 3d_collision_as_faces 12 ' 3d_transparent 12,200
3d_cube 11,0.05 3d_color 11,247,32,8 3d_collision_as_cube 11
for i=1 to 30 pause 10 y=2.5 3d_position 11,0,y,0 gosub testy 3D_x_rotate 12,(i*8) next i end
testy: while o3D_collision(12,11)=0 if scancode=27 then terminate y=y-0.01 3d_y_position 11,y end_while message "contact at "+str$(y) return
| |
| | | mindstorm
Nombre de messages : 685 Age : 55 Localisation : charente Date d'inscription : 13/02/2013
| Sujet: Re: comment se fait la collision? Lun 25 Nov 2013 - 21:10 | |
| to Treehouse you're right, it works with the cube. Study after my mistake was on the equation Y has not covered the scanner area. The purpose is to scan a 3D object to be reproduced by the digital control. The detail is in projet imprimante 3D. to thank you again for help. Apres etude mon erreur etait sur l'equation de Y qui ne couvrait pas la zone a scanner. | |
| | | Contenu sponsorisé
| Sujet: Re: comment se fait la collision? | |
| |
| | | | comment se fait la collision? | |
|
Sujets similaires | |
|
| Permission de ce forum: | Vous ne pouvez pas répondre aux sujets dans ce forum
| |
| |
| |