Page 1 sur 1

[Résolu/reformulé] Dessiner arc de cercle + psCircleTangents

MessagePosté: Vendredi 21 Avril 2017, 18:20
par Arathorn
Bonjour,

J'ai découvert \psCircleTangents et cela va m'aider pour dessiner les ombres portés ou propres

Code: Tout sélectionner
\documentclass{article}
\usepackage{pstricks-add}

\begin{document}

\begin{pspicture}[showgrid](0,0)(10,7)

\psCircleTangents(1,4)(7,4){2}

%rayons lumineux
%% ArrowInside=-> : voir documentation pst-arrow
\pcline[nodesep=-1cm,linecolor=blue,ArrowInside=->,ArrowInsidePos=0.5,arrowscale=2]{<->}(1,4)(CircleT1)
\pcline[nodesep=-1cm,linecolor=blue,ArrowInside=->,ArrowInsidePos=0.5,arrowscale=2]{<->}(1,4)(CircleT2)

%source ponctuelle
\psdot(1,4)
%sphère
\pscircle(7,4){2}

%début ombre propre -> faire dégradé
\psline(CircleT1)(CircleT2)

\end{pspicture}

\end{document}

%Pour plus tard : chercher à dessiner sphère + cône lumière et d'ombre


Comment puis-je trouver les coordonnées des points CircleT1 et CircleT2 afin de faire l'ombre propre sur le cercle ou comment utiliser \psarc ?

Merci

Edit

Code: Tout sélectionner
\documentclass{article}
\usepackage{pstricks-add}

\begin{document}


\begin{pspicture}[showgrid](0,0)(10,7)
\psCircleTangents(1,4)(7,4){2}
\pcline[nodesep=-1cm,linecolor=blue,ArrowInside=->,ArrowInsidePos=0.5,arrowscale=2]{<->}(1,4)(CircleT1)
\pcline[nodesep=-1cm,linecolor=blue,ArrowInside=->,ArrowInsidePos=0.5,arrowscale=2]{<->}(1,4)(CircleT2)

\psdot[fillstyle=solid,fillcolor=white](1,4)
\pscircle[fillstyle=solid,fillcolor=black](7,4){2}

\pscustom[fillstyle=solid,fillcolor=white,linestyle=none]{%
\psarc(4,4){3}{-38.94}{38.94}
\psarc(7,4){2}{109.47}{250.53}
}
\pscircle[fillstyle=none,linecolor=black](7,4){2}

\end{pspicture}




\begin{pspicture}[showgrid](0,0)(10,7)

\psCircleTangents(1,4)(7,4){2}
\pcline[nodesep=-1cm,linecolor=blue,ArrowInside=->,ArrowInsidePos=0.5,arrowscale=2]{<->}(1,4)(CircleT1)
\pcline[nodesep=-1cm,linecolor=blue,ArrowInside=->,ArrowInsidePos=0.5,arrowscale=2]{<->}(1,4)(CircleT2)

\psdot[fillstyle=solid,fillcolor=white](1,4)

\pscircle[fillstyle=solid,fillcolor=black](7,4){2}

\psarc[fillstyle=solid,fillcolor=black](4,4){3}{-38.94}{38.94}
\psarc[fillstyle=solid,fillcolor=white](7,4){2}{109.47}{250.53}

\pscircle[fillstyle=none,linecolor=black](7,4){2}

\end{pspicture}


\end{document}

%Pour plus tard : chercher à dessiner sphère + cône lumière et d'ombre


J'ai trouvé l'équation du cercle qui passe par les deux points puis calculer les angles pour l'arc de cercle.

C'est mon problème avec LaTeX et pstricks, je ne maîtrise pas assez les bases et dès que je découvre une nouvelle documentation ou des dessins sur le net, j'essaye le nouveau paquet.

Re: [résolu/reformulé] Dessiner arc de cercle + psCircleTang

MessagePosté: Mercredi 26 Avril 2017, 19:00
par balf
Est-ce quelque chose comme ceci que vous essayez d'obtenir ?
Code: Tout sélectionner
\documentclass[svgnames]{article}
\usepackage{pstricks-add, pst-eucl, pst-slpe, auto-pst-pdf}

\begin{document}

\begin{pspicture}[showgrid](0,0)(10,7)
%source ponctuelle
\dotnodes(1,4){S}(7,4){O}
%
\psCircleTangents(S)(O){2}
%rayons lumineux
% ArrowInside=-> : voir documentation pst-arrow
\pcline[nodesep=-1cm,linecolor=blue,ArrowInside=->,ArrowInsidePos=0.5,arrowscale=2]{<->}(1,4)(CircleT1)
\pcline[nodesep=-1cm,linecolor=blue,ArrowInside=->,ArrowInsidePos=0.5,arrowscale=2]{<->}(1,4)(CircleT2)
%
\pstArcOAB{O}{CircleT2}{CircleT1}
\pscustom[linecolor=none, fillstyle=ccslope, slopebegin=DimGrey!40!blue!20, slopeend=DimGrey]{%
\pstArcOAB{O}{CircleT1}{CircleT2}
\pstArcnOAB{S}{CircleT2}{CircleT1}
}%

\end{pspicture}

\end{document}

B. A.

Re: [résolu/reformulé] Dessiner arc de cercle + psCircleTang

MessagePosté: Jeudi 27 Avril 2017, 13:06
par Arathorn
Bonjour,

C'est tout à fait ça, merci

[hors-sujet]
N'ayant pas trouvé la fonction \pstArcOAB dans pstricks-add, j'ai vu que cela venait du paquet pst-eucl qui contient aussi une fonction équivalente à pstricks-add sur le tracé des tangentes.
J'ai deux questions à vous soumettre :
1- lequel vous semble le plus généraliste ou à privilégier ?
2- Où puis-je trouver une documentation sur \psaxes ? Il n'y a rien dans la documentation de pstricks-add (v 1.75 du 9/2016) .

En vous remerciant.
[ fin hors-sujet]

Re: [résolu/reformulé] Dessiner arc de cercle + psCircleTang

MessagePosté: Jeudi 27 Avril 2017, 20:50
par rebouxo
en ouvrant une invite de commande (sous Win : Démarrer > Executer > CMD) sous Linux (tu dois savoir...) :
texdoc pst-plot. Il me semble que c'est dans cette extension.

Pour avoir un aperçu des extentions de pstricks : le site http://tug.org/PSTricks/main.cgi/.

Pour ta question, je ne suis pas certain que les deux commandes fassent la même chose. La commande de pst-eucl c'est pour les cercles, celle de pstricks-add fonctionne pour les fonctions. De mémoire, cela fait deux ans que je ne pratiques plus pstricks.

Olivier

Re: [résolu/reformulé] Dessiner arc de cercle + psCircleTang

MessagePosté: Jeudi 27 Avril 2017, 21:16
par balf
Arathorn a écrit:N'ayant pas trouvé la fonction \pstArcOAB dans pstricks-add, j'ai vu que cela venait du paquet pst-eucl qui contient aussi une fonction équivalente à pstricks-add sur le tracé des tangentes.
J'ai deux questions à vous soumettre :
1- lequel vous semble le plus généraliste ou à privilégier ?
À privilégier: les deux, mon colonel. Ils se complètent, et n'ont pas vraiment le même objet. Donc, j'utilise tantôt l'un, tantôt l'autre, tantôt les deux.
Le plus généraliste: sans doute pstricks-add, qui par ailleurs charge pstricks, pst-node, pst-plot, pst-math, pst-3d et multido, qu'il est donc inutile de charger.
pst-eucl, quant à lui, charge pst-node et pst-tools.

2- Où puis-je trouver une documentation sur \psaxes ?
Il y a une documentation dans celle de pstricks-base, mais la plus à jour (la syntaxe pour les labels des axes s'est simplifiée il y a quelques années) est dans celle de pst-plot. Elle n'est pas toujours très claire, aussi faut-il regarder les exemples.

Re: [résolu/reformulé] Dessiner arc de cercle + psCircleTang

MessagePosté: Vendredi 28 Avril 2017, 10:34
par Arathorn
Merci pour ces précisions.