[Résolu] pstricks + \linewidth dans coordonnées

Tout ce qui concerne l'utilisation ou l'installation de LaTeX.

Modérateur: gdm_tex

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] pstricks + \linewidth dans coordonnées

Messagepar Arathorn » Jeudi 22 Juin 2017, 18:30

Bonjour,
La ligne commentée ne compile pas. Y a-t-il une erreur ou est-ce impossible ?

Merci

Code: Tout sélectionner
\documentclass[12pt,a4paper]{article}
\usepackage[french]{babel}
\usepackage[left=1cm,right=1cm,top=1cm,bottom=1cm]{geometry}
%%pstricks-add charge pst-node, pst-plot, pst-3d,multido
\usepackage{auto-pst-pdf,pst-labo,pstricks-add,pst-circ,pst-slpe}
\begin{document}
\psset{fillstyle=solid,linestyle=none,xunit=1cm,yunit=1cm}
\noindent%
\begin{pspicture}[showgrid](0,0)(\linewidth,4)
%\psframe[fillcolor=white](0.38\linewidth,1)(! 0.14 .38 add \linewidth \space mul  2)
\end{pspicture}
\end{document}
Dernière édition par Arathorn le Vendredi 23 Juin 2017, 17:40, édité 1 fois.
Arathorn
Kilo-utilisateur
 
Messages: 115
Inscription: Mercredi 24 Avril 2013, 18:47
Statut actuel: Actif et salarié | Enseignant

Publicité

Re: pstricks + \linewidth dans coordonnées

Messagepar balf » Jeudi 22 Juin 2017, 19:21

Bonsoir,

De toute façon, il y a déjà un problème dans le préambule: auto-pst-pdf doit être chargé après pstricks.

Cela dit, je ne comprends pas le code PostScript pour les coordonnées du coin supérieur droit de \psframe. Pourriez-vous poster la formule algébrique que vous essayez d'obtenir ?
Dernière édition par balf le Vendredi 23 Juin 2017, 10:40, édité 1 fois.
balf
Zetta-utilisateur
 
Messages: 3591
Inscription: Mercredi 02 Janvier 2008, 23:18
Statut actuel: Actif et salarié | Maître de conférence

Re: pstricks + \linewidth dans coordonnées

Messagepar Arathorn » Jeudi 22 Juin 2017, 20:04

Pourriez-vous poster la formule algébrique que vous essayez d'obtenir ?

Code: Tout sélectionner
\psframe[fillcolor=withe](0.38\linewidth,1)(.52\linewidth,2)

Ce que j'aimerais faire après c'est que le 0.14 soit remplacé par un \def\pourcentage{X} afin d'adapter ma figure et m'éviter de tout recalculer (pour l'instant c'est juste le début de ma figure).

De toute façon, il y a déjà un problème dans le préambule: auto-pst-pdf doit ˆtre chargé après pstricks.

J'ai peut-être mal compris mais auto-pst-pdf c'est pour compiler directement avec pdflatex ? J'utilise texmaker.
Arathorn
Kilo-utilisateur
 
Messages: 115
Inscription: Mercredi 24 Avril 2013, 18:47
Statut actuel: Actif et salarié | Enseignant

Re: pstricks + \linewidth dans coordonnées

Messagepar balf » Vendredi 23 Juin 2017, 14:30

Je ne sais pas si c'est possible ou non en code postscript. Je propose une autre approche, consistant à définir un commande avec un argument optionnel (la couleur de remplissage) et un argument obligé (ce qu'on ajoute à 0.38 pour obtenir le coefficient de \linewidth). L'opération peut se faire avec \fpAdd de l'extension multido (inconvénient : les deux nombres doivent avoir le même nombre de chiffres) ou avec la commande plus générale \FPeval de l'extension fp.

Voici une ébauche pour les deux méthodes, qui gagnerait à être généralisée (pourquoi 0.38, par exemple), mais j'ai du mal à comprendre vos besoins exacts
Code: Tout sélectionner
\documentclass[12pt,a4paper]{article}
\usepackage[T1]{fontenc}
\usepackage[french]{babel}
\usepackage[left=1cm,right=1cm,top=1cm,bottom=1cm]{geometry}
\usepackage{pstricks-add,pst-circ,pst-slpe}%pst-labo,
\usepackage{auto-pst-pdf}
\usepackage{etoolbox, fp}

\newcommand\mypsframe[2][]{ \fpAdd{#2}{0.38}{\ur}\psframe[#1](0.38\linewidth,3)(\ur\linewidth, 2)}
\newcommand\varpsframe[2][]{ \FPeval{\urfp}{0.38 + #2}\psframe[#1](0.38\linewidth,1)(\urfp\linewidth, 2)}
\begin{document}
\psset{fillstyle=solid,linestyle=none,xunit=1cm,yunit=1cm}
\noindent\fpAdd{0.14}{0.38}{\ur}%
\begin{pspicture}[showgrid](0,0)(\linewidth,4)
  \varpsframe[fillcolor=red]{0.14}
  \mypsframe[fillcolor=blue]{0.22}
\end{pspicture}

\end{document}

Résultat en p.j.
B. A.
Fichiers joints
pbpscode.pdf
(6.44 Kio) Téléchargé 6 fois
balf
Zetta-utilisateur
 
Messages: 3591
Inscription: Mercredi 02 Janvier 2008, 23:18
Statut actuel: Actif et salarié | Maître de conférence

Re: pstricks + \linewidth dans coordonnées

Messagepar Arathorn » Vendredi 23 Juin 2017, 17:40

mais j'ai du mal à comprendre vos besoins exacts

En fait, suite à différents messages, j'ai découvert des paquets liés à post script, la notation NPI et donc je ne cherche pas à faire quelque chose de précis juste à comprendre le fonctionnement, les commandes à l'aide de tests simples.

Dans votre code, vous utilisez etoolbox, je vais aller chercher sur CTAN quel est son intérêt.

Merci pour le temps passé.
Arathorn
Kilo-utilisateur
 
Messages: 115
Inscription: Mercredi 24 Avril 2013, 18:47
Statut actuel: Actif et salarié | Enseignant

Re: [résolu] pstricks + \linewidth dans coordonnées

Messagepar balf » Vendredi 23 Juin 2017, 19:40

Non, je n'utilise pas `etoolbox`, je l'avais chargé pour étudier une possibilité de code mais ça ne fonctionnait pas. L'utilisation principale de cette extension est pouvoir « patcher » facilement des commandes ou des environnements.

D'autre part, la notation polonaise inverse est effectivement utilisée par postscript, mais je vous signale que pour les tracés de courbes et de surface, il existe depuis pas mal d'années l'option algebraic, grâce à parseur d'expressions qui fait la conversion.

B. A.
balf
Zetta-utilisateur
 
Messages: 3591
Inscription: Mercredi 02 Janvier 2008, 23:18
Statut actuel: Actif et salarié | Maître de conférence


Retourner vers LaTeX

 


  • Articles en relation
    Réponses
    Vus
    Dernier message

Qui est en ligne

Utilisateurs parcourant ce forum: Google [Bot] et 11 invités

cron