Page 1 sur 1

Dessiner une feuille de calcul

MessagePublié: 27 Mai 2012 21:20
par Joffrey
Bonsoir à tous,

Pour la conception d'un de mes cours j'ai eu besoin de feuilles de calculs, la qualité des impressions d'écran ne donne pas toujours un doc propre, du coup j'ai bricolé quelques macros :
tableur(nbLig,nbCol) : qui crée un tableau de nbLig par nbCol ;
cellText(Lig,Col,"texte") : qui permet d'insérer le texte "texte" dans la case (Lig,Col) du tableau précédent ;
selectCell(Lig,Col) : qui permet de sélectionner la case (Lig,Col) du tableau précédent ;
multiSelect(Lig1,Col1,Lig2,Col2) : qui permet de sélectionner la plage (Lig1,Col1,Lig2,Col2) du tableau précédent.
Le fichier complet est ici :
tableur.mac
(2.49 Kio) Téléchargé 771 fois

Voici un exemple :
Code: Tout sélectionner
[
FrenchBabel:=1,
tableur(10,5),
cellText(7,4,"=MAX(A1:A8)"),
selectCell(7,4),
multiSelect(1,1,8,1),
for z from 2 to 9 do
    draw("label",["$",z-1,"$"],[anchor:=pos(z,2),labeldir:=East])
od,
]


qui donne :
test_tableur.png
test_tableur.png (13.71 Kio) Consulté 6428 fois


Si ça peut servir à quelqu'un...

Bonne soirée

Re: Dessiner une feuille de calcul

MessagePublié: 27 Mai 2012 22:06
par P.Fradin
Bonjour Joffrey,

Je pense que cela peut rendre effectivement service. Quant tu auras un moment il faudra faire un petit pdf pour l'aide avant d'en faire un paquet.
Je suis justement en train de finir un modèle qui s'appelle déjà tableur (que j'avais déjà évoqué), alors si cela ne te gêne pas, on pourrait renommer ton fichier en imitTableur puisqu'il imite l'apparence classique du tableur (ce qui n'est pas le cas du modèle que je suis en train de finir). J'ai apporté quelques modifications sur le fichier, mais pas sur les macros de dessin:
Code: Tout sélectionner
TeXgraph#
{imitTableur.mac version 1.0 du 27/05/2012}

Var imitTableurVerNum = 1.0;   

Cmd CompVer("imitTableur");

Mac
    tableur=
   [//tableur(nbLig,nbCol)
    nbLig:=%1+1, nbCol:=%2+1,
   liste:=["A","B","C","D","E","F",
           "G","H","I","J","K","L",
           "M","N","O","P","Q","R",
           "S","T","U","V","W","X",
           "Y","Z"],
   dimTab(nbLig,nbCol),
   for k from 2 to nbCol do defLargeCol(k,3) od,
   draw("line",[coinSO(1,2),coinSE(1,nbCol),coinNE(1,nbCol),coinNO(1,2)],
               [close:=1,FillStyle:=gradient,GradAngle:=270,FillColorA:=gray, FillColorB:=lightblue]),
   for k from 1 to nbCol-1 do Label(pos(1,k+1),["",liste[k],""]) od,
   draw("line",[coinNE(2,1),coinSE(nbLig,1),coinSO(nbLig,1),coinNO(2,1)],
               [close:=1,FillStyle:=gradient,FillColorA:=gray, FillColorB:=lightblue]),
   for k from 1 to nbLig-1 do Label(pos(k+1,1),["",k,""]) od,
   for k from 1 to nbCol do traitV(k) od,
   for k from 1 to nbLig do traitH(k) od,
   traitV(0,2,nbLig),   
   traitH(0,2,nbCol),
   ];

   cellText=
   [
   //cellText(Lig,Col,"texte")
   draw("label",["\texttt{",%3,"}"],[anchor:=pos(%1+1,%2+1)])
   ];

   selectCell=   
   [
   //selectCell(Lig,Col)
   draw("line",[coinNO(%1+1,%2+1),coinSO(%1+1,%2+1),coinSE(%1+1,%2+1),coinNE(%1+1,%2+1)],
               [Width:=14,close:=1]),
   draw("dot",coinSE(%1+1,%2+1),[DotStyle:=square',DotScale:=2]),
   ]  ;
   
   multiSelect=
   [
   //multiSelect(Lig1,Col1,Lig2,Col2)
   draw("line",[coinNO(%1+1,%2+1),coinSO(%3+1,%2+1),coinSE(%3+1,%4+1),coinNE(%1+1,%4+1)],
               [close:=1,Color:=red, FillStyle:=full, FillColor:=red, FillOpacity:=0.3]),
   draw("dot",coinSE(%3+1,%4+1),[DotStyle:=square',DotScale:=2]),
   draw("line",[coinNO(%1+1,%2+1),coinSO(%1+1,%2+1),coinSE(%1+1,%2+1),coinNE(%1+1,%2+1)],
               [close:=1,Width:=14]),
   ];   

Les utilitaires que tu avais ajoutés à la fin sont déjà dans le modèle variations, je les ai donc enlevés. Par contre, j'ai ajouté le fichier modèle, c'est lui que l'on doit charger en fait:
Code: Tout sélectionner
TeXgraph#
{ imitTableur.mod }

Var imitTableurVer = 1.0;

Include   
   "draw2d.mod";
   "variations.mod";
   "imitTableur.mac";

imitTableur.mac
(1.72 Kio) Téléchargé 776 fois

imitTableur.mod
(130 octets) Téléchargé 789 fois

Re: Dessiner une feuille de calcul

MessagePublié: 27 Mai 2012 22:46
par Joffrey
Quant tu auras un moment il faudra faire un petit pdf pour l'aide avant d'en faire un paquet.

Ca devrait pouvoir se faire dans pas trop longtemps.
Je suis justement en train de finir un modèle qui s'appelle déjà tableur (que j'avais déjà évoqué), alors si cela ne te gêne pas, on pourrait renommer ton fichier en imitTableur puisqu'il imite l'apparence classique du tableur (ce qui n'est pas le cas du modèle que je suis en train de finir). J'ai apporté quelques modifications sur le fichier, mais pas sur les macros de dessin:

Oui je n'en souvenais, pas de soucis pour le nom

J'ai déjà apporté des modifications au fichier précédent, j'attends de les tester avant de les poster.

Bonne soirée

Re: Dessiner une feuille de calcul

MessagePublié: 28 Mai 2012 23:09
par projetmbc
Bonsoir.

P.Fradin a écrit:Je pense que cela peut rendre effectivement service.

Je confirme. Il y aussi ce package à la sauce TiKz : http://mathweb.fr/packages-tableur.html . Je trouve que le rendu est plus sympathique, et aussi plus pratique (penser aux photocopies noir et blanc).