FORUM DE DISCUSSION SUR LE LANGAGE PANORAMIC

Développement d'applications avec le langage Panoramic
 
AccueilAccueil  FAQFAQ  RechercherRechercher  S'enregistrerS'enregistrer  MembresMembres  GroupesGroupes  Connexion  
Derniers sujets
» Fonctionnement du caret_x_position(N)
par Jack Hier à 20:36

» Problèmes en cours.
par Jack Hier à 20:31

» PanExpress : l'éditeur Panoramic avec création d'objet
par Minibug Hier à 19:55

» Exemple d'une nouvelle version d'un GRID
par Minibug Hier à 17:36

» Comment faire fonctionner \qj en RTF ?
par jjn4 Mer 12 Déc 2018 - 19:25

» Mais où est donc passé Klaus ?!
par Jicehel Mer 12 Déc 2018 - 13:38

» Problème avec SaveStringList.
par Klaus Mer 12 Déc 2018 - 12:14

» Je suis de retour !
par Klaus Mer 12 Déc 2018 - 12:10

» Connexion au forum
par mindstorm Mer 5 Déc 2018 - 19:09

» Version instantanée V 0.9.29i5 du 17/11/2018
par silverman Ven 30 Nov 2018 - 10:37

» imprimer avec Print.dll
par JL35 Jeu 29 Nov 2018 - 21:33

» Convertisseur Décimal ---> Binaire, Octal, Hexadécimal, ...
par Minibug Dim 25 Nov 2018 - 15:37

» Impression de documents
par JL35 Ven 23 Nov 2018 - 19:45

» Logiciel de soutien scolaire.
par Marc Jeu 22 Nov 2018 - 20:51

» Logiciel de soutien en langues.
par Marc Jeu 22 Nov 2018 - 19:39

Navigation
 Portail
 Index
 Membres
 Profil
 FAQ
 Rechercher
Rechercher
 
 

Résultats par :
 
Rechercher Recherche avancée
Décembre 2018
LunMarMerJeuVenSamDim
     12
3456789
10111213141516
17181920212223
24252627282930
31      
CalendrierCalendrier

Partagez | 
 

 Comment repositionner un objet 3D

Aller en bas 
AuteurMessage
Marc

avatar

Nombre de messages : 993
Age : 57
Localisation : TOURS
Date d'inscription : 17/03/2014

MessageSujet: Comment repositionner un objet 3D    Sam 2 Juin 2018 - 18:01

Bonjour à tous !

Est-il possible de repositionner un objet 3D dans sa position initiale lors de sa création, après l'avoir tourné dans tous les sens avec la commande 3D_ROTATE N,X,Y,Z ?

Petit source de test :

Code:
DIM x,y,z
    HEIGHT 0,400
    WIDTH 0,400
    SCENE3D 1
    FULL_SPACE 1
    AXES_SHOW
    CAM_POSITION 0,0,2

    3D_TEAPOT 1
    CAPTION  0 , "Situation de départ"
    PAUSE 2000

    CAPTION  0 , "3D_ROTATE 1,57,0,90"
    3D_ROTATE 1,57,0,90
    PAUSE 1500

    CAPTION  0 , "3D_ROTATE 1,0,0,0"
    3D_ROTATE 1,0,0,0
    PAUSE 1500
 
    CAPTION 0, "Terminé : l'objet n'a pas retrouvé sa position"
    
 END

Merci de votre aide !
Revenir en haut Aller en bas
Voir le profil de l'utilisateur
papydall

avatar

Nombre de messages : 6056
Age : 68
Localisation : Moknine (Tunisie) Entre la chaise et le clavier
Date d'inscription : 03/03/2012

MessageSujet: Re: Comment repositionner un objet 3D    Sam 2 Juin 2018 - 19:24

Le plus simple serait de le détruire par 3D_DELETE puis de le récréer !
Mais pourquoi faire simple quand on peut faire compliqué ?

Code:

DIM x,y,z
    HEIGHT 0,400
    WIDTH 0,400
    SCENE3D 1
    FULL_SPACE 1
    AXES_SHOW
    CAM_POSITION 0,0,2

    3D_TEAPOT 1
    CAPTION  0 , "Situation de départ"
    PAUSE 2000

    CAPTION  0 , "3D_ROTATE 1,57,0,90"
    3D_ROTATE 1,57,0,90
    PAUSE 1500

    CAPTION  0 , "3D_ROTATE 1,0,0,0"
 '   3D_ROTATE 1,0,0,0
    3d_delete 1 : 3D_TEAPOT 1
    PAUSE 1500
'    CAPTION 0, "Terminé : l'objet n'a pas retrouvé sa position"
    caption 0,"Terminé : l'objet a retrouvé sa position"
    
 END
Revenir en haut Aller en bas
Voir le profil de l'utilisateur http://papydall-panoramic.forumarabia.com/
Marc

avatar

Nombre de messages : 993
Age : 57
Localisation : TOURS
Date d'inscription : 17/03/2014

MessageSujet: Re: Comment repositionner un objet 3D    Sam 2 Juin 2018 - 19:47

Merci Papydall pour ta réponse mais ce n'est pas aussi simple...
Il est vrai que je ne suis pas entré dans les détails. Pardon.

C'est pour l'exemple et les tests que j'ai pris un objet tout fait dans Panoramic : 3D_TEAPOT

Dans mes recherches, c'est un objet créé que je manipule avec la souris et c'est avec la souris que je souhaite retrouver la position de départ. Dans le déroulement du programme, je ne veux pas supprimer l'objet et le recréer. L'objet doit revenir progressivement (donc par calcul) et à l'aide de la souris, à sa position de départ.
Revenir en haut Aller en bas
Voir le profil de l'utilisateur
silverman

avatar

Nombre de messages : 724
Age : 46
Localisation : Picardie
Date d'inscription : 18/03/2015

MessageSujet: Re: Comment repositionner un objet 3D    Sam 2 Juin 2018 - 20:13

Je n'ai pas testé à fond, mais ça semble marcher:
Code:
DIM x,y,z
    HEIGHT 0,400
    WIDTH 0,400
    SCENE3D 1
    FULL_SPACE 1
    AXES_SHOW
    CAM_POSITION 0,0,2

    3D_TEAPOT 1
    CAPTION  0 , "Situation de départ"
    PAUSE 2000

    CAPTION  0 , "3D_ROTATE 1,57,0,90"
    3D_ROTATE 1,57,0,90
    PAUSE 1500

    CAPTION  0 , "3D_ROTATE 1,0,0,0"
'    3D_ROTATE 1,0,0,0
    reset3D(1)
    PAUSE 1500
 
    CAPTION 0, "Terminé : l'objet n'a pas retrouvé sa position"
   
 END
sub reset3D(n)
  3d_sphere 100,0.00001
  3d_position 100,o3d_x_position(n),o3d_y_position(n),o3d_z_position(n)
  3d_point_object n,100
  3d_delete 100
end_sub
Revenir en haut Aller en bas
Voir le profil de l'utilisateur
Marc

avatar

Nombre de messages : 993
Age : 57
Localisation : TOURS
Date d'inscription : 17/03/2014

MessageSujet: Re: Comment repositionner un objet 3D    Dim 3 Juin 2018 - 9:19

Salut Silverman

Merci de ta réponse. Oui, ta solution fonctionne.
Malheureusement, elle ne correspond pas à mon souhait de "retour à zéro" progressif à l'aide de la souris.

Autrement, j'ai fait aussi des petits essais en décomposant les mouvements en x,y et z, en empilant les valeurs d'angle dans un tableau. En les dépilant dans le même ordre (LIFO), j'arrive à retrouver la position initiale de l'objet. Mais ce n'est toujours pas à ma convenance.

Je continue mes petits bricolages...

Merci à tous pour vos idées.

Revenir en haut Aller en bas
Voir le profil de l'utilisateur
silverman

avatar

Nombre de messages : 724
Age : 46
Localisation : Picardie
Date d'inscription : 18/03/2015

MessageSujet: Re: Comment repositionner un objet 3D    Dim 3 Juin 2018 - 10:20

Tu veux manipuler ton objet à la souris, comme la camera des jeux de type FPS qu'on manipule à la souris? Je ne comprend pas "progressif", qu'est que ça signifie? Parceque s'il y a manipulation à la souris, on va à la vitesse que l'on veux, donc je ne vois pas le côté progressif... Tu peux nous en dire plus?
Revenir en haut Aller en bas
Voir le profil de l'utilisateur
Marc

avatar

Nombre de messages : 993
Age : 57
Localisation : TOURS
Date d'inscription : 17/03/2014

MessageSujet: Re: Comment repositionner un objet 3D    Dim 3 Juin 2018 - 12:43

Progressif : je ne souhaite pas que l'objet 3D revienne "brutalement" d'une position quelconque à 0,0,0.

Je mets, ci-dessous, le petit source de test qui me permet d'expérimenter l'action. Par commodité j'utilise la 3D_TEAPOT de Panoramic et je ne traite pas pour l'instant la coordonnée Z qui reste à 0.
Donc, uniquement 2 axes, x et y.
L'orientation de la Teapot est asservie à la position de la souris dans le SCENE3D (objet 1).
A la création, la Teapot est orientée 0,0. (Axes x et y).

Mon souhait est de retrouver progressivement l'orientation initiale quand la souris revient au centre du SCENE3D.

Effectivement, il est possible de remettre "brutalement" l'objet orienté comme lors de sa création par la détection du passage de la souris en coordonnées relatives 0,0 :
- soit en détruisant l'objet et en le recréant, ce qu'a proposé notre ami Papydall ;
- soit en utilisant l'astuce que tu m'a proposée hier.

Code:
LABEL Move
DIM x,y,z
    HEIGHT 0,359 + HEIGHT(0)-HEIGHT_CLIENT(0)
    WIDTH 0,359 + WIDTH(0)-WIDTH_CLIENT(0)
    LEFT 0,(screen_x-WIDTH(0))/2
    TOP 0,(screen_y-HEIGHT(0))/2
    SCENE3D 1
    FULL_SPACE 1
    AXES_SHOW
    CAM_POSITION 0,0,2
    3D_TEAPOT 1
    ON_MOUSE_MOVE 1,Move
END
' ------------------------------------------------------------------------------
Move:
    x = WRAP_VALUE(MOUSE_X_POSITION(1))-180
    y = WRAP_VALUE(MOUSE_Y_POSITION(1))-180
    CAPTION 0,STR$(x)+" , "+STR$(y)
    3D_X_ROTATE 1,x
    3D_Y_ROTATE 1,y
RETURN
Revenir en haut Aller en bas
Voir le profil de l'utilisateur
Contenu sponsorisé




MessageSujet: Re: Comment repositionner un objet 3D    

Revenir en haut Aller en bas
 
Comment repositionner un objet 3D
Revenir en haut 
Page 1 sur 1
 Sujets similaires
-
» Challenge image d'interieur - Mareck - Sketchup Artlantis
» Comment créer un objet qui n'est pas censé exister ?
» Objet qui ne doit pas traverser un autre !
» Comment faire pour exporter des objets bibliothèques Dosh sous Artlantis Studio?
» comment desinstaller pcconfidentiel schredder [Résolu]

Permission de ce forum:Vous ne pouvez pas répondre aux sujets dans ce forum
FORUM DE DISCUSSION SUR LE LANGAGE PANORAMIC :: PANORAMIC :: A l'aide!-
Sauter vers: