EDIT : comment faire une rotation avec une ligne ?

EDIT : comment faire une rotation avec une ligne ? - VB/VBA/VBS - Programmation

Marsh Posté le 15-02-2003 à 21:47:03    

Je m'explique :
Pour les besoins des TPE (sur le mur du son), je dois réaliser un petit prog pour Excel, qui me calcule la vitesse du son et l'angle du cône de Mach en fonction de différents paramètres.
 
Le prog que j'ai fait me donne donc la valeur de l'angle, mais j'aimerais bien le dessiner à partir du prog.  
En fait il me faudrait un bouton (CF. Partie 3 sur programme) qui me crée un dessin comme ci-dessous, et ou Alpha varierait suivant la valeur calculée.
 
http://membres.lycos.fr/kahn21/graphe3.gif
 
Voilà mon prog :
http://membres.lycos.fr/kahn21/mur_du_son.xls
 
 :)  
 
 
EDIT : comment faire une rotation avec une ligne ?
 
j'ai pensé à faire une rotation d'angle alpha et -alpha pour dessiner les droites obliques. Mais comment faire ça, j'arrive à l'appliquer à des objets 3D mais pas à des ligne ...


Message édité par kahn21 le 07-03-2003 à 20:37:03
Reply

Marsh Posté le 15-02-2003 à 21:47:03   

Reply

Marsh Posté le 16-02-2003 à 13:34:58    

Up  :)

Reply

Marsh Posté le 16-02-2003 à 22:35:16    

:bounce:

Reply

Marsh Posté le 17-02-2003 à 16:36:22    

...  [:kahn21]  
 
vous maîtrisez pas dites donc  :D

Reply

Marsh Posté le 19-02-2003 à 13:10:03    

[:totoz]

Reply

Marsh Posté le 01-03-2003 à 17:33:51    


 
 :cry:  
 
quelqu'un peut m'aider ?
 
je dois tout rendre lundi  :sweat:

Reply

Marsh Posté le 07-03-2003 à 20:38:16    

...

Reply

Marsh Posté le 07-03-2003 à 21:21:18    

admettons que tu as une ligne appelée L1:
 
sub rotation()
 
for i=1 To 90
activesheet.shapes("L1" ).select
selection.shaperange.rotation=i
doevents
next
 
 
 
end sub
 
mais c'est pas tout a fait ce que tu veux car les 2 cotes tournent
 

Reply

Marsh Posté le 07-03-2003 à 23:14:14    

nur a écrit :


 
mais c'est pas tout a fait ce que tu veux car les 2 cotes tournent


 
si je fais une 2nde rotation d'angle -i ça devrait marcher non ?
 
 
L'autre problème c'est comment je crée 3 lignes simples et je leur donne un nom (L1, ...) ? j'utilise une msoShapeLinexxx  :??:  
 
Par ailleurs, si je fais une rotation, est ce qu'il est possible de précisser le centre ? sinon les 3 droites ne se couperont plus au même endroit :/
 
Ta solution, est ce que ça serait pour un schéma dans la feuille de calcul ou dans la macro ?
 
(je maîtrise pas trop tu t'en seras rendu compte...)


Message édité par kahn21 le 07-03-2003 à 23:18:53
Reply

Marsh Posté le 08-03-2003 à 11:49:11    

kahn21 a écrit :


 
si je fais une 2nde rotation d'angle -i ça devrait marcher non ?
 
 
L'autre problème c'est comment je crée 3 lignes simples et je leur donne un nom (L1, ...) ? j'utilise une msoShapeLinexxx  :??:  
 
Par ailleurs, si je fais une rotation, est ce qu'il est possible de précisser le centre ? sinon les 3 droites ne se couperont plus au même endroit :/
 
Ta solution, est ce que ça serait pour un schéma dans la feuille de calcul ou dans la macro ?
 
(je maîtrise pas trop tu t'en seras rendu compte...)


 
pour creer des lignes et leur donner un nom ,tu dessine tes lignes ,tu en selectionne une ,puis tu a coté de la barre de formule tu remplace "trait 1" par LIGNE1 par exemple.
 
sinon une autre macro plus appropriée:
 
sub rotat()
pi=3.14116
activesheet.shapes("LIGNE1" ).select  
for i = 0 to 90
selection.shaperange.item("LIGNE1" ).left=160
selection.shaperange.item("LIGNE1" ).width=100*cos (pi*i/180)
selection.shaperange.item("LIGNE1" ).top=160
selection.shaperange.item("LIGNE1" ).height=100 *sin(pi*i/180)
doevents
next
end sub
 
tu dois creer une ligne horizontale et lui donner un nom "LIGNE1" avant  mais ça marche que pour des angles compris entre 0 et 90 ,il faut adapter au dela

Reply

Marsh Posté le 08-03-2003 à 11:49:11   

Reply

Marsh Posté le 08-03-2003 à 17:44:52    

Merci nur  :jap:

Reply

Sujets relatifs:

Leave a Replay

Make sure you enter the(*)required information where indicate.HTML code is not allowed