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 Sam 21 Juil 2018 - 16:57

» Roues dentées
par jean_debord Sam 21 Juil 2018 - 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 | 
 

 La cinquième surprise de l'année

Aller en bas 
AuteurMessage
Parpaiun

avatar

Nombre de messages : 192
Age : 78
Localisation : HERAULT
Date d'inscription : 15/04/2015

MessageSujet: La cinquième surprise de l'année   Sam 16 Avr 2016 - 10:36

Oyez, oyez, chers confrères, en proie à une volonté indéfectible de programmer en Panoramic, je vous ai concocté une cinquième surprise de l'année !

Cette figure baptisée par mes soins: "Rosace à bandes entrelacées" est tirée d'un ouvrage de Michel Fleury dans lequel il n'y a pourtant aucun programme, ni formule mathématique. J'ai donc usé de mes méninges pour en faire un programme digne de Panoramic.

D'abord, je me suis attaqué à la maquette puis à la confection de la rosace grâce à un tour de magie que peut-être certains d'entre vous connaissent.

Dans mon programme, vous remarquerez la présence des procédures ROT et ECHEL.
Ces deux là, tirés du package "APPLESOFT", demandent que chaque figure concernée soit
mise en mémoire plot par plot. C'est important pour que tout ça fonctionne bien.
- ROT est une fonction de rotation qu'il faut exécuter angle par angle en degrés.
- ECHEL (qui remplace la fonction SCALE primitive dans APPLESOFT) permet soit de réduire,  
  soit d'agrandir la figure à la taille que vous voulez. Seulement, attention, tracez une figure  
  suffisamment grande à l'agrandissement maximum, sinon les plots risqueront d'être
  espacés.

Voici mon programme:
Code:

'  Auteur: Parpaiun
'  Date-version: 15/04/2016
'  D'après :"Graphisme et géométrie", éditions "Presses de l'Université du Québec " par Michel '   Fleury, page 31
'
width 0,500: height 0,500
caption 0,"Rosace à bandes entrelacées"
dim cx,cy,i,j,k,n,px,py,rad,th,x,y
n=786
dim mx(n),my(n),td(n)
label boucle
'
' Construction de la maquette
cx=64 : cy=200
j=1 : mx(j)=cx : my(j)=cy : td(j)=1
droite(cx,cy,0,263,1)
droite(cx,cy,45,261,1)
arc(cx+12,cy,50,70,16,-1)
arc(x,y,60,345,15,1)
px=x : py=y
arc(px,py,50,70,28,-1)
arc(px,py,50,335,16,1)
arc(x,y,60,56,20,-1)
px=x : py=y
arc(px,py,50,335,33,1)
arc(px,py,60,73,30,-1)
arc(x,y,100,345,21,1)
px=x : py=y
arc(px,py,143,82,19,-1)
arc(px,py,138,323,19,1)
arc(x,y,153,62,21,-1)
px=x : py=y
arc(px,py,230,320,18,1)
arc(px,py,153,81,27,-1)
arc(x,y,240,340,19,1)
px=x : py=y
arc(px,py,175,80,33,-1)
arc(px,py,240,321,26,1)
2d_fill_color 255,255,255
print_locate 60,220: print "Nombre total de pixels mémorisés = ";j
'
'  Construction de la rosace
wait 1500
cls
th=0
2d_fill_color 0,0,0
boucle:
 for i = 1 to j
  x=cx - mx(i) : y = cy - my(i)
  rot(th)
  echel(0.8)
  2d_circle 240+x,230+y,2
 next i
 th = th + 45
 if th<360 then goto boucle

END

SUB arc(ax,ay,ar,ad,al,at)
rad=0.01745
n=int(0.55+ar*(al*rad))
ad=(360-ad)*rad
2d_fill_color 0,0,0
for i=1 to n
 2d_circle ax,ay,2
 j=j+1
 mx(j)=ax : my(j)=ay : td(j)=at
 ax = ax + cos(ad) : ay = ay + sin(ad)
 ad = ad + (at/ar)
next i
j=j+1
mx(j)=ax : my(j)=ay : td(j)=at
x=ax : y=ay
END_SUB

SUB droite(dx,dy,da,dl,dt)
rad=0.01745
da=da*rad
for i = 1 to dl
 dx = dx + cos(da) : dy = dy + sin(da*-1)
 if dt=1 then 2d_point dx,dy
next i
x=dx : y=dy
END_SUB

SUB rot(th)
dim_local cs,ss
th=(360-th)*rad
cs=cos(th) : ss=sin(th)
px = x * cs - y * ss
py = x * ss + y * cs
x = px : y = py
END_SUB

SUB echel(e)
x = x * e : y = y * e
END_SUB


Comme toujours, libre à vous le soin de procéder à la coloration. Et bon week-end !
  lol!    lol!    lol!
Revenir en haut Aller en bas
Voir le profil de l'utilisateur
jjn4

avatar

Nombre de messages : 1761
Date d'inscription : 13/09/2009

MessageSujet: +++   Sam 16 Avr 2016 - 19:41

Oh, la belle fleur !
Joli !
I love you alien I love you
Revenir en haut Aller en bas
Voir le profil de l'utilisateur http://jjn4.e-monsite.com
Jean Claude

avatar

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

MessageSujet: Re: La cinquième surprise de l'année   Sam 16 Avr 2016 - 21:30

C'est vrai que c'est très joli et très élaboré.

Je n'ai pas réussi à coloriser, pas facile.

Bravo Parpaiun.

A+
Revenir en haut Aller en bas
Voir le profil de l'utilisateur
Contenu sponsorisé




MessageSujet: Re: La cinquième surprise de l'année   

Revenir en haut Aller en bas
 
La cinquième surprise de l'année
Revenir en haut 
Page 1 sur 1
 Sujets similaires
-
» Surprise ,,,"Mes Poupées Vaudou ***
» Question échange laptop alienware m17xr3 cpu i7 2670qm 4gb ram 6870HD
» Freemobile : (mauvaise) surprise des appels vers l'international !
» Programme et examen de fin d'année de 5°AP
» Surprise... euh... personnes ? @ Gianni

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: