Twitter iPhone pliant OnePlus 11 PS5 Disney+ Orange Livebox Windows 11

Arc de Sinus ?

4 réponses
Avatar
Fred
Bonjour,

Je veux faire un petit programme qui utilise l'Arc de Sinus, hors le
fonction arc sinus n'existe pas sous VB 6.

J'ai trouvé des codes, mais aucun ne retourne un résultat correcte.

Avez vous une solution ?

Merci.

4 réponses

Avatar
François Picalausa
On Dec 23, 8:23 pm, Fred wrote:
Je veux faire un petit programme qui utilise l'Arc de Sinus, hors le
fonction arc sinus n'existe pas sous VB 6.



Hello,

voir la documentation de visual basic:

http://msdn2.microsoft.com/en-us/library/aa263423(VS.60).aspx

Faire attention que ces fonctions supposent que les angles sont en
radians et non en degrés (la relation pour passer de degrés en radians
étant, pour un angle X en degrés, X*Pi/180 radians)

François
Avatar
LE TROLL
Bonjour,

J'ai quelques exemples, marche directement:
- Un arc de cercle, et deux traçage, intérieur et
extérieur à ce dernier avec l'angle en sinus et
cosinus, de référence au premier... Voici:

Sub Form_Load()
Dim colonne As Double
Dim ligne As Double
Dim rayon As Double
Dim debut_arc As Double
Dim fin_arc As Double
Dim radian As Double
Dim sinus As Double
Dim cosinus As Double
Dim c As Double
Dim l As Double
'
AutoRedraw = True
ScaleMode = 1
'
rayon = 600 ' arc de cercle
colonne = 1000
ligne = 1200
debut_arc = 10 * (3.14 / 180)
fin_arc = 100 * (3.14 / 180)
Circle (colonne, ligne), rayon, , debut_arc,
fin_arc
'
radian = 120 * (3.14 / 180) ' cercle intérieur
par rapport à l'arc de cercle
cosinus = Cos(radian)
sinus = Sin(radian)
c = (250) * cosinus + colonne
l = ligne - (250) * sinus
Circle (c, l), 300
'
radian = 150 * (3.14 / 180) ' cercle extérieur
par rapport à l'arc de cercle
cosinus = Cos(radian)
sinus = Sin(radian)
c = (-2500) * cosinus + colonne
l = ligne - (250) * sinus
Circle (c, l), 250
End Sub

--
Romans, logiciels, email, site personnel
http://irolog.free.fr/joe.htm
------------------------------------------------------------------------------------
"Fred" a écrit dans le message
de news: 476eb594$0$28946$
| Bonjour,
|
| Je veux faire un petit programme qui utilise
l'Arc de Sinus, hors le
| fonction arc sinus n'existe pas sous VB 6.
|
| J'ai trouvé des codes, mais aucun ne retourne un
résultat correcte.
|
| Avez vous une solution ?
|
| Merci.
|
Avatar
Fred
Le 2007-12-23 20:23:00 +0100, Fred dit :

Bonjour,

Je veux faire un petit programme qui utilise l'Arc de Sinus, hors le
fonction arc sinus n'existe pas sous VB 6.

J'ai trouvé des codes, mais aucun ne retourne un résultat correcte.

Avez vous une solution ?

Merci.



Je me réponds à moi même, j'ai trouvé la Lib Mathematique, qui intègre
les fonctions Trigo, et ça fonctionne très bien.
Avatar
Jean-marc
Fred wrote:
Le 2007-12-23 20:23:00 +0100, Fred dit :

Bonjour,

Je veux faire un petit programme qui utilise l'Arc de Sinus, hors le
fonction arc sinus n'existe pas sous VB 6.

J'ai trouvé des codes, mais aucun ne retourne un résultat correcte.

Avez vous une solution ?

Merci.



Je me réponds à moi même, j'ai trouvé la Lib Mathematique, qui intègre
les fonctions Trigo, et ça fonctionne très bien.



Hello,

Pour compléter ce que disait François, sur base des formules indiquées,
on peut se faire de sympatiques fonctions.

Juste pour le plaisir, voici pour ArcSin:

' Dans un Module
Option Explicit

Public Enum TRIGO_UNIT
TRIG_RADIAN = 1
TRIG_DEGRE = 2
TRIG_GRAD = 3
End Enum

Public Const PI As Double = 3.141592653

Public Function ArcSin(ByVal x As Double, Optional ByVal unit As TRIGO_UNIT
= TRIG_RADIAN) As Double
Dim res As Double

res = Atn(x / Sqr(-x * x + 1))
Select Case unit
Case TRIG_DEGRE
res = res * 180 / PI
Case TRIG_GRAD
res = res * 200 / PI
End Select
ArcSin = res
End Function



Et pour utiliser:

Private Sub Command1_Click()
Debug.Print ArcSin(0.707106781082286, TRIG_DEGRE)
Debug.Print ArcSin(0.707106781082286, TRIG_GRAD)
Debug.Print ArcSin(0.707106781082286, TRIG_RADIAN)
Debug.Print ArcSin(0.707106781082286)
End Sub



Résultat:

45
50
0,78539816325
0,78539816325



--
Jean-marc Noury (jean_marc_n2)
Microsoft MVP - Visual Basic
FAQ VB: http://faq.vb.free.fr/
mailto: remove '_no_spam_' ;