[Résolu] Une curiosité

Tout ce qui concerne l'utilisation ou l'installation d'Asymptote.

Modérateur: gdm_asy

Règles du forum
Merci d'éviter le style SMS dans vos messages et de penser à utiliser la fonction Recherche avant de poster un message. Pour joindre des fichiers à vos messages, consulter ce sujet.
> Penser à utiliser les balises Code pour poster du code.

[Résolu] Une curiosité

Messagepar Fabrice Couvreur » Lundi 18 Avril 2011, 23:44

Bonsoir,
N'étant pas sectaire, j'apprends à utiliser PSTricks depuis quelques temps, même si je préfère Asymptote et TeXgraph.
Avec le code très simple ci-dessous, j'ai remarqué une différence au niveau de la "jonction" toit-maison (zoom à 400 %) ; il semble que ce soit plus précis avec Asymptote.

Code: Tout sélectionner
\documentclass[a4paper]{article}
\usepackage[frenchb]{babel}
\usepackage{pstricks-add}
\begin{document}
\psset{xunit=1cm,yunit=1cm}
\begin{pspicture}
  \pspolygon[fillstyle=solid,fillcolor=red](0,6)(5,10)(10,6)
  \pspolygon(0,0)(10,0)(10,6)(0,6)
  \pspolygon[fillstyle=solid,fillcolor=blue](7,0)(8.5,0)(8.5,4)(7,4)
  \pspolygon[fillstyle=solid,fillcolor=yellow](1,4)(2.5,4)(2.5,5)(1,5)
\end{pspicture}

\end{document}


Code: Tout sélectionner
unitsize(1cm,1cm);
settings.outformat="pdf";
filldraw((0,6)--(5,10)--(10,6)--cycle,red);
draw((0,0)--(10,0)--(10,6)--(0,6)--cycle);
filldraw((7,0)--(8.5,0)--(8.5,4)--(7,4)--cycle,blue);
filldraw((1,4)--(2.5,4)--(2.5,5)--(1,5)--cycle,yellow);
shipout(bbox(1cm));


Quelqu'un aurait-il une explication à cela bien que ce ne soit pas très important !
Merci.
Dernière édition par Fabrice Couvreur le Mardi 19 Avril 2011, 13:00, édité 1 fois.
Fabrice Couvreur
Giga-utilisateur
 
Messages: 601
Inscription: Samedi 18 Août 2007, 00:55

Publicité

Re: Une curiosité.

Messagepar kojak » Mardi 19 Avril 2011, 07:04

Bonjour,

Je ne réponds pas à la question, mais pour ton code pstricks je ne vois pas le toit : pour le voir, il faut spécifier une dimension de ta pspicture.
pas d'aide par MP
kojak
Modérateur
 
Messages: 10398
Inscription: Samedi 18 Novembre 2006, 19:50
Statut actuel: Actif et salarié | Enseignant

Re: Une curiosité

Messagepar djiblamb » Mardi 19 Avril 2011, 10:14

Bonjour.

PSTricks utilise le paramètre dimen pour les objets graphiques fermés (voir doc page 25). Ce paramètre peut être positionné à outer (valeur par défaut), middle ou inner. On peut donc rajouter dans le psset de départ un dimen=middle pour améliorer le rendu ; mais ce n'est pas encore idéal.
Pour encore plus de précision, diminuer l'épaisseur du tracé (remplacer le linewidth=0.8pt, qui est le défaut, par linewidth=0.5pt) et remplacer le pspolygon définissant le toit par des psline. Voici le code correspondant (au fait, pas besoin de pstricks-add, ici pstricks doit suffire) :

Code: Tout sélectionner
\documentclass[a4paper]{article}
\usepackage[latin1]{inputenc}
\usepackage[T1]{fontenc}
\usepackage[frenchb]{babel}
\usepackage{pstricks}

\begin{document}
\psset{xunit=1cm,yunit=1cm,dimen=middle,linewidth=0.5pt}
\begin{pspicture}(10,10)
  \pspolygon[linestyle=none,fillstyle=solid,fillcolor=red](0,6)(5,10)(10,6)
  \psline (0,6)(5,10)(10,6)
  \psframe (0,0)(10,6)
  \pspolygon[fillstyle=solid,fillcolor=blue](7,0)(8.5,0)(8.5,4)(7,4)
  \pspolygon[fillstyle=solid,fillcolor=yellow](1,4)(2.5,4)(2.5,5)(1,5)
\end{pspicture}

\end{document}


djib
djiblamb
Hecto-utilisateur
 
Messages: 89
Inscription: Samedi 27 Septembre 2008, 09:58
Statut actuel: Actif et salarié | Enseignant

Re: Une curiosité

Messagepar Fabrice Couvreur » Mardi 19 Avril 2011, 10:45

Bonjour,
On est très proche du rendu obtenu avec Asymptote.
djiblamb a écrit:PSTricks utilise le paramètre dimen pour les objets graphiques fermés (voir doc page 25). Ce paramètre peut être positionné à outer (valeur par défaut), middle ou inner. On peut donc rajouter dans le psset de départ un dimen=middle pour améliorer le rendu ; mais ce n'est pas encore idéal.

Je ne comprends pas trop le rôle de ce paramètre.
Merci
Fabrice Couvreur
Giga-utilisateur
 
Messages: 601
Inscription: Samedi 18 Août 2007, 00:55

Re: Une curiosité

Messagepar djiblamb » Mardi 19 Avril 2011, 11:47

Voir pstricks-doc à la page 25 :
«It determines whether the dimensions refer to the inside, outside or middle
of the boundary. The difference is noticeable when the linewidth is large:»
Code: Tout sélectionner
\documentclass[a4paper]{article}
\usepackage[latin1]{inputenc}
\usepackage[T1]{fontenc}
\usepackage[frenchb]{babel}
\usepackage{pstricks}

\begin{document}
\psset{linewidth=.25cm}
\psgrid[griddots=10,subgriddiv=0](0,0)(4,3)
\psframe[dimen=inner](0,0)(2,1)
\psframe[dimen=middle](0,2)(2,3)
\psframe[dimen=outer](3,0)(4,3)

\end{document}

Voir en particulier la différence entre le rectangle qui est en bas à gauche et celui qui est juste au-dessus.

djib
djiblamb
Hecto-utilisateur
 
Messages: 89
Inscription: Samedi 27 Septembre 2008, 09:58
Statut actuel: Actif et salarié | Enseignant

Re: Une curiosité

Messagepar Fabrice Couvreur » Mardi 19 Avril 2011, 12:59

Re,
Merci, c'est compris !
Fabrice Couvreur
Giga-utilisateur
 
Messages: 601
Inscription: Samedi 18 Août 2007, 00:55


Retourner vers Asymptote

 


  • Articles en relation
    Réponses
    Vus
    Dernier message

Qui est en ligne

Utilisateurs parcourant ce forum: Aucun utilisateur enregistré et 1 invité