如果不使用交点法,我们能找到以下矢量分量吗?

如果不使用交点法,我们能找到以下矢量分量吗?

给定两个向量,即绿色向量和红色向量。目标是找到蓝色向量,使得绿色向量和蓝色向量的合向量平行于红色向量,并且与红色向量的方向相同。

在此处输入图片描述

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

\begin{document}

\begin{pspicture}[showgrid=true](4,3)
\pnode(0,0){O}
\pnode(4,3){A}
\pnode(0,2){B}
\pnode(A|B){C}
\psset{arrows=->}
\psline[linecolor=red](A)
\psline[linecolor=green](B)
\pstInterLL[PointName=none,PointSymbol=none]{B}{C}{O}{A}{D}
\psline[linecolor=blue](D|O)
\psline[linestyle=dashed,linecolor=gray,arrows=-](B)(D)(D|O)
\end{pspicture}

\end{document}

如何以最简单的方式获得蓝色而不使用交集?

我想应用所讨论的方法绘制张力矢量及其水平分量,如下图所示(但此类矢量尚未实现):

在此处输入图片描述

答案1

\documentclass[pstricks,border=12pt]{standalone}
\usepackage{pst-node}
\begin{document}

\begin{pspicture}[showgrid=bottom](4,3)
\pnode(4,3){A}\pnode(0,2){B}
\psline[linecolor=red]{->}(A)
\psline[linecolor=green]{->}(B)
\pnode(!\psGetNodeCenter{A} 
        \psGetNodeCenter{B} 
        B.y A.y div A.x mul 0 ){D}
\psline[linestyle=dashed,linecolor=gray](B)(D|B)(D)
\psline[linecolor=blue]{->}(O)(D)
\end{pspicture}

\end{document}

在此处输入图片描述

以下适用于 Beta 版本pst-nodehttp://texnik.dante.de/tex/generic/pst-node/pst-node.tex)节点的坐标为N-<name>.xN-<name>.y。也许我会把它改成<name>.x<name>.y

\documentclass[pstricks,border=12pt]{standalone}
\usepackage{pst-node}
\begin{document}

\begin{pspicture}[showgrid=bottom](4,3)
\pnode(4,3){A}
\pnode(0,2){B}
\psline[linecolor=red]{->}(A)
\psline[linecolor=green]{->}(B)
\pnode(!N-B.y N-A.y div N-A.x mul 0 ){D}
\psline[linestyle=dashed,linecolor=gray](B)(D|B)(D)
\psline[linecolor=blue]{->}(O)(D)
\end{pspicture}

\end{document}

答案2

以下是 TikZ 的解决方案:

\documentclass[margin=2mm]{standalone}
\usepackage{tikz}
\usetikzlibrary{calc}
\begin{document}
\begin{tikzpicture}
  \draw[green] (0,0) -- (0,2) coordinate (b);
  \draw[red] (0,0) -- (4,3) coordinate (a);
  \draw[blue] let \p1=(a), \p2=(b) in (0,0) -- (\y2/\y1*\x1,0);
\end{tikzpicture}
\end{document}

在此处输入图片描述

答案3

我补充一下 Herbert Voss 的回答。如果矢量尾不在原点,则计算必须包括尾矢量,如下所示。

在此处输入图片描述

借助最新的 PSTricks 核心,

\documentclass[pstricks,border=12pt]{standalone}
\usepackage{pst-node}
\begin{document}

\begin{pspicture}[showgrid=bottom](-1,-2)(4,3)
\pnode(-1,-2){O}
\pnode(4,3){A}
\pnode(0,2){B}
\psline[linecolor=red]{->}(O)(A)
\psline[linecolor=green]{->}(O)(B)
\pnode(!N-B.y N-O.y sub N-A.y N-O.y sub div N-A.x N-O.x sub mul N-O.x add 0){C}
\psline[linestyle=dashed,linecolor=gray](B)(C|B)(C)
\psline[linecolor=blue]{->}(O)(C)
\end{pspicture}

\end{document}

相关内容