Page 1 sur 2

traits supplémentaires en bord de grille

Posté : ven. 2 avr. 2010, 13:03
par StephaneD
Bonjour à tous,

Lorsque je fais afficher une grille, j'ai des traits noirs en haut et en bas de la grille. Ce n'est pas très gênant mais je n'arrive pas à comprendre pourquoi. Quelqu'un pourrait-il me dire à quoi cela est dû et comment l'empêcher? Merci d'avance.

Stéphane

PS: comme c'est mon premier message, j'en profite pour remercier chaleureusement Gaëtan et Philippe pour leurs sites remarquables qui m'ont permis de démarrer avec Asymptote.

ECM:

\documentclass[a4paper]{article}
\usepackage[latin1]{inputenc}
\usepackage[frenchb]{babel}
\usepackage[T1]{fontenc}
\usepackage{asymptote}

\begin{document}

\begin{asy}
import graph_pi;

real xmin=-1, xmax=5, ymin=-1, ymax=5;

graphicrules(xunit=1cm, yunit=1cm,
xmin=xmin, xmax=xmax,
ymin=ymin, ymax=ymax,
crop=Crop
);

// Définition et tracé de la grille

grid(xmin, xmax, ymin, ymax,
xStep=1, xstep=1,
yStep=1, ystep=1,
pTick=1bp+.5white,
ptick=0.7bp+.7white,
above=false
);

// Si je mets above=true, les traits sont sur les côtés

\end{asy}

\end{document}

Re: traits supplémentaires en bord de grille

Posté : ven. 2 avr. 2010, 13:26
par StephaneD
En regardant de plus près, je m'aperçois qu'il y a la même chose sur certaines figures du site de Gaëtan (dans la partie "courbes de fonctions"). Je suppose donc que cela doit être très normal... Y a-t-il quand même une explication? Merci.
Stéphane

Re: traits supplémentaires en bord de grille

Posté : ven. 2 avr. 2010, 17:09
par GM
StephaneD a écrit :En regardant de plus près, je m'aperçois qu'il y a la même chose sur certaines figures du site de Gaëtan (dans la partie "courbes de fonctions").

Oui, je connais le problème depuis longtemps... et je pensais en avoir parlé à Philippe... mais apparemment, point de trace dans mes archives donc j'ai dû oublier de le faire.

StephaneD a écrit :Je suppose donc que cela doit être très normal... Y a-t-il quand même une explication? Merci.

Je me rattrape en proposant une solution : dans graph_pi, ajouter dans la définition de grid

Code : Tout sélectionner

, p=invisible

à la fin de la ligne définissant xaxis et yaxis.

Code : Tout sélectionner

void grid(picture pic=currentpicture,
          real xmin=pic.userMin.x, real xmax=pic.userMax.x,
          real ymin=pic.userMin.y, real ymax=pic.userMax.y,
          real xStep=1, real xstep=.5,
          real yStep=1, real ystep=.5,
          pen pTick=nullpen, pen ptick=grey, bool above=false)
{
  draw(pic,box((xmin,ymin),(xmax,ymax)),invisible);
  xaxis(pic, BottomTop, xmin, xmax, Ticks("%",extend=true,Step=xStep,step=xstep,pTick=pTick,ptick=ptick), above=above, p=invisible);
  yaxis(pic, LeftRight, ymin, ymax, Ticks("%",extend=true,Step=yStep,step=ystep,pTick=pTick,ptick=ptick), above=above, p=invisible);
}

Re: traits supplémentaires en bord de grille

Posté : ven. 2 avr. 2010, 17:36
par pivaldi
Merci Gaétan ! :)
J'ai mis à jour graph_pi en mettant p=nullpen.

Re: traits supplémentaires en bord de grille

Posté : ven. 2 avr. 2010, 17:48
par GM
pivaldi a écrit :en mettant p=nullpen.

J'ai failli écrire dans mon message que tu ne manquerais pas de proposer quelque chose de mieux : j'aurais dû ! :D

Re: traits supplémentaires en bord de grille

Posté : ven. 2 avr. 2010, 18:05
par pivaldi
GM a écrit :
pivaldi a écrit :en mettant p=nullpen.

J'ai failli écrire dans mon message que tu ne manquerais pas de proposer quelque chose de mieux : j'aurais dû ! :D

Yep, c'est hatchement mieux… ça doit permettre de gagner un millième de seconde sur une figure qui contient cent milles grilles :mrgreen:

Re: traits supplémentaires en bord de grille

Posté : ven. 2 avr. 2010, 20:25
par StephaneD
Merci beaucoup, ça marche au poil :D

Stéphane

PS: j'en profite tant que je suis là... toujours par rapport à "grid": je pensais naïvement qu'en mettant "above=true" la grille serait au-dessus de la figure (une courbe de fonction par exemple), mais ça n'a pas l'air d'être ça (ou bien c'est moi qui suis à la masse...).
D'où ma question: à quoi sert "above=true" (ou false)? Merci d'avance.

Re: traits supplémentaires en bord de grille

Posté : ven. 2 avr. 2010, 21:11
par GM
StephaneD a écrit :je pensais naïvement qu'en mettant "above=true" la grille serait au-dessus de la figure (une courbe de fonction par exemple), ...


J'ai déjà trouvé des bizarreries parfois...

StephaneD a écrit :... mais ça n'a pas l'air d'être ça (ou bien c'est moi qui suis à la masse...).
D'où ma question: à quoi sert "above=true" (ou false)? Merci d'avance.


... mais il y a l'ordre des instructions qui est important aussi... et d'autres fonctions ont aussi ce paramètre above.

Si tu mets grid... en fin de code,
  • sans l'option above... la grille sera en dessous par défaut ;
  • avec above=true, elle devrait se retrouver au dessus.

Je dis cela sans avoir testé.

Re: traits supplémentaires en bord de grille

Posté : ven. 2 avr. 2010, 21:26
par pivaldi
Avec above=false

Figure asymptote 61ebb090393a6e88be035083f6a5498d
*** Pour masquer/découvrir le code Asymptote qui a permis de créer la figure, il faut cliquer dessus. ;-) ***

CODE ASYMPTOTE de la figure ci-dessus : Tout sélectionner
  1.  
  2. import graph_pi;
  3.  
  4. real xmin=-1, xmax=5, ymin=-1, ymax=5;
  5.  
  6. graphicrules(xunit=1cm, yunit=1cm,
  7. xmin=xmin, xmax=xmax,
  8. ymin=ymin, ymax=ymax,
  9. crop=Crop);
  10.  
  11. draw((xmin+1,ymin)--(xmax-1,ymax),4bp+red);
  12.  
  13. grid(xmin, xmax, ymin, ymax,
  14. pTick=4bp+grey,
  15. ptick=2bp+grey,
  16. above=false);
  17.  


Avec above=true

Figure asymptote 3b7618128787544d69e69f6923eaee27
*** Pour masquer/découvrir le code Asymptote qui a permis de créer la figure, il faut cliquer dessus. ;-) ***

CODE ASYMPTOTE de la figure ci-dessus : Tout sélectionner
  1.  
  2. import graph_pi;
  3.  
  4. real xmin=-1, xmax=5, ymin=-1, ymax=5;
  5.  
  6. graphicrules(xunit=1cm, yunit=1cm,
  7. xmin=xmin, xmax=xmax,
  8. ymin=ymin, ymax=ymax,
  9. crop=Crop);
  10.  
  11. draw((xmin+1,ymin)--(xmax-1,ymax),4bp+red);
  12.  
  13. grid(xmin, xmax, ymin, ymax,
  14. pTick=4bp+grey,
  15. ptick=2bp+grey,
  16. above=true);
  17.  


Et l'on voit au passage que Gaétan n'a pas mis à jour graph_pi :)

Re: traits supplémentaires en bord de grille

Posté : ven. 2 avr. 2010, 21:33
par GM
pivaldi a écrit :Et l'on voit au passage que Gaétan n'a pas mis à jour graph_pi :)

Je ne vois vraiment pas pourquoi tu dis cela. :roll: :mrgreen: