π
<-
Chat plein-écran
[^]

KhiCAS, le moteur formel Giac/Xcas pour toutes TI-Nspire

:32tins: :32tinsktpb: :32tinsktpn: :32tinscas: :32tinstpkc: :32tinstpktpb: :32tinstp: :32tinscastp: :32tinscmc: :32tinscx: :32tinscxcas:

Re: KhiCAS, le moteur formel Giac/Xcas pour toutes TI-Nspire

Message non lude parisse » 21 Juin 2014, 17:36

Bon, je viens de remettre a jour, avec les modifs de curseurs d'Adriweb, et la gestion de la touche sto->, ce qui permet des raccourcis sympas pour factoriser et developper:
x^4-1 sto> *
(x-1)^4 sto> +
en fait sto> + fait une decomposition en elements simples.
Il y a aussi sto> sin (ou cos, tan) pour convertir les expressions trigo en sin, cos, tan.
Sinon, ce que j'appelle annuaire c'est peut-etre un dictionnaire en python, en C++ c'est un map (la clef doit vivre dans un ensemble ordonne).
Je n'ai pas encore regarde les template accolades, ca me parait nettement moins important, pour les systemes ca ne sert a rien en giac, car un systeme c'est juste une liste d'equations, les variables sont mises dans une liste, et on passe les 2 listes a solve. Pour when/if c'est probablement aussi lisible de le mettre en toute lettres.
Avatar de l’utilisateur
parisseVIP++
Niveau 12: CP (Calculatrice sur Pattes)
Niveau 12: CP (Calculatrice sur Pattes)
Prochain niv.: 77.2%
 
Messages: 3500
Inscription: 13 Déc 2013, 16:35
Genre: Non spécifié
Calculatrice(s):
MyCalcs profile

Re: KhiCAS, le moteur formel Giac/Xcas pour toutes TI-Nspire

Message non lude parisse » 24 Juin 2014, 13:13

J'aimerais bien pouvoir transformer un editeur 2d en mode d'entree en 1d (plus pratique pour ecrire un programme), mais mon abscence de connaissance de lua ne me le permet pas, pourtant j'ai l'impression qu'il suffit d'appeler correctement la methode
Code: Tout sélectionner
D2Editor:setDisable2DinRT(true or false) : Turns on/off 2D layout of math input to the text box.

J'ai essaye ca:
Code: Tout sélectionner
function set1d()
    if theView:getFocus() == 0 then
      return nil
   end
   theView:getFocus():setDisable2DinRT(true)
   on.resize()
end

function set2d()
    if theView:getFocus() == 0 then
      return nil
   end
   theView:getFocus():setDisable2DinRT(false)
   on.resize()
end

et plus loin dans le menu de khicas
Code: Tout sélectionner
-- ...
   {
      "Options",
      { "1d", set1d },
      { "2d", set2d },
      { "Show/hide editors borders", toggleBorders },
      { "Show/hide horizontal lines", toggleHLines },
      "-",
      { "Increase font size", fontUp },
      { "Decrease font size", fontDown },
      "-",
      { "Restart CAS",   function() menustring( "restart;" ) end },
      { "Clear history", reset }
   }
--

mais ca ne marche pas. Une suggestion? D'avance merci!
Avatar de l’utilisateur
parisseVIP++
Niveau 12: CP (Calculatrice sur Pattes)
Niveau 12: CP (Calculatrice sur Pattes)
Prochain niv.: 77.2%
 
Messages: 3500
Inscription: 13 Déc 2013, 16:35
Genre: Non spécifié
Calculatrice(s):
MyCalcs profile

Re: KhiCAS, le moteur formel Giac/Xcas pour toutes TI-Nspire

Message non lude Adriweb » 24 Juin 2014, 13:31

En fait, ca serait en théorie aussi simple que ça : fctEditor.editor:setDisable2DinRT(true/false)
Mais... tout le traitement fait en live pour chaque keypress afin d'éviter les trolls (ou problèmes d'input...) force dans une boite mathématique le contenu du MathEditor...

Pour pouvoir une feature de ce genre, il va donc falloir du code supplémentaire un peu "partout" (du moins là où sont catchées les keypress), pour vérifier l'état d'une variable globale de 1D/2D et décider si on laisse taper tel quel ou non (pareil pour les fonctions de fixContent etc.)...
Image

MyCalcs: Help the community's calculator documentations by filling out your calculators info!
MyCalcs: Aidez la communauté à documenter les calculatrices en donnant des infos sur vos calculatrices !
Inspired-Lua.org: All about TI-Nspire Lua programming (tutorials, wiki/docs...)
Avatar de l’utilisateur
AdriwebAdmin
Niveau 16: CC2 (Commandeur des Calculatrices)
Niveau 16: CC2 (Commandeur des Calculatrices)
Prochain niv.: 80.1%
 
Messages: 14606
Images: 1216
Inscription: 01 Juin 2007, 00:00
Localisation: France
Genre: Homme
Calculatrice(s):
MyCalcs profile
Twitter/X: adriweb
GitHub: adriweb

Re: KhiCAS, le moteur formel Giac/Xcas pour toutes TI-Nspire

Message non lude parisse » 24 Juin 2014, 13:41

Je vois, en effet ce n'est pas si simple. Autre question, peut-on faire afficher le temps d'execution d'une commande? J'ai essaye de mettre
Code: Tout sélectionner
            t1 = timer.getMilliSecCounter()
            res = luagiac.caseval(expr) or "Error"
            t2 = timer.getMilliSecCounter()
            ts  = string.format("Eval time :  %f" , ( t2 - t1 ) / 1000. )

mais je ne sais pas quoi faire de ts, je n'arrive meme pas a faire
Code: Tout sélectionner
  gc:drawString(ts, 2, 0, "top")

ca provoque une erreur.
Avatar de l’utilisateur
parisseVIP++
Niveau 12: CP (Calculatrice sur Pattes)
Niveau 12: CP (Calculatrice sur Pattes)
Prochain niv.: 77.2%
 
Messages: 3500
Inscription: 13 Déc 2013, 16:35
Genre: Non spécifié
Calculatrice(s):
MyCalcs profile

Re: KhiCAS, le moteur formel Giac/Xcas pour toutes TI-Nspire

Message non lude Adriweb » 24 Juin 2014, 13:56

parisse a écrit:Je vois, en effet ce n'est pas si simple. Autre question, peut-on faire afficher le temps d'execution d'une commande? J'ai essaye de mettre
Code: Tout sélectionner
            t1 = timer.getMilliSecCounter()
            res = luagiac.caseval(expr) or "Error"
            t2 = timer.getMilliSecCounter()
            ts  = string.format("Eval time :  %f" , ( t2 - t1 ) / 1000. )

mais je ne sais pas quoi faire de ts, je n'arrive meme pas a faire
Code: Tout sélectionner
  gc:drawString(ts, 2, 0, "top")

ca provoque une erreur.


Le code est bon (ca ne va pas donner grand chose si le temps que ca prend est inférieur à 1 milliseconde, mais bon).
Il faut cependant mettre la ligne du drawString à l'intérieur de la fonction on.paint(gc), puisque c'est elle qui est responsable du dessin sur l'écran (c'est donc dans cette fonction que "gc" est défini/accessible.)
Cependant... si il y a un MathEditor devant, le texte sera caché.
Si c'est une information "juste pour débugguer", on peut tricher en l'affichant en tant que label de menu-item (toolpalette), par contre ^^
Image

MyCalcs: Help the community's calculator documentations by filling out your calculators info!
MyCalcs: Aidez la communauté à documenter les calculatrices en donnant des infos sur vos calculatrices !
Inspired-Lua.org: All about TI-Nspire Lua programming (tutorials, wiki/docs...)
Avatar de l’utilisateur
AdriwebAdmin
Niveau 16: CC2 (Commandeur des Calculatrices)
Niveau 16: CC2 (Commandeur des Calculatrices)
Prochain niv.: 80.1%
 
Messages: 14606
Images: 1216
Inscription: 01 Juin 2007, 00:00
Localisation: France
Genre: Homme
Calculatrice(s):
MyCalcs profile
Twitter/X: adriweb
GitHub: adriweb

Re: KhiCAS, le moteur formel Giac/Xcas pour toutes TI-Nspire

Message non lude parisse » 24 Juin 2014, 14:30

Merci, j'arrive en effet a faire afficher (je l'ai mis en commentaire dans la version mise a jour de khicas). J'ai essaye d'acceder au timer depuis le C, mais je n'ai rien trouve.
Avatar de l’utilisateur
parisseVIP++
Niveau 12: CP (Calculatrice sur Pattes)
Niveau 12: CP (Calculatrice sur Pattes)
Prochain niv.: 77.2%
 
Messages: 3500
Inscription: 13 Déc 2013, 16:35
Genre: Non spécifié
Calculatrice(s):
MyCalcs profile

Re: KhiCAS, le moteur formel Giac/Xcas pour toutes TI-Nspire

Message non lude Adriweb » 24 Juin 2014, 14:33

Hum, ca, je laisse Excale/Levak/d'autres répondre :)
Image

MyCalcs: Help the community's calculator documentations by filling out your calculators info!
MyCalcs: Aidez la communauté à documenter les calculatrices en donnant des infos sur vos calculatrices !
Inspired-Lua.org: All about TI-Nspire Lua programming (tutorials, wiki/docs...)
Avatar de l’utilisateur
AdriwebAdmin
Niveau 16: CC2 (Commandeur des Calculatrices)
Niveau 16: CC2 (Commandeur des Calculatrices)
Prochain niv.: 80.1%
 
Messages: 14606
Images: 1216
Inscription: 01 Juin 2007, 00:00
Localisation: France
Genre: Homme
Calculatrice(s):
MyCalcs profile
Twitter/X: adriweb
GitHub: adriweb

Re: KhiCAS, le moteur formel Giac/Xcas pour toutes TI-Nspire

Message non lude Excale » 24 Juin 2014, 16:03

J'en sais rien, je n'ai jamais utilisé les timers.
La doc fondamentale est par là: http://hackspire.unsads.com/wiki/index.php/Memory-mapped_I/O_ports, mais j'espère qu'il y a quelques fonctions quelque part que quelqu'un pourra ressortir.
Avatar de l’utilisateur
ExcaleAdmin
Niveau 16: CC2 (Commandeur des Calculatrices)
Niveau 16: CC2 (Commandeur des Calculatrices)
Prochain niv.: 3.9%
 
Messages: 2955
Images: 3
Inscription: 10 Sep 2010, 00:00
Genre: Homme
Calculatrice(s):
MyCalcs profile

Re: KhiCAS, le moteur formel Giac/Xcas pour toutes TI-Nspire

Message non lude Lionel Debroux » 24 Juin 2014, 19:27

Comment nClock fonctionne-t-il ?
Membre de la TI-Chess Team.
Co-mainteneur de GCC4TI (documentation en ligne de GCC4TI), TIEmu et TILP.
Avatar de l’utilisateur
Lionel DebrouxSuper Modo
Niveau 14: CI (Calculateur de l'Infini)
Niveau 14: CI (Calculateur de l'Infini)
Prochain niv.: 11.2%
 
Messages: 6859
Inscription: 23 Déc 2009, 00:00
Localisation: France
Genre: Homme
Calculatrice(s):
MyCalcs profile
Classe: -
GitHub: debrouxl

Re: KhiCAS, le moteur formel Giac/Xcas pour toutes TI-Nspire

Message non lude Levak » 24 Juin 2014, 20:19

Lionel Debroux a écrit:Comment nClock fonctionne-t-il ?


De manière dégueulasse. Je n'avais pas encore trouvé les fonctions de Nucleus pour rajouter des tasks.
Actuellement, c'est un hook dans une tasks existante et qui est lancée toutes les secondes et où il récupère la RTC et recalcule heures, minutes, secondes pour la mini clock.
Responsable design/graphique de TI-Planet
I do not get mad at people, I just want them to learn the way I learnt.
ImageTNOC [topic][DL]
nClock [topic][DL]
HideManager [topic][DL]
ZLock [topic][DL]
Theme Editor [topic][DL]
Mes programmes
Avatar de l’utilisateur
LevakAdmin
Niveau 14: CI (Calculateur de l'Infini)
Niveau 14: CI (Calculateur de l'Infini)
Prochain niv.: 98.9%
 
Messages: 6414
Images: 22
Inscription: 27 Nov 2008, 00:00
Localisation: 0x1AACC355
Genre: Homme
Calculatrice(s):
MyCalcs profile
Classe: BAC+5: Epita (ING3)

PrécédenteSuivante

Retourner vers News TI-Nspire

Qui est en ligne

Utilisateurs parcourant ce forum: Aucun utilisateur enregistré et 41 invités

-
Rechercher
-
Social TI-Planet
-
Sujets à la une
Comparaisons des meilleurs prix pour acheter sa calculatrice !
Aidez la communauté à documenter les révisions matérielles en listant vos calculatrices graphiques !
Phi NumWorks jailbreak
123
-
Faire un don / Premium
Pour plus de concours, de lots, de tests, nous aider à payer le serveur et les domaines...
Faire un don
Découvrez les avantages d'un compte donateur !
JoinRejoignez the donors and/or premium!les donateurs et/ou premium !


Partenaires et pub
Notre partenaire Jarrety Calculatrices à acheter chez Calcuso
-
Stats.
1105 utilisateurs:
>1084 invités
>16 membres
>5 robots
Record simultané (sur 6 mois):
6892 utilisateurs (le 07/06/2017)
-
Autres sites intéressants
Texas Instruments Education
Global | France
 (English / Français)
Banque de programmes TI
ticalc.org
 (English)
La communauté TI-82
tout82.free.fr
 (Français)