programmation basique

Une question sur la programmation TI-Nspire? Ce foum est là pour vous aider.

programmation basique

Messagepar OBBARKHAN le 02 Fév 2012, 12:42

Bonjour à tous,
J'ai une TI NSPIRE CX CAS mais peu de temps à consacrer à LUA. J'ai commencé à programmer avec le langage propre de la machine qui me paraît bien pauvre. Par exemple, existe t'il une instruction pour effacer l'écran ? Existe t'il un manuel avec toutes les instructions utilisables en dehors des manuels TI ? Merci pour votre aide.
OBBARKHAN
 
Messages: 2
Inscrit le: 29 Août 2011, 10:18

Re: programmation basique

Messagepar Levak92 le 03 Fév 2012, 09:06

OBBARKHAN a écrit:Bonjour à tous,
J'ai une TI NSPIRE CX CAS mais peu de temps à consacrer à LUA. J'ai commencé à programmer avec le langage propre de la machine qui me paraît bien pauvre.

Oui

Par exemple, existe t'il une instruction pour effacer l'écran ?

Non, il n'existe même pas de fonction pour tracer un point. Il faut tricher avec l'application Graphe & Géométrie. Si tu veux, l'API de la Nspire est conçue pour une utilisation mathématique, pas graphique.

Existe t'il un manuel avec toutes les instructions utilisables en dehors des manuels TI ? Merci pour votre aide.

Oui.
http://education.ti.com/calculators/dow ... 02#view-27
Levak92
 
Messages: 321
Inscrit le: 02 Juin 2010, 23:03
Localisation: France

Re: programmation basique

Messagepar OBBARKHAN le 06 Fév 2012, 15:11

c'est un peu la misère.
Merci pour ton aide. Il faudra décidément que je trouve du temps pour LUA
OBBARKHAN
 
Messages: 2
Inscrit le: 29 Août 2011, 10:18

Re: programmation basique

Messagepar Christian le 06 Fév 2012, 19:15

Bonjour,
Ceci étant, on peut créer des listes par programmes, demander l'affichage dans l'application graphiques de nuages de points dont l'abscisse est une liste et l'ordonnée en est une autre.
Ceci permet déjà de faire des choses intéressantes, comme le montre par exemple les écrans suivants:
image1.jpg
image1.jpg (75.41 Kio) Consulté 8386 fois

image2.jpg
image2.jpg (40.08 Kio) Consulté 8383 fois

image3.jpg
image3.jpg (36.88 Kio) Consulté 8377 fois

Bref, de quoi s'amuser aussi. Ceci étant, j'attends avec impatience de vraies instructions graphiques, comme celles dont on disposait sur la voyage 200.
Bien cordialement,
Christian
Avatar de l’utilisateur
Christian
 
Messages: 340
Inscrit le: 22 Août 2008, 13:42

Re: programmation basique

Messagepar Levak92 le 06 Fév 2012, 19:58

Christian a écrit:Bref, de quoi s'amuser aussi. Ceci étant, j'attends avec impatience de vraies instructions graphiques, comme celles dont on disposait sur la voyage 200.
Bien cordialement,
Christian

Je ne pense pas que cela soit envisageable (si on veut conserver l'aspect mathématique), ou alors ne pas le faire dans une application G&G.
Et je pense que le Lua est en fait la bonne alternative à ce problème. Là les instructions de base pour tracer des pixels (bon faut tricher aussi en traçant un rectangle de 1 pixel de côté, mais c'est déjà moins archaïque) sont présentes. Par contre, si on veut en plus interfacer ça avec des outils mathématiques, il faudra les recoder, c'est vite chiant et long à faire (passer 8 heures sur un ensemble de fonctions pour reproduire la mesure d'angles orientés c'est pas ce que j'appelle du constructif).
Levak92
 
Messages: 321
Inscrit le: 02 Juin 2010, 23:03
Localisation: France

Re: programmation basique

Messagepar Christian le 06 Fév 2012, 20:25

Bonjour,
Pas sûr, si on parvient à nommer simplement par programmation la fenêtre dans laquelle on veut travailler, fenêtre d'ailleurs qui peut ne pas avoir été créée quand on lance le programme (ces problèmes ne se posaient pas sur la V200, d'architecture plus simple).
Est-ce que cela remettrait en cause profondément la structure de la TI-Nspire? Est-ce qu'il y a une impossibilité majeure, comme tu semble le croire? Faudrait-il créer une fenêtre graphique spécialement dédiée à la programmation? Je ne sais pas, mais il me semble qu'un système digne de ce nom doit permettre une programmation graphique. Il est vrai que cela n'a pas été jusqu'à présent la priorité de TI, mais un jour viendra sans aucun doute.
Sinon, LUA est une façon de contourner la difficulté, avec je n'en doute pas un certain nombre de lourdeurs.
A ce propos, dès que j'ai un peu de temps, je me plonge dans le site LUA TI-Nspire... J'aurais sûrement à ce moment des questions à poser.
Bien cordialement,
Christian
Avatar de l’utilisateur
Christian
 
Messages: 340
Inscrit le: 22 Août 2008, 13:42

Re: programmation basique

Messagepar Levak92 le 06 Fév 2012, 22:07

Christian a écrit:Bonjour,
Pas sûr, si on parvient à nommer simplement par programmation la fenêtre dans laquelle on veut travailler, fenêtre d'ailleurs qui peut ne pas avoir été créée quand on lance le programme (ces problèmes ne se posaient pas sur la V200, d'architecture plus simple).

Alors oui, il y a toujours moyen d'améliorer la structure des classeurs, de donner un nom ou un id à chaque onglet+application et enfin d'accéder au contenu graphique via le TI-Basic comme tu le dis. Il y a toujours moyen, et c'est de très loin pas impossible.
Est-ce que cela remettrait en cause profondément la structure de la TI-Nspire? Est-ce qu'il y a une impossibilité majeure, comme tu semble le croire? Faudrait-il créer une fenêtre graphique spécialement dédiée à la programmation? Je ne sais pas, mais il me semble qu'un système digne de ce nom doit permettre une programmation graphique. Il est vrai que cela n'a pas été jusqu'à présent la priorité de TI, mais un jour viendra sans aucun doute.

C'est là que vient le problème, si on compare avec le temps qu'à mis les Request/Text à arriver qui sont pourtant natives et existaient au sein de l'OS bien avant (il suffisait normalement juste de rendre une instruction qui parsait les entrées utilisateur et le tour était joué),on peut se poser des questions sur un projet qui ramené à ce niveau est un véritable brainfuck. Le Lua était vraiment un projet à part, une nouvelle application avec un interface superficielle sur le TI-Basic (instruction math.eval() ). Méchamment je dirais qu'ils ont juste eu à télécharger la surcouche en C de l'interpréteur Lua, coder les fonctions graphiques (qui si ça se trouve utilise les routines de dessin de l'OS), quelques interfaces, et le tour était joué.

Sinon, LUA est une façon de contourner la difficulté, avec je n'en doute pas un certain nombre de lourdeurs.
A ce propos, dès que j'ai un peu de temps, je me plonge dans le site LUA TI-Nspire... J'aurais sûrement à ce moment des questions à poser.
Bien cordialement,
Christian

Comme déjà dit, la seule barrière/lourdeur qu'on peut sentir/percevoir, c'est celle de tout recoder. Même si le calcul formel est accessible via math.eval(), coder des applications mathématiques est et à toujours été, une difficulté énorme, non pas pour la théorie, mais pour les interfaces utilisateur. Un exemple simple : demander une valeur. Il me faut, à moi, pour bien organiser le code et avoir quelque chose d'extensible et de sécurisé et enfin joli, plus de 100 lignes de code. Juste un input. Le code fonctionnel ne fait pas plus de 20 lignes, mais tout ce qui amène ce code au niveau de l'utilisateur pour la personne penchée sur sa calculatrice représente 80% du travail et du code. Il est évident que des programmeurs sont bien plus intéressés par développer des jeux, qui ne nécessite - au mieux - de coder la réaction de 6 touches : droite, gauche, haut, bas, Enter, Esc - contre une bonne partie du clavier + souris si on s'aventure dans la création d'outils mathématiques.

Cependant, l'aventure est gigantesque et utopique quand on découvre ce monde dans son intégralité, les possibilités -presque - infinies à moins de prendre le temps de passer outre les états d'âme précédents.

Personnellement je travaille par classes avec le Lua, ce qui me permet de coder une et une seule fois un module et de l'utiliser dans plusieurs programmes (par copier/collé bien sûr, même si certains workarounds permettent de passer par les bibliothèques, comme montré ici).

En espérant t'avoir donné encore plus envie d'abandonner le TI-Basic :D
Levak92
 
Messages: 321
Inscrit le: 02 Juin 2010, 23:03
Localisation: France

Re: programmation basique

Messagepar Christian le 06 Fév 2012, 23:33

Abandonner le TI-Basic, peut-être pas, disons qu'il satisfait mes besoins de prof de maths... mais j'ai bien conscience que LUA ouvre des possibilités intéressantes...

Par exemple, je crois l'avoir déjà dit ici, j'aimerais bien pouvoir faire un peu de traitement d'images avec le logiciel TI-Nspire et LUA, mais je ne sais pas si c'est possible (çà l'est au demeurant en LUA mais j'ignore si c'est transposable sur le LUA utilisé par TI). Mon but serait de mettre en place par exemple une activité de stéganographie, cacher un message dans une image... Cela serait une excellente activité autour des algorithmes, pour des élèves de lycée par exemple, mais il faudrait que la contrainte "logiciel" soit la plus légère possible disons.

Bien amicalement,

Christian
Avatar de l’utilisateur
Christian
 
Messages: 340
Inscrit le: 22 Août 2008, 13:42

Re: programmation basique

Messagepar Levak92 le 07 Fév 2012, 00:13

Christian a écrit:Abandonner le TI-Basic, peut-être pas, disons qu'il satisfait mes besoins de prof de maths... mais j'ai bien conscience que LUA ouvre des possibilités intéressantes...

Oui, c'était une pointe d'humour, j'ai très bien saisi l'objectif du TI-Basic, qui m'a d'ailleurs un peu perdu de vue depuis le Lua et Ndless :D

Par exemple, je crois l'avoir déjà dit ici, j'aimerais bien pouvoir faire un peu de traitement d'images avec le logiciel TI-Nspire et LUA, mais je ne sais pas si c'est possible (çà l'est au demeurant en LUA mais j'ignore si c'est transposable sur le LUA utilisé par TI). Mon but serait de mettre en place par exemple une activité de stéganographie, cacher un message dans une image... Cela serait une excellente activité autour des algorithmes, pour des élèves de lycée par exemple, mais il faudrait que la contrainte "logiciel" soit la plus légère possible disons.

Bien amicalement,

Christian


Ok, non là clairement, l'approche de la stéganographie n'est pas à sa place en le Lua. Par contre, elle est tout à fait envisageable en C avec Ndless.
Aillant déjà fait de la stéganographie, je sais qu'il faut travailler au niveau des bits avec des opérations binaires au niveau des composantes. Bien sûr il y a moyen d'utiliser le TI-Image en codant un buffer et un convertisseur buffer->TI-Image. Des personnes l'ont déjà faite et le format est détaillé ici. A mon humble avis, la conversion, le chargement et l'affichage de l'image, prennent un temps fou sur l'unité nomade (c'est moins un problème sur le logiciel PC, dépendant de la vitesse du PC).
Levak92
 
Messages: 321
Inscrit le: 02 Juin 2010, 23:03
Localisation: France


Retourner vers Aide au développement sur TI-Nspire



Qui est en ligne ?

Utilisateurs parcourant actuellement ce forum : Aucun utilisateur inscrit et 1 invité


© Copyright 2008 - Tous droits réservés.