How to make a hollow node with PointSymbol=o?
up vote
7
down vote
favorite
documentclass[12pt,border=5pt]{standalone}
usepackage{newcent,pstricks,pst-eucl,amsmath,amssymb}
usepackage{auto-pst-pdf}
begin{document}
begin{pspicture}
psset{PointSymbol=o}
pstGeonode[PointName=none,PointSymbol=none](2,4){A}(0,0){B}(6,0){C}
pstCircleABC[PosAngle=180]{A}{B}{C}{O}
pstGeonode[PosAngle=60](10,2){M}
pstMiddleAB[PointName=none,PointSymbol=none]{O}{M}{M'}
pstInterCC[DiameterB=pstDistAB{O}{M},PosAngleA=45,PosAngleB=-45]{O}{A}{M'}{}{D}{E}
{psset{nodesepB=-1} pstLineAB{M}{D} pstLineAB{M}{E}}
ncLine{O}{D} ncLine{O}{E}
pstInterLL[PointSymbol=none,PosAngle=50,PointNameSep=.55]{O}{M}{D}{E}{H}
pstRightAngle[RightAngleSize=.2]{D}{H}{M}
ncLine{O}{M} ncLine{D}{E}
end{pspicture}
end{document}
It produces the following.
But I want to have the following result.
pstricks pst-eucl
add a comment |
up vote
7
down vote
favorite
documentclass[12pt,border=5pt]{standalone}
usepackage{newcent,pstricks,pst-eucl,amsmath,amssymb}
usepackage{auto-pst-pdf}
begin{document}
begin{pspicture}
psset{PointSymbol=o}
pstGeonode[PointName=none,PointSymbol=none](2,4){A}(0,0){B}(6,0){C}
pstCircleABC[PosAngle=180]{A}{B}{C}{O}
pstGeonode[PosAngle=60](10,2){M}
pstMiddleAB[PointName=none,PointSymbol=none]{O}{M}{M'}
pstInterCC[DiameterB=pstDistAB{O}{M},PosAngleA=45,PosAngleB=-45]{O}{A}{M'}{}{D}{E}
{psset{nodesepB=-1} pstLineAB{M}{D} pstLineAB{M}{E}}
ncLine{O}{D} ncLine{O}{E}
pstInterLL[PointSymbol=none,PosAngle=50,PointNameSep=.55]{O}{M}{D}{E}{H}
pstRightAngle[RightAngleSize=.2]{D}{H}{M}
ncLine{O}{M} ncLine{D}{E}
end{pspicture}
end{document}
It produces the following.
But I want to have the following result.
pstricks pst-eucl
1
@ArtificialStupidity Yes, that code is very hot. :))
– chishimotoji
46 mins ago
add a comment |
up vote
7
down vote
favorite
up vote
7
down vote
favorite
documentclass[12pt,border=5pt]{standalone}
usepackage{newcent,pstricks,pst-eucl,amsmath,amssymb}
usepackage{auto-pst-pdf}
begin{document}
begin{pspicture}
psset{PointSymbol=o}
pstGeonode[PointName=none,PointSymbol=none](2,4){A}(0,0){B}(6,0){C}
pstCircleABC[PosAngle=180]{A}{B}{C}{O}
pstGeonode[PosAngle=60](10,2){M}
pstMiddleAB[PointName=none,PointSymbol=none]{O}{M}{M'}
pstInterCC[DiameterB=pstDistAB{O}{M},PosAngleA=45,PosAngleB=-45]{O}{A}{M'}{}{D}{E}
{psset{nodesepB=-1} pstLineAB{M}{D} pstLineAB{M}{E}}
ncLine{O}{D} ncLine{O}{E}
pstInterLL[PointSymbol=none,PosAngle=50,PointNameSep=.55]{O}{M}{D}{E}{H}
pstRightAngle[RightAngleSize=.2]{D}{H}{M}
ncLine{O}{M} ncLine{D}{E}
end{pspicture}
end{document}
It produces the following.
But I want to have the following result.
pstricks pst-eucl
documentclass[12pt,border=5pt]{standalone}
usepackage{newcent,pstricks,pst-eucl,amsmath,amssymb}
usepackage{auto-pst-pdf}
begin{document}
begin{pspicture}
psset{PointSymbol=o}
pstGeonode[PointName=none,PointSymbol=none](2,4){A}(0,0){B}(6,0){C}
pstCircleABC[PosAngle=180]{A}{B}{C}{O}
pstGeonode[PosAngle=60](10,2){M}
pstMiddleAB[PointName=none,PointSymbol=none]{O}{M}{M'}
pstInterCC[DiameterB=pstDistAB{O}{M},PosAngleA=45,PosAngleB=-45]{O}{A}{M'}{}{D}{E}
{psset{nodesepB=-1} pstLineAB{M}{D} pstLineAB{M}{E}}
ncLine{O}{D} ncLine{O}{E}
pstInterLL[PointSymbol=none,PosAngle=50,PointNameSep=.55]{O}{M}{D}{E}{H}
pstRightAngle[RightAngleSize=.2]{D}{H}{M}
ncLine{O}{M} ncLine{D}{E}
end{pspicture}
end{document}
It produces the following.
But I want to have the following result.
pstricks pst-eucl
pstricks pst-eucl
edited 2 hours ago
Artificial Stupidity
4,75111039
4,75111039
asked 3 hours ago
chishimotoji
543212
543212
1
@ArtificialStupidity Yes, that code is very hot. :))
– chishimotoji
46 mins ago
add a comment |
1
@ArtificialStupidity Yes, that code is very hot. :))
– chishimotoji
46 mins ago
1
1
@ArtificialStupidity Yes, that code is very hot. :))
– chishimotoji
46 mins ago
@ArtificialStupidity Yes, that code is very hot. :))
– chishimotoji
46 mins ago
add a comment |
3 Answers
3
active
oldest
votes
up vote
6
down vote
accepted
documentclass[12pt,border=15pt,pstricks]{standalone}
usepackage{pst-eucl}
begin{document}
begin{pspicture}[showgrid,PointSymbol=none](-1,-3)(11,5)
pstGeonode[PointName=none](2,4){A}(0,0){B}(6,0){C}
pstCircleABC[PosAngle=180]{A}{B}{C}{O}
pstGeonode[PosAngle=60](10,2){M}
pstMiddleAB[PointName=none]{O}{M}{M'}
pstInterCC[DiameterB=pstDistAB{O}{M},PosAngleA=45,PosAngleB=-45]{O}{A}{M'}{}{D}{E}
{psset{nodesepB=-1} pstLineAB{M}{D}pstLineAB{M}{E}}
ncLine{O}{D}ncLine{O}{E}
pstInterLL[PosAngle=50,PointNameSep=.55]{O}{M}{D}{E}{H}
pstRightAngle[RightAngleSize=.2]{D}{H}{M}
ncLine{O}{M}
ncLine{D}{E}
psset{fillcolor=white,fillstyle=solid}
pscircle(D){3pt}
pscircle(E){3pt}
pscircle(M){3pt}
end{pspicture}
end{document}
Simpler version
documentclass[12pt,border=15pt,pstricks]{standalone}
usepackage{pst-eucl,pstricks-add}
defr{pscalculate{sqrt(10)}}
begin{document}
begin{pspicture}[showgrid,PointSymbol=none](12,8)
pstGeonode[PosAngle={180,90}](4,4){O}(11,5){M}
pscircle(O){r}
psCircleTangents(M)(O){r}
pstGeonode[PosAngle={45,-45}](CircleT1){D}(CircleT2){E}
pstMiddleAB[PosAngle=-45]{D}{E}{H}
pstRightAngle[RightAngleSize=.2]{D}{H}{M}
pspolygon(O)(D)(M)(E)
psline{-o}(O)(M)
psline{o-o}(D)(E)
end{pspicture}
end{document}
1
(+1 +AC) Thank you for your answer. :))
– chishimotoji
1 hour ago
add a comment |
up vote
4
down vote
documentclass[12pt,border=15pt,pstricks]{standalone}
usepackage{pst-eucl}
begin{document}
begin{pspicture}[showgrid,PointSymbol=none,dotsize=0.2](-1,-3)(11,5)
pstGeonode[PointName={none,none,none,M}](2,4){A}(0,0){B}(6,0){C}(10,2){M}
pstCircleABC[PosAngle=180]{A}{B}{C}{O}
pstMiddleAB[PointName=none]{O}{M}{M'}
pstInterCC[DiameterB=pstDistAB{O}{M},PosAngleA=45,PosAngleB=-45]{O}{A}{M'}{}{D}{E}
ncLine{O}{M} ncline[nodesepB=-1]{M}{D} ncline[nodesepB=-1]{o-}{M}{E}
psline(D)(O)(E) ncLine{o-o}{D}{E}
pstInterLL[PosAngle=50,PointNameSep=.55]{O}{M}{D}{E}{H}
pstRightAngle[RightAngleSize=.2]{D}{H}{M}
end{pspicture}
end{document}
(+1) Wow, o-, o-o are very great. :))
– chishimotoji
1 hour ago
add a comment |
up vote
3
down vote
For comparison: a TikZ version without tkz-euclide
and the like.
documentclass[tikz,border=3.14mm]{standalone}
usetikzlibrary{calc,through}
tikzset{circle through 3 points/.style n args={3}{% https://tex.stackexchange.com/a/461180/121799
insert path={let p1=($(#1)!0.5!(#2)$),
p2=($(#1)!0.5!(#3)$),
p3=($(#1)!0.5!(#2)!1!-90:(#2)$),
p4=($(#1)!0.5!(#3)!1!90:(#3)$),
p5=(intersection of p1--p3 and p2--p4)
in },
at={(p5)},
circle through= {(#1)}
}}
begin{document}
begin{tikzpicture}[bullet/.style={circle,draw,fill=white,inner sep=1pt}]
path (2,4) coordinate(A) (0,0) coordinate(B) (6,0) coordinate(C) (10,2)
node[bullet,label=above:$M$](M){};
node[circle through 3 points={A}{B}{C},draw] (c){};
draw[shorten <=-1cm]
(tangent cs:node=c,point={(M)},solution=1) node[bullet,label=above:$D$](D){}
-- (M) ;
draw[shorten <=-1cm] (tangent cs:node=c,point={(M)},solution=2)
node[bullet,label=below:$E$] (E){} -- (M);
draw (D) -- (c.center) node[bullet,label=left:$O$] (O){} -- (E) -- (D);
draw (O) -- (M);
path (intersection cs:first line={(D)--(E)}, second line={(O)--(M)})
node[bullet,label=above right:$H$] (H){};
draw ($(H)!2mm!(M)$) coordinate(aux) -- ($(aux)!2mm!-90:(M)$)
-- ($(H)!2mm!(E)$);
end{tikzpicture}
end{document}
add a comment |
3 Answers
3
active
oldest
votes
3 Answers
3
active
oldest
votes
active
oldest
votes
active
oldest
votes
up vote
6
down vote
accepted
documentclass[12pt,border=15pt,pstricks]{standalone}
usepackage{pst-eucl}
begin{document}
begin{pspicture}[showgrid,PointSymbol=none](-1,-3)(11,5)
pstGeonode[PointName=none](2,4){A}(0,0){B}(6,0){C}
pstCircleABC[PosAngle=180]{A}{B}{C}{O}
pstGeonode[PosAngle=60](10,2){M}
pstMiddleAB[PointName=none]{O}{M}{M'}
pstInterCC[DiameterB=pstDistAB{O}{M},PosAngleA=45,PosAngleB=-45]{O}{A}{M'}{}{D}{E}
{psset{nodesepB=-1} pstLineAB{M}{D}pstLineAB{M}{E}}
ncLine{O}{D}ncLine{O}{E}
pstInterLL[PosAngle=50,PointNameSep=.55]{O}{M}{D}{E}{H}
pstRightAngle[RightAngleSize=.2]{D}{H}{M}
ncLine{O}{M}
ncLine{D}{E}
psset{fillcolor=white,fillstyle=solid}
pscircle(D){3pt}
pscircle(E){3pt}
pscircle(M){3pt}
end{pspicture}
end{document}
Simpler version
documentclass[12pt,border=15pt,pstricks]{standalone}
usepackage{pst-eucl,pstricks-add}
defr{pscalculate{sqrt(10)}}
begin{document}
begin{pspicture}[showgrid,PointSymbol=none](12,8)
pstGeonode[PosAngle={180,90}](4,4){O}(11,5){M}
pscircle(O){r}
psCircleTangents(M)(O){r}
pstGeonode[PosAngle={45,-45}](CircleT1){D}(CircleT2){E}
pstMiddleAB[PosAngle=-45]{D}{E}{H}
pstRightAngle[RightAngleSize=.2]{D}{H}{M}
pspolygon(O)(D)(M)(E)
psline{-o}(O)(M)
psline{o-o}(D)(E)
end{pspicture}
end{document}
1
(+1 +AC) Thank you for your answer. :))
– chishimotoji
1 hour ago
add a comment |
up vote
6
down vote
accepted
documentclass[12pt,border=15pt,pstricks]{standalone}
usepackage{pst-eucl}
begin{document}
begin{pspicture}[showgrid,PointSymbol=none](-1,-3)(11,5)
pstGeonode[PointName=none](2,4){A}(0,0){B}(6,0){C}
pstCircleABC[PosAngle=180]{A}{B}{C}{O}
pstGeonode[PosAngle=60](10,2){M}
pstMiddleAB[PointName=none]{O}{M}{M'}
pstInterCC[DiameterB=pstDistAB{O}{M},PosAngleA=45,PosAngleB=-45]{O}{A}{M'}{}{D}{E}
{psset{nodesepB=-1} pstLineAB{M}{D}pstLineAB{M}{E}}
ncLine{O}{D}ncLine{O}{E}
pstInterLL[PosAngle=50,PointNameSep=.55]{O}{M}{D}{E}{H}
pstRightAngle[RightAngleSize=.2]{D}{H}{M}
ncLine{O}{M}
ncLine{D}{E}
psset{fillcolor=white,fillstyle=solid}
pscircle(D){3pt}
pscircle(E){3pt}
pscircle(M){3pt}
end{pspicture}
end{document}
Simpler version
documentclass[12pt,border=15pt,pstricks]{standalone}
usepackage{pst-eucl,pstricks-add}
defr{pscalculate{sqrt(10)}}
begin{document}
begin{pspicture}[showgrid,PointSymbol=none](12,8)
pstGeonode[PosAngle={180,90}](4,4){O}(11,5){M}
pscircle(O){r}
psCircleTangents(M)(O){r}
pstGeonode[PosAngle={45,-45}](CircleT1){D}(CircleT2){E}
pstMiddleAB[PosAngle=-45]{D}{E}{H}
pstRightAngle[RightAngleSize=.2]{D}{H}{M}
pspolygon(O)(D)(M)(E)
psline{-o}(O)(M)
psline{o-o}(D)(E)
end{pspicture}
end{document}
1
(+1 +AC) Thank you for your answer. :))
– chishimotoji
1 hour ago
add a comment |
up vote
6
down vote
accepted
up vote
6
down vote
accepted
documentclass[12pt,border=15pt,pstricks]{standalone}
usepackage{pst-eucl}
begin{document}
begin{pspicture}[showgrid,PointSymbol=none](-1,-3)(11,5)
pstGeonode[PointName=none](2,4){A}(0,0){B}(6,0){C}
pstCircleABC[PosAngle=180]{A}{B}{C}{O}
pstGeonode[PosAngle=60](10,2){M}
pstMiddleAB[PointName=none]{O}{M}{M'}
pstInterCC[DiameterB=pstDistAB{O}{M},PosAngleA=45,PosAngleB=-45]{O}{A}{M'}{}{D}{E}
{psset{nodesepB=-1} pstLineAB{M}{D}pstLineAB{M}{E}}
ncLine{O}{D}ncLine{O}{E}
pstInterLL[PosAngle=50,PointNameSep=.55]{O}{M}{D}{E}{H}
pstRightAngle[RightAngleSize=.2]{D}{H}{M}
ncLine{O}{M}
ncLine{D}{E}
psset{fillcolor=white,fillstyle=solid}
pscircle(D){3pt}
pscircle(E){3pt}
pscircle(M){3pt}
end{pspicture}
end{document}
Simpler version
documentclass[12pt,border=15pt,pstricks]{standalone}
usepackage{pst-eucl,pstricks-add}
defr{pscalculate{sqrt(10)}}
begin{document}
begin{pspicture}[showgrid,PointSymbol=none](12,8)
pstGeonode[PosAngle={180,90}](4,4){O}(11,5){M}
pscircle(O){r}
psCircleTangents(M)(O){r}
pstGeonode[PosAngle={45,-45}](CircleT1){D}(CircleT2){E}
pstMiddleAB[PosAngle=-45]{D}{E}{H}
pstRightAngle[RightAngleSize=.2]{D}{H}{M}
pspolygon(O)(D)(M)(E)
psline{-o}(O)(M)
psline{o-o}(D)(E)
end{pspicture}
end{document}
documentclass[12pt,border=15pt,pstricks]{standalone}
usepackage{pst-eucl}
begin{document}
begin{pspicture}[showgrid,PointSymbol=none](-1,-3)(11,5)
pstGeonode[PointName=none](2,4){A}(0,0){B}(6,0){C}
pstCircleABC[PosAngle=180]{A}{B}{C}{O}
pstGeonode[PosAngle=60](10,2){M}
pstMiddleAB[PointName=none]{O}{M}{M'}
pstInterCC[DiameterB=pstDistAB{O}{M},PosAngleA=45,PosAngleB=-45]{O}{A}{M'}{}{D}{E}
{psset{nodesepB=-1} pstLineAB{M}{D}pstLineAB{M}{E}}
ncLine{O}{D}ncLine{O}{E}
pstInterLL[PosAngle=50,PointNameSep=.55]{O}{M}{D}{E}{H}
pstRightAngle[RightAngleSize=.2]{D}{H}{M}
ncLine{O}{M}
ncLine{D}{E}
psset{fillcolor=white,fillstyle=solid}
pscircle(D){3pt}
pscircle(E){3pt}
pscircle(M){3pt}
end{pspicture}
end{document}
Simpler version
documentclass[12pt,border=15pt,pstricks]{standalone}
usepackage{pst-eucl,pstricks-add}
defr{pscalculate{sqrt(10)}}
begin{document}
begin{pspicture}[showgrid,PointSymbol=none](12,8)
pstGeonode[PosAngle={180,90}](4,4){O}(11,5){M}
pscircle(O){r}
psCircleTangents(M)(O){r}
pstGeonode[PosAngle={45,-45}](CircleT1){D}(CircleT2){E}
pstMiddleAB[PosAngle=-45]{D}{E}{H}
pstRightAngle[RightAngleSize=.2]{D}{H}{M}
pspolygon(O)(D)(M)(E)
psline{-o}(O)(M)
psline{o-o}(D)(E)
end{pspicture}
end{document}
edited 55 mins ago
answered 3 hours ago
Artificial Stupidity
4,75111039
4,75111039
1
(+1 +AC) Thank you for your answer. :))
– chishimotoji
1 hour ago
add a comment |
1
(+1 +AC) Thank you for your answer. :))
– chishimotoji
1 hour ago
1
1
(+1 +AC) Thank you for your answer. :))
– chishimotoji
1 hour ago
(+1 +AC) Thank you for your answer. :))
– chishimotoji
1 hour ago
add a comment |
up vote
4
down vote
documentclass[12pt,border=15pt,pstricks]{standalone}
usepackage{pst-eucl}
begin{document}
begin{pspicture}[showgrid,PointSymbol=none,dotsize=0.2](-1,-3)(11,5)
pstGeonode[PointName={none,none,none,M}](2,4){A}(0,0){B}(6,0){C}(10,2){M}
pstCircleABC[PosAngle=180]{A}{B}{C}{O}
pstMiddleAB[PointName=none]{O}{M}{M'}
pstInterCC[DiameterB=pstDistAB{O}{M},PosAngleA=45,PosAngleB=-45]{O}{A}{M'}{}{D}{E}
ncLine{O}{M} ncline[nodesepB=-1]{M}{D} ncline[nodesepB=-1]{o-}{M}{E}
psline(D)(O)(E) ncLine{o-o}{D}{E}
pstInterLL[PosAngle=50,PointNameSep=.55]{O}{M}{D}{E}{H}
pstRightAngle[RightAngleSize=.2]{D}{H}{M}
end{pspicture}
end{document}
(+1) Wow, o-, o-o are very great. :))
– chishimotoji
1 hour ago
add a comment |
up vote
4
down vote
documentclass[12pt,border=15pt,pstricks]{standalone}
usepackage{pst-eucl}
begin{document}
begin{pspicture}[showgrid,PointSymbol=none,dotsize=0.2](-1,-3)(11,5)
pstGeonode[PointName={none,none,none,M}](2,4){A}(0,0){B}(6,0){C}(10,2){M}
pstCircleABC[PosAngle=180]{A}{B}{C}{O}
pstMiddleAB[PointName=none]{O}{M}{M'}
pstInterCC[DiameterB=pstDistAB{O}{M},PosAngleA=45,PosAngleB=-45]{O}{A}{M'}{}{D}{E}
ncLine{O}{M} ncline[nodesepB=-1]{M}{D} ncline[nodesepB=-1]{o-}{M}{E}
psline(D)(O)(E) ncLine{o-o}{D}{E}
pstInterLL[PosAngle=50,PointNameSep=.55]{O}{M}{D}{E}{H}
pstRightAngle[RightAngleSize=.2]{D}{H}{M}
end{pspicture}
end{document}
(+1) Wow, o-, o-o are very great. :))
– chishimotoji
1 hour ago
add a comment |
up vote
4
down vote
up vote
4
down vote
documentclass[12pt,border=15pt,pstricks]{standalone}
usepackage{pst-eucl}
begin{document}
begin{pspicture}[showgrid,PointSymbol=none,dotsize=0.2](-1,-3)(11,5)
pstGeonode[PointName={none,none,none,M}](2,4){A}(0,0){B}(6,0){C}(10,2){M}
pstCircleABC[PosAngle=180]{A}{B}{C}{O}
pstMiddleAB[PointName=none]{O}{M}{M'}
pstInterCC[DiameterB=pstDistAB{O}{M},PosAngleA=45,PosAngleB=-45]{O}{A}{M'}{}{D}{E}
ncLine{O}{M} ncline[nodesepB=-1]{M}{D} ncline[nodesepB=-1]{o-}{M}{E}
psline(D)(O)(E) ncLine{o-o}{D}{E}
pstInterLL[PosAngle=50,PointNameSep=.55]{O}{M}{D}{E}{H}
pstRightAngle[RightAngleSize=.2]{D}{H}{M}
end{pspicture}
end{document}
documentclass[12pt,border=15pt,pstricks]{standalone}
usepackage{pst-eucl}
begin{document}
begin{pspicture}[showgrid,PointSymbol=none,dotsize=0.2](-1,-3)(11,5)
pstGeonode[PointName={none,none,none,M}](2,4){A}(0,0){B}(6,0){C}(10,2){M}
pstCircleABC[PosAngle=180]{A}{B}{C}{O}
pstMiddleAB[PointName=none]{O}{M}{M'}
pstInterCC[DiameterB=pstDistAB{O}{M},PosAngleA=45,PosAngleB=-45]{O}{A}{M'}{}{D}{E}
ncLine{O}{M} ncline[nodesepB=-1]{M}{D} ncline[nodesepB=-1]{o-}{M}{E}
psline(D)(O)(E) ncLine{o-o}{D}{E}
pstInterLL[PosAngle=50,PointNameSep=.55]{O}{M}{D}{E}{H}
pstRightAngle[RightAngleSize=.2]{D}{H}{M}
end{pspicture}
end{document}
answered 1 hour ago
Herbert
267k23406716
267k23406716
(+1) Wow, o-, o-o are very great. :))
– chishimotoji
1 hour ago
add a comment |
(+1) Wow, o-, o-o are very great. :))
– chishimotoji
1 hour ago
(+1) Wow, o-, o-o are very great. :))
– chishimotoji
1 hour ago
(+1) Wow, o-, o-o are very great. :))
– chishimotoji
1 hour ago
add a comment |
up vote
3
down vote
For comparison: a TikZ version without tkz-euclide
and the like.
documentclass[tikz,border=3.14mm]{standalone}
usetikzlibrary{calc,through}
tikzset{circle through 3 points/.style n args={3}{% https://tex.stackexchange.com/a/461180/121799
insert path={let p1=($(#1)!0.5!(#2)$),
p2=($(#1)!0.5!(#3)$),
p3=($(#1)!0.5!(#2)!1!-90:(#2)$),
p4=($(#1)!0.5!(#3)!1!90:(#3)$),
p5=(intersection of p1--p3 and p2--p4)
in },
at={(p5)},
circle through= {(#1)}
}}
begin{document}
begin{tikzpicture}[bullet/.style={circle,draw,fill=white,inner sep=1pt}]
path (2,4) coordinate(A) (0,0) coordinate(B) (6,0) coordinate(C) (10,2)
node[bullet,label=above:$M$](M){};
node[circle through 3 points={A}{B}{C},draw] (c){};
draw[shorten <=-1cm]
(tangent cs:node=c,point={(M)},solution=1) node[bullet,label=above:$D$](D){}
-- (M) ;
draw[shorten <=-1cm] (tangent cs:node=c,point={(M)},solution=2)
node[bullet,label=below:$E$] (E){} -- (M);
draw (D) -- (c.center) node[bullet,label=left:$O$] (O){} -- (E) -- (D);
draw (O) -- (M);
path (intersection cs:first line={(D)--(E)}, second line={(O)--(M)})
node[bullet,label=above right:$H$] (H){};
draw ($(H)!2mm!(M)$) coordinate(aux) -- ($(aux)!2mm!-90:(M)$)
-- ($(H)!2mm!(E)$);
end{tikzpicture}
end{document}
add a comment |
up vote
3
down vote
For comparison: a TikZ version without tkz-euclide
and the like.
documentclass[tikz,border=3.14mm]{standalone}
usetikzlibrary{calc,through}
tikzset{circle through 3 points/.style n args={3}{% https://tex.stackexchange.com/a/461180/121799
insert path={let p1=($(#1)!0.5!(#2)$),
p2=($(#1)!0.5!(#3)$),
p3=($(#1)!0.5!(#2)!1!-90:(#2)$),
p4=($(#1)!0.5!(#3)!1!90:(#3)$),
p5=(intersection of p1--p3 and p2--p4)
in },
at={(p5)},
circle through= {(#1)}
}}
begin{document}
begin{tikzpicture}[bullet/.style={circle,draw,fill=white,inner sep=1pt}]
path (2,4) coordinate(A) (0,0) coordinate(B) (6,0) coordinate(C) (10,2)
node[bullet,label=above:$M$](M){};
node[circle through 3 points={A}{B}{C},draw] (c){};
draw[shorten <=-1cm]
(tangent cs:node=c,point={(M)},solution=1) node[bullet,label=above:$D$](D){}
-- (M) ;
draw[shorten <=-1cm] (tangent cs:node=c,point={(M)},solution=2)
node[bullet,label=below:$E$] (E){} -- (M);
draw (D) -- (c.center) node[bullet,label=left:$O$] (O){} -- (E) -- (D);
draw (O) -- (M);
path (intersection cs:first line={(D)--(E)}, second line={(O)--(M)})
node[bullet,label=above right:$H$] (H){};
draw ($(H)!2mm!(M)$) coordinate(aux) -- ($(aux)!2mm!-90:(M)$)
-- ($(H)!2mm!(E)$);
end{tikzpicture}
end{document}
add a comment |
up vote
3
down vote
up vote
3
down vote
For comparison: a TikZ version without tkz-euclide
and the like.
documentclass[tikz,border=3.14mm]{standalone}
usetikzlibrary{calc,through}
tikzset{circle through 3 points/.style n args={3}{% https://tex.stackexchange.com/a/461180/121799
insert path={let p1=($(#1)!0.5!(#2)$),
p2=($(#1)!0.5!(#3)$),
p3=($(#1)!0.5!(#2)!1!-90:(#2)$),
p4=($(#1)!0.5!(#3)!1!90:(#3)$),
p5=(intersection of p1--p3 and p2--p4)
in },
at={(p5)},
circle through= {(#1)}
}}
begin{document}
begin{tikzpicture}[bullet/.style={circle,draw,fill=white,inner sep=1pt}]
path (2,4) coordinate(A) (0,0) coordinate(B) (6,0) coordinate(C) (10,2)
node[bullet,label=above:$M$](M){};
node[circle through 3 points={A}{B}{C},draw] (c){};
draw[shorten <=-1cm]
(tangent cs:node=c,point={(M)},solution=1) node[bullet,label=above:$D$](D){}
-- (M) ;
draw[shorten <=-1cm] (tangent cs:node=c,point={(M)},solution=2)
node[bullet,label=below:$E$] (E){} -- (M);
draw (D) -- (c.center) node[bullet,label=left:$O$] (O){} -- (E) -- (D);
draw (O) -- (M);
path (intersection cs:first line={(D)--(E)}, second line={(O)--(M)})
node[bullet,label=above right:$H$] (H){};
draw ($(H)!2mm!(M)$) coordinate(aux) -- ($(aux)!2mm!-90:(M)$)
-- ($(H)!2mm!(E)$);
end{tikzpicture}
end{document}
For comparison: a TikZ version without tkz-euclide
and the like.
documentclass[tikz,border=3.14mm]{standalone}
usetikzlibrary{calc,through}
tikzset{circle through 3 points/.style n args={3}{% https://tex.stackexchange.com/a/461180/121799
insert path={let p1=($(#1)!0.5!(#2)$),
p2=($(#1)!0.5!(#3)$),
p3=($(#1)!0.5!(#2)!1!-90:(#2)$),
p4=($(#1)!0.5!(#3)!1!90:(#3)$),
p5=(intersection of p1--p3 and p2--p4)
in },
at={(p5)},
circle through= {(#1)}
}}
begin{document}
begin{tikzpicture}[bullet/.style={circle,draw,fill=white,inner sep=1pt}]
path (2,4) coordinate(A) (0,0) coordinate(B) (6,0) coordinate(C) (10,2)
node[bullet,label=above:$M$](M){};
node[circle through 3 points={A}{B}{C},draw] (c){};
draw[shorten <=-1cm]
(tangent cs:node=c,point={(M)},solution=1) node[bullet,label=above:$D$](D){}
-- (M) ;
draw[shorten <=-1cm] (tangent cs:node=c,point={(M)},solution=2)
node[bullet,label=below:$E$] (E){} -- (M);
draw (D) -- (c.center) node[bullet,label=left:$O$] (O){} -- (E) -- (D);
draw (O) -- (M);
path (intersection cs:first line={(D)--(E)}, second line={(O)--(M)})
node[bullet,label=above right:$H$] (H){};
draw ($(H)!2mm!(M)$) coordinate(aux) -- ($(aux)!2mm!-90:(M)$)
-- ($(H)!2mm!(E)$);
end{tikzpicture}
end{document}
answered 2 hours ago
marmot
82.3k492175
82.3k492175
add a comment |
add a comment |
Thanks for contributing an answer to TeX - LaTeX Stack Exchange!
- Please be sure to answer the question. Provide details and share your research!
But avoid …
- Asking for help, clarification, or responding to other answers.
- Making statements based on opinion; back them up with references or personal experience.
To learn more, see our tips on writing great answers.
Some of your past answers have not been well-received, and you're in danger of being blocked from answering.
Please pay close attention to the following guidance:
- Please be sure to answer the question. Provide details and share your research!
But avoid …
- Asking for help, clarification, or responding to other answers.
- Making statements based on opinion; back them up with references or personal experience.
To learn more, see our tips on writing great answers.
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%2f464337%2fhow-to-make-a-hollow-node-with-pointsymbol-o%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
@ArtificialStupidity Yes, that code is very hot. :))
– chishimotoji
46 mins ago