Nombre de messages : 7017 Age : 74 Localisation : Moknine (Tunisie) Entre la chaise et le clavier Date d'inscription : 03/03/2012
Sujet: Re: Naissance de Crocodile Basic Mar 1 Fév 2022 - 22:34
Merci Jean. J'ai fais la mise à jour.
Minibug
Nombre de messages : 4570 Age : 58 Localisation : Vienne (86) Date d'inscription : 09/02/2012
Sujet: Re: Naissance de Crocodile Basic Ven 4 Fév 2022 - 8:05
C'est fait ! Je testerai plus tard.
Merci Jean.
jean_debord
Nombre de messages : 1266 Age : 70 Localisation : Limoges Date d'inscription : 21/09/2008
Sujet: Re: Naissance de Crocodile Basic Ven 29 Avr 2022 - 8:29
Une nouvelle version 0.38 est disponible. Avec elle débute l'inclusion des fonctions 3D.
Ces fonctions sont fournies par la bibliothèque de Blitz3D, adaptée pour FreeBASIC. Cette bibliothèque est basée sur OpenGL.
Voici un exemple de programme FBCroco utilisant ces fonctions (les nouveaux mots-clés sont en majuscules) :
Code:
DIM_3D camera, light, cube
MODE_3D "Cube rotatif"
B3D_CAMERA camera B3D_LIGHT light B3D_CUBE cube
B3D_POSITION cube, 0, 0, 5
while inkey() = ""
B3D_ROTATE cube, 0.1, 0.2, 0.3
UPDATE_WORLD RENDER_WORLD
flip sleep 10 wend
Les objets graphiques sont des variables d'un type pariculier. Elles doivent être déclarées par DIM_3D puis créées par des instructions spécifiques (B3D_CAMERA etc.)
Dans cette version, les objets disponibles sont les suivants :
* CAMERA * LIGHT * MESH (maillage) et ses variantes : PLANE, CUBE, SPHERE, CYLINDER, CONE * TEXTURE
On entre dans le mode graphique par MODE_3D
La plupart des fonctions sont adaptées de PANORAMIC, avec le préfixe B3D au lieu de 3D car FreeBASIC n'autorise pas que les noms des fonctions commencent par un chiffre.
Les paramètres des fonctions peuvent toutefois être différents de ceux de PANORAMIC.
Pour toute précision, voir la documentation, accessible depuis l'éditeur par Ctrl-F1 --> Dessin en 3 dimensions
Il y a 4 exemples, accessibles par Ctrl-M --> Graphisme 3D
Installation
- automatiquement par le programme de vérification des mises à jour (si vous avez CURL)
Nombre de messages : 1266 Age : 70 Localisation : Limoges Date d'inscription : 21/09/2008
Sujet: Re: Naissance de Crocodile Basic Jeu 8 Sep 2022 - 16:33
Le crocodile fait sa rentrée avec une nouvelle version (0.39). Je conseille de la télécharger directement depuis mon site ou depuis mon WebDav. En effet le programme CURL semble ne plus fonctionner chez moi !
Au menu de cette nouvelle version :
1. Passage à FreeBASIC 1.09.0 : il n'y a donc qu'une version complète (pas de mise à jour), en raison de la place prise par les fichiers de FreeBASIC
2. Objets FLTK : Ajout de l'objet CANVAS
Le CANVAS est une surface sur laquelle on peut dessiner. Voici un exemple de programme minimaliste utilisant cet objet :
sub DRAW_canvas fl_move 0, 0 fl_draw 300, 200 end_sub
sub TIMER_canvas widget_redraw canvas end_sub
On constate que :
* La création de l’objet CANVAS se fait par l’instruction WIDGET comme pour les autres objets * Le CANVAS n’a pas de libellé : la chaîne correspondante peut donc être laissée vide * Deux sous-programmes, DRAW_ et TIMER_, sont associés au CANVAS : ces sous-programmes sont indispensables * Les instructions graphiques FLTK (FL_MOVE, FL_DRAW, …) sont regroupées dans le sous-programme DRAW_ * Le sous-programme TIMER_ contient au moins l’instruction WIDGET_REDRAW qui déclenche l’affichage du dessin
Documentation : depuis l'éditeur : Ctrl-F1 --> Dessin avec FLTK
Exemples : Ctrl-M --> Graphisme FLTK
3. Les commandes suivantes, qui étaient auparavant sous forme de procédures, deviennent des fonctions :
4. Dans la commande OPENCOM, le paramètre "numéro de fichier" disparaît. La gestion du fichier est désormais automatique.
5. Le créateur d'objets ALLIGATOR a été mis à jour
6. Le module UNICODE_ADDON (téléchargeable séparément) a été mis à jour : tous les exemples utilisent désormais le CANVAS
Ouf_ca_passe aime ce message
Minibug
Nombre de messages : 4570 Age : 58 Localisation : Vienne (86) Date d'inscription : 09/02/2012
Sujet: Re: Naissance de Crocodile Basic Jeu 8 Sep 2022 - 17:35
C'est mis à jour ! Merci Jean
jean_debord
Nombre de messages : 1266 Age : 70 Localisation : Limoges Date d'inscription : 21/09/2008
Sujet: Re: Naissance de Crocodile Basic Jeu 3 Nov 2022 - 7:39
Une nouvelle version (0.40) est disponible.
Les ajouts concernent les graphismes :
1. Mode négatif : L'instruction MODE peut désormais avoir un paramètre négatif (MODE -1) qui empêche l'affichage de la fenêtre graphique.
Cela peut être intéressant par exemple pour utiliser des instructions qui agissent sur des fichiers, sans que l'affichage de l'image soit nécessaire, comme c'est la cas pour les instructions de traitement d'images décites ci-dessous.
2. Instructions de traitement d'images
Ces instructions transforment un fichier graphique INFILE$ (BMP/PNG/JPG) en un fichier OUTFILE$ (BMP/PNG) selon diverses modalités :
* IMG_RESIZE INFILE$, OUTFILE$, XSCALE, YSCALE
Modifie les dimensions de l'image selon les rapports déinis par XSCALE et YSCALE
* IMG_ROTATE INFILE$, OUTFILE$, ANGLE
Fait tourner l'image selon ANGLE
Voir le programme exemple :
Ctrl-M --> Graphisme FLTK --> Rotation et mise à l'échelle des images
* IMG_TRANSFO INFILE$, OUTFILE$, FADR(PIXEL_EDIT)
Transforme l'image selon les règles définies dans la procédure PIXEL_EDIT
Cette procédure doit avoir la syntaxe suivante :
PIXEL_EDIT(W%, H%, X%, Y%, R%, G%, B%, A%)
Paramètres en entrée :
W%, H% : largeur et hauteur de l'image initiale
X%, Y% : position d'un pixel dans l'image initiale
R%, G%, B%, A% : couleur du pixel dans l'image initiale
Paramètres en sortie :
W%, H% : largeur et hauteur de l'image transformée
X%, Y% : position du pixel dans l'image transformée
R%, G%, B%, A% : couleur du pixel dans l'image transformée
Voir les exemples (adaptés de papydall) :
Ctrl-M --> Graphisme FLTK --> Transformations bijectives, du photomaton et du boulanger
3. Ajout des programmes sur l'itérateur quadratique
Nombre de messages : 7017 Age : 74 Localisation : Moknine (Tunisie) Entre la chaise et le clavier Date d'inscription : 03/03/2012
Sujet: Re: Naissance de Crocodile Basic Jeu 3 Nov 2022 - 21:30
Merci Jean. J'ai réinstallé la version complète, vu que j'avais tout perdu récemment. J’essaie, vaille que vaille, de remettre à jour certaines fonctionnalités que j’avais auparavant sur mon ordi. Une fois de plus, merci.
jean_debord
Nombre de messages : 1266 Age : 70 Localisation : Limoges Date d'inscription : 21/09/2008
Sujet: Re: Naissance de Crocodile Basic Ven 24 Fév 2023 - 17:24
Une nouvelle version (0.41) est disponible.
Les ajouts concernent principalement les graphismes.
1. Dessin sur l'objet FORM
En plus du CANVAS, il est désormais possible de dessiner directement sur l'objet FORM. Ce type de graphisme est dit OVERLAY car il recouvre les objets que la fenêtre peut contenir. Sur l'exemple ci-dessous, le carré rouge se déplace par-dessus les boutons. On peut cliquer sur un bouton même s'il est entièrement caché par la figure.
Les programmes exemples "Dessin avec FLTK" ont été modifiés selon cette méthode.
2. Nouvelle instruction IMG_CROP
Cette instruction permet de rogner une image. La syntaxe est semblable à celle des instructions IMG_ROTATE, IMG_RESIZE et IMG_TRANSFO, en ce sens que les images sont contenues dans des fichiers :
Code:
img_crop infile$, outfile$, x0%, y0%, w%, h%
rogne l'image à partir du point (x0, y0), sur une largeur w et une hauteur h
Nouveaux programmes exemples :
Démo de OVERLAY (image ci-dessus) : Ctrl-M --> Graphisme FLTK --> Graphisme avec FORM --> Graphisme recouvrant
Pour les fêtes de Noel, le père Crocodile vous offre une nouvelle version (0.42).
La principale modification concerne l'ajout des crocoscripts.
Un crocoscript est un programme écrit sur une seule ligne et qui peut être lancé depuis la ligne de commande avec l'option -p :
Code:
fbcroco.exe -p "dim a$ : a = 'Bonjour' : ? a"
Le crocoscript est passé dans une chaîne de caractères placée entre guillemets. Ces derniers ne sont donc pas autorisés à l'intérieur de la chaîne : ils sont remplacés par des apostrophes. A part cela, la plupart des mots-clés de FBCroco sont acceptés dans les crocoscripts.
Pour plus d'informations sur les crocoscripts, voir la documentation. Dans l'éditeur FBCroco : Ctrl-F1 --> Prise en main de FBCroco --> Les crocoscripts
Autres modifications :
* Ajout du mot-clé VAR, pour définir des variables initialisées :
Code:
var i = 1, x = 3.14, a = "Bonjour" print i, x, a
Le type de la variable est déterminé par sa valeur. Donc, pas besoin de suffixes. C'est l'homologue de CONST.
* Correction de quelques problèmes affectant la programmation des DLLs pour Panoramic.
Nombre de messages : 1266 Age : 70 Localisation : Limoges Date d'inscription : 21/09/2008
Sujet: Re: Naissance de Crocodile Basic Lun 29 Jan 2024 - 11:40
Pour bien commencer l'année 2024 sous le signe du crocodile, voici une nouvelle version (0.43) de FBCroco.
1. Fonction renommée
LOG10 renommée en LOGDEC pour ne pas confondre avec la fonction LOG10 de MPFR
2. Fonctions ajoutées
LOGBIN : logarithme de base 2
PYTHAG : hypoténuse du triange rectangle = sqr(x² + y²)
PRINTF, SPRINTF : écriture formatée (comme en C)
3. Programmes exemples
La plupart ont déjà été présentés sur le forum :
* Ensemble de Mandelbrot en multiprécision : exemples\fractal\mandel_mpfr.bas
* Animation des ensembles de Julia : exemples\fractal\julianim.bas
* Fonction de Piantadosi : exemples\Piantadosi
* Exemples de DLL pour PANORAMIC : exemples\lib\panoramic
Cette version est disponible sur mon WebDav, dossier FBCroco.
Marc
Nombre de messages : 2466 Age : 63 Localisation : TOURS (37) Date d'inscription : 17/03/2014
Sujet: Re: Naissance de Crocodile Basic Lun 29 Jan 2024 - 14:28
Au fil des mois, le Croco est devenu un Deinosuchus !
Bravo et merci Jean !
jean_debord
Nombre de messages : 1266 Age : 70 Localisation : Limoges Date d'inscription : 21/09/2008
Sujet: Re: Naissance de Crocodile Basic Jeu 25 Avr 2024 - 8:45
Pas aussi monstrueux que le Deinosuchus, mais notre crocodile grandit peu à peu !
La preuve : une nouvelle version (0.44) vient de sortir (disponible sur mon WebDav, dossier FBCroco).
Au menu de cette version :
1. Ajout de fonctions statistiques
Code:
BINOMIAL(N, K) Coefficient binomial : N! / (K! * (N - K)!) MINTAB(X()) Minimum du tableau X MAXTAB(X()) Maximum du tableau X AVERAGE(X()) Moyenne du tableau X MEDIAN(X()) Médiane du tableau X (+ tri du tableau) STDEV(X()) Ecart-type du tableau X (échantillon, calcul avec N-1) STDEVP(X()) Ecart-type du tableau X (population, calcul avec N)
2. Calcul en multiprécision
La "pseudo-instruction" SET_MPFR_PREC est désormais une directive de compilation : #SET_MPFR_PREC
3. Mise à jour des fonctions mathématiques
L'ensemble des fonctions mathématiques relatives aux nombres réels est désormais disponible dans 4 modes :
* Mode "programme" avec des réels standard (double précision, 64 bits)
Code:
dim x x = exp(1)
* Mode "programme" avec des réels en précision étendue
Code:
#set_mpfr_prec 100 dim x! x = exp(1)
* Mode "calculatrice" avec des réels standard
Code:
dim result SEE_InitEval SEE_Eval("exp(1)", result)
* Mode "calculatrice" avec des réels en précision étendue
Code:
#set_mpfr_prec 100 dim result! SEE_InitEval SEE_Eval("exp(1)", result)
jdebord
Nombre de messages : 12 Date d'inscription : 20/09/2008
Sujet: Re: Naissance de Crocodile Basic Mer 29 Mai 2024 - 9:14
Une nouvelle version (0.45) de FBCroco est disponible.
Ajout de fonctions mathématiques :
Code:
CORREL(X(), Y()) Coefficient de corrélation entre les tableaux X() et Y() LINEQ(A(), B(), Det) Résolution d'un système d'équations linéaires INTEG(fadr(f), a, b) Intégrale d'une fonction f entre a et b
D'autres fonctions seront ajoutées par la suite.
Programmes de démonstration :
* matrix.bas (dans \exemples\math) : ancien programme réécrit pour LINEQ
* hilbert.bas (dans \exemples\mpfr) : matrices de Hilbert en multiprécision
Depuis l'éditeur : Ctrl-F1 --> Applications scientifiques
Téléchargement :
Cette version est disponible sur mon WebDav, dossier FBCroco.
jean_debord
Nombre de messages : 1266 Age : 70 Localisation : Limoges Date d'inscription : 21/09/2008
Sujet: Re: Naissance de Crocodile Basic Jeu 27 Juin 2024 - 10:31
Une nouvelle version (0.46) de FBCroco est disponible. Les maths et les graphismes sont au programme !
Racines d'un polynôme
La fonction CPOLY_ROOTS calcule les racines d'un polynôme à coefficients réels ou complexes. Le programme exemple (mandelpol.bas dans exemples\fractal) a déjà été présenté sur le forum à propos des images fractales (https://panoramic.1fr1.net/t6574-figures-fractales).
Tracé de courbe
Les instructions FPLOT et TPLOT permettent de tracer une courbe définie respectivement par une fonction ou par des tableaux de coordonnées, avec tracé automatique des axes.
Les exemples suivants ont été récrits avec ces instructions :
* plotfunc.bas (dans \exemples\graph) : tracé de fonction
* fibofunc.bas (dans \exemples\math) : fonction de Fibonacci
* specfunc.bas (dans exemples\math) : graphes des fonctions spéciales
Documentation : Depuis l'éditeur : Ctrl-F1 --> Dessin avec FBCroco --> Axes et courbes
Téléchargement :
Cette version est disponible sur mon WebDav, dossier FBCroco.
Pedro
Nombre de messages : 1594 Date d'inscription : 19/01/2014
Sujet: Crocodile Basic. Jeu 27 Juin 2024 - 13:41
Bonjour.
Je n'ai pas trouvé le moyen d'afficher une page 'https' avec Crocodile Basic. Merci de ton aide jean.
jean_debord
Nombre de messages : 1266 Age : 70 Localisation : Limoges Date d'inscription : 21/09/2008
Sujet: Re: Naissance de Crocodile Basic Ven 28 Juin 2024 - 9:23
Il y a un objet HVIEWER mais il est limité. En particulier, il ne peut qu'afficher un fichier déjà présent sur le disque dur.
Voir l'exemple ex87.bas dans exemples\widgets
Pour télécharger un fichier depuis l'Internet il faut lancer un programme externe tel que CURL (voir l'exemple de vérification des mises à jour : verif.bas dans \exemples)
Pedro
Nombre de messages : 1594 Date d'inscription : 19/01/2014
Sujet: Naissance de Crocodile Basic Ven 28 Juin 2024 - 13:36
Bonjour.
OK, merci beaucoup Jean.
papydall
Nombre de messages : 7017 Age : 74 Localisation : Moknine (Tunisie) Entre la chaise et le clavier Date d'inscription : 03/03/2012
Sujet: Re: Naissance de Crocodile Basic Ven 28 Juin 2024 - 23:11
Merci Jean. Je suis à jour.
jean_debord
Nombre de messages : 1266 Age : 70 Localisation : Limoges Date d'inscription : 21/09/2008
Sujet: Re: Naissance de Crocodile Basic Mar 23 Juil 2024 - 11:27
Une nouvelle version (0.47) de FBCroco est disponible. Cette version ajoute la régression linéaire (fonction LINFIT)
Programme de démonstration : linfit.bas dans \exemples\math (figure ci-dessus).
Cette version est disponible sur mon WebDav, dossier FBCroco.
jean_debord
Nombre de messages : 1266 Age : 70 Localisation : Limoges Date d'inscription : 21/09/2008
Sujet: Re: Naissance de Crocodile Basic Jeu 29 Aoû 2024 - 10:18
Pour la rentrée des classes, le professeur Crocodile vous propose une nouvelle version 0.48 très orientée vers les mathématiques !
Après la régression linéaire (introduite dans la précédente version), voici les régressions multilinéaire, polynomiale et non linéaire.
La documentation est accessible depuis l'éditeur par Ctrl-F1 --> Applications scientifiques ; les exemples par Ctrl-M --> Mathématiques
Pour la régression multilinéaire, nous avons choisi comme exemple le jeu de donnees Longley du NIST (National Institute of Standards and Technology). Cet exemple est notoirement difficile mais le crocodile n'en fait qu'une bouchée !
Les autres exemples sont tirés du livre "Programmes de Mathématiques sur Amstrad" par P. Beaufils, M. Lamarche et Y. Muggianu, Editions Eyrolles, 1986. Ce livre est disponible sur le site ACME (site de Fredisland, qui fut un temps membre de ce forum, et que je remercie pour sa remarquable collection de documents sur Amstrad).
Comme d'habitude cette version est disponible sur mon WebDav, dossier FBCroco.
Note : l'organisation du logiciel ayant un peu changé, certains fichiers sont devenus obsolètes. Pour les effacer, vous trouverez dans la distribution un script clean.bat qu'il vous suffira de lancer depuis le répertoire d'installation de FBCroco. Cette opération n'est pas obligatoire, c'est juste pour avoir une installation "propre".