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
» Planétarium virtuel.
par Pedro Alvarez Hier à 16:57

» Roues dentées
par jean_debord Hier à 10:40

» Attention arnaque !
par mindstorm Jeu 19 Juil 2018 - 19:18

» Qui fait quoi ?
par silverman Mer 18 Juil 2018 - 15:21

» ITEM_SELECT N,L pour synedit
par silverman Mer 18 Juil 2018 - 15:20

» Boussole
par jean_debord Mer 18 Juil 2018 - 11:06

» Roue à n faces
par Marc Dim 15 Juil 2018 - 22:16

» Exemple d'une nouvelle version d'un GRID
par Jean Claude Ven 13 Juil 2018 - 10:32

» Une simple question
par Oscaribout Sam 7 Juil 2018 - 23:20

» BUG sur l'objet TAB
par Jack Sam 7 Juil 2018 - 21:12

» Monopoly moderne
par jjn4 Sam 7 Juil 2018 - 15:06

» Récapitulatif ludothèque panoramic jjn4
par jjn4 Ven 6 Juil 2018 - 17:41

» Lignes ondulées
par JL35 Ven 6 Juil 2018 - 17:39

» bug off_activate 0 : sans d'effet
par silverman Ven 6 Juil 2018 - 13:02

» Position des objets d'un conteneur dans FBPano et Panoramic
par Navigateur Ven 6 Juil 2018 - 12:59

Navigation
 Portail
 Index
 Membres
 Profil
 FAQ
 Rechercher
Rechercher
 
 

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

Partagez | 
 

 Manipulation de polygones

Aller en bas 
AuteurMessage
sergeauze

avatar

Nombre de messages : 391
Age : 66
Localisation : Hautes Alpes France
Date d'inscription : 09/01/2010

MessageSujet: Manipulation de polygones   Mer 24 Juin 2015 - 14:38

C'est comme un fil rouge chez moi
C'est un essai
j'ai pas su y adapter le buffer
Il faudrait encore quelques reglages
Code:
iF 1 = 2
.............................................
               LE FIL ROUGE
  manipulations de       polygones
.............................................
* touche w pour rafraichir l'ecran
*             sinon
  possibilite de decocher CLS (vers la ligne 80)
* le hint vous donne la fonction  des curseurs
  On commence par celui du milieu
*  escape pour sortir
  .............................................
END_IF

dim x0,y0,r,Px,Py,j%,n%,Pi,a,a0,a1,h,w ,w$ ,w1,w12
 Pi = 4*ATN(1)
' w=57
 rem coordonnées du centre
    x0=650
    Y0=500
    
      width 0,1500
      height 0,1000
  2d_pen_width 3
    rem rayon
  r=350
color 0,255,140,35
  rem nombre de côtés
    n%=4
    ' a1 =( 2*Pi/n%): ' angle de rotation de chaque côté

    rem angle de début
      a0=1/(2*Pi)
  iF 1 = 2
picture 10 :width 10,1200 :height 10, 1000:' 2d_target_is 10:left 10,100
     END_IF

  track_bar 12:min 12,0.1:max 12,360:top 12,500:hint 12,"autour de Z"

  track_bar 4:min 4,1:max 4,25:top  4,300:hint 4,"nombre de cotes"

  track_bar 3:min 3,1:max 3 ,450:top 3  ,200:hint 3,"profondeur  "

  track_bar 2:min 2,10: max 2, 500: top 2,400 :hint 2,"autourde l'axe des y"
                position 2,500
                width 2,200

track_bar 1:min 1,10:max 1,500:top 1,100:hint 1,"autour de l'axe des x  "
                position 1,500
                width 1,200
rem xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx
repeat
'  a0=w12/2*Pi
a0=10*w12/360
    w =position(1)
    w1 =position(2)
    r= position(3)
    n%=  position (4)
    w12= position(12)
rem ................................................
    Px = (r-w1) * Cos(a0) + x0
    Py = (r-w) * Sin(a0) + y0
    2D_poly_from px,py
rem  ...........................................
    a = a0
    For j% = 0 To n%
    a1 =( 2*Pi/n%)
        a = a + a1
rem .......................................
        Px = (r-w1)*Cos(a) + x0
        Py = (r-w)*Sin(a) + y0
        2d_circle px,py,5
        2D_poly_to Px, Py
    Next j%

    display
  '  2d_pen_color 255,0,rnd(255)
  '  wait 250
    a0 = a0+1/52

    if scancode= 27 then end
    print_locate  1010,10
  print  position (1)
 if scancode=87 then cls
'  cls
until scancode=27
terminate
end
Revenir en haut Aller en bas
Voir le profil de l'utilisateur http://sergeauze.blog-video.tv/
Jicehel

avatar

Nombre de messages : 5928
Age : 45
Localisation : 77500
Date d'inscription : 18/04/2011

MessageSujet: Re: Manipulation de polygones   Mer 24 Juin 2015 - 16:12

Excellent Sergause, toutefois, je trouvais inutile de faire une boucle infini s'il n'y rien a faire alors j'ai un peu modifié ton programme et à mon vis pour cet usage le double buffer n'est pas utile.
Code:
' .............................................
'                LE FIL ROUGE
'        manipulations de polygones
' .............................................
' * touche w pour rafraichir l'ecran
' *            sinon
'  possibilite de decocher CLS (vers la ligne 80)
' * le hint vous donne la fonction  des curseurs
'  On commence par celui du milieu
' *  escape pour sortir
'  .............................................


dim x0,y0,r,Px,Py,j%,n%,Pi,a,a0,a1,h,w ,w$ ,w1,w5

label  change, touche

 Pi = 4*ATN(1)
' w=57
width 0,1500 : height 0,1000 : rem dimensionnement de la fenêtre principale
color 0,255,140,35

x0=width(0)/2 : Y0=height(0)/2  : rem coordonnées du centre

2d_pen_width 3

r=350 : rem rayon

n%=4 : rem nombre de côtés

a0=1/(2*Pi) : rem angle de début

track_bar 5:min 5,0.1:max 5,360:top 5,500:hint 5,"autour de Z"
track_bar 4:min 4,1:max 4,25:top  4,300: position 4,n% : hint 4,"nombre de cotes"
track_bar 3:min 3,1:max 3 ,450:top 3  ,200:hint 3,"profondeur  "
track_bar 2:min 2,10: max 2, 500: top 2,400 :hint 2,"autourde l'axe des y"
position 2,500  :  width 2,200
track_bar 1:min 1,10:max 1,500:top 1,100:hint 1,"autour de l'axe des x  "
position 1,500 :  width 1,200
gosub change
for n% = 1 to 5 : on_change n%,change : next n%
rem xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx
end

touche:
  if key_down_code = 27 then terminate
return


change:
    cls
    a0=10*w5/360
    w =position(1)
    w1 =position(2)
    r= position(3)
    n%=  position (4)
    w5= position(5)
    Px = (r-w1) * Cos(a0) + x0 : Py = (r-w) * Sin(a0) + y0
    2D_poly_from px,py
    a = a0
    For j% = 0 To n%
        a1 =( 2*Pi/n%)
        a = a + a1
        Px = (r-w1)*Cos(a) + x0 : Py = (r-w)*Sin(a) + y0
        2d_circle px,py,5 :  2D_poly_to Px, Py
    Next j%

    display
    a0 = a0+1/52
'    print_locate  1010,10 :  print  position (1)
    wait 5
return
Revenir en haut Aller en bas
Voir le profil de l'utilisateur
sergeauze

avatar

Nombre de messages : 391
Age : 66
Localisation : Hautes Alpes France
Date d'inscription : 09/01/2010

MessageSujet: Re: Manipulation de polygones   Mer 24 Juin 2015 - 17:27

merci Jicehel
Ta programmation est plus structurée  et efficace  que la mienne
Je fais dans le linéaire et la boucle c'est mon moteur j'aime quand ça bouge !bounce
je me suis souvenu de l'astuce de Klaus qui permet de copier de long textes dans un programme
sans REM ou '
Revenir en haut Aller en bas
Voir le profil de l'utilisateur http://sergeauze.blog-video.tv/
Jean Claude

avatar

Nombre de messages : 5527
Age : 64
Localisation : 83 Var
Date d'inscription : 07/05/2009

MessageSujet: Re: Manipulation de polygones   Mer 24 Juin 2015 - 18:18

Bravo, Sergeause.

C'est original comme manière de faire.

Au passage, tu m'a fait découvrir que l'on pouvais utiliser l' * à la place rem.

A+
Revenir en haut Aller en bas
Voir le profil de l'utilisateur
papydall

avatar

Nombre de messages : 5980
Age : 67
Localisation : Moknine (Tunisie) Entre la chaise et le clavier
Date d'inscription : 03/03/2012

MessageSujet: Re: Manipulation de polygones   Mer 24 Juin 2015 - 18:29

Détrompes toi Jean Claude : Le * ne remplace pas le REM.
C’est une astuce Klaussienne pour simuler un REM sur tout un bloc de code.

Comme le test IF 1 = 2 est faux, Panoramic va ignorer purement et simplement toutes les commandes jusqu’au END_IF.
C'est comme si on a mis des REM au début de ces commandes.

C’est une excellente astuce pour REMer toute une partie du code lors de la mise au point du programme.

@Sergeauze

Bonne idée, ce petit code.
Revenir en haut Aller en bas
Voir le profil de l'utilisateur http://papydall-panoramic.forumarabia.com/
Jean Claude

avatar

Nombre de messages : 5527
Age : 64
Localisation : 83 Var
Date d'inscription : 07/05/2009

MessageSujet: Re: Manipulation de polygones   Mer 24 Juin 2015 - 19:02

Ben, je viens d'apprendre quelque chose. Very Happy
Revenir en haut Aller en bas
Voir le profil de l'utilisateur
Contenu sponsorisé




MessageSujet: Re: Manipulation de polygones   

Revenir en haut Aller en bas
 
Manipulation de polygones
Revenir en haut 
Page 1 sur 1
 Sujets similaires
-
» Y a t il des utilisateurs de ...
» mon GPS est devenu ANGLAIS pour la manipulation
» Manipulation sur etrex 30
» Test Pliage Polygones
» Mise à jour des informations de limitation de vitesse par Navteq

Permission de ce forum:Vous ne pouvez pas répondre aux sujets dans ce forum
FORUM DE DISCUSSION SUR LE LANGAGE PANORAMIC :: PANORAMIC :: Les inutilitaires-
Sauter vers: