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
» Simuler l’appui de n’importe quelle touche.
par papydall Hier à 23:54

» Le Forum est en vacances.
par JL35 Hier à 21:20

» Une autre façon de terminer une application.
par JL35 Mar 22 Aoû 2017 - 14:27

» Compilateur FBPano
par Mike Lun 21 Aoû 2017 - 23:17

» Pb 20 (en analyse): plantage à l'appel d'un SUB
par Jack Lun 21 Aoû 2017 - 21:58

» Pb 19 (en analyse): libellé d'erreur dans des IF imbriqués
par Jack Lun 21 Aoû 2017 - 21:55

» Copier / coller du texte à partir de la fenêtre de commandes
par jean_debord Lun 21 Aoû 2017 - 9:46

» COMPILATEUR V 0.9 beta 8 du 18 aout 2017
par papydall Lun 21 Aoû 2017 - 5:01

» Mettre en windows en veille
par papydall Lun 21 Aoû 2017 - 4:15

» Stretch_on ne stretch plus...
par papydall Dim 20 Aoû 2017 - 15:22

» Pb 18 (en analyse): RESTORE_LABEL avec DATA à la fin
par Jack Dim 20 Aoû 2017 - 13:21

» Problème de traitement des opérateurs avec le compilateur.
par Pedro Alvarez Sam 19 Aoû 2017 - 20:01

» Pb 17 (résolu): ITEM_SELECT ne fonctionne pas
par Jack Jeu 17 Aoû 2017 - 19:26

» un nouveau editeur panobasic
par Jean Claude Jeu 17 Aoû 2017 - 10:18

» Le compilateur.
par Pedro Alvarez Jeu 17 Aoû 2017 - 8:36

Navigation
 Portail
 Index
 Membres
 Profil
 FAQ
 Rechercher
Rechercher
 
 

Résultats par :
 
Rechercher Recherche avancée
Août 2017
LunMarMerJeuVenSamDim
 123456
78910111213
14151617181920
21222324252627
28293031   
CalendrierCalendrier

Partagez | 
 

 Rotation d’une figure autour de l’origine

Voir le sujet précédent Voir le sujet suivant Aller en bas 
AuteurMessage
papydall

avatar

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

MessageSujet: Rotation d’une figure autour de l’origine   Ven 22 Aoû 2014 - 5:46

Rotation d’une figure autour de l’origine

Tout est expliqué dans le
Code:

rem ============================================================================
'             Rotation d'une figure autour de l'origine
'                     par Papydall
rem ============================================================================
dim x0,y0,a,newx,newy, zoom
picture 10 : full_space 10 : 2d_target_is 10
x0 = width(10)/2 : y0 = height(10)/2  : ' Coordonée de l'origine
zoom = 30 : ' facteur d'aggrandissement

Trace_Figure() : ' on trace une figure , une flèche vers le haut comme exemple

' On va tourner cette figure autour de l'origine
for a = 0 to 360 step 10 : ' Faire un tour complet
    cls
    2d_line 0,y0, 2*x0,y0 : ' tracé de l'axe horizontal
    2d_line x0,0, x0,2*y0 : ' tracé de l'axe vertcal
    Rotation_Figure(a)    : ' Tourner la figure
    pause 50
next a

end
rem ============================================================================
' Tracé d'une flèche comme exemple
SUB Trace_Figure()
    dim_local i,p,x,y
    restore
    read p : read x : read y : 2d_poly_from x0 + zoom * x, y0 - zoom * y
    for i = 2 to p
        read x : read y : 2d_poly_to x0 + zoom * x,y0 - zoom * y
    next i
END_SUB
rem ============================================================================
' Rotation de la flèche de l'exemple autour de l'origine des axes d'un angle en dégrs
' Pour faire tourner une figure, il suffit de faire tourner tous ses points
SUB Rotation_Figure(angle)
    dim_local i,p,x,y
    restore
    read p : read x : read y : Rotation_Point(x,y,angle)
     2d_poly_from x0 + zoom * newx, y0 - zoom * newy
    for i = 2 to p
        read x : read y : Rotation_Point(x,y,angle)
        2d_poly_to x0 + zoom * newx,y0 - zoom * newy
    next i
END_SUB
rem ============================================================================
' Rotation autour de l'origine d'un point (x,y) d'un angle tetha en degrés.
' Pour effectuer une rotation à un point il suffit de multiplier ses coordonnées
' par la matrice de rotation suivante :
' cos(tetha)   -sin(tetha)
' sin(tetha)    cos(tetha)
SUB Rotation_Point(x,y,tetha)
    dim_local pi,rad,t
    pi = acos(-1) : rad = pi/180 : t = rad * tetha
    newx =  x * cos(t) - y * sin(t)
    newy =  x * sin(t) + y * cos(t)
END_SUB
rem ============================================================================
' dessin d'une flèche
data 8    : ' nombre de points de la figure
data 3,0  : ' coordonnées 1er point
data 4,0  : ' coordonnées 2ème point
data 4,3
data 5,3
data 3.5,4.5
data 2,3
data 3,3
data 3,0  : ' coordonnées derner point qui est le même que le 1erpour boucler la boucle
rem ============================================================================
Revenir en haut Aller en bas
Voir le profil de l'utilisateur http://papydall-panoramic.forumarabia.com/
Invité
Invité



MessageSujet: Re: Rotation d’une figure autour de l’origine   Ven 22 Aoû 2014 - 7:53

Formidable Papydall.

Je sauvegarde cette applique. Il me tarde d'avoir plusieurs heures devant moi pendant plusieurs jours pour l'exploiter. Et de plus c'est en degrés, ce qui rentre mieux dans ma compréhension.

Merci Papydall.
Revenir en haut Aller en bas
JL35



Nombre de messages : 5928
Localisation : 77
Date d'inscription : 29/11/2007

MessageSujet: Re: Rotation d’une figure autour de l’origine   Ven 22 Aoû 2014 - 11:46

En effet, très intéressant papydall.
A partir de là j'essaie de faire tourner la figure sur elle-même, mais j'ai un peu de mal...  Sad

Ça marche ! en mettant la flèche au centre, comme ceci:
Code:
' dessin d'une flèche
data 8    : ' nombre de points de la figure
data -.5,-2.5  : ' coordonnées 1er point
data .5,-2.5  : ' coordonnées 2ème point
data .5,.5
data 1.5,.5
data 0,2.5
data -1.5,.5
data -.5,.5
data -.5,-2.5  : ' coordonnées dernier point qui est le même que le 1er pour boucler la boucle
Il y a là de quoi s'amuser, merci papydall !
Revenir en haut Aller en bas
Voir le profil de l'utilisateur
papydall

avatar

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

MessageSujet: Re: Rotation d’une figure autour de l’origine   Ven 22 Aoû 2014 - 13:26

Il m'a été donné de développer les bases mathématiques pour le graphisme en 2D et en 3D.
Pour ceux qui n'en ont pas pris connaissance, veuillez consulter panoramic le Mag  N° 11.
Un bon article   Laughing  (assez complet) sur les Mathématiques pour du graphisme 2D et 3D par Papydall. Tout est là !.
Sinon c'est aussi  ici.

C'est un vrai régal, mais attention à l'indigestion!  confused 
Vous pouvez toujours utiliser les formules qui s'y trouvent sans entrer dans les détails assez pénibles de la théorie mathématique.

!!!! Il y a vraiment de quoi perdre son temps en s'amusant !!!
Revenir en haut Aller en bas
Voir le profil de l'utilisateur http://papydall-panoramic.forumarabia.com/
Contenu sponsorisé




MessageSujet: Re: Rotation d’une figure autour de l’origine   

Revenir en haut Aller en bas
 
Rotation d’une figure autour de l’origine
Voir le sujet précédent Voir le sujet suivant Revenir en haut 
Page 1 sur 1
 Sujets similaires
-
» Rotation d'une figure de base
» [résolu]Problèms Divers ....rotation ...carroussel, ect ..
» origine de votre pseudo
» PS embarque d'origine toy VDJ 200
» origine de votre avatar

Permission de ce forum:Vous ne pouvez pas répondre aux sujets dans ce forum
FORUM DE DISCUSSION SUR LE LANGAGE PANORAMIC :: PANORAMIC 32 bits :: Vos sources, vos utilitaires à partager-
Sauter vers: