问题

问题

以下代码是我尝试查找MN这样的AM=CN=BC

\documentclass[pstricks,border=12pt]{standalone}
\usepackage{pst-eucl,pst-calculate}
\begin{document}
\def\x{\pscalculate{6-3.3541}}
\begin{pspicture}[showgrid](-1,-1)(8,8)
\pstGeonode[PosAngle={180,90,0,-90}](1,2){B}(2.5,5){C}(6,2){A}(\x,2){M}
\pspolygon(B)(C)(A)
\pstRotation[PosAngle=90,RotAngle=75.9638]{C}{B}[N]

\psGetDistanceAB[xShift=-8,yShift=4](B)(C){M}
\psGetAngleABC[AngleValue=true,MarkAngleRadius=.5,LabelSep=0.5,%
ShowWedge=false,xShift=-5,yShift=7,arrows=->](B)(C)(A){}

\end{pspicture}
\end{document}

在此处输入图片描述

不过,我尽量不使用\psGetDistanceAB\psGetAngleABC

问题

如何仅使用圆规和直尺来获得M这样N的结果?AM=CN=BC

答案1

\documentclass[pstricks,border=12pt]{standalone}
\usepackage{pst-eucl,pst-calculate,textcomp}
\begin{document}
    \begin{pspicture}[showgrid](-1,-1)(8,8)
    \pstTriangle[PosAngle={180,90,0}](1,2){B}(2.5,5){C}(6,2){A}
    \pstInterLC[PointSymbolB=none,PointName=none]{A}{C}{C}{B}{N}{N0}\uput[0](N){N}
    \pstInterLC[PointSymbolB=none,PointName=none,
                Radius=\pstDistCalc{sqrt((2.5-1)^2+(5-2)^2)}]{B}{A}{A}{}{M}{M0}\uput[-90](M){M}
    \psarc[origin={C}]{->}(C){0.5}{(B)}{(N)}\uput{5mm}[-10](C){75.9636\textdegree}
    \end{pspicture}
\end{document}

在此处输入图片描述

答案2

代码越简单,挑战性就越大。

\documentclass[pstricks,12pt]{standalone}
\usepackage{pst-eucl}

\begin{document}
\begin{pspicture}[PointSymbolB=none,PointNameB=](7,5)
\pstTriangle(1,1){B}(2.5,4){C}(6,1){A}
\pstTranslation[PointName=none,PointSymbol=none]{B}{A}{C}[C']
\pstInterLC[PosAngle=45]{A}{C}{C}{B}{N}{x}
\pstInterLC[PosAngle=-90]{B}{A}{A}{C'}{M}{y}
\pstMarkAngle[MarkAngleRadius=1.1,LabelSep=.8,arrows=->]{B}{C}{A}{\scriptsize$75.96^\circ$}
\end{pspicture}
\end{document}

在此处输入图片描述

笔记

PointNameA并且PointNameB无法分配,none只能为空。这看起来像是一个错误。

答案3

另一个 tikz 版本:

\documentclass[tikz,border=12pt]{standalone}
\usetikzlibrary{calc,bending,arrows.meta,quotes,angles}
\usepackage{textcomp}
\begin{document}

\begin{tikzpicture}[dot/.style={fill,circle,inner sep=1.2pt},>= Stealth]\footnotesize
\pgfmathsetmacro\BC{sqrt(1.5*1.5+3*3)}
\pgfmathsetmacro\AC{sqrt(3.5*3.5+3*3)}
\draw (1,2)coordinate[dot,label=left:$B$](b)--(2.5,5)coordinate[dot,label=above:$C$](c)--(6,2)coordinate[dot,label=right:$A$](a)--cycle;
\node at ([xshift=-\BC cm]a) [dot,label=below:$M$] {};
\node at ($(c)!\BC/\AC!(a)$) [dot,label=right:$N$] {};
\pic["75.96\textdegree",draw,->,angle eccentricity=.7,angle radius=1cm] {angle=b--c--a};
\end{tikzpicture}

\end{document}

在此处输入图片描述

答案4

您无需自己计算任何内容的版本。所有距离和角度都可以用 Ti 非常方便地计算Z。更详细地说,以下代码计算BC\n1)之间的距离以及所有边的“斜率”,然后使用极坐标设置M \n1远离A方向BN \n1远离C方向A。在的角度B也是通过计算tikz并通过插入的\pgfmathprintnumber,如果需要,您可以指定位数等等。

\documentclass[tikz,border=3.14mm]{standalone}
\usetikzlibrary{calc,angles,quotes}
\begin{document}
\begin{tikzpicture}
\draw (1,2) coordinate[label=below:$B$] (B) -- 
(2.5,5) coordinate[label=above:$C$] (C) -- 
(6,2) coordinate[label=right:$A$] (A) -- cycle;
\path let \p1=($(B)-(C)$),\p2=($(B)-(A)$),\p3=($(A)-(C)$),
\n1={veclen(\x1,\y1)},\n2={atan2(\y2,\x2)},\n3={atan2(\y3,\x3)},
\n4={\n3-atan2(\y1,\x1)} in 
($(A)+(\n2:\n1)$) coordinate[label=below:$M$] (M)
($(C)+(\n3:\n1)$) coordinate[label=above right:$N$] (N)
pic["$\pgfmathparse{\n4}\pgfmathprintnumber{\pgfmathresult}^\circ$",draw,-latex,angle
eccentricity=1.3,angle radius=1cm] 
{angle=B--C--A};
\foreach \X in {A,B,C,M,N}
{\fill (\X) circle (1pt);}
\end{tikzpicture}
\end{document}

在此处输入图片描述

相关内容