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
» I Love You
par JL35 Hier à 16:25

» MARK_ON déclenche un événement ON_CLICK à la place de ...
par Jean Claude Mer 18 Oct 2017 - 18:08

» mise a jour calculatrice
par joeeee2017 Mer 18 Oct 2017 - 15:57

» [solved] 3D_LINE How to ?
par Jicehel Mer 18 Oct 2017 - 11:01

» Convertisseur de base 10 de 2 à 36
par gigi75 Mar 17 Oct 2017 - 18:49

» calculatrice avec touches movibles
par joeeee2017 Dim 15 Oct 2017 - 1:11

» CORTANA
par gigi75 Sam 14 Oct 2017 - 16:32

» Calculatrice
par Jean Claude Sam 14 Oct 2017 - 12:30

» Compilateur FBPano
par jean_debord Jeu 12 Oct 2017 - 9:53

» KGF_dll - nouvelles versions
par Klaus Mar 10 Oct 2017 - 18:49

» à propos de Panoramic_Editor [Résolu]
par Klaus Mar 10 Oct 2017 - 3:19

» Un petit "coucou" à tous les Panoramiciens !
par Jack Ven 6 Oct 2017 - 10:24

» Pourquoi le compilateur stagne
par mindstorm Mer 4 Oct 2017 - 20:38

» Panoramic ?
par Marc37 Mer 4 Oct 2017 - 0:39

» Premiers pas avec Arduino
par Marc37 Mer 4 Oct 2017 - 0:29

Navigation
 Portail
 Index
 Membres
 Profil
 FAQ
 Rechercher
Rechercher
 
 

Résultats par :
 
Rechercher Recherche avancée
Octobre 2017
LunMarMerJeuVenSamDim
      1
2345678
9101112131415
16171819202122
23242526272829
3031     
CalendrierCalendrier

Partagez | 
 

 nouvelle commande

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

avatar

Nombre de messages : 536
Localisation : Troyes
Date d'inscription : 05/02/2011

MessageSujet: nouvelle commande   Mar 3 Mai 2011 - 11:52

bjr Jack

voila en tant que tourneur je voudrait crée un programme
sur la trigonométrie ce qui est bcp utilisé dans ce domaine
mais un inconvénient est présent sur panoramic c'est que
pour convertir les "rad" en "degré" puisque sin(), cos(), tan()
s'exprime en rad ou sinon comment convertir tous en degré
sin(1)=0.8414....... au lieu de 45
sin(45)=0.9509..... au lieu de 1

également pour quant cera la version final de la version 0.921
voir 0.922 de panoramic et pour IDE
merci et a plus tard
Revenir en haut Aller en bas
Voir le profil de l'utilisateur
jean_debord

avatar

Nombre de messages : 756
Age : 63
Localisation : Limoges
Date d'inscription : 21/09/2008

MessageSujet: Re: nouvelle commande   Mar 3 Mai 2011 - 12:27

La conversion se fait en considérant que 180 degrés = Pi radians donc :

1 degré = Pi / 180 ~ 0.0174532925199433 radian

On peut mettre cette valeur dans une variable (puisqu'en Panoramic il n'y a pas de constantes):

Code:

dim DegToRad
DegToRad = 0.0174532925199433

' La tangente de 45 degrés est égale à 1
print tan(45 * DegToRad)

Autre possibilité : faire une DLL qui apporte les fonctions de conversion.
Revenir en haut Aller en bas
Voir le profil de l'utilisateur http://www.unilim.fr/pages_perso/jean.debord/index.htm
Jicehel

avatar

Nombre de messages : 5858
Age : 45
Localisation : 77500
Date d'inscription : 19/04/2011

MessageSujet: Re: nouvelle commande   Mar 3 Mai 2011 - 15:05

Il y a ce sujet http://panoramic.free-boards.net/t1333-dll-eval-nouvelle-version
qui explique comment faire avec le lien sur le site super bien fait pour l'utiliser Smile
Revenir en haut Aller en bas
Voir le profil de l'utilisateur
Invité
Invité



MessageSujet: Re: nouvelle commande   Mar 3 Mai 2011 - 17:07

Voila qui tombe bien pour moi, j'allais devoir potasser ces conversions.
Le truc qui me gène le plus, vu que ma planche à dessin est cassée, et que je fais un programme pour faire du dessin technique, est que les commandes de forme, comme 2d_rectangle, et 2d_circle, remplissent complètement l'espace de la couleur 2d_fill par défaut ou autre, et efface les traits en dessous.
Obligé de faire un rectangle avec 4 droites, et de faire un cercle par un programme. N'étant pas informaticien, il faut que je retrouve la méthode. Je sais qu'un s'agit d'une boucle avec sinus et cosinus! C'est quand-même dommage, qu'on soit obligé de faire un programme pour chaque forme, pour ne dessiner que le périmètre, et que la possibilité transparente n'existe pas. Je ne me souviens pas que les autres basics procédaient ainsi.
Je ferais avec.

Il y aura des essais à faire, avec la nouvelle présentation de "Poster une réponse".
A quoi servent: Spoiler, aléatoire WoW, source
Revenir en haut Aller en bas
jean_debord

avatar

Nombre de messages : 756
Age : 63
Localisation : Limoges
Date d'inscription : 21/09/2008

MessageSujet: Re: nouvelle commande   Mer 4 Mai 2011 - 16:52

