Des images qui "défile" au passage de la sourie (simulation 3d)
Leo_Robotic_Passion
Messages postés135Date d'inscriptiondimanche 19 novembre 2000StatutMembreDernière intervention 2 décembre 2011
-
3 juil. 2005 à 11:04
Vb Lover
Messages postés221Date d'inscriptionvendredi 30 novembre 2001StatutMembreDernière intervention13 février 2010
-
3 juil. 2005 à 19:06
Bonjour a tous:)
Voila je cherche a réaliser une sorte de simulation 3d!
je m'esplique :)
imaginer 3 photos d'une voiture.
1 photo vu de face
la 2eme vu de droite
et la 3 eme vu de gauche
au départ l'image ou la voiture et vu de face est affichée!
lorsque l'on bouge la sourie vers la droite l'image vu de droite remplace la vu de face ex...
mon objectif est de pouvoir a l'aide d'environs 8 images voire un objet a "360"
merci pour votre aide :)
@++
Léo
A voir également:
Des images qui "défile" au passage de la sourie (simulation 3d)
Vb Lover
Messages postés221Date d'inscriptionvendredi 30 novembre 2001StatutMembreDernière intervention13 février 20105 3 juil. 2005 à 19:06
sans utiliser directX, en restant "très simple", je ferais comme suit:
tu mets tes images dans des "Image" avec l'option Visible=False, que tu
indexes dans un tableau Index=0,1,2,3,..., et tu crées une "PictureBox"
(par exemple) où tu les afficheras. Ensuite, lorsque tu veux changer
d'images, il suffit de faire (avec les bons noms, bien sûr!):
set MyPictureBox.Picture = MyImage(1).Picture
j'espère que j'ai été assez clair pour cette première partie :)
Pour changer d'images avec la souris, il suffit de faire qqch du style
(ici seulement de gauche à droite, et il faut encore initialiser la
valeur de oldX au début)
Private Sub Form_MouseMove(Button As Integer, Shift As Integer, X As Single, Y As Single)
Static oldX As Single
If oldX < X - 10 Then
Set MyPicture.Picture =My Image(1).Picture
oldX = X
ElseIf oldX > X + 10 Then
Set MyPicture.Picture = MyImage(2).Picture
oldX = X
End If
End Sub
le mieux en fait, ça serait de définir une image pour chaque coordonnée
de l'écran, avec la zone centrale correspondant à la vue de face. Dans
un cas simple, tu pourrais faire qqch comme:
Private Sub Form_MouseMove(Button As Integer, Shift As Integer, X As Single, Y As Single)
If abs(x-me.width/2)<20 Then
' image
centrale
if MyPicture.Picture <> My Image(1).Picture then
Set MyPicture.Picture =My Image(1).Picture
end if
ElseIf x>me.width/2 Then
' image de droite
if MyPicture.Picture <> My Image(2).Picture then
Set MyPicture.Picture = MyImage(2).Picture
end if
else
' image de gauche
if MyPicture.Picture <> My Image(3).Picture then
Set MyPicture.Picture = MyImage(3).Picture
end if
End If
End Sub
je te laisse ajouter les photos du haut, du bas, ... c'est juste des idées!