我想使用 tikz 在 Latex 中创建以下双曲多面体。我可以创建六边形结构,但对圆弧一无所知。
编辑:我用于六边形部分的代码如下(请旋转它):
\documentclass{standalone}
\usepackage{pgf,tikz,pgfplots}
\pgfplotsset{compat=1.15}
\usepackage{mathrsfs}
\usetikzlibrary{arrows}
\pagestyle{empty}
\begin{document}
\definecolor{wrwrwr}{rgb}{0.38,0.38,0.38}
\definecolor{rvwvcq}{rgb}{0.082,0.39,0.75}
\begin{tikzpicture}[line cap=round,line join=round,>=triangle 45,x=1cm,y=1cm]
\fill[line width=2pt,color=rvwvcq,fill=rvwvcq,fill opacity=0.1] (2.08,-2.07) -- (2.1,-0.35) -- (0.6204363054907656,0.5273205080756891) -- (-0.8791273890184694,-0.31535898384862215) -- (-0.8991273890184699,-2.0353589838486217) -- (0.5804363054907642,-2.9126794919243113) -- cycle;
\draw [line width=2pt,color=rvwvcq] (2.08,-2.07)-- (2.1,-0.35);
\draw [line width=2pt,color=rvwvcq] (2.1,-0.35)-- (0.6204363054907656,0.5273205080756891);
\draw [line width=2pt,color=rvwvcq] (0.6204363054907656,0.5273205080756891)-- (-0.8791273890184694,-0.31535898384862215);
\draw [line width=2pt,color=rvwvcq] (-0.8791273890184694,-0.31535898384862215)-- (-0.8991273890184699,-2.0353589838486217);
\draw [line width=2pt,color=rvwvcq] (-0.8991273890184699,-2.0353589838486217)-- (0.5804363054907642,-2.9126794919243113);
\draw [line width=2pt,color=rvwvcq] (0.5804363054907642,-2.9126794919243113)-- (2.08,-2.07);
\draw [line width=2pt,color=wrwrwr] (-0.8791273890184694,-0.31535898384862215)-- (2.08,-2.07);
\draw [line width=2pt,color=wrwrwr] (-0.8991273890184699,-2.0353589838486217)-- (2.1,-0.35);
\draw [line width=2pt,color=wrwrwr] (0.6204363054907656,0.5273205080756891)-- (0.5804363054907642,-2.9126794919243113);
\draw [line width=2pt,color=wrwrwr] (-0.12934554176385193,0.10598076211353347)-- (-0.15934554176385285,-2.4740192378864663);
\draw [line width=2pt,color=wrwrwr] (-0.15934554176385285,-2.4740192378864663)-- (2.09,-1.21);
\draw [line width=2pt,color=wrwrwr] (2.09,-1.21)-- (-0.12934554176385193,0.10598076211353347);
\draw [line width=2pt,color=wrwrwr] (1.3602181527453827,0.08866025403784455)-- (1.330218152745382,-2.4913397459621556);
\draw [line width=2pt,color=wrwrwr] (1.3602181527453827,0.08866025403784455)-- (-0.8891273890184697,-1.1753589838486218);
\draw [line width=2pt,color=wrwrwr] (-0.8891273890184697,-1.1753589838486218)-- (1.330218152745382,-2.4913397459621556);
\begin{scriptsize}
\draw [fill=rvwvcq] (2.08,-2.07) circle (2.5pt);
\draw[color=rvwvcq] (2.1439168319762962,-1.9047033765096832) node {$A$};
\draw [fill=rvwvcq] (2.1,-0.35) circle (2.5pt);
\draw[color=rvwvcq] (2.1593385635534776,-0.1851803056539731) node {$B$};
\draw [fill=wrwrwr] (0.6204363054907656,0.5273205080756891) circle (2.5pt);
\draw[color=wrwrwr] (0.6788523321440775,0.6938583942453586) node {$C$};
\draw [fill=wrwrwr] (-0.8791273890184694,-0.31535898384862215) circle (2.5pt);
\draw[color=wrwrwr] (-0.8170556308425039,-0.14662597671101996) node {$D$};
\draw [fill=wrwrwr] (-0.8991273890184699,-2.0353589838486217) circle (2.5pt);
\draw[color=wrwrwr] (-0.8401882282082758,-1.86614904756673) node {$E$};
\draw [fill=wrwrwr] (0.5804363054907642,-2.9126794919243113) circle (2.5pt);
\draw[color=wrwrwr] (0.6402980032011244,-2.7451877474660615) node {$F$};
\draw [fill=wrwrwr] (-0.8891273890184697,-1.1753589838486218) circle (2pt);
\draw[color=wrwrwr] (-0.8247664966310945,-1.0256646766103514) node {$G$};
\draw [fill=wrwrwr] (-0.12934554176385193,0.10598076211353347) circle (2pt);
\draw[color=wrwrwr] (-0.06910164934921317,0.25433904429569276) node {$H$};
\draw [fill=wrwrwr] (1.3602181527453827,0.08866025403784455) circle (2pt);
\draw[color=wrwrwr] (1.4190954478487776,0.23891731271851147) node {$I$};
\draw [fill=wrwrwr] (2.09,-1.21) circle (2pt);
\draw[color=wrwrwr] (2.151627697764887,-1.056508139764714) node {$J$};
\draw [fill=wrwrwr] (1.330218152745382,-2.4913397459621556) circle (2pt);
\draw[color=wrwrwr] (1.3882519846944152,-2.344222726459349) node {$K$};
\draw [fill=wrwrwr] (-0.15934554176385285,-2.4740192378864663) circle (2pt);
\draw[color=wrwrwr] (-0.09994511250357566,-2.321090129093577) node {$L$};
\end{scriptsize}
\end{tikzpicture}
\end{document}
答案1
使用库的肮脏解决方案shapes
。
\documentclass[margin=3.1415mm]{standalone}
\usepackage{tikz}
\usetikzlibrary{shapes,calc}
\begin{document}
\begin{tikzpicture}[line width=1mm]
\node (A) [draw,regular polygon, regular polygon sides=6, minimum size=10cm,outer sep=0pt] {};
\draw ($(A.corner 2)!0.5!(A.corner 3)$)coordinate(2-3)--($(A.corner 4)!0.5!(A.corner 5)$)coordinate(4-5);
\draw ($(A.corner 1)!0.5!(A.corner 2)$)coordinate(1-2)--($(A.corner 5)!0.5!(A.corner 6)$)coordinate(5-6);
\draw (4-5)--($(A.corner 6)!0.5!(A.corner 1)$)coordinate(6-1);
\draw ($(A.corner 3)!0.5!(A.corner 4)$)coordinate(3-4)--(1-2);
\draw (A.corner 2)--(A.corner 5);
\draw (A.corner 1)--(A.corner 4);
\draw (A.corner 3)--(A.corner 6);
\draw (2-3)--(6-1);
\draw (3-4)--(5-6);
\node at (90:6.5)[draw,circle,minimum size=1pt](circ){};
\draw (1-2)--(circ.270);
\draw [] (A.corner 2) to [bend left=45] (circ.180);
\draw [] (A.corner 1) to [bend right=45] (circ.0);
\draw [] (2-3) to [bend left=45] (circ.170);
\draw [] (6-1) to [bend right=45] (circ.10);
\draw [] (A.corner 3) to [bend left=45] (circ.165);
\draw [] (A.corner 6) to [bend right=45] (circ.15);
\draw (3-4) to [out=170,in=-100] ($(2-3)+(-2,0)$) to [out=80,in=180] (circ.160);
\draw (5-6) to [out=10,in=-80] ($(6-1)+(2,0)$) to [out=100,in=0] (circ.20);
\draw (A.corner 4) to [out=170,in=-80] ($(A.corner 3)+(-2.5,0)$) to [out=100,in=180] (circ.160);
\draw (A.corner 5) to [out=10,in=-100] ($(A.corner 6)+(2.5,0)$) to [out=80,in=0] (circ.20);
\draw (4-5) to [out=-80,in=195] ($(A.corner 6)+(0,-5.5)$) to [out=20,in=-90] ($(A.corner 6)+(4,0)$)to [out=90,in=0](circ.20);
\end{tikzpicture}
\end{document}