et encore un chti :p (pb de colision) [ALGO/MATHS] - Programmation
Marsh Posté le 15-10-2001 à 11:13:18
precisions:
-on bosse en 3D donc sur x,y,z
-vitesse de la petite bulle constante
-pas de gravité
Marsh Posté le 15-10-2001 à 11:19:23
1 - Une petite bulle de savon ne peut pas etre dans une grande...
2- Les deux bulles sont spheriques donc quand il y a collision le contatct est le point de tangeance, la force de reaction est donc perpendiculaire a la suface de tangeance (parallele a l'axe forme par les centre des deux spheres) en admettant qu'il n'y a pas d'aherence/repulsion entre les spheres...
Marsh Posté le 15-10-2001 à 11:26:13
Citation : 1 - Une petite bulle de savon ne peut pas etre dans une grande... |
-le coup des bulles de savon ct pour etre + explicite en gros c'est simu par 2 sphere sur lordi c'est tout
-pour les rebonds ca metonerrais si la bulle qui se trouve dans la grosse (la petite koi) ne prend pas comme trajectoire un rayon de la sphere son rebond serrat pas perpendiculaire (koi ke )
-et le point dimpact ??? comment on peut le choper (coord x,y,z)
sachant ke les seuls data de ma chtit bulle c'est centre + rayon
(a coup de trigo ca doit se trouver facile ca je pense)
Marsh Posté le 15-10-2001 à 11:38:03
Le point d'impact sera situé sur la droite passant par le centre des deux sphères si je ne m'abuse...
Marsh Posté le 15-10-2001 à 11:42:12
Mais koulip, si t capable de calculer les coordonnées du déplacement de ces 2 sphères, que tu connais leur équations, bref, que tu maitrises l'analyse de tout ça, ça doit pas être le plus compliqué de calculer ce point d'impact ... j'pense pas qu'ici, à part quelques suggestions, tu trouves une vraie réponse mathématique !
Marsh Posté le 15-10-2001 à 11:46:27
oui,
on a la flemme de retrouver la formule dans un boucquin ou de la re-pondre
Marsh Posté le 15-10-2001 à 11:49:05
C ça, c la flemme. Parce que, bien sur, on connais tous l'équation du déplacement d'une sphère dans une autre sphère...
Marsh Posté le 15-10-2001 à 11:49:27
El Gringo -> ben ouais mais comme sur le net leurs rebonds ils les calculent a partir de surfaces planes .... donc la je me demande si ca change kke chose ou ces explications sont corects ...
requin-> pas con ca ji avais pas pensse koi ke tout faux si la petite bulle na pas une trajectoire == a un rayon de la grosse exemple la petite bulle a force de rebond dans la grosse se retrouve avec une trajectoire perpendiculaire a un raon kel konque de la grosse bulle en utilisant ta technique le point d'impact a un moment T serrat tout faux donc peux le prevoir de cette facon que si la trajectoire de la chtite bulle == rayon de la grosse
Marsh Posté le 15-10-2001 à 11:51:36
Barbarella a écrit a écrit : oui, on a la flemme de retrouver la formule dans un boucquin ou de la re-pondre |
ben non moi voit po
mais bon si personne ne sait plus ke moi ou puisse me donner des idées je me ferrais une formule a ma maniere a la cuisine koulip
Marsh Posté le 15-10-2001 à 12:05:16
tu vas aussi t'occuper des déformations des bulles j'espère
Marsh Posté le 15-10-2001 à 12:19:39
koulip31 a écrit a écrit : El Gringo -> ben ouais mais comme sur le net leurs rebonds ils les calculent a partir de surfaces planes .... donc la je me demande si ca change kke chose ou ces explications sont corects ... requin-> pas con ca ji avais pas pensse koi ke tout faux si la petite bulle na pas une trajectoire == a un rayon de la grosse exemple la petite bulle a force de rebond dans la grosse se retrouve avec une trajectoire perpendiculaire a un raon kel konque de la grosse bulle en utilisant ta technique le point d'impact a un moment T serrat tout faux donc peux le prevoir de cette facon que si la trajectoire de la chtite bulle == rayon de la grosse |
Si tu as deux sphères qui ont une intersection de leur surface en un seul point (à un temps T, puisque cette condition n'est pas toujours remplie) il me semble bien que obligatoirement le point de contact est situé sur la droite qui passe par les centres des sphères (ce qui te donne la direction)... donc tangent à la surface (peu importe ta trajectoire vu que tu te retrouve dans un cas statique au moment de l'impact)
Avec des cercles c'est OK, je suppose qu'avec des sphères ca l'est aussi (je n'ai ps d'outils pour verifier)
Marsh Posté le 15-10-2001 à 13:07:05
on vas voir comme ca
mais le rebond serrat il obligatoirement a 90°
et en 3D ca vas etre joyeux a gerrer mais bon
-jai le point d'impact merci requin
-reste le rebond .... (le plus dur je pense)
-> non pas de deformation (encore heureux sinon c'est deja joyeux a gerer )
Marsh Posté le 15-10-2001 à 13:10:31
koulip31 a écrit a écrit :
|
J'ai pas parle du rebond mais de la force de reaction...
bon
1- il y a collision quand la distance des centres des shperes est egale a R-r, R : rayon de la grande, r : rayon de la petite...
2- pour la vitesse de rebond c'est le vecteur symetrique par rapport a l'axe qui passe par les deux centres des spheres si il n'y a aucune autres forces...
Marsh Posté le 15-10-2001 à 13:44:26
koulip31 a écrit a écrit : on vas voir comme ca mais le rebond serrat il obligatoirement a 90° et en 3D ca vas etre joyeux a gerrer mais bon -jai le point d'impact merci requin -reste le rebond .... (le plus dur je pense) -> non pas de deformation (encore heureux sinon c'est deja joyeux a gerer ) |
Le rebond devrait être assez facile à gérer, supposons la position de ta sphère au temps T qui précède l'impact et la position au temps I au moment de l'impact.
La différence de ces deux positions te donne le vecteur que suit ta petite sphère (la trajectoire) dans l'intervalle de temps T à I ( I[x, y, z] - T[x, y, z] = v[x, y, z] )
Comme le point d'impact est minuscule tu peux considérer dans le cas d'un choc parfaitement élastique, sans déformation, sans frottement que l'angle est inverse par rapport à la noramle à la surface avant et après le choc (cas d'une surface plane).
La vitesse sera par ailleurs strictement identique, car ton choc est parfaitement élastique.
Personellement pour résoudre ton problème je comnmencerai par coder une version bêta du problème avec deux cercles (ca permet de voir facilement les erreurs sur un plan) et ensuite tenter la version avec des sphères en 3D.
Marsh Posté le 15-10-2001 à 14:56:14
oki donc le rebond on le considere comme sur un plan si jai bien compris le truc . donc inverse a la normal mais si on considere ca comme ca la petite bulle ne vas telle pas avoir la meme trajectoire (tourner en rond koi ) ce qui metonne un peut comme ca dans la theorie
sinon jessayerrais avec un plan 2D ce soir chez moi ar clair ca doit etre plus simple a gerer
Marsh Posté le 15-10-2001 à 15:17:32
koulip31 a écrit a écrit : oki donc le rebond on le considere comme sur un plan si jai bien compris le truc . donc inverse a la normal mais si on considere ca comme ca la petite bulle ne vas telle pas avoir la meme trajectoire (tourner en rond koi ) ce qui metonne un peut comme ca dans la theorie sinon jessayerrais avec un plan 2D ce soir chez moi ar clair ca doit etre plus simple a gerer |
On ne le considere pas comme sur un plan...
c'est un rebond sur le plan de tangeance...
Si tu ouvres l'angle par rapport a la normal, il y a un point a partir duquel la petite sphere roule sur la grande...
Marsh Posté le 15-10-2001 à 18:45:33
Voilà, g fais un schéma qui me semble juste (en 2D comme tu vois).
Les angles en bleu fonçé sont égaux et ceux en bleu clair aussi.
Les vecteur vitesse en vert sont égaux qi on admet qu'il y a pas de gravité et qu'il n'y a pas d'adhérence ni de déformations.
Marsh Posté le 15-10-2001 à 19:00:07
Il a une erreur ton schémas : tu fait partir le vecteur du centre de la sphère et le rebond se passe lorsque le centre de la petite sphère entre en collision avec la surface de la grande sphère (alors que ce ne'st pas le cas)
Marsh Posté le 16-10-2001 à 09:25:57
Je@nb > mis a part l'erreur signalee par Requin le schema est bon...
meme en 3D : c'est une coupe ...
Marsh Posté le 16-10-2001 à 13:36:55
Je@nb a écrit a écrit : Voilà, g fais un schéma qui me semble juste (en 2D comme tu vois). Les angles en bleu fonçé sont égaux et ceux en bleu clair aussi. Les vecteur vitesse en vert sont égaux qi on admet qu'il y a pas de gravité et qu'il n'y a pas d'adhérence ni de déformations. |
si on appelle M le centre de la petite sphere (r) en contact avec la grande(R)
on a: OM=R-r
et le point M de coordonnee (x,y) est sur la droite d'eq:
y=a*x+b
donc:
x^2+^y^2=(R-r)^2
et y=a*x+b
une fois trouve M(x,y)on peut trouver le point d'impacte I(xi,yi)avec:
MI=r
OI=R
il faut determiner l'eq de la droite du rebond
Mais la on a un probleme car le point d'impact n'est pas sur la droite incidente,si c'etait le cas (tres petite sphere):
on devrait pour cela determine l'angle par rapport a O (Ao)en fonction de l'angle incident (Ai)
si on avait Ao alors l'equation de la droite de rebond serait:
y=(x-R*cos(Ao))*tan(pi-2*Ao-Ai)+R*sin(Ao).
Mais du fait que le rayon de la petite sphere n'est pas negligeable (decalage du point d'impacte)elle va rebondir en faisant des rotations sur elle meme et la ça devient trés compliqué.
Je sais c'est pas trés clair j'avais fait un schema mais je n'arrive pas a faire un copier coller .
Marsh Posté le 16-10-2001 à 14:09:19
nur > c'est bien complique....
en prenant comme axe Ox l'axe passant par le centre des deux spheres au moment de l'impact les coordonnes du point d'impact sont X=R,Y=0,Z=0... ou R est le rayon de la petite sphere.
si le vecteur vietsse de cette sphere etait v1(xv,yv,zv), cette nouvelle vitesse est alors v2(-xv,yv,zv) la tajectoire du centre de la sphere etant sur la droite de vecteur directeur vx (1 avant, 2 apres le choc). et passant par le centre de la petite sphere X(R-r,0,0)...
Il n'y a plus qu'a faire les changements de reperes en fonction des positions des spheres...
Pour les rotations, non si il n'y a pas d'adherance, ni repulsion, la force de reaction est perpendiculaire au plan de tangeance, et donc passe par le centre de gravite de la petite sphere, donc couple nul, pas de modification de la vitesse de rotation...
Marsh Posté le 16-10-2001 à 16:33:51
BENB a écrit a écrit : nur > c'est bien complique.... en prenant comme axe Ox l'axe passant par le centre des deux spheres au moment de l'impact les coordonnes du point d'impact sont X=R,Y=0,Z=0... ou R est le rayon de la petite sphere. si le vecteur vietsse de cette sphere etait v1(xv,yv,zv), cette nouvelle vitesse est alors v2(-xv,yv,zv) la tajectoire du centre de la sphere etant sur la droite de vecteur directeur vx (1 avant, 2 apres le choc). et passant par le centre de la petite sphere X(R-r,0,0)... R est le rayon de la grande spher. sinon effectivement ça parait plus simple sauf que je ne vois pas bien comment tu mets en oeuvre tout ça. comment tu trouve le point d'impact ? est tu sur que la vitesse apres est v2(-xv,yv,zv)? enfin concretement je vois pas . tu pourrais donner quelques equations ? Il n'y a plus qu'a faire les changements de reperes en fonction des positions des spheres... Pour les rotations, non si il n'y a pas d'adherance, ni repulsion, la force de reaction est perpendiculaire au plan de tangeance, et donc passe par le centre de gravite de la petite sphere, donc couple nul, pas de modification de la vitesse de rotation... |
Marsh Posté le 16-10-2001 à 17:06:45
les equtions...
Le point d'impact il est sur l'axe des deux centre des deux spheres et il appartien a la grande sphere donc x2+y2+z2=R2 et y=z=0 donc x=R et x=-R la definition de l'axe permet de trancher pour x=R...
chocs elastique energie cinetique conservee
mv2 est constant, la force perpendiculaire a l'axe donc seule la composante xv peut etre modifiee...
sinon reprend mon premier post symetrie d'un vecteur par rapport a un axe...
ces equations sont exactes (dans le domaines des hypotheses ...)
et leur application se fait comme suit...
1- determiner la collision
il y a collision si la distance entre les centre des sphere est proche de R-r...
2-En cas de collision on pose un repere definit comme indique dans le post precedent c'est a dire
O centre de la garnde sphere
i = 1/(R-r) * OO' ou O' est le centre de la seconde sphere
j un vecteur de norme 1 perpendiculaire a i
par exemple (1/ix, -2/iz, 1/z) normalise pare exemple si aucune des coordonnes de i n'est nulle
ou (y, -x, 0) si iz est nul, faire des rotations si c'est x ou y qui est nul.
k = i vectoriel j ou - i vectoriel j suivant que l'on veut un repere direct ou indirect...
le nouveau repere est defini...
il suffit de faire le changement dans un sens puis dans l'autre...
avec quelques racines carres mais ni sin si cos ni tan...
[edtdd]--Message édité par BENB--[/edtdd]
Marsh Posté le 16-10-2001 à 17:10:22
nur a écrit a écrit : comment on fait pour inserer un schema ? |
Tu met son URL...
Marsh Posté le 17-10-2001 à 07:35:15
BENB a écrit a écrit : Tu met son URL... |
Hum ...,si j'ai un fichier bmp ou jpg dans c:\temp
comment je fais ? http://c:tempschema.bmp ??
Marsh Posté le 17-10-2001 à 08:54:21
nur a écrit a écrit : Hum ...,si j'ai un fichier bmp ou jpg dans c:\temp comment je fais ? http://c:tempschema.bmp ?? |
tu l'upload sur le net...
Marsh Posté le 17-10-2001 à 08:59:42
nur a écrit a écrit : Hum ...,si j'ai un fichier bmp ou jpg dans c:\temp comment je fais ? http://c:tempschema.bmp ?? |
Tu ne met surtout pas un bitmap sur le net, ensuite si c'est un schémas (Avec de grand aplats) envisage le format GIF, si c'est plutot une photo envisage le JPEG (question de taille).
Ensuite il te faudra un serveur accessible sur le net (un compte gratuit free, multimania, etc fera l'affaire)
Tu envoie ton fichier sur le serveur, puis tu met simplement son adresse (sans les espaces dans les balises IMG) :
[ IMG ]http://www.monsite.com/monrep/monimage.gif[ /IMG ]
Marsh Posté le 17-10-2001 à 14:32:41
1) ton pbm est (à mon avis) équivalent à un point se trimbalant dans une sphere de rayon R-r (puisque choque parfait, pas de rotation et tout bien comme il faut...)
2) le problème en 3d n'a pas lieu d'être! le déplacement de la petite sphère est "défini" par un vecteur. comme rebond parfait, après choc, le vecteur directeur reste coplanaire à celui avant le choc...
3)on se retrouve dans la théorie des trajectoires de billard!! (oui, même si le billard est circulaire...) et la tu peux faire une recherche sur internet, il y a plein de taupe qui ont étudié ce sujet en TIPE en 97 et 98!
4) je me trompe??
Marsh Posté le 17-10-2001 à 14:38:14
1) non, tu ne te trompes pas...
2) non, tu ne trompes pas surtout que grace a la shere le degre de symetrie est eleve (d'ou la posibilite de changement de repere)
3) Eh... sur un billard il y a des coins... pas la... c'est donc plus simple la ...
4)
[edtdd]--Message édité par BENB--[/edtdd]
Marsh Posté le 17-10-2001 à 15:06:29
je vais essayer d'inserer un schema qui me parait plus simple
Marsh Posté le 17-10-2001 à 15:09:37
je crois que le plus dur c'est d'exprimer l'angle V en fonction de l'angle A
Marsh Posté le 17-10-2001 à 15:12:29
ah bon, il a des coins sur un billard
Moi, qd je les ai étudié ils étaient elliptique...
Marsh Posté le 17-10-2001 à 15:24:04
nur a écrit a écrit : je crois que le plus dur c'est d'exprimer l'angle V en fonction de l'angle A |
Pourquoi diable veux exprimer l'angle V
Fait tourner ton schema.. la un peu plus... c'est bon ne touche plus rien.. la il est nul... (changement de repere)
Une sphere est un element qui un a grand nombre de degre de symetrie, il faut en profiter...
De plus je ne vois pas l'interet de I' sur ton schema
Marsh Posté le 15-10-2001 à 11:06:49
voila voila.
le truc jai une grosse bulle de savon fixe dans lespace (donc une sphere creuse) a l'interieur de celle ci se ballade une petite bulle mais qui elle se deplace.
-comment savoir si ya colision entre la grosse bulle et la petite ,et ou le point d'impact se trouve?.
-vers ou rebondiras la petite bulle sachant ki a pas de gravite mais que la surface sur la kel elle rebondit n'est pas plate?.
c'est plus des maths ke de l'algo mais aimmerais savoir comment gerer ce truc....
formules physique/mathematiques,algos ...
voila