Pour ce type de tracé c'est l'algorithme de Bresenham qui est généralement recommandé. Il évite d'utiliser les fonctions trigonométriques, qui ralentissent le calcul.

* Algorithme pour tracer des segments :

http://fr.wikipedia.org/wiki/Algorithme_de_trac%C3%A9_de_segment_de_Bresenham

* Algorithme pour tracer des cercles :

http://fr.wikipedia.org/wiki/Algorithme_de_trac%C3%A9_d%27arc_de_cercle_de_Bresenham
Revenir en haut Aller en bas
Voir le profil de l'utilisateur http://www.unilim.fr/pages_perso/jean.debord/index.htm
pascal10000

avatar

Nombre de messages : 536
Localisation : Troyes
Date d'inscription : 05/02/2011

MessageSujet: Re: nouvelle commande   Mer 4 Mai 2011 - 21:08

merci a tous pour votre aide et je vais pouvoir
finir mon programe
Revenir en haut Aller en bas
Voir le profil de l'utilisateur
Invité
Invité



MessageSujet: Re: nouvelle commande   Jeu 5 Mai 2011 - 0:00

Merci jean_debord.
Mais j'ai quitter le CET en 1966. Et maintenant on ne voit que des formules avec des signes qu'on apprenait pas dans un CET (collège d'enseignement technique).

Je ne vois pas ce que je peux faire avec.

J'ai essayé avec ceci:
Code:
dim x,y,a  ,re,yc,xc,pi
xc=200:yc=200:re=50

pi= 3.1416
picture 1:full_space 1:2d_target_is 1:2d_fill_color 255,0,0
2D_PEN_COLOR 0, 0, 0
FOR a = -3.1416 TO pi STEP 0.01
    x = xc + re*COS(a): y = yc + re*SIN(a)
    2D_circle x, y ,1
NEXT a
pour dessiner un cercle. Le 2d_point, c'est pas formidable. Si l'un d'entre-vous a une formule plus rapide en Panoramic, je suis preneur.

Merci d'avance.
Revenir en haut Aller en bas
JL35



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

MessageSujet: Re: nouvelle commande   Jeu 5 Mai 2011 - 0:30

Si je comprends bien cosmos, tu dessines ton cercle point par point, en dessinant à chaque point un petit cercle, ce qui est très long.
Tu peux tracer ton cercle en dessinant de petits segments de droite tout le tour, à mon avis c'est bien plus rapide:
Code:
dim x,y,a,xa,ya,re,yc,xc,pas,pi
xc=200:yc=200:re=50
pi = 4*ATN(1)

pas = 1: IF re>20 THEN pas = 10/re: ' pas= angle en radians correspondant à chaque segment
x = xc+re: y = yc
FOR a = pas TO 2*pi+pas STEP pas
    xa = xc+re*COS(a): ya = yc+re*SIN(a): 2D_LINE x,y,xa,ya: x=xa: y=ya
NEXT a
end
Plus il y a de segments (variable pas), plus le cercle sera précis.
Plus le rayon est grand, plus il faut de segments.
C'est à ajuster en fonction de la précision souhaitée. Ainsi si on met 5/re au lieu de 10/re c'est très satisfaisant à mon avis.
Revenir en haut Aller en bas
Voir le profil de l'utilisateur
Invité
Invité



MessageSujet: Re: nouvelle commande   Jeu 5 Mai 2011 - 0:59

Merci pour ton code. Effectivement cela va plus vite.

J'ai vu que dans mon code, il y avait 2d_fill_color 255,0,0 qui ne servait à rien.
Il avait fallu que je face des essais pour retrouver la méthode, et la tienne est plus rapide.
C'est dommage qu'il n'y a pas d'instruction pour dessiner un simple cercle. Est-ce en prévision, je ne crois pas.

Merci et bonne nuit Sleep
Revenir en haut Aller en bas
JL35



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

MessageSujet: Re: nouvelle commande   Jeu 5 Mai 2011 - 11:42

Effectivement ça a déjà été demandé (par moi entre autres... Very Happy ) , de pouvoir tracer une figure (rectangle ou cercle) sans remplissage, mais enfin on peut s'en sortir comme ça pour le cercle, et avec 2D_LINE et 2D_POLY_TO pour le rectangle, ou une figure quelconque.

Evidemment les algorithmes de Jean-Debord sont beaucoup plus précis et sophistiqués (et intéressants à connaître, merci Jean-Debord), ça dépend de ce qu'on veut faire. Si c'est seulement pour tracer une figure dans un picture, la méthode rustique suffit. Par contre si c'est pour piloter une machine-outil, là c'est autre chose.
Revenir en haut Aller en bas
Voir le profil de l'utilisateur
Contenu sponsorisé




MessageSujet: Re: nouvelle commande   

Revenir en haut Aller en bas
 
nouvelle commande
Voir le sujet précédent Voir le sujet suivant Revenir en haut 
Page 1 sur 1
 Sujets similaires
-
» nouvelle commande
» Photo de la nouvelle télécommande Bbox TV
» pb télécommande nouvelle interface
» [Résolu] Commande cmd
» commande menu "Enregistrer"

Permission de ce forum:Vous ne pouvez pas répondre aux sujets dans ce forum
FORUM DE DISCUSSION SUR LE LANGAGE PANORAMIC :: PANORAMIC :: Vos souhaits d'amélioration de Panoramic-
Sauter vers: