FORUM DE DISCUSSION SUR LE LANGAGE PANORAMIC
Vous souhaitez réagir à ce message ? Créez un compte en quelques clics ou connectez-vous pour continuer.
FORUM DE DISCUSSION SUR LE LANGAGE PANORAMIC

Développement d'applications avec le langage Panoramic
 
AccueilAccueil  RechercherRechercher  Dernières imagesDernières images  S'enregistrerS'enregistrer  MembresMembres  Connexion  
Derniers sujets
» 2D_fill_color
Compilateur FBPano - Page 9 Emptypar Marc Aujourd'hui à 9:56

» Consommation gaz électricité
Compilateur FBPano - Page 9 Emptypar leclode Mer 17 Avr 2024 - 11:07

» trop de fichiers en cours
Compilateur FBPano - Page 9 Emptypar lepetitmarocain Mer 17 Avr 2024 - 10:19

» on_key_down (résolu)
Compilateur FBPano - Page 9 Emptypar leclode Mar 16 Avr 2024 - 11:01

» Sous-programme(résolu)
Compilateur FBPano - Page 9 Emptypar jjn4 Jeu 4 Avr 2024 - 14:42

» Bataille-navale
Compilateur FBPano - Page 9 Emptypar jjn4 Mer 3 Avr 2024 - 14:08

» Minimiser une fenêtre Panoramic.
Compilateur FBPano - Page 9 Emptypar Pedro Mar 2 Avr 2024 - 13:50

» Récapitulatif ludothèque panoramic jjn4
Compilateur FBPano - Page 9 Emptypar jjn4 Lun 1 Avr 2024 - 18:04

» demande explication KGF pour imprimer en mm
Compilateur FBPano - Page 9 Emptypar JL35 Jeu 28 Mar 2024 - 17:28

» Petit passage furtif
Compilateur FBPano - Page 9 Emptypar Froggy One Mer 27 Mar 2024 - 14:26

» SPIN et aide langage (résolu)
Compilateur FBPano - Page 9 Emptypar leclode Sam 23 Mar 2024 - 15:20

» Aide-mémoire des mots-clés Panoramic
Compilateur FBPano - Page 9 Emptypar papydall Mer 20 Mar 2024 - 21:23

» Je ne comprend pas pourquoi la largeur de la scene 3d change
Compilateur FBPano - Page 9 Emptypar Marc Mar 12 Mar 2024 - 20:06

» Comment télécharger panoramic?
Compilateur FBPano - Page 9 Emptypar lepetitmarocain Sam 9 Mar 2024 - 13:31

» @lepetitmarocain <==> KGFGrid
Compilateur FBPano - Page 9 Emptypar Klaus Dim 3 Mar 2024 - 9:59

Navigation
 Portail
 Index
 Membres
 Profil
 FAQ
 Rechercher
Rechercher
 
 

Résultats par :
 
Rechercher Recherche avancée
Avril 2024
LunMarMerJeuVenSamDim
1234567
891011121314
15161718192021
22232425262728
2930     
CalendrierCalendrier
Le Deal du moment : -50%
-50% sur les sacs à dos pour ordinateur ...
Voir le deal
19.99 €

 

 Compilateur FBPano

Aller en bas 
+11
Pedro
Ouf_ca_passe
RMont
Yannick
Klaus
papydall
pascal10000
Minibug
Jicehel
jpcr
jean_debord
15 participants
Aller à la page : Précédent  1, 2, 3 ... 8, 9, 10, 11  Suivant
AuteurMessage
Jicehel

Jicehel


Nombre de messages : 5947
Age : 51
Localisation : 77500
Date d'inscription : 18/04/2011

Compilateur FBPano - Page 9 Empty
MessageSujet: Re: Compilateur FBPano   Compilateur FBPano - Page 9 EmptyLun 22 Mai 2017 - 10:43

Trop bien Wink vraiment pratique
Revenir en haut Aller en bas
jean_debord

jean_debord


Nombre de messages : 1246
Age : 69
Localisation : Limoges
Date d'inscription : 21/09/2008

Compilateur FBPano - Page 9 Empty
MessageSujet: Re: Compilateur FBPano   Compilateur FBPano - Page 9 EmptySam 27 Mai 2017 - 10:47

Nouvelle version 0.22
---------------------

1. Ajout des glissières et barres de défilement

2. Modifications des instructions FILE_READ et FILE_WRITE ; ajout des instructions FILE_WRITE_CSV et FILE_READ_CSV (voir documentation, chapitre "Les fonctions non graphiques de FBPano", paragraphe "Fichiers texte")

3. Nouveaux programmes de démonstration (dans exemples\FLTK) :

   ex70.bas : glissières
   ex71.bas : barres de défilement
   ex72.bas : carnet d'adresses

4. Installation : les fichiers sont sur mon WebDav, dossier FBPano.

   * Si vous avez installé la version 0.21 : ne pas désinstaller ; exécutez le programme de mise à jour update_021_to_022.exe en gardant le même répertoire d'installation que pour la 0.21

   * Si vous avez une version antérieure à 0.21 : désinstallez cette version et installez la version 0.22 complète avec le programme setup_022.exe
Revenir en haut Aller en bas
http://www.unilim.fr/pages_perso/jean.debord/index.htm
jean_debord

jean_debord


Nombre de messages : 1246
Age : 69
Localisation : Limoges
Date d'inscription : 21/09/2008

Compilateur FBPano - Page 9 Empty
MessageSujet: Re: Compilateur FBPano   Compilateur FBPano - Page 9 EmptyMer 31 Mai 2017 - 10:26

Voici un premier essai d'adaptation du programme "Esthétique polaire" de Papydall :

Code:

' *******************************************************************
'                      Esthetique polaire
'                          Par Papydall
'             Adaptation pour FBPano par J. Debord
' *******************************************************************

' -------------------------------------------------------------------
' Constantes et variables
' -------------------------------------------------------------------

dim s(360), c(360)  ' Table des sinus et cosinus

dim obj%            ' Indice d'un objet
dim cap$            ' Label d'un objet

' -------------------------------------------------------------------
' Creation de l'interface graphique
' -------------------------------------------------------------------

enum GUI
  fmMain,
  alEq1, alEq2
  ct_p, ct_u, ct_v, ct_q, ct_w, ct_z,
  rd_p1, rd_p2, rd_u1, rd_u2, rd_v1, rd_v2,
  rd_q1, rd_q2, rd_w1, rd_w2, rd_z1, rd_z2,
  spSize,
  edFile,
  btGraph,
  alImage
end enum

set_scheme "gtk+"

form fmMain, 100, 100, 720, 500, "Esthetique polaire"

alpha alEq1, 10, 10, 200, 30, "x = r (1 + p.u) v", , FL_FLAT_BOX
alpha alEq2, 10, 40, 200, 30, "y = r (1 + q.w) z", , FL_FLAT_BOX

container ct_p, 50, 100, 150, 35, "p "

container_begin ct_p
  radio rd_p1,  55, 105, 20, 25, "+1"
  radio rd_p2, 130, 105, 20, 25, "-1"
container_end ct_p

container ct_u, 50, 145, 150, 35, "u "

container_begin ct_u
  radio rd_u1,  55, 150, 20, 25, "cos(a)"
  radio rd_u2, 130, 150, 20, 25, "sin(a)"
container_end ct_u

container ct_v, 50, 190, 150, 35, "v "

container_begin ct_v
  radio rd_v1,  55, 195, 20, 25, "cos(a)"
  radio rd_v2, 130, 195, 20, 25, "sin(a)"
container_end ct_v

container ct_q, 50, 235, 150, 35, "q "

container_begin ct_q
  radio rd_q1,  55, 240, 20, 25, "+1"
  radio rd_q2, 130, 240, 20, 25, "-1"
container_end ct_q

container ct_w, 50, 280, 150, 35, "w "

container_begin ct_w
  radio rd_w1,  55, 285, 20, 25, "cos(a)"
  radio rd_w2, 130, 285, 20, 25, "sin(a)"
container_end ct_w

container ct_z, 50, 325, 150, 35, "z "

container_begin ct_z
  radio rd_z1,  55, 330, 20, 25, "cos(a)"
  radio rd_z2, 130, 330, 20, 25, "sin(a)"
container_end ct_z

spin spSize, 120, 380, 90, 25, "Taille de l'image "

edit edFile, 110, 420, 100, 25, "Fichier (*.png) "

button btGraph, 10, 460, 200, 30, "Tracer", , T_Button_Return

alpha alImage, 230, 10, 480, 480, , , FL_FLAT_BOX

' -------------------------------------------------------------------
' Proprietes des objets
' -------------------------------------------------------------------

for obj = alEq1 to alEq2
  color_fl obj, FL_DARK_GREEN
  color_caption_fl obj, FL_YELLOW
  font_caption obj, FL_HELVETICA_BOLD, 20
next obj

for obj = ct_p to ct_z
  caption_align obj, FL_ALIGN_LEFT
  font_caption obj, FL_HELVETICA, 20
next obj

mark_on rd_p1
mark_on rd_u1
mark_on rd_v1

mark_on rd_q2
mark_on rd_w2
mark_on rd_z2

color_text_fl spSize, FL_RED
position_range spSize, 100, 450, 10
position spSize, 400

color_text_fl edFile, FL_RED
text edFile, "polar"

color_fl alImage, FL_BLACK

' -------------------------------------------------------------------
' Affectation des sous-programmes aux evenements
' -------------------------------------------------------------------

on_click btGraph, Graph

' -------------------------------------------------------------------
' Lancement de l'application
' -------------------------------------------------------------------

LUT s(), c()

start fmMain

' -------------------------------------------------------------------
' Sous-programmes utilitaires
' -------------------------------------------------------------------

sub LUT (s(), c())
' Look-Up Table : Sinus et Cosinus pour les angles de 0 a 360 degres

  dim i%, a

  for i = 0 to 360
    a = i * 0.01745329252  ' radians
    s(i) = sin(a)
    c(i) = cos(a)
  next i
end sub

sub Calc (r, a%, x, y)
' Calcul des coordonnees (x,y) d'un point
' en fonction du rayon r et de l'angle a en degres

  dim p%, q%, u, v, w, z

  if checked(rd_u1) then u = c(a) else u = s(a)
  if checked(rd_v1) then v = c(a) else v = s(a)
  if checked(rd_w1) then w = c(a) else w = s(a)
  if checked(rd_z1) then z = c(a) else z = s(a)

  if checked(rd_p1) then x = 1 + u else x = 1 - u
  if checked(rd_q1) then y = 1 + w else y = 1 - w

  x = r * x * v
  y = r * y * z
end_sub

function GetColor% (r, a%)
' Calcule la couleur dans le systeme HSV

  dim h, s, v, rr%, gg%, bb%
  
  h = a
  s = 1 - 0.3 * r
  v = 1 - 0.2 * r

  HSVtoRGB h, s, v, rr, gg, bb
  GetColor = RGB(rr, gg, bb)
end_function  

' -------------------------------------------------------------------
' Sous-programmes associes aux evenements
' -------------------------------------------------------------------

sub Graph ()

  const xmin = -1, xmax = 1
  const ymin = -1, ymax = 1

  const stp = 1 / 256

  dim size%                ' Taille de l'image
  dim a%, r, x, y
  dim filename$

  size = get_position(spSize)
  filename = trim(get_text(edFile))

  fb_img_begin 0, size, size
    fb_window xmin, ymin, xmax, ymax

    for r = 0 to 0.5 step stp
      for a = 0 to 360
        Calc r, a, x, y
        fb_pen_color GetColor(r, a)
        fb_point x, y
        fb_point -x, y
      next a
    next r

    if filename <> "" then fb_save filename + ".png"
  fb_img_end

  fb_set_img alImage, 0
  redraw
end_sub

Compilateur FBPano - Page 9 Ex7310

La coloration est faite dans le système HSV, l'angle "a" déterminant la teinte (position sur le cercle de couleurs).

On peut choisir la taille de l'image.

L'image est sauvegardée sous forme de fichier PNG avec fond transparent, ce qui permet de l'utiliser éventuellement comme "sprite" ... pour faire des vaisseaux "aliens" par exemple Smile

Il y a encore quelques bricoles à améliorer ...

Cela pourrait faire l'objet d'un article ; je vois déjà le titre : "56 variations sur un thème de Papydall" Smile
Revenir en haut Aller en bas
http://www.unilim.fr/pages_perso/jean.debord/index.htm
papydall

papydall


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

Compilateur FBPano - Page 9 Empty
MessageSujet: Re: Compilateur FBPano   Compilateur FBPano - Page 9 EmptyMer 31 Mai 2017 - 14:56

Compilateur FBPano - Page 9 10110 Compilateur FBPano - Page 9 10110Compilateur FBPano - Page 9 10110
Revenir en haut Aller en bas
http://papydall-panoramic.forumarabia.com/
jean_debord

jean_debord


Nombre de messages : 1246
Age : 69
Localisation : Limoges
Date d'inscription : 21/09/2008

Compilateur FBPano - Page 9 Empty
MessageSujet: Re: Compilateur FBPano   Compilateur FBPano - Page 9 EmptyJeu 1 Juin 2017 - 10:14

Merci papydall Smile

Voici une version légèrement améliorée qui permet de choisir le nombre de courbes que l'on veut superposer.

Code:

' *******************************************************************
'                      Esthetique polaire
'                          Par Papydall
'             Adaptation pour FBPano par J. Debord
' *******************************************************************

' -------------------------------------------------------------------
' Constantes et variables
' -------------------------------------------------------------------

dim s(360), c(360)  ' Table des sinus et cosinus

dim obj%            ' Indice d'un objet
dim cap$            ' Label d'un objet

' -------------------------------------------------------------------
' Creation de l'interface graphique
' -------------------------------------------------------------------

enum GUI
  fmMain,
  alEq1, alEq2
  ct_p, ct_u, ct_v, ct_q, ct_w, ct_z,
  rd_p1, rd_p2, rd_u1, rd_u2, rd_v1, rd_v2,
  rd_q1, rd_q2, rd_w1, rd_w2, rd_z1, rd_z2,
  spNCurv, spSize,
  edFile,
  btGraph,
  alImage
end enum

set_scheme "gtk+"

form fmMain, 100, 100, 720, 500, "Esthetique polaire"

alpha alEq1, 10, 10, 200, 30, "x = r (1 + p.u) v", , FL_FLAT_BOX
alpha alEq2, 10, 40, 200, 30, "y = r (1 + q.w) z", , FL_FLAT_BOX

container ct_p, 30, 80, 180, 35, "p "

container_begin ct_p
  radio rd_p1,  40, 85, 20, 25, "+1"
  radio rd_p2, 130, 85, 20, 25, "-1"
container_end ct_p

container ct_u, 30, 125, 180, 35, "u "

container_begin ct_u
  radio rd_u1,  40, 130, 20, 25, "cos(a)"
  radio rd_u2, 130, 130, 20, 25, "sin(a)"
container_end ct_u

container ct_v, 30, 170, 180, 35, "v "

container_begin ct_v
  radio rd_v1,  40, 175, 20, 25, "cos(a)"
  radio rd_v2, 130, 175, 20, 25, "sin(a)"
container_end ct_v

container ct_q, 30, 215, 180, 35, "q "

container_begin ct_q
  radio rd_q1,  40, 220, 20, 25, "+1"
  radio rd_q2, 130, 220, 20, 25, "-1"
container_end ct_q

container ct_w, 30, 260, 180, 35, "w "

container_begin ct_w
  radio rd_w1,  40, 265, 20, 25, "cos(a)"
  radio rd_w2, 130, 265, 20, 25, "sin(a)"
container_end ct_w

container ct_z, 30, 305, 180, 35, "z "

container_begin ct_z
  radio rd_z1,  40, 310, 20, 25, "cos(a)"
  radio rd_z2, 130, 310, 20, 25, "sin(a)"
container_end ct_z

spin spNCurv,  120, 355,  90,  25, "Nb de courbes "
spin spSize,   120, 390,  90,  25, "Taille de l'image "
edit edFile,   120, 425,  90,  25, "Fichier (*.png) "
button btGraph, 10, 460, 200,  30, "Tracer", , T_Button_Return
alpha alImage, 230,  10, 480, 480, , , FL_FLAT_BOX

' -------------------------------------------------------------------
' Proprietes des objets
' -------------------------------------------------------------------

for obj = alEq1 to alEq2
  color_fl obj, FL_DARK_GREEN
  color_caption_fl obj, FL_YELLOW
  font_caption obj, FL_HELVETICA_BOLD, 20
next obj

for obj = ct_p to ct_z
  caption_align obj, FL_ALIGN_LEFT
  font_caption obj, FL_HELVETICA, 20
next obj

mark_on rd_p1
mark_on rd_u1
mark_on rd_v1

mark_on rd_q2
mark_on rd_w2
mark_on rd_z2

for obj = spNCurv to edFile
  color_text_fl obj, FL_RED
next obj

position_range spNCurv, 1, 500, 1
position spNCurv, 100
  
position_range spSize, 100, 450, 10
position spSize, 400

text edFile, "polar"

color_fl alImage, FL_BLACK

' -------------------------------------------------------------------
' Affectation des sous-programmes aux evenements
' -------------------------------------------------------------------

on_click btGraph, Graph

' -------------------------------------------------------------------
' Lancement de l'application
' -------------------------------------------------------------------

LUT s(), c()

start fmMain

' -------------------------------------------------------------------
' Sous-programmes utilitaires
' -------------------------------------------------------------------

sub LUT (s(), c())
' Look-Up Table : Sinus et Cosinus pour les angles de 0 a 360 degres

  dim i%, a

  s(0) = 0
  c(0) = 1
  for i = 1 to 360
    a = i * 0.01745329252  ' radians
    s(i) = sin(a)
    c(i) = cos(a)
  next i
end sub

sub Calc (a%, x, y)
' Calcul des coordonnees d'un point de la courbe de reference (r = 1)
' en fonction de l'angle a en degres

  dim u, v, w, z

  if checked(rd_u1) then u = c(a) else u = s(a)
  if checked(rd_v1) then v = c(a) else v = s(a)
  if checked(rd_w1) then w = c(a) else w = s(a)
  if checked(rd_z1) then z = c(a) else z = s(a)

  if checked(rd_p1) then x = 1 + u else x = 1 - u
  if checked(rd_q1) then y = 1 + w else y = 1 - w

  x = x * v
  y = y * z
end_sub

function GetColor% (r, a%)
' Calcule la couleur dans le systeme HSV

  dim h, s, v, rr%, gg%, bb%

  h = a
  s = 1
  v = 1

  HSVtoRGB h, s, v, rr, gg, bb
  GetColor = RGB(rr, gg, bb)
end_function

' -------------------------------------------------------------------
' Sous-programmes associes aux evenements
' -------------------------------------------------------------------

sub Graph ()

  const xmin = -2, xmax = 2
  const ymin = -2, ymax = 2

  dim nc%             ' Nb de courbes              
  dim size%           ' Taille de l'image
  dim x(360), y(360)  ' Pts de la courbe de reference (r = 1)
  dim a%, r, xr, yr   ' Parametres et pts d'une courbe quelconque
  dim i%              ' Indice de la courbe
  dim dr              ' Increment de r
  dim filename$       ' Nom du fichier PNG

  nc = get_position(spNCurv)
  size = get_position(spSize)
  filename = trim(get_text(edFile))

  dr = 1 / nc
  
  ' Calcul de la courbe de refernce
  for a = 0 to 360
    Calc a, x(a), y(a)
  next a

  ' Trace des courbes
  fb_img_begin 0, size, size
    fb_window xmin, ymin, xmax, ymax

    for i = 1 to nc
      r = i * dr
      for a = 0 to 360
        xr = x(a) * r
        yr = y(a) * r
        fb_pen_color GetColor(r, a)
        fb_point xr, yr
        fb_point -xr, yr
      next a
    next i

    if filename <> "" then fb_save filename + ".png"
  fb_img_end

  fb_set_img alImage, 0
  redraw
end_sub

Il est intéressant de pouvoir tracer un petit nombre de courbes, ou même comme ici une seule courbe pour avoir la forme de base.

Compilateur FBPano - Page 9 Ex7311

Le calcul a été amélioré : on calcule d'abord les coordonnees pour une courbe de référence (r = 1) ; pour tracer les autres courbes il suffit de multiplier ces coordonnees par r.

Ceci entraîne une certaine accélération. Le programme PANORAMIC pourrait peut-être en profiter ?
Revenir en haut Aller en bas
http://www.unilim.fr/pages_perso/jean.debord/index.htm
papydall

papydall


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

Compilateur FBPano - Page 9 Empty
MessageSujet: Re: Compilateur FBPano   Compilateur FBPano - Page 9 EmptyJeu 1 Juin 2017 - 14:28

Merci Jean.

A la prochaine !
Revenir en haut Aller en bas
http://papydall-panoramic.forumarabia.com/
jean_debord

jean_debord


Nombre de messages : 1246
Age : 69
Localisation : Limoges
Date d'inscription : 21/09/2008

Compilateur FBPano - Page 9 Empty
MessageSujet: Re: Compilateur FBPano   Compilateur FBPano - Page 9 EmptyMer 21 Juin 2017 - 20:03

Nouvelle version 0.23
---------------------

1. Ajout des CONTAINER_TAB et des TABS

Compilateur FBPano - Page 9 Tabs10

Pour les explications voir la documentation : fbpano.htm --> Les objets FLTK (3)

2. Nouveaux programmes de démonstration (dans exemples\FLTK) :

   ex73.bas : "Esthetique polaire" d'après Papydall
   ex74.bas : Démonstration des TABS

3. Nouveaux programmes de fractales (dans exemples\fractal\panomand) :

   biomorph.bas : pour les biomorphes de Pickover
   newton.bas   : pour la méthode de Newton

4. Installation : les fichiers sont sur mon WebDav, dossier FBPano.

   * Si vous avez installé la version 0.22 : ne pas désinstaller ; exécutez le programme de mise à jour update_022_to_023.exe en gardant le même répertoire d'installation que pour la 0.22

   * Si vous avez une version antérieure à 0.22 : désinstallez cette version et installez la version 0.23 complète avec le programme setup_023.exe
Revenir en haut Aller en bas
http://www.unilim.fr/pages_perso/jean.debord/index.htm
papydall

papydall


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

Compilateur FBPano - Page 9 Empty
MessageSujet: Re: Compilateur FBPano   Compilateur FBPano - Page 9 EmptyJeu 22 Juin 2017 - 0:34

J’ai fais la mise à jour de la version 023
Merci Jean.
A propos, comment connaitre la version de FBPano  que l’on a installée?
Revenir en haut Aller en bas
http://papydall-panoramic.forumarabia.com/
jean_debord

jean_debord


Nombre de messages : 1246
Age : 69
Localisation : Limoges
Date d'inscription : 21/09/2008

Compilateur FBPano - Page 9 Empty
MessageSujet: Re: Compilateur FBPano   Compilateur FBPano - Page 9 EmptyJeu 22 Juin 2017 - 8:56

Pour le moment, le seul moyen c'est d'afficher le fichier fbpano.htm

Je ferai en sorte que le programme start_fbpano.exe écrive le numéro de version.
Revenir en haut Aller en bas
http://www.unilim.fr/pages_perso/jean.debord/index.htm
jean_debord

jean_debord


Nombre de messages : 1246
Age : 69
Localisation : Limoges
Date d'inscription : 21/09/2008

Compilateur FBPano - Page 9 Empty
MessageSujet: Re: Compilateur FBPano   Compilateur FBPano - Page 9 EmptySam 8 Juil 2017 - 10:49

La prochaine version de FBPano apportera les objets TREEVIEW.

Compilateur FBPano - Page 9 Treevi10

Dans la version de base, ils se comportent un peu comme des menus avec des sous-menus (figure de gauche).

Mais l'intérêt, c'est qu'on peut affecter des objets à chaque élément (figure de droite). On peut ainsi créer des masques de saisie plus ou moins complexes.

Il y a toutefois une petite limitation : pour que les objets apparaissent bien alignés sur le côté gauche, il faut utiliser une police de caractères à chasse fixe (police Courier sur l'exemple ci-dessus).
Revenir en haut Aller en bas
http://www.unilim.fr/pages_perso/jean.debord/index.htm
jean_debord

jean_debord


Nombre de messages : 1246
Age : 69
Localisation : Limoges
Date d'inscription : 21/09/2008

Compilateur FBPano - Page 9 Empty
MessageSujet: Re: Compilateur FBPano   Compilateur FBPano - Page 9 EmptySam 22 Juil 2017 - 9:54

Nouvelle version 0.24
---------------------

1. Ajout des TREEVIEW (voir message précedent)

   Pour les explications voir la documentation : fbpano.htm --> Les objets FLTK --> 8. TREEVIEW

2. Programmes de démonstration de TREEVIEW : ex75, ex76, ex76a (dans exemples\FLTK)

3. Correction d'un bug signalé par Ouf_ça_passe : certaines instructions utilisant des listes de paramètres ne fonctionnaient pas lorsque les virgules séparant les paramètres n'étaient pas suivies d'un espace

4. Le programme start_fbpano affiche désormais le numéro de version

5. Installation : les fichiers sont sur mon WebDav, dossier FBPano.

   * Si vous avez installé la version 0.23 : ne pas désinstaller ; exécutez le programme de mise à jour update_023_to_024.exe en gardant le même répertoire d'installation que pour la 0.23

   * Si vous avez une version antérieure à 0.23 : désinstallez cette version et installez la version 0.24 complète avec le programme setup_024.exe
Revenir en haut Aller en bas
http://www.unilim.fr/pages_perso/jean.debord/index.htm
Jicehel

Jicehel


Nombre de messages : 5947
Age : 51
Localisation : 77500
Date d'inscription : 18/04/2011

Compilateur FBPano - Page 9 Empty
MessageSujet: Re: Compilateur FBPano   Compilateur FBPano - Page 9 EmptyVen 28 Juil 2017 - 10:59

Tu devrais ajouter une constante avec le numéro de version pour pouvoir le gérer par programmation et faire des tests si nécessaire dans l'exécution du code, au moins un qui dirait de mettre à jour à l'exécution si la version est trop ancienne
Revenir en haut Aller en bas
Yannick




Nombre de messages : 8610
Age : 52
Localisation : Bretagne
Date d'inscription : 15/02/2010

Compilateur FBPano - Page 9 Empty
MessageSujet: re   Compilateur FBPano - Page 9 EmptyVen 28 Juil 2017 - 15:00

Bien que j' ai décroché, je te félicite pour ta persévérance.
Laughing
Revenir en haut Aller en bas
jean_debord

jean_debord


Nombre de messages : 1246
Age : 69
Localisation : Limoges
Date d'inscription : 21/09/2008

Compilateur FBPano - Page 9 Empty
MessageSujet: Re: Compilateur FBPano   Compilateur FBPano - Page 9 EmptyLun 31 Juil 2017 - 10:14

... en espérant que cette persévérance montrera l'exemple à ceux qui ont abandonné leur projet et les incitera à s'y remettre Smile

En attendant, voici une petite astuce de FLTK pour insérer certains symboles graphiques dans les intitulés des objets, sans passer par des icônes :

Code:

dim i%, label$

data "->"    ,">"     ,">>"  ,">|"  ,">[]"    ,"<|"
data "<-"    ,"<"     ,"<<"  ,"|<"  ,"[]<"    ,"|>"
data "<->"   ,"->|"   ,"||"  ,"+"   ,"arrow"  ,"returnarrow"
data "square","circle","line","menu","UpArrow","DnArrow"

form 0, 100, 100, 450, 420, "Labels symboliques"

matwidget T_Button, 4, 6,  1, 20, 20, 60, 60, 10, 40
matwidget T_Alpha,  4, 6, 25, 20, 80, 60, 20, 10, 80

for i = 1 to 24
  read label
  caption i, "@" + label
  font_caption i, , 30
  color_caption_fl i, FL_GREEN
  caption i + 24, label
next i
  
start 0

Compilateur FBPano - Page 9 Ex04a10

Chaque symbole est défini par une chaîne de caractères (en-dessous du bouton) : dans l'instruction CAPTION le symbole est obtenu en préfixant la chaîne par "@"

Il y a en plus tout un système pour modifier la taille et l'orientation des symboles, un peu comme l'instruction DRAW de FreeBASIC.
Revenir en haut Aller en bas
http://www.unilim.fr/pages_perso/jean.debord/index.htm
jean_debord

jean_debord


Nombre de messages : 1246
Age : 69
Localisation : Limoges
Date d'inscription : 21/09/2008

Compilateur FBPano - Page 9 Empty
MessageSujet: Re: Compilateur FBPano   Compilateur FBPano - Page 9 EmptyLun 7 Aoû 2017 - 11:10

Quelques commandes supplémentaires pour les TREEVIEW :

- ajout d'icônes
- modification ou suppression des lignes qui matérialisent l'arborescence

Ici un TREEVIEW qui pourrait servir de menu :

Compilateur FBPano - Page 9 Treevi12

Le TREEVIEW est un objet très pratique Smile
Revenir en haut Aller en bas
http://www.unilim.fr/pages_perso/jean.debord/index.htm
papydall

papydall


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

Compilateur FBPano - Page 9 Empty
MessageSujet: Re: Compilateur FBPano   Compilateur FBPano - Page 9 EmptyLun 7 Aoû 2017 - 23:49

Compilateur FBPano - Page 9 1_2410
Revenir en haut Aller en bas
http://papydall-panoramic.forumarabia.com/
Mike

Mike


Nombre de messages : 31
Age : 73
Localisation : NANCY
Date d'inscription : 12/06/2007

Compilateur FBPano - Page 9 Empty
MessageSujet: Demande d'éclairage avec les list   Compilateur FBPano - Page 9 EmptyMar 15 Aoû 2017 - 17:29

Bonjour Jean,
Je te soumets ce petit programme simple qui consiste à générer 1000 nombres dans un list et les reproduire avec un filtre dans un autre.
La variable de comptage s'incrémente bien, sauf que le remplissage dans le deuxième list se limite à 256 items.
Aurais-je fais une erreur de programmation ou le remplissage des items sont limités malgré que ce ne soit pas le cas dans le premier list.
J'ai aussi essayé de changer les variables et leurs assignations, mais c'est pareil.
J'ai aussi bien compris que par défaut les variables dans les sub étaient du type variables locales, mais même en les changeant, c'est pareil
Peux-tu éclairer ma petite lanterne ?

Merci et bonnes vacances si c'est le cas.
Cordialement
Mike

Code:
form 0, 100, 100, 1020, 600, "Essai de transfert d'un list à un autre"
color_fl 0, FL_Cyan

list 1, 10, 20, 300, 500, "Remplissage 1"
list 2,350,20,300,500,"réception après requête"

remplir()
affiche()
start 0

end

sub remplir()
dim i%
dim y%
y%=1000
for i%= 1 to y%
item_add (1,str$(i%))
caption 1,str$(i%)
 next i%
end sub

sub affiche()
dim i%
dim y%
y%=1000
dim a$

 for i%= 1 to y%
 a$=item_read (1,i%)
   if val (a$)<10 or val(a$) >100 then
    item_add 2,a$
    ' item_add 2, str$(i%)
    end_if  
   caption 2,str$(i%)  
 next i%
end sub
Revenir en haut Aller en bas
jean_debord

jean_debord


Nombre de messages : 1246
Age : 69
Localisation : Limoges
Date d'inscription : 21/09/2008

Compilateur FBPano - Page 9 Empty
MessageSujet: Re: Compilateur FBPano   Compilateur FBPano - Page 9 EmptyMer 16 Aoû 2017 - 7:49

Bonjour Mike,

Merci d'avoir signalé ce bug !

Il y a bien saturation. La fonction item_read cesse de transmettre son résultat au programme appelant après 256 appels !

Le bug affecte aussi les COMBOs, et probablement d'autres fonctions aussi.

Je réfléchis à la meilleure manière de le corriger (transformer les fonctions en sous-programmes ? transformer la DLL panofltk en une bibliothèque statique ? ...)

J'espère avoir trouvé la solution pour la prochaine mise à jour.

PS. J'ai ajouté 2 commandes pour plier et déplier les branches des TREEVIEW.
Revenir en haut Aller en bas
http://www.unilim.fr/pages_perso/jean.debord/index.htm
jean_debord

jean_debord


Nombre de messages : 1246
Age : 69
Localisation : Limoges
Date d'inscription : 21/09/2008

Compilateur FBPano - Page 9 Empty
MessageSujet: Re: Compilateur FBPano   Compilateur FBPano - Page 9 EmptyJeu 17 Aoû 2017 - 9:07

Le bug est corrigé. J'ai pu faire fonctionner le programme de Mike jusqu'à 1 million d'items dans les listes Smile

J'ai choisi la première méthode : transformation des fonctions en procédures dans la DLL, et ajout dans panofltk.bi de fonctions qui appellent ces procédures.

Ce n'est pas l'idéal, puisqu'il y a 2 appels au lieu d'un, mais cela évite de devoir modifier les programmes existants, ainsi que la documentation.

La deuxième méthode (transformation de la DLL en bibliothèque statique) est en cours d'étude mais ce sera beaucoup plus long.

Une nouvelle version de FBPano sera disponible dans les jours qui viennent. J'ai encore un programme exemple à terminer.

Revenir en haut Aller en bas
http://www.unilim.fr/pages_perso/jean.debord/index.htm
Mike

Mike


Nombre de messages : 31
Age : 73
Localisation : NANCY
Date d'inscription : 12/06/2007

Compilateur FBPano - Page 9 Empty
MessageSujet: Re: Compilateur FBPano   Compilateur FBPano - Page 9 EmptyJeu 17 Aoû 2017 - 12:52

Merci Jean, c'est parfait.
Et aussi pour la possibilité de faire apparaître un TREEVIEW replié au départ.
Je ne manquerai pas de te faire part de mes interrogations au fil de mes essais qui me passionnent, comme tout ce qui est Panoramic.
Et encore bravo pour ton projet. Laughing  Laughing
Mike
Revenir en haut Aller en bas
jean_debord

jean_debord


Nombre de messages : 1246
Age : 69
Localisation : Limoges
Date d'inscription : 21/09/2008

Compilateur FBPano - Page 9 Empty
MessageSujet: Re: Compilateur FBPano   Compilateur FBPano - Page 9 EmptyLun 21 Aoû 2017 - 9:09

Voici donc la :

Nouvelle version 0.25
---------------------

1. Ajout des labels symboliques et des TREEVIEW avec icônes (voir messages précédents)

   Pour les explications voir la documentation : fbpano.htm --> Les objets FLTK (1) et (8 )

2. Nouvelles commandes :

   TREE_OPEN, TREE_CLOSE : pour déplier ou replier les branches des TREEVIEW
   
   TREE_CONNECTOR_STYLE, COLOR_CONNECTOR_FL, COLOR_CONNECTOR_RGB : pour modifier l'aspect des lignes dans les TREEVIEW
   
   ACTIVE, INACTIVE : pour activer ou désactiver un objet

3. Nouveaux programmes de démonstration (dans exemples\FLTK) :

   ex04a.bas : Labels symboliques  

   ex77.bas : TREEVIEW avec icônes
 
   ex78.bas : Calendrier (d'après un programme PANORAMIC de Jean-Claude) :
   
   Compilateur FBPano - Page 9 Calend11

4. Correction du bug signalé par Mike : les fonctions FLTK qui retournent des chaînes de caractères ne pouvaient pas être appelées plus de 256 fois

5. Installation : les fichiers sont sur mon WebDav, dossier FBPano.

   * Si vous avez installé la version 0.24 : ne pas désinstaller ; exécutez le programme de mise à jour update_024_to_025.exe en gardant le même répertoire d'installation que pour la 0.24

   * Si vous avez une version antérieure à 0.24 : désinstallez cette version et installez la version 0.24 complète avec le programme setup_025.exe

6. Note : certains programmes exécutables (*.exe) compilés avec les anciennes versions pourraient ne pas fonctionner avec cette version : dans ce cas, il suffit de les recompiler.
Revenir en haut Aller en bas
http://www.unilim.fr/pages_perso/jean.debord/index.htm
Mike

Mike


Nombre de messages : 31
Age : 73
Localisation : NANCY
Date d'inscription : 12/06/2007

Compilateur FBPano - Page 9 Empty
MessageSujet: Re: Compilateur FBPano   Compilateur FBPano - Page 9 EmptyLun 21 Aoû 2017 - 22:17

@Jean
Tout fonctionne très bien.
J'ai encore quelques suggestions à te soummettre pour parfaire ton projet.
Bien sûr, il manque toujours quelque chose !!
Par exemple la possibilité de "raffraîchir" (comme un redraw) un objet fltk tel un list par exemple en fonction des données enlevées ou apportées.
Mais avant, je me dois de tester toutes les possibilités incluses dans la documentation car je suppose que beaucoup de choses m'ont échappé.
La fonction "matwidget" est facile à mettre en oeuvre et permet de faire rapidement une construction.
Bientôt un premier inutilitaire (pour le fun) avec FBpano. Mais on ne sait jamais !

En tout cas je te remercie pour ce que tu apportes à notre communauté et aussi et surtout pour ton investissement et ta volonté de poursuivre quelque chose que tu a initié et que tu poursuis.
Tu es comme Jack avec la même volonté de dépasser les limites et de construire et ça, c'est un respect absolu.
Et la gare de Limoges est très belle, issue de cette merveilleuse époque des chemins de fer qui me passionnent aussi.
Juste prendre celà comme une évidence sans rapport avec l'informatique.

Bonne soirée
Mike
Revenir en haut Aller en bas
jean_debord

jean_debord


Nombre de messages : 1246
Age : 69
Localisation : Limoges
Date d'inscription : 21/09/2008

Compilateur FBPano - Page 9 Empty
MessageSujet: Re: Compilateur FBPano   Compilateur FBPano - Page 9 EmptyLun 4 Sep 2017 - 9:47

Pour une rentrée en couleurs : j'ai ajouté une commande FB_COLORMAP qui permet de représenter une fonction de 2 variables sous forme de carte :

Compilateur FBPano - Page 9 Ex8010

C'est la méthode utilisée pour tracer les images fractales, étendue au cas d'une fonction quelconque.
Revenir en haut Aller en bas
http://www.unilim.fr/pages_perso/jean.debord/index.htm
Yannick




Nombre de messages : 8610
Age : 52
Localisation : Bretagne
Date d'inscription : 15/02/2010

Compilateur FBPano - Page 9 Empty
MessageSujet: re   Compilateur FBPano - Page 9 EmptyLun 4 Sep 2017 - 21:34

Wahou...bobo les yeux !
Laughing
Revenir en haut Aller en bas
jean_debord

jean_debord


Nombre de messages : 1246
Age : 69
Localisation : Limoges
Date d'inscription : 21/09/2008

Compilateur FBPano - Page 9 Empty
MessageSujet: Re: Compilateur FBPano   Compilateur FBPano - Page 9 EmptyMar 5 Sep 2017 - 9:18

Oui les couleurs sont un peu vives... J'ai réglé la luminosité à 100% Smile

Mais on peut la diminuer bien entendu !
Revenir en haut Aller en bas
http://www.unilim.fr/pages_perso/jean.debord/index.htm
Contenu sponsorisé





Compilateur FBPano - Page 9 Empty
MessageSujet: Re: Compilateur FBPano   Compilateur FBPano - Page 9 Empty

Revenir en haut Aller en bas
 
Compilateur FBPano
Revenir en haut 
Page 9 sur 11Aller à la page : Précédent  1, 2, 3 ... 8, 9, 10, 11  Suivant
 Sujets similaires
-
» Un éditeur pour FBPano
» Configurer FBide pour FBPano
» Container_begin
» Nouvelle version 0.36
» Evolution de FBPano

Permission de ce forum:Vous ne pouvez pas répondre aux sujets dans ce forum
FORUM DE DISCUSSION SUR LE LANGAGE PANORAMIC :: Grands projets réalisés avec Panoramic :: Compilateur FBPANO-
Sauter vers: