Take the 2-minute tour ×
TeX - LaTeX Stack Exchange is a question and answer site for users of TeX, LaTeX, ConTeXt, and related typesetting systems. It's 100% free, no registration required.

Zero-dimensional objects

For zero dimensional objects, \uput can mimic \rput as illustrated in the following example.

\documentclass[pstricks,border=12pt]{standalone} 

\begin{document} 

\begin{pspicture}[showgrid=bottom](6,6) 
% the first angle in [] will be ignored when the labelsep = 0.
\uput{0}[0]{0}(2,3){\pscircle(1,1){1}}
\uput{0}[45]{45}(2,3){\pscircle[linecolor=red](1,1){1}}
\uput{0}[90]{90}(2,3){\pscircle[linecolor=blue](1,1){1}}
\end{pspicture} 

\begin{pspicture}[showgrid=bottom](6,6) 
\rput{0}(2,3){\pscircle(1,1){1}}
\rput{45}(2,3){\pscircle[linecolor=red](1,1){1}}
\rput{90}(2,3){\pscircle[linecolor=blue](1,1){1}}
\end{pspicture} 

\end{document}

Non-zero dimensional objects

The following is my attempt to mimic \rput with \uput. Unfortunately, I failed and gave up! I cannot move the center of \object to (2,3) when using \uput while I can do it with \rput.

\documentclass[pstricks,border=12pt]{standalone} 

\newcommand\object[1][black]{%
\pspicture(3,2)
\psframe*[linecolor=#1](3,2)
\endpspicture
}
\begin{document} 

\begin{pspicture}[showgrid=bottom](6,6) 
\uput{0}[0]{0}(2,3){\object}
\uput{1.5}[0]{0}(2,3){\object[yellow]}
\uput{-1.5}[0]{0}(2,3){\object[blue]}
\end{pspicture} 

\begin{pspicture}[showgrid=bottom](6,6) 
\rput{0}(2,3){\object}
\end{pspicture} 

\end{document}

Do you have any idea?

share|improve this question
    
In my mental model, \uput should be superior compared to \rput. –  Please don't touch Feb 19 '13 at 17:26

2 Answers 2

up vote 3 down vote accepted

No. It is not possible in general and makes no sense from the definition.

To mimic \rput{0}(2,3){\object} with \uput{<labelsep>}[<direction angle>]{0}(2,3){\object} is not possible by adjusting the <labelsep> and <direction angle>.

But one of the possible special cases is,

\begin{pspicture}[showgrid=bottom](6,6) 
\uput{0}[0](2,3){\object}
\end{pspicture} 

\begin{pspicture}[showgrid=bottom](6,6) 
\rput[l]{0}(2,3){\object}
\end{pspicture} 
share|improve this answer
    
I want to discuss the case in which \rput uses its default node reference at its center. Can \uput mimic \rput in this case? –  Please don't touch Feb 19 '13 at 17:48
    
Sorry, I do not understand your problem. If \uput could be the same as \rputthen we had not define it ... –  Herbert Feb 19 '13 at 17:57
    
Shortly speaking, how to setup the <labelsep> and <direction angle> for \uput{<labelsep>}[<direction angle>]{0}(2,3){\object} to produce the same result as \rput{0}(2,3){\object}? –  Please don't touch Feb 19 '13 at 18:00
    
I think the current implementation of <labelsep> does not accept a negative value so we cannot move in opposite direction. –  Please don't touch Feb 19 '13 at 18:18
    
no, that is not possible and makes no sense from the definition –  Herbert Feb 19 '13 at 18:43

Just for adding extra information to the accepted answer. I just knew it several seconds ago.

\nput (instead of \uput) can mimic what \rput does for the non-zero dimensional objects (the second case in the question).

\documentclass[pstricks,border=12pt]{standalone} 
\usepackage{pst-node}
\newcommand\object[1][black]{%
\pspicture(3,2)
\psframe*[linecolor=#1](3,2)
\endpspicture
}
\begin{document} 

\begin{pspicture}[showgrid=bottom](6,6)
\pnode(2,3){A}
\nput[rot=0,labelsep=-1.5]{0}{A}{\object[blue]}
\end{pspicture} 

\begin{pspicture}[showgrid=bottom](6,6) 
\rput{0}(2,3){\object}
\end{pspicture} 

\end{document}
share|improve this answer

Your Answer

 
discard

By posting your answer, you agree to the privacy policy and terms of service.

Not the answer you're looking for? Browse other questions tagged or ask your own question.