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
» Une autre façon de terminer une application.
par Francis-mr Aujourd'hui à 12:07

» Compilateur FBPano
par jean_debord Aujourd'hui à 10:09

» Copier / coller du texte à partir de la fenêtre de commandes
par jean_debord Aujourd'hui à 9:46

» COMPILATEUR V 0.9 beta 8 du 18 aout 2017
par papydall Aujourd'hui à 5:01

» Mettre en windows en veille
par papydall Aujourd'hui à 4:15

» Stretch_on ne stretch plus...
par papydall Hier à 15:22

» Pb 18 (en analyse): RESTORE_LABEL avec DATA à la fin
par Jack Hier à 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

» Pb 16 (résolu): ON_CLOSE plante à l'exécution
par Jack Mer 16 Aoû 2017 - 20:00

» Pb 15 (résolu): TIMER_ON plante à l'exécution
par Jack Mer 16 Aoû 2017 - 19:58

» KGF_dll - nouvelles versions
par Yannick Dim 13 Aoû 2017 - 17:35

» probleme d'outil
par Yannick Dim 13 Aoû 2017 - 17:32

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 | 
 

 Angle d'une ligne ou deux points

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



Nombre de messages : 590
Age : 69
Localisation : Valenciennes Nord
Date d'inscription : 29/04/2010

MessageSujet: Angle d'une ligne ou deux points   Jeu 13 Mai 2010 - 8:29

Ci joint un petit programme de calcul géométrique

Avec des goto dans le sous-programme bien utile.

Code:
  Dim xDeb, yDeb, xFin, yFin
 
  Dim Tangeante, Angle_Rad, pI, Angle_Ligne
 
  Label Sprg_Angle_ligne
' ceci est pour essais
      xDeb=200
      yDeb=45
      xFin=200
      Yfin=160
     
      gosub Sprg_Angle_Ligne
      print Angle_Ligne
end

Sprg_Angle_Ligne:

' Pour calculer l'angle en degré d'une ligne ou deux points.
' Angle_Ligne (xDeb.f, yDeb.f, xFin.f, yFin.f)

 
' Dim xDeb, yDeb, xFin, yFin : ' Variables Globales a déclarer dans programme principal
' Dim Tangeante, Angle_Rad, pI ' Variables Locales
' Les labels a déclarer dans le programme principal

 Label Lbl_Fin_Angle_Ligne, Lbl_Verti

pI = 3.1459265359

If (xFin - xDeb) = 0 Then Goto Lbl_Verti

Tangeante = (yFin - yDeb) / (xFin - xDeb)

Angle_Rad = Atn(Tangeante)

Angle_Ligne = Angle_Rad * 57.29577951308 : ' (180 / pI)

Goto Lbl_Fin_Angle_Ligne

Lbl_Verti:
  ' ligne verticale
  If (yFin - yDeb) > 0 Then Angle_Ligne = 90
  ' Ligne horizontale
  If (yFin - yDeb) < 0 Then Angle_Ligne = -90

Lbl_Fin_Angle_Ligne:


 
Return



A+ What a Face
Revenir en haut Aller en bas
Voir le profil de l'utilisateur
JL35



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

MessageSujet: Re: Angle d'une ligne ou deux points   Jeu 13 Mai 2010 - 15:36

Joli et utile, mais voilà un bel exemple où tu aurais pu te passer des goto et économiser 2 étiquettes ! (je n'ai pas changé l'orthographe de Tangeante...)
Code:
...
pI = 3.1459265359

IF (xFin - xDeb) <> 0
    Tangeante = (yFin - yDeb) / (xFin - xDeb)
    Angle_Rad = Atn(Tangeante)
    Angle_Ligne = Angle_Rad * 57.29577951308 : ' (180 / pI)
ELSE
    ' ligne verticale
    If (yFin - yDeb) > 0 Then Angle_Ligne = 90
    ' Ligne horizontale
    If (yFin - yDeb) < 0 Then Angle_Ligne = -90
END_IF
Revenir en haut Aller en bas
Voir le profil de l'utilisateur
659_minifly



Nombre de messages : 590
Age : 69
Localisation : Valenciennes Nord
Date d'inscription : 29/04/2010

MessageSujet: re :   Jeu 13 Mai 2010 - 16:52

Oui cela fait parti d' un logiciel de dessin que j'avais écrit en 1995.
et dans les tests il n'y avait pas de else. Je vais essayer de passer les sous-programmes en Panoramic et les poster ici. On a toujours besoin de ce genre
de sous-programme. Le truc c'est que cela puisse rester lisible et compréhensible par tout le monde.
Pour tangeante cela est du franglais. Et a force de lire de l'anglais je me mélangeais les pinceaux. Mais merci et je suis content que cela te plaise.et puisse te rendre service
Revenir en haut Aller en bas
Voir le profil de l'utilisateur
Contenu sponsorisé




MessageSujet: Re: Angle d'une ligne ou deux points   

Revenir en haut Aller en bas
 
Angle d'une ligne ou deux points
Voir le sujet précédent Voir le sujet suivant Revenir en haut 
Page 1 sur 1
 Sujets similaires
-
» Petit problème de qui est en ligne à deux colonnes
» [Chatbox] Une ligne sur deux colorée
» Nouveau module en ligne : gestion des points
» [Résolu] Relier deux points par une ligne dans un diaporama
» Ligne figurante entre deux éléments de ma barre de navigation.

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 :: Les inutilitaires-
Sauter vers: