[OS X TeX] Angular Vernier scale

Aaron Jackson jackson at msrce.howard.edu
Sun Jun 2 03:42:37 CEST 2013


On Jun 1, 2013, at 4:15 PM, Michael Sharpe <msharpe at ucsd.edu> wrote:

> 
> On Jun 1, 2013, at 12:21 PM, Aaron Jackson <jackson at msrce.howard.edu> wrote:
> 
>> I have to make some documentation for a piece of scientific equipment. This will entail making quite a few illustrations of different settings on an angular vernier scale, similar to the one show here
>> 
>> http://www.craftsmanspace.com/sites/default/files/free-knowledge-articles/bevel_protractor_vernier_scale.jpg
>> 
>> Does anybody know an easy way to draw this sort of scale?
>> 
>> Thanks,
>> 
> 
> The LaTeX packages pstricks and tikz/pgf would be suitable, as would a number of others. There is code on which you could base your drawing at 
> 
> http://tug.org/PSTricks/main.cgi?file=examples#compass
> 
> or
> 
> http://www.texample.net/tikz/examples/degree-wheel/
> 
> Michael

Thanks for the pointer. For completeness, this is what I came up with. It is a modified version of the tikz example:

% A simple compass
% Author: Dario Orescanin

\documentclass{minimal}
\usepackage{tikz}
\begin{document}

\begin{centering}

% Define a few constants for easy configuration
\def\radius{2cm}
\def\onedegrad{1.8cm}
\def\fivedegrad{1.75cm}
\def\tendegrad{1.7cm}
\def\labelrad{1.6cm}

 \def\minradius{2.3cm}
 \def\fifteenmin{2.2cm}
 \def\fivemin{2.1cm}
 \def\minlabel{2.25cm}
 \def\vernierunit{1.9}
 \def\verniercount{10}
 \def\rotation{31.6}

\begin{tikzpicture}[scale=4]

  % adding a subtle gray tone to add a bit of "personality"
  \shade[shading=radial, inner color=white, outer color=gray!15] (0,0) circle (\radius);

  \draw (0,0) circle (\radius);
  \draw[fill=black] (0,0) circle (.02mm);
  \node[draw, circle, inner sep=.2mm] (a) at (0,0) {};
  
  % helper lines
  \foreach \x in {0, 45, ..., 360} \draw[very thin, gray!40] (a) -- (\x+\rotation:\radius);

  % main lines
  \foreach \x in {0,...,359} \draw (\x+\rotation:\onedegrad) -- (\x+\rotation:\radius);

  % labels and longer lines at every 10 degrees
  \foreach \x in {0,10,...,350}
  {
    \node[scale=1.4] at (270-\x+\rotation:\labelrad) {\x};
    \draw (\x+\rotation:\tendegrad) -- (\x+\rotation:\radius);
  };

  % lines at every 5 degrees
  \foreach \x in {0,5,...,355}  \draw (\x+\rotation:\fivedegrad) -- (\x+\rotation:\radius);
   \draw (0,0) circle (\minradius);
   \foreach \x in {0,...,20} \draw  (270-\vernierunit*\verniercount+\x*\vernierunit:\radius) -- (270-\vernierunit*\verniercount+\x*\vernierunit:\fivemin);
   \foreach \x in {0,5,...,20} \draw  (270-\vernierunit*\verniercount+\x*\vernierunit:\radius) -- (270-\vernierunit*\verniercount+\x*\vernierunit:\fifteenmin);
   \node at (270:\minlabel) {0'};
   \node at (270-\vernierunit*\verniercount:\minlabel) {60'};
   \node at (270+\vernierunit*\verniercount:\minlabel) {60'};
   \node at (270-\vernierunit*\verniercount+5*\vernierunit:\minlabel) {30'};
   \node at (270-\vernierunit*\verniercount+15*\vernierunit:\minlabel) {30'};
\end{tikzpicture}
\end{centering}
\end{document}




More information about the macostex-archives mailing list