A macro that draws a half-disk for use in mathmode
Clash Royale CLAN TAG#URR8PPP
up vote
10
down vote
favorite
I'd like to define macros to be able to use each of the following six shapes as subscripts in math mode.
I'd try to draw them using tikz, but I don't know if I could use those as subscripts.
math-mode subscripts
New contributor
add a comment |
up vote
10
down vote
favorite
I'd like to define macros to be able to use each of the following six shapes as subscripts in math mode.
I'd try to draw them using tikz, but I don't know if I could use those as subscripts.
math-mode subscripts
New contributor
1
Maybe you find some here: ctan.org/pkg/wasysym or www.ctan.org/pkg/stix
– Sigur
Nov 20 at 14:44
Thanks! That package has the commands Leftcircle and Rightcircle, I'll try to figure out how to rotate those. Still missing the ones with just the arc, though.
– Peter
Nov 20 at 14:46
1
Check here also: mirrors.ctan.org/info/symbols/comprehensive/symbols-a4.pdf
– Sigur
Nov 20 at 14:50
Also, if usingunicode-math
: mirrors.ctan.org/macros/latex/contrib/unicode-math/…
– Davislor
Nov 21 at 3:34
1
A few of those symbols are in Unicode, ◯ is U+25EF, ◠ is U+25E0 and ◡ is U+25E1.unicode-math
and some other packages give these the aliaseslgwhtcircle
,topsemicircle
andbotsemicircle
, respectively. There are several horizontal dashes. The other two symbols do not seem to be.
– Davislor
Nov 21 at 3:43
add a comment |
up vote
10
down vote
favorite
up vote
10
down vote
favorite
I'd like to define macros to be able to use each of the following six shapes as subscripts in math mode.
I'd try to draw them using tikz, but I don't know if I could use those as subscripts.
math-mode subscripts
New contributor
I'd like to define macros to be able to use each of the following six shapes as subscripts in math mode.
I'd try to draw them using tikz, but I don't know if I could use those as subscripts.
math-mode subscripts
math-mode subscripts
New contributor
New contributor
New contributor
asked Nov 20 at 14:39
Peter
1535
1535
New contributor
New contributor
1
Maybe you find some here: ctan.org/pkg/wasysym or www.ctan.org/pkg/stix
– Sigur
Nov 20 at 14:44
Thanks! That package has the commands Leftcircle and Rightcircle, I'll try to figure out how to rotate those. Still missing the ones with just the arc, though.
– Peter
Nov 20 at 14:46
1
Check here also: mirrors.ctan.org/info/symbols/comprehensive/symbols-a4.pdf
– Sigur
Nov 20 at 14:50
Also, if usingunicode-math
: mirrors.ctan.org/macros/latex/contrib/unicode-math/…
– Davislor
Nov 21 at 3:34
1
A few of those symbols are in Unicode, ◯ is U+25EF, ◠ is U+25E0 and ◡ is U+25E1.unicode-math
and some other packages give these the aliaseslgwhtcircle
,topsemicircle
andbotsemicircle
, respectively. There are several horizontal dashes. The other two symbols do not seem to be.
– Davislor
Nov 21 at 3:43
add a comment |
1
Maybe you find some here: ctan.org/pkg/wasysym or www.ctan.org/pkg/stix
– Sigur
Nov 20 at 14:44
Thanks! That package has the commands Leftcircle and Rightcircle, I'll try to figure out how to rotate those. Still missing the ones with just the arc, though.
– Peter
Nov 20 at 14:46
1
Check here also: mirrors.ctan.org/info/symbols/comprehensive/symbols-a4.pdf
– Sigur
Nov 20 at 14:50
Also, if usingunicode-math
: mirrors.ctan.org/macros/latex/contrib/unicode-math/…
– Davislor
Nov 21 at 3:34
1
A few of those symbols are in Unicode, ◯ is U+25EF, ◠ is U+25E0 and ◡ is U+25E1.unicode-math
and some other packages give these the aliaseslgwhtcircle
,topsemicircle
andbotsemicircle
, respectively. There are several horizontal dashes. The other two symbols do not seem to be.
– Davislor
Nov 21 at 3:43
1
1
Maybe you find some here: ctan.org/pkg/wasysym or www.ctan.org/pkg/stix
– Sigur
Nov 20 at 14:44
Maybe you find some here: ctan.org/pkg/wasysym or www.ctan.org/pkg/stix
– Sigur
Nov 20 at 14:44
Thanks! That package has the commands Leftcircle and Rightcircle, I'll try to figure out how to rotate those. Still missing the ones with just the arc, though.
– Peter
Nov 20 at 14:46
Thanks! That package has the commands Leftcircle and Rightcircle, I'll try to figure out how to rotate those. Still missing the ones with just the arc, though.
– Peter
Nov 20 at 14:46
1
1
Check here also: mirrors.ctan.org/info/symbols/comprehensive/symbols-a4.pdf
– Sigur
Nov 20 at 14:50
Check here also: mirrors.ctan.org/info/symbols/comprehensive/symbols-a4.pdf
– Sigur
Nov 20 at 14:50
Also, if using
unicode-math
: mirrors.ctan.org/macros/latex/contrib/unicode-math/…– Davislor
Nov 21 at 3:34
Also, if using
unicode-math
: mirrors.ctan.org/macros/latex/contrib/unicode-math/…– Davislor
Nov 21 at 3:34
1
1
A few of those symbols are in Unicode, ◯ is U+25EF, ◠ is U+25E0 and ◡ is U+25E1.
unicode-math
and some other packages give these the aliases lgwhtcircle
, topsemicircle
and botsemicircle
, respectively. There are several horizontal dashes. The other two symbols do not seem to be.– Davislor
Nov 21 at 3:43
A few of those symbols are in Unicode, ◯ is U+25EF, ◠ is U+25E0 and ◡ is U+25E1.
unicode-math
and some other packages give these the aliases lgwhtcircle
, topsemicircle
and botsemicircle
, respectively. There are several horizontal dashes. The other two symbols do not seem to be.– Davislor
Nov 21 at 3:43
add a comment |
3 Answers
3
active
oldest
votes
up vote
13
down vote
accepted
Picture mode!
documentclassarticle
usepackageamsmath
usepackagepict2e
DeclareRobustCommandfullcircle%
mspace2mumathord
sbox0$scriptstyle O$%
setlengthunitlengthht0%
beginpicture(1,1)
put(0.5,0.5)arc0.5
endpicture
mspace2mu
DeclareRobustCommandupsemicircle%
mspace2mumathord
sbox0$scriptstyle O$%
setlengthunitlengthht0%
beginpicture(1,1)
put(0.5,0.5)arc[0,180]0.5
endpicture
mspace2mu
DeclareRobustCommanddownsemicircle%
mspace2mumathord
sbox0$scriptstyle O$%
setlengthunitlengthht0%
beginpicture(1,1)
put(0.5,0.5)arc[180,360]0.5
endpicture
mspace2mu
DeclareRobustCommandupsemicirclediam%
mspace2mumathord
sbox0$scriptstyle O$%
setlengthunitlengthht0%
beginpicture(1,1)
moveto(0.5,0.5)
circlearc0.50.50.50180
lineto(0.5,0.5)
strokepath
endpicture
mspace2mu
DeclareRobustCommanddownsemicirclediam%
mspace2mumathord
sbox0$scriptstyle O$%
setlengthunitlengthht0%
beginpicture(1,1)
moveto(0.5,0.5)
circlearc0.50.50.5180360
lineto(0.5,0.5)
strokepath
endpicture
mspace2mu
DeclareRobustCommanddiam%
mspace2mumathord
sbox0$scriptstyle O$%
setlengthunitlengthht0%
beginpicture(1,1)
Line(0,0.5)(1,0.5)
endpicture
mspace2mu
begindocument
$X_fullcircleupsemicircledownsemicircleupsemicirclediamdownsemicirclediamdiam$
enddocument
An enhanced version that can cope with the symbols at every level.
documentclassarticle
usepackageamsmath
usepackagepict2e
makeatletter
DeclareRobustCommandfullcirclepeter@symbolpeter@fullcircle
DeclareRobustCommandupsemicirclepeter@symbolpeter@upsemicircle
DeclareRobustCommanddownsemicirclepeter@symbolpeter@downsemicircle
DeclareRobustCommandupsemicirclediampeter@symbolpeter@upsemicirclediam
DeclareRobustCommanddownsemicirclediampeter@symbolpeter@downsemicirclediam
DeclareRobustCommanddiampeter@symbolpeter@diam
newcommandpeter@symbol[1]mathordmspace2mumathpalette#1relaxmspace2mu
newcommandpeter@unitlength[1]%
settoheightunitlength$m@th#1O$%
linethicknessfontdimen 8
ifx#1displaystyletextfontelse
ifx#1textstyletextfontelse
ifx#1scriptstylescriptfontelse
scriptscriptfontfififi 3
%
newcommandpeter@fullcircle[2]%
begingroup
peter@unitlength#1%
beginpicture(1,1)
circlearc[1]0.50.50.50360
strokepath
endpicture%
endgroup
newcommandpeter@upsemicircle[2]%
begingroup
peter@unitlength#1%
beginpicture(1,1)
circlearc[1]0.50.50.50180
strokepath
endpicture%
endgroup
newcommandpeter@downsemicircle[2]%
begingroup
peter@unitlength#1%
beginpicture(1,1)
circlearc[1]0.50.50.5180360
strokepath
endpicture%
endgroup
newcommandpeter@upsemicirclediam[2]%
begingroup
peter@unitlength#1%
beginpicture(1,1)
moveto(0.5,0.5)
circlearc0.50.50.50180
lineto(0.5,0.5)
strokepath
endpicture%
endgroup
newcommandpeter@downsemicirclediam[2]%
begingroup
peter@unitlength#1%
beginpicture(1,1)
moveto(0.5,0.5)
circlearc0.50.50.5180360
lineto(0.5,0.5)
strokepath
endpicture%
endgroup
newcommandpeter@diam[2]%
begingroup
peter@unitlength#1%
beginpicture(1,1)
Line(0,0.5)(1,0.5)
endpicture%
endgroup
begindocument
$Xfullcircleupsemicircledownsemicircleupsemicirclediamdownsemicirclediamdiam$
$X_fullcircleupsemicircledownsemicircleupsemicirclediamdownsemicirclediamdiam$
$X_X_fullcircleupsemicircledownsemicircleupsemicirclediamdownsemicirclediamdiam$
enddocument
add a comment |
up vote
7
down vote
TikZ in boxes! (Far inferior to picture mode unfortunately)
documentclassarticle
usepackagetikz
makeatletter
newcommandsetup@crazysubscripts[2]
%
expandafternewsaveboxcsname crazysubscripts@#1endcsname
expandaftersboxcsname crazysubscripts@#1endcsname
%
kern.1ex
begintikzpicture
path[use as bounding box] circle[radius=.5ex];
#2%
endtikzpicture%
kern.1ex
%
setup@crazysubscriptsfc% fullcircle
%
draw circle[radius=.5ex];%
setup@crazysubscriptslo% lower open
%
draw (.5ex,0) arc[start angle=0, end angle=-180, radius=.5ex];%
setup@crazysubscriptsuo% upper open
%
draw (.5ex,0) arc[start angle=0, end angle=180, radius=.5ex];%
setup@crazysubscriptslc% lower closed
%
draw (-.5ex,0) -- (.5ex,0) arc[start angle=0, end angle=-180, radius=.5ex]
--cycle;%
setup@crazysubscriptsuc% upper closed
%
draw (-.5ex,0) -- (.5ex,0) arc[start angle=0, end angle=180, radius=.5ex]
--cycle;%
setup@crazysubscriptsb% boring line
%
draw (-.5ex,0) -- (.5ex,0);%
newcommandcsubs[1]
%
@ifundefinedcrazysubscripts@#1
GenericErrorUndefined crazysubscript `#1`%
%
resizebox.75ex!
expandafteruseboxcsname crazysubscripts@#1endcsname%
%
makeatother
begindocument
$A_csubsfc_csubslo_csubslc$
csubsfccsubslocsubsuocsubslccsubsuccsubsb
enddocument
Could you elaborate how this is inferior to picture mode?
– Peter
Nov 20 at 15:34
@Peter because the other one is picture mode!
– Skillmon
Nov 20 at 15:43
2
@Peter no honestly, it's just a joke.
– Skillmon
Nov 20 at 15:44
add a comment |
up vote
3
down vote
Just a template.
documentclass[preview,border=12pt,varwidth,12pt]standalone
usepackagetikz
defalextikz draw (0,0) circle (2pt);
defbobbytikz draw (0,0) -- (3pt,0) -- (3pt,2pt) -- cycle;
begindocument
This is an equation $F_alex^bobby+1$.
enddocument
add a comment |
3 Answers
3
active
oldest
votes
3 Answers
3
active
oldest
votes
active
oldest
votes
active
oldest
votes
up vote
13
down vote
accepted
Picture mode!
documentclassarticle
usepackageamsmath
usepackagepict2e
DeclareRobustCommandfullcircle%
mspace2mumathord
sbox0$scriptstyle O$%
setlengthunitlengthht0%
beginpicture(1,1)
put(0.5,0.5)arc0.5
endpicture
mspace2mu
DeclareRobustCommandupsemicircle%
mspace2mumathord
sbox0$scriptstyle O$%
setlengthunitlengthht0%
beginpicture(1,1)
put(0.5,0.5)arc[0,180]0.5
endpicture
mspace2mu
DeclareRobustCommanddownsemicircle%
mspace2mumathord
sbox0$scriptstyle O$%
setlengthunitlengthht0%
beginpicture(1,1)
put(0.5,0.5)arc[180,360]0.5
endpicture
mspace2mu
DeclareRobustCommandupsemicirclediam%
mspace2mumathord
sbox0$scriptstyle O$%
setlengthunitlengthht0%
beginpicture(1,1)
moveto(0.5,0.5)
circlearc0.50.50.50180
lineto(0.5,0.5)
strokepath
endpicture
mspace2mu
DeclareRobustCommanddownsemicirclediam%
mspace2mumathord
sbox0$scriptstyle O$%
setlengthunitlengthht0%
beginpicture(1,1)
moveto(0.5,0.5)
circlearc0.50.50.5180360
lineto(0.5,0.5)
strokepath
endpicture
mspace2mu
DeclareRobustCommanddiam%
mspace2mumathord
sbox0$scriptstyle O$%
setlengthunitlengthht0%
beginpicture(1,1)
Line(0,0.5)(1,0.5)
endpicture
mspace2mu
begindocument
$X_fullcircleupsemicircledownsemicircleupsemicirclediamdownsemicirclediamdiam$
enddocument
An enhanced version that can cope with the symbols at every level.
documentclassarticle
usepackageamsmath
usepackagepict2e
makeatletter
DeclareRobustCommandfullcirclepeter@symbolpeter@fullcircle
DeclareRobustCommandupsemicirclepeter@symbolpeter@upsemicircle
DeclareRobustCommanddownsemicirclepeter@symbolpeter@downsemicircle
DeclareRobustCommandupsemicirclediampeter@symbolpeter@upsemicirclediam
DeclareRobustCommanddownsemicirclediampeter@symbolpeter@downsemicirclediam
DeclareRobustCommanddiampeter@symbolpeter@diam
newcommandpeter@symbol[1]mathordmspace2mumathpalette#1relaxmspace2mu
newcommandpeter@unitlength[1]%
settoheightunitlength$m@th#1O$%
linethicknessfontdimen 8
ifx#1displaystyletextfontelse
ifx#1textstyletextfontelse
ifx#1scriptstylescriptfontelse
scriptscriptfontfififi 3
%
newcommandpeter@fullcircle[2]%
begingroup
peter@unitlength#1%
beginpicture(1,1)
circlearc[1]0.50.50.50360
strokepath
endpicture%
endgroup
newcommandpeter@upsemicircle[2]%
begingroup
peter@unitlength#1%
beginpicture(1,1)
circlearc[1]0.50.50.50180
strokepath
endpicture%
endgroup
newcommandpeter@downsemicircle[2]%
begingroup
peter@unitlength#1%
beginpicture(1,1)
circlearc[1]0.50.50.5180360
strokepath
endpicture%
endgroup
newcommandpeter@upsemicirclediam[2]%
begingroup
peter@unitlength#1%
beginpicture(1,1)
moveto(0.5,0.5)
circlearc0.50.50.50180
lineto(0.5,0.5)
strokepath
endpicture%
endgroup
newcommandpeter@downsemicirclediam[2]%
begingroup
peter@unitlength#1%
beginpicture(1,1)
moveto(0.5,0.5)
circlearc0.50.50.5180360
lineto(0.5,0.5)
strokepath
endpicture%
endgroup
newcommandpeter@diam[2]%
begingroup
peter@unitlength#1%
beginpicture(1,1)
Line(0,0.5)(1,0.5)
endpicture%
endgroup
begindocument
$Xfullcircleupsemicircledownsemicircleupsemicirclediamdownsemicirclediamdiam$
$X_fullcircleupsemicircledownsemicircleupsemicirclediamdownsemicirclediamdiam$
$X_X_fullcircleupsemicircledownsemicircleupsemicirclediamdownsemicirclediamdiam$
enddocument
add a comment |
up vote
13
down vote
accepted
Picture mode!
documentclassarticle
usepackageamsmath
usepackagepict2e
DeclareRobustCommandfullcircle%
mspace2mumathord
sbox0$scriptstyle O$%
setlengthunitlengthht0%
beginpicture(1,1)
put(0.5,0.5)arc0.5
endpicture
mspace2mu
DeclareRobustCommandupsemicircle%
mspace2mumathord
sbox0$scriptstyle O$%
setlengthunitlengthht0%
beginpicture(1,1)
put(0.5,0.5)arc[0,180]0.5
endpicture
mspace2mu
DeclareRobustCommanddownsemicircle%
mspace2mumathord
sbox0$scriptstyle O$%
setlengthunitlengthht0%
beginpicture(1,1)
put(0.5,0.5)arc[180,360]0.5
endpicture
mspace2mu
DeclareRobustCommandupsemicirclediam%
mspace2mumathord
sbox0$scriptstyle O$%
setlengthunitlengthht0%
beginpicture(1,1)
moveto(0.5,0.5)
circlearc0.50.50.50180
lineto(0.5,0.5)
strokepath
endpicture
mspace2mu
DeclareRobustCommanddownsemicirclediam%
mspace2mumathord
sbox0$scriptstyle O$%
setlengthunitlengthht0%
beginpicture(1,1)
moveto(0.5,0.5)
circlearc0.50.50.5180360
lineto(0.5,0.5)
strokepath
endpicture
mspace2mu
DeclareRobustCommanddiam%
mspace2mumathord
sbox0$scriptstyle O$%
setlengthunitlengthht0%
beginpicture(1,1)
Line(0,0.5)(1,0.5)
endpicture
mspace2mu
begindocument
$X_fullcircleupsemicircledownsemicircleupsemicirclediamdownsemicirclediamdiam$
enddocument
An enhanced version that can cope with the symbols at every level.
documentclassarticle
usepackageamsmath
usepackagepict2e
makeatletter
DeclareRobustCommandfullcirclepeter@symbolpeter@fullcircle
DeclareRobustCommandupsemicirclepeter@symbolpeter@upsemicircle
DeclareRobustCommanddownsemicirclepeter@symbolpeter@downsemicircle
DeclareRobustCommandupsemicirclediampeter@symbolpeter@upsemicirclediam
DeclareRobustCommanddownsemicirclediampeter@symbolpeter@downsemicirclediam
DeclareRobustCommanddiampeter@symbolpeter@diam
newcommandpeter@symbol[1]mathordmspace2mumathpalette#1relaxmspace2mu
newcommandpeter@unitlength[1]%
settoheightunitlength$m@th#1O$%
linethicknessfontdimen 8
ifx#1displaystyletextfontelse
ifx#1textstyletextfontelse
ifx#1scriptstylescriptfontelse
scriptscriptfontfififi 3
%
newcommandpeter@fullcircle[2]%
begingroup
peter@unitlength#1%
beginpicture(1,1)
circlearc[1]0.50.50.50360
strokepath
endpicture%
endgroup
newcommandpeter@upsemicircle[2]%
begingroup
peter@unitlength#1%
beginpicture(1,1)
circlearc[1]0.50.50.50180
strokepath
endpicture%
endgroup
newcommandpeter@downsemicircle[2]%
begingroup
peter@unitlength#1%
beginpicture(1,1)
circlearc[1]0.50.50.5180360
strokepath
endpicture%
endgroup
newcommandpeter@upsemicirclediam[2]%
begingroup
peter@unitlength#1%
beginpicture(1,1)
moveto(0.5,0.5)
circlearc0.50.50.50180
lineto(0.5,0.5)
strokepath
endpicture%
endgroup
newcommandpeter@downsemicirclediam[2]%
begingroup
peter@unitlength#1%
beginpicture(1,1)
moveto(0.5,0.5)
circlearc0.50.50.5180360
lineto(0.5,0.5)
strokepath
endpicture%
endgroup
newcommandpeter@diam[2]%
begingroup
peter@unitlength#1%
beginpicture(1,1)
Line(0,0.5)(1,0.5)
endpicture%
endgroup
begindocument
$Xfullcircleupsemicircledownsemicircleupsemicirclediamdownsemicirclediamdiam$
$X_fullcircleupsemicircledownsemicircleupsemicirclediamdownsemicirclediamdiam$
$X_X_fullcircleupsemicircledownsemicircleupsemicirclediamdownsemicirclediamdiam$
enddocument
add a comment |
up vote
13
down vote
accepted
up vote
13
down vote
accepted
Picture mode!
documentclassarticle
usepackageamsmath
usepackagepict2e
DeclareRobustCommandfullcircle%
mspace2mumathord
sbox0$scriptstyle O$%
setlengthunitlengthht0%
beginpicture(1,1)
put(0.5,0.5)arc0.5
endpicture
mspace2mu
DeclareRobustCommandupsemicircle%
mspace2mumathord
sbox0$scriptstyle O$%
setlengthunitlengthht0%
beginpicture(1,1)
put(0.5,0.5)arc[0,180]0.5
endpicture
mspace2mu
DeclareRobustCommanddownsemicircle%
mspace2mumathord
sbox0$scriptstyle O$%
setlengthunitlengthht0%
beginpicture(1,1)
put(0.5,0.5)arc[180,360]0.5
endpicture
mspace2mu
DeclareRobustCommandupsemicirclediam%
mspace2mumathord
sbox0$scriptstyle O$%
setlengthunitlengthht0%
beginpicture(1,1)
moveto(0.5,0.5)
circlearc0.50.50.50180
lineto(0.5,0.5)
strokepath
endpicture
mspace2mu
DeclareRobustCommanddownsemicirclediam%
mspace2mumathord
sbox0$scriptstyle O$%
setlengthunitlengthht0%
beginpicture(1,1)
moveto(0.5,0.5)
circlearc0.50.50.5180360
lineto(0.5,0.5)
strokepath
endpicture
mspace2mu
DeclareRobustCommanddiam%
mspace2mumathord
sbox0$scriptstyle O$%
setlengthunitlengthht0%
beginpicture(1,1)
Line(0,0.5)(1,0.5)
endpicture
mspace2mu
begindocument
$X_fullcircleupsemicircledownsemicircleupsemicirclediamdownsemicirclediamdiam$
enddocument
An enhanced version that can cope with the symbols at every level.
documentclassarticle
usepackageamsmath
usepackagepict2e
makeatletter
DeclareRobustCommandfullcirclepeter@symbolpeter@fullcircle
DeclareRobustCommandupsemicirclepeter@symbolpeter@upsemicircle
DeclareRobustCommanddownsemicirclepeter@symbolpeter@downsemicircle
DeclareRobustCommandupsemicirclediampeter@symbolpeter@upsemicirclediam
DeclareRobustCommanddownsemicirclediampeter@symbolpeter@downsemicirclediam
DeclareRobustCommanddiampeter@symbolpeter@diam
newcommandpeter@symbol[1]mathordmspace2mumathpalette#1relaxmspace2mu
newcommandpeter@unitlength[1]%
settoheightunitlength$m@th#1O$%
linethicknessfontdimen 8
ifx#1displaystyletextfontelse
ifx#1textstyletextfontelse
ifx#1scriptstylescriptfontelse
scriptscriptfontfififi 3
%
newcommandpeter@fullcircle[2]%
begingroup
peter@unitlength#1%
beginpicture(1,1)
circlearc[1]0.50.50.50360
strokepath
endpicture%
endgroup
newcommandpeter@upsemicircle[2]%
begingroup
peter@unitlength#1%
beginpicture(1,1)
circlearc[1]0.50.50.50180
strokepath
endpicture%
endgroup
newcommandpeter@downsemicircle[2]%
begingroup
peter@unitlength#1%
beginpicture(1,1)
circlearc[1]0.50.50.5180360
strokepath
endpicture%
endgroup
newcommandpeter@upsemicirclediam[2]%
begingroup
peter@unitlength#1%
beginpicture(1,1)
moveto(0.5,0.5)
circlearc0.50.50.50180
lineto(0.5,0.5)
strokepath
endpicture%
endgroup
newcommandpeter@downsemicirclediam[2]%
begingroup
peter@unitlength#1%
beginpicture(1,1)
moveto(0.5,0.5)
circlearc0.50.50.5180360
lineto(0.5,0.5)
strokepath
endpicture%
endgroup
newcommandpeter@diam[2]%
begingroup
peter@unitlength#1%
beginpicture(1,1)
Line(0,0.5)(1,0.5)
endpicture%
endgroup
begindocument
$Xfullcircleupsemicircledownsemicircleupsemicirclediamdownsemicirclediamdiam$
$X_fullcircleupsemicircledownsemicircleupsemicirclediamdownsemicirclediamdiam$
$X_X_fullcircleupsemicircledownsemicircleupsemicirclediamdownsemicirclediamdiam$
enddocument
Picture mode!
documentclassarticle
usepackageamsmath
usepackagepict2e
DeclareRobustCommandfullcircle%
mspace2mumathord
sbox0$scriptstyle O$%
setlengthunitlengthht0%
beginpicture(1,1)
put(0.5,0.5)arc0.5
endpicture
mspace2mu
DeclareRobustCommandupsemicircle%
mspace2mumathord
sbox0$scriptstyle O$%
setlengthunitlengthht0%
beginpicture(1,1)
put(0.5,0.5)arc[0,180]0.5
endpicture
mspace2mu
DeclareRobustCommanddownsemicircle%
mspace2mumathord
sbox0$scriptstyle O$%
setlengthunitlengthht0%
beginpicture(1,1)
put(0.5,0.5)arc[180,360]0.5
endpicture
mspace2mu
DeclareRobustCommandupsemicirclediam%
mspace2mumathord
sbox0$scriptstyle O$%
setlengthunitlengthht0%
beginpicture(1,1)
moveto(0.5,0.5)
circlearc0.50.50.50180
lineto(0.5,0.5)
strokepath
endpicture
mspace2mu
DeclareRobustCommanddownsemicirclediam%
mspace2mumathord
sbox0$scriptstyle O$%
setlengthunitlengthht0%
beginpicture(1,1)
moveto(0.5,0.5)
circlearc0.50.50.5180360
lineto(0.5,0.5)
strokepath
endpicture
mspace2mu
DeclareRobustCommanddiam%
mspace2mumathord
sbox0$scriptstyle O$%
setlengthunitlengthht0%
beginpicture(1,1)
Line(0,0.5)(1,0.5)
endpicture
mspace2mu
begindocument
$X_fullcircleupsemicircledownsemicircleupsemicirclediamdownsemicirclediamdiam$
enddocument
An enhanced version that can cope with the symbols at every level.
documentclassarticle
usepackageamsmath
usepackagepict2e
makeatletter
DeclareRobustCommandfullcirclepeter@symbolpeter@fullcircle
DeclareRobustCommandupsemicirclepeter@symbolpeter@upsemicircle
DeclareRobustCommanddownsemicirclepeter@symbolpeter@downsemicircle
DeclareRobustCommandupsemicirclediampeter@symbolpeter@upsemicirclediam
DeclareRobustCommanddownsemicirclediampeter@symbolpeter@downsemicirclediam
DeclareRobustCommanddiampeter@symbolpeter@diam
newcommandpeter@symbol[1]mathordmspace2mumathpalette#1relaxmspace2mu
newcommandpeter@unitlength[1]%
settoheightunitlength$m@th#1O$%
linethicknessfontdimen 8
ifx#1displaystyletextfontelse
ifx#1textstyletextfontelse
ifx#1scriptstylescriptfontelse
scriptscriptfontfififi 3
%
newcommandpeter@fullcircle[2]%
begingroup
peter@unitlength#1%
beginpicture(1,1)
circlearc[1]0.50.50.50360
strokepath
endpicture%
endgroup
newcommandpeter@upsemicircle[2]%
begingroup
peter@unitlength#1%
beginpicture(1,1)
circlearc[1]0.50.50.50180
strokepath
endpicture%
endgroup
newcommandpeter@downsemicircle[2]%
begingroup
peter@unitlength#1%
beginpicture(1,1)
circlearc[1]0.50.50.5180360
strokepath
endpicture%
endgroup
newcommandpeter@upsemicirclediam[2]%
begingroup
peter@unitlength#1%
beginpicture(1,1)
moveto(0.5,0.5)
circlearc0.50.50.50180
lineto(0.5,0.5)
strokepath
endpicture%
endgroup
newcommandpeter@downsemicirclediam[2]%
begingroup
peter@unitlength#1%
beginpicture(1,1)
moveto(0.5,0.5)
circlearc0.50.50.5180360
lineto(0.5,0.5)
strokepath
endpicture%
endgroup
newcommandpeter@diam[2]%
begingroup
peter@unitlength#1%
beginpicture(1,1)
Line(0,0.5)(1,0.5)
endpicture%
endgroup
begindocument
$Xfullcircleupsemicircledownsemicircleupsemicirclediamdownsemicirclediamdiam$
$X_fullcircleupsemicircledownsemicircleupsemicirclediamdownsemicirclediamdiam$
$X_X_fullcircleupsemicircledownsemicircleupsemicirclediamdownsemicirclediamdiam$
enddocument
edited Nov 21 at 10:20
answered Nov 20 at 15:06
egreg
699k8518613133
699k8518613133
add a comment |
add a comment |
up vote
7
down vote
TikZ in boxes! (Far inferior to picture mode unfortunately)
documentclassarticle
usepackagetikz
makeatletter
newcommandsetup@crazysubscripts[2]
%
expandafternewsaveboxcsname crazysubscripts@#1endcsname
expandaftersboxcsname crazysubscripts@#1endcsname
%
kern.1ex
begintikzpicture
path[use as bounding box] circle[radius=.5ex];
#2%
endtikzpicture%
kern.1ex
%
setup@crazysubscriptsfc% fullcircle
%
draw circle[radius=.5ex];%
setup@crazysubscriptslo% lower open
%
draw (.5ex,0) arc[start angle=0, end angle=-180, radius=.5ex];%
setup@crazysubscriptsuo% upper open
%
draw (.5ex,0) arc[start angle=0, end angle=180, radius=.5ex];%
setup@crazysubscriptslc% lower closed
%
draw (-.5ex,0) -- (.5ex,0) arc[start angle=0, end angle=-180, radius=.5ex]
--cycle;%
setup@crazysubscriptsuc% upper closed
%
draw (-.5ex,0) -- (.5ex,0) arc[start angle=0, end angle=180, radius=.5ex]
--cycle;%
setup@crazysubscriptsb% boring line
%
draw (-.5ex,0) -- (.5ex,0);%
newcommandcsubs[1]
%
@ifundefinedcrazysubscripts@#1
GenericErrorUndefined crazysubscript `#1`%
%
resizebox.75ex!
expandafteruseboxcsname crazysubscripts@#1endcsname%
%
makeatother
begindocument
$A_csubsfc_csubslo_csubslc$
csubsfccsubslocsubsuocsubslccsubsuccsubsb
enddocument
Could you elaborate how this is inferior to picture mode?
– Peter
Nov 20 at 15:34
@Peter because the other one is picture mode!
– Skillmon
Nov 20 at 15:43
2
@Peter no honestly, it's just a joke.
– Skillmon
Nov 20 at 15:44
add a comment |
up vote
7
down vote
TikZ in boxes! (Far inferior to picture mode unfortunately)
documentclassarticle
usepackagetikz
makeatletter
newcommandsetup@crazysubscripts[2]
%
expandafternewsaveboxcsname crazysubscripts@#1endcsname
expandaftersboxcsname crazysubscripts@#1endcsname
%
kern.1ex
begintikzpicture
path[use as bounding box] circle[radius=.5ex];
#2%
endtikzpicture%
kern.1ex
%
setup@crazysubscriptsfc% fullcircle
%
draw circle[radius=.5ex];%
setup@crazysubscriptslo% lower open
%
draw (.5ex,0) arc[start angle=0, end angle=-180, radius=.5ex];%
setup@crazysubscriptsuo% upper open
%
draw (.5ex,0) arc[start angle=0, end angle=180, radius=.5ex];%
setup@crazysubscriptslc% lower closed
%
draw (-.5ex,0) -- (.5ex,0) arc[start angle=0, end angle=-180, radius=.5ex]
--cycle;%
setup@crazysubscriptsuc% upper closed
%
draw (-.5ex,0) -- (.5ex,0) arc[start angle=0, end angle=180, radius=.5ex]
--cycle;%
setup@crazysubscriptsb% boring line
%
draw (-.5ex,0) -- (.5ex,0);%
newcommandcsubs[1]
%
@ifundefinedcrazysubscripts@#1
GenericErrorUndefined crazysubscript `#1`%
%
resizebox.75ex!
expandafteruseboxcsname crazysubscripts@#1endcsname%
%
makeatother
begindocument
$A_csubsfc_csubslo_csubslc$
csubsfccsubslocsubsuocsubslccsubsuccsubsb
enddocument
Could you elaborate how this is inferior to picture mode?
– Peter
Nov 20 at 15:34
@Peter because the other one is picture mode!
– Skillmon
Nov 20 at 15:43
2
@Peter no honestly, it's just a joke.
– Skillmon
Nov 20 at 15:44
add a comment |
up vote
7
down vote
up vote
7
down vote
TikZ in boxes! (Far inferior to picture mode unfortunately)
documentclassarticle
usepackagetikz
makeatletter
newcommandsetup@crazysubscripts[2]
%
expandafternewsaveboxcsname crazysubscripts@#1endcsname
expandaftersboxcsname crazysubscripts@#1endcsname
%
kern.1ex
begintikzpicture
path[use as bounding box] circle[radius=.5ex];
#2%
endtikzpicture%
kern.1ex
%
setup@crazysubscriptsfc% fullcircle
%
draw circle[radius=.5ex];%
setup@crazysubscriptslo% lower open
%
draw (.5ex,0) arc[start angle=0, end angle=-180, radius=.5ex];%
setup@crazysubscriptsuo% upper open
%
draw (.5ex,0) arc[start angle=0, end angle=180, radius=.5ex];%
setup@crazysubscriptslc% lower closed
%
draw (-.5ex,0) -- (.5ex,0) arc[start angle=0, end angle=-180, radius=.5ex]
--cycle;%
setup@crazysubscriptsuc% upper closed
%
draw (-.5ex,0) -- (.5ex,0) arc[start angle=0, end angle=180, radius=.5ex]
--cycle;%
setup@crazysubscriptsb% boring line
%
draw (-.5ex,0) -- (.5ex,0);%
newcommandcsubs[1]
%
@ifundefinedcrazysubscripts@#1
GenericErrorUndefined crazysubscript `#1`%
%
resizebox.75ex!
expandafteruseboxcsname crazysubscripts@#1endcsname%
%
makeatother
begindocument
$A_csubsfc_csubslo_csubslc$
csubsfccsubslocsubsuocsubslccsubsuccsubsb
enddocument
TikZ in boxes! (Far inferior to picture mode unfortunately)
documentclassarticle
usepackagetikz
makeatletter
newcommandsetup@crazysubscripts[2]
%
expandafternewsaveboxcsname crazysubscripts@#1endcsname
expandaftersboxcsname crazysubscripts@#1endcsname
%
kern.1ex
begintikzpicture
path[use as bounding box] circle[radius=.5ex];
#2%
endtikzpicture%
kern.1ex
%
setup@crazysubscriptsfc% fullcircle
%
draw circle[radius=.5ex];%
setup@crazysubscriptslo% lower open
%
draw (.5ex,0) arc[start angle=0, end angle=-180, radius=.5ex];%
setup@crazysubscriptsuo% upper open
%
draw (.5ex,0) arc[start angle=0, end angle=180, radius=.5ex];%
setup@crazysubscriptslc% lower closed
%
draw (-.5ex,0) -- (.5ex,0) arc[start angle=0, end angle=-180, radius=.5ex]
--cycle;%
setup@crazysubscriptsuc% upper closed
%
draw (-.5ex,0) -- (.5ex,0) arc[start angle=0, end angle=180, radius=.5ex]
--cycle;%
setup@crazysubscriptsb% boring line
%
draw (-.5ex,0) -- (.5ex,0);%
newcommandcsubs[1]
%
@ifundefinedcrazysubscripts@#1
GenericErrorUndefined crazysubscript `#1`%
%
resizebox.75ex!
expandafteruseboxcsname crazysubscripts@#1endcsname%
%
makeatother
begindocument
$A_csubsfc_csubslo_csubslc$
csubsfccsubslocsubsuocsubslccsubsuccsubsb
enddocument
edited Nov 20 at 15:16
answered Nov 20 at 15:10
Skillmon
20.5k11840
20.5k11840
Could you elaborate how this is inferior to picture mode?
– Peter
Nov 20 at 15:34
@Peter because the other one is picture mode!
– Skillmon
Nov 20 at 15:43
2
@Peter no honestly, it's just a joke.
– Skillmon
Nov 20 at 15:44
add a comment |
Could you elaborate how this is inferior to picture mode?
– Peter
Nov 20 at 15:34
@Peter because the other one is picture mode!
– Skillmon
Nov 20 at 15:43
2
@Peter no honestly, it's just a joke.
– Skillmon
Nov 20 at 15:44
Could you elaborate how this is inferior to picture mode?
– Peter
Nov 20 at 15:34
Could you elaborate how this is inferior to picture mode?
– Peter
Nov 20 at 15:34
@Peter because the other one is picture mode!
– Skillmon
Nov 20 at 15:43
@Peter because the other one is picture mode!
– Skillmon
Nov 20 at 15:43
2
2
@Peter no honestly, it's just a joke.
– Skillmon
Nov 20 at 15:44
@Peter no honestly, it's just a joke.
– Skillmon
Nov 20 at 15:44
add a comment |
up vote
3
down vote
Just a template.
documentclass[preview,border=12pt,varwidth,12pt]standalone
usepackagetikz
defalextikz draw (0,0) circle (2pt);
defbobbytikz draw (0,0) -- (3pt,0) -- (3pt,2pt) -- cycle;
begindocument
This is an equation $F_alex^bobby+1$.
enddocument
add a comment |
up vote
3
down vote
Just a template.
documentclass[preview,border=12pt,varwidth,12pt]standalone
usepackagetikz
defalextikz draw (0,0) circle (2pt);
defbobbytikz draw (0,0) -- (3pt,0) -- (3pt,2pt) -- cycle;
begindocument
This is an equation $F_alex^bobby+1$.
enddocument
add a comment |
up vote
3
down vote
up vote
3
down vote
Just a template.
documentclass[preview,border=12pt,varwidth,12pt]standalone
usepackagetikz
defalextikz draw (0,0) circle (2pt);
defbobbytikz draw (0,0) -- (3pt,0) -- (3pt,2pt) -- cycle;
begindocument
This is an equation $F_alex^bobby+1$.
enddocument
Just a template.
documentclass[preview,border=12pt,varwidth,12pt]standalone
usepackagetikz
defalextikz draw (0,0) circle (2pt);
defbobbytikz draw (0,0) -- (3pt,0) -- (3pt,2pt) -- cycle;
begindocument
This is an equation $F_alex^bobby+1$.
enddocument
answered Nov 20 at 14:48
Artificial Stupidity
4,8191832
4,8191832
add a comment |
add a comment |
Peter is a new contributor. Be nice, and check out our Code of Conduct.
Peter is a new contributor. Be nice, and check out our Code of Conduct.
Peter is a new contributor. Be nice, and check out our Code of Conduct.
Peter is a new contributor. Be nice, and check out our Code of Conduct.
Sign up or log in
StackExchange.ready(function ()
StackExchange.helpers.onClickDraftSave('#login-link');
);
Sign up using Google
Sign up using Facebook
Sign up using Email and Password
Post as a guest
Required, but never shown
StackExchange.ready(
function ()
StackExchange.openid.initPostLogin('.new-post-login', 'https%3a%2f%2ftex.stackexchange.com%2fquestions%2f460959%2fa-macro-that-draws-a-half-disk-for-use-in-mathmode%23new-answer', 'question_page');
);
Post as a guest
Required, but never shown
Sign up or log in
StackExchange.ready(function ()
StackExchange.helpers.onClickDraftSave('#login-link');
);
Sign up using Google
Sign up using Facebook
Sign up using Email and Password
Post as a guest
Required, but never shown
Sign up or log in
StackExchange.ready(function ()
StackExchange.helpers.onClickDraftSave('#login-link');
);
Sign up using Google
Sign up using Facebook
Sign up using Email and Password
Post as a guest
Required, but never shown
Sign up or log in
StackExchange.ready(function ()
StackExchange.helpers.onClickDraftSave('#login-link');
);
Sign up using Google
Sign up using Facebook
Sign up using Email and Password
Sign up using Google
Sign up using Facebook
Sign up using Email and Password
Post as a guest
Required, but never shown
Required, but never shown
Required, but never shown
Required, but never shown
Required, but never shown
Required, but never shown
Required, but never shown
Required, but never shown
Required, but never shown
1
Maybe you find some here: ctan.org/pkg/wasysym or www.ctan.org/pkg/stix
– Sigur
Nov 20 at 14:44
Thanks! That package has the commands Leftcircle and Rightcircle, I'll try to figure out how to rotate those. Still missing the ones with just the arc, though.
– Peter
Nov 20 at 14:46
1
Check here also: mirrors.ctan.org/info/symbols/comprehensive/symbols-a4.pdf
– Sigur
Nov 20 at 14:50
Also, if using
unicode-math
: mirrors.ctan.org/macros/latex/contrib/unicode-math/…– Davislor
Nov 21 at 3:34
1
A few of those symbols are in Unicode, ◯ is U+25EF, ◠ is U+25E0 and ◡ is U+25E1.
unicode-math
and some other packages give these the aliaseslgwhtcircle
,topsemicircle
andbotsemicircle
, respectively. There are several horizontal dashes. The other two symbols do not seem to be.– Davislor
Nov 21 at 3:43