Trigo et degrés

Vous avez une idée pour améliorer ou modifier PureBasic ? N'hésitez pas à la proposer.
Dr. Dri
Messages : 2527
Inscription : ven. 23/janv./2004 18:10

Trigo et degrés

Message par Dr. Dri »

En trifouillant ma calculette, je me suis rendu compte que même si elle gère des degrés par défaut, on peut la régler sur les radians, voir même sur les grades (400 grades pour 360 degrés).

Ce serait bien que toutes les fonctions de PB puissent bosser dans ces trois unités de mesures... On pourrait imaginer des fonctions et des constantes...

Code : Tout sélectionner

Enumeration
  #PB_Math_Rad
  #PB_Math_Deg
  #PB_Math_Grd
EndEnumeration

Declare.l GetMathAngles()
Declare.l SetMathAngles(Type.l)
Le PB se veut simple d'accès donc je pense que les degrés pourraient devenir l'unité par défaut, ca n'implique pas de gros changements pour les codes actuels... Juste un petit SetMathAngles(#PB_Math_Rad) en début de programme. Les degrés son bien plus intuitifs, nan ?

Dri
Heis Spiter
Messages : 1092
Inscription : mer. 28/janv./2004 16:22
Localisation : 76
Contact :

Message par Heis Spiter »

Temporairement :

Code : Tout sélectionner

#Pi = 3.14159265
Procedure.f GradToDeg(Ang.l)
  ProcedureReturn 9*Ang/10
EndProcedure
Procedure.f RadToDeg(Ang.l)
  ProcedureReturn 180*Ang/#Pi
EndProcedure
Procedure.f DegToGrad(Ang.l)
  ProcedureReturn 10*Ang/9
EndProcedure
Procedure.f RadToGrad(Ang.l)
  ProcedureReturn 200*Ang/#Pi
EndProcedure
Procedure.f DegToRad(Ang.l)
  ProcedureReturn Ang*#Pi/180
EndProcedure
Procedure.f GradToRad(Ang.l)
  ProcedureReturn Ang*#Pi/200
EndProcedure
Et puis, les radians sont quand même plus pratiques. Au lieu d'avoir un nombre important pour un tour de cercle (360°), tu as simplement 2Pi, etc... Donc, tu peux faire plus de tours qu'avec les degrés avant d'être limité par PureBasic.
Heis Spiter, webmaster du site http://www.heisspiter.net
Développeur principal et administrateur du projet Bird Chat
Parti courir au bonheur du dév. public et GPL :D
Avatar de l’utilisateur
Chris
Messages : 3731
Inscription : sam. 24/janv./2004 14:54
Contact :

Message par Chris »

Ca n'empèche pas que si les conversion étaient intégrées à PB, ce serait plus simple, et ça n'empècherait pas non plus de travailler avec les radians pour des trucs graphiques un peu plus pointus.

Je suis d'accord avec Dr.Dri ! (Même si on ne m'a pas demandé mon avis... ) :lol:
Dr. Dri
Messages : 2527
Inscription : ven. 23/janv./2004 18:10

Message par Dr. Dri »

bah les tours de cercle ne sont pas important en trigo, ce sont des fonctions cycliques alors elles sont toujours ramenées à un tour de cercle...

Et pour les convertions, voila comment ma calculette fonctionne ^^ (tant qu'à faire pk pas aussi dans PB ^^)

Il existe 3 fonctions Deg() Rad() et Grd() qui se basent sur le mode actuel pour la conversion... Si on est en radians, Deg(Pi) renvoi 180, Grd(Pi) renvoi 200 et Rad(Pi) renvoi Pi...

Dri
Dernière modification par Dr. Dri le dim. 05/févr./2006 16:42, modifié 1 fois.
lionel_om
Messages : 1500
Inscription : jeu. 25/mars/2004 11:23
Localisation : Sophia Antipolis (Nice)
Contact :

Message par lionel_om »

Heis Spiter a écrit :Et puis, les radians sont quand même plus pratiques.
J'suis pas daccord
En plus les nombres réel sont moins précis, doncmoi perso je vote pour les degrés... :P :lol:
Webmestre de Basic-univers
Participez à son extension: ajouter vos programmes et partagez vos codes !
Avatar de l’utilisateur
Chris
Messages : 3731
Inscription : sam. 24/janv./2004 14:54
Contact :

Message par Chris »

Faudrait demander à ceux qui font de la 3D, mais le moteur 3D de Pure, qu'est ce qu'il utilise comme unité ?

Le Radian, ou le Degré?

Parce que c'est quand même dans ce genre de programmation que ça sert le plus souvent : Le jeu, qu'il soit en 2D ou en 3D.

Donc, ce serait bien d'avoir les trois unités disponibles.

Cela dit, c'est vraiment pas compliqué de faire la conversion!
Avatar de l’utilisateur
cederavic
Messages : 1338
Inscription : lun. 09/févr./2004 23:38
Localisation : Bordeaux

Message par cederavic »

Les radians sont les plus utiliser, il n'y a qu'a voir les tonnes de formules qui existes dans touts les domaines.
Pour l'instant, dans la 3D du pure, on ne sait pas quelle unité est utilisé :lol:

EDIT : je voulais dir radian et non degré :roll:
Dernière modification par cederavic le dim. 13/nov./2005 7:49, modifié 1 fois.
Dr. Dri
Messages : 2527
Inscription : ven. 23/janv./2004 18:10

Message par Dr. Dri »

C'est pas que les conversions soient difficiles... C'est que j'aimerais bien ne pas avoir à les faire XD

Plus sérieusement, raison de plus pour que ca passe natif, ce n'est pas difficile à mettre en place et ca devient par la même occasion plus convivial

Dri
comtois
Messages : 5190
Inscription : mer. 21/janv./2004 17:48
Contact :

Message par comtois »

Exactement , ça serait bien si c'était natif , et aussi ce serait bien d'ajouter la constante #Pi aux résidents.

Ok je sais que je peux le faire pour moi ,certains ont un résident avec #Pi ,d'autres non , ça serait juste plus pratique que ça soit intégré à PureBasic pour échanger des sources.

Et puis Pi existe aussi sur la calculette à Dri :)
http://purebasic.developpez.com/
Je ne réponds à aucune question technique en PV, utilisez le forum, il est fait pour ça, et la réponse peut profiter à tous.
Guimauve
Messages : 1015
Inscription : mer. 11/févr./2004 0:32
Localisation : Québec, Canada

Message par Guimauve »

Message supprimé
Dernière modification par Guimauve le sam. 11/févr./2006 2:40, modifié 1 fois.
Avatar de l’utilisateur
djes
Messages : 4252
Inscription : ven. 11/févr./2005 17:34
Localisation : Arras, France

Message par djes »

Les processeurs travaillent en radians, donc pure aussi. Si on veut utiliser les degrés ou les grades, il faut faire des conversions, donc on perd en vitesse ET en précision.

A mon avis, une lib serait idéale pour ça, inutile d'embêter Fred avec ce genre de détails, non ?

Et puis maintenant qu'on a des nombres en haute précision, il faut en profiter.
Backup
Messages : 14526
Inscription : lun. 26/avr./2004 0:40

Message par Backup »

pourtant dans la vie "reel" ce sont bien les degres , le plus utilisé

en orientation, (bateau,avions,voiture)
pour cibler un sattelite
en geometrie (voir un raporteur)
pour prendre la temperature (:lol: )

je suis aussi pour que les degres soit ajouté a pure ! :D
wolfjeremy
Messages : 1202
Inscription : sam. 31/déc./2005 23:52

Message par wolfjeremy »

Oui apres tout on utilise toujour les degres... on apprend a calculer quand on est tout petit on utilise les degres, on evolue on a des cour de math de plus en plus dur, on utilise les degres, dans les calcul de tout les jour on utilise les degres... alors pourquoi ne pas mettre les degres comme unité de base ? :P
Avatar de l’utilisateur
cederavic
Messages : 1338
Inscription : lun. 09/févr./2004 23:38
Localisation : Bordeaux

Message par cederavic »

Je suis pas tout à fait d'accords, on voit des degrés partout oui, mais a la base, les formules qui donne ces resultats utilisent le radian donc ce qu'on vois a la fin c'est la simple convertion du resultat radian -> degré (le radian etant moin parlant). Et puis c'est l'unité légale, si pure ce met en degré par defaut, il faudra faire les convertion pour chaque formules et au final perdre en vitesse :?
Backup
Messages : 14526
Inscription : lun. 26/avr./2004 0:40

Message par Backup »

cederavic a écrit :Jsi pure ce met en degré par defaut, il faudra faire les convertion pour chaque formules et au final perdre en vitesse :?
je pense pas le mettre en defaut , pour ma part , mais proposer un double des instructions comme Guimauve le suggere .. en plus ! pas a la place

moi je suis monsieur + , plus y en a mieux c'est pour tout le monde :D
Répondre