diff options
author | Norbert Preining <norbert@preining.info> | 2019-09-02 13:46:59 +0900 |
---|---|---|
committer | Norbert Preining <norbert@preining.info> | 2019-09-02 13:46:59 +0900 |
commit | e0c6872cf40896c7be36b11dcc744620f10adf1d (patch) | |
tree | 60335e10d2f4354b0674ec22d7b53f0f8abee672 /macros/latex/contrib/circle |
Initial commit
Diffstat (limited to 'macros/latex/contrib/circle')
-rw-r--r-- | macros/latex/contrib/circle/circle.pdf | bin | 0 -> 185801 bytes | |||
-rw-r--r-- | macros/latex/contrib/circle/circle.sty | 42 | ||||
-rw-r--r-- | macros/latex/contrib/circle/circle.tex | 47 |
3 files changed, 89 insertions, 0 deletions
diff --git a/macros/latex/contrib/circle/circle.pdf b/macros/latex/contrib/circle/circle.pdf Binary files differnew file mode 100644 index 0000000000..21e4db0208 --- /dev/null +++ b/macros/latex/contrib/circle/circle.pdf diff --git a/macros/latex/contrib/circle/circle.sty b/macros/latex/contrib/circle/circle.sty new file mode 100644 index 0000000000..f7428522a1 --- /dev/null +++ b/macros/latex/contrib/circle/circle.sty @@ -0,0 +1,42 @@ +\NeedsTeXFormat{LaTeX2e} +\ProvidesPackage{circle}[1998/07/15 LaTeX package for circles in math mode] +%\Author{Klaus G. Barthelmann, barthel@informatik.uni-mainz.de} +%\ProvidesCommands{\Circle[1][n]} + +% As the name says, \Circle gives a circle in math mode. Its size lies between +% that of the binary operator \circ and that of the unary operator \bigcirc. +% It can be used as the nextstep operator of temporal logic in conjunction with +% \Box and \Diamond (latexsym) or \square and \lozenge (amssymb). \Circle[f] +% gives a filled circle. +% As you probably know, L. Lamport discouraged the use of the nextstep +% operator for program verification. This could be the reason that he did not +% provide a symbol for it in \LaTeX. +% The circles are taken from the lcircle10 font. We try to choose the +% appropriate size. If you need a high quality output, this solution will not +% suit you. + +\newcommand*\Circle[1][n]{% + \mathchoice{\@Circle{#1}{\tf@size}}{\@Circle{#1}{\tf@size}}% + {\@Circle{#1}{\sf@size}}{\@Circle{#1}{\ssf@size}}% +} + +% Bugs: circles have size n at fontsize 2n-1 and 2n; they do not scale linearly +% depending on the fontsize + +\newcommand*\@Circle[2]{{% + \dimen0=#2pt \advance\dimen0by.5pt \dimen1=1pt \divide\dimen0by\dimen1 + \count255=\dimen0 \ifodd\count255 \advance\count255by1 \fi\divide\count255by2 + \ifnum\count255=0 {}\else\ifnum\count255>15 {}\else + \dimen0=\count255pt + \edef\circfont{tencirc\ifnum\count255>8 w\fi} + \advance\count255by\if #1f111\else 95\fi + \dimen2=.82\dimen0 \advance\dimen2by.4pt + \raisebox{.625\dimen0}[\dimen2]{\makebox[1.2\dimen0]{% + \hspace*{.9\dimen0}% + \csname\circfont\endcsname + \char\count255 % + }}% + \fi\fi +}} + +\endinput diff --git a/macros/latex/contrib/circle/circle.tex b/macros/latex/contrib/circle/circle.tex new file mode 100644 index 0000000000..9043c0589a --- /dev/null +++ b/macros/latex/contrib/circle/circle.tex @@ -0,0 +1,47 @@ +\documentclass[DIV=9, parskip=half, pagesize=auto]{scrartcl} + +\usepackage{fixltx2e} +\usepackage{etex} +\usepackage{xspace} +\usepackage{lmodern} +\usepackage[T1]{fontenc} +\usepackage{textcomp} +\usepackage{microtype} +\usepackage[unicode=true]{hyperref} + +\newcommand*{\mail}[1]{\href{mailto:#1}{\texttt{#1}}} +\newcommand*{\pkg}[1]{\textsf{#1}} +\newcommand*{\cs}[1]{\texttt{\textbackslash#1}} +\makeatletter +\newcommand*{\cmd}[1]{\cs{\expandafter\@gobble\string#1}} +\makeatother + +\addtokomafont{title}{\rmfamily} + +\title{The \pkg{circle} package} +\author{Klaus G. Barthelmann, \mail{barthel@informatik.uni-mainz.de}} +\date{1998/07/15} + + +\begin{document} + +\maketitle + +As the name says, \cmd{\Circle} gives a circle in math mode. Its size lies between +that of the binary operator \cmd{\circ} and that of the unary operator \cmd{\bigcirc}. +It can be used as the nextstep operator of temporal logic in conjunction with +\cmd{\Box} and \cmd{\Diamond} (\pkg{latexsym}) or \cmd{\square} and \cmd{\lozenge} (\pkg{amssymb}). \verb+\Circle[f]+ +gives a filled circle. + +As you probably know, L.~Lamport discouraged the use of the nextstep +operator for program verification. This could be the reason that he did not +provide a symbol for it in \LaTeX. + +The circles are taken from the \pkg{lcircle10} font. We try to choose the +appropriate size. If you need a high quality output, this solution will not +suit you. + +Bugs: circles have size $n$ at fontsize $2n-1$ and $2n$; they do not scale linearly +depending on the fontsize + +\end{document} |