kimi和deepseek的latex tikz输出对比 - l1t1/note GitHub Wiki
提示词如下
请给出用斜二测画法画底面边长为 4,侧棱长为 6正四棱锥 S − ABCD。并画出计算该四棱锥的高的latex tikz代码,要求能直接贴到latex工具中生成图案
kimi的图完全画错了,主要是没算出正确坐标
\documentclass[tikz,border=10pt]{standalone}
\usepackage{tikz}
\begin{document}
\begin{tikzpicture}[scale=1.5]
% 定义坐标
\coordinate (A) at (0,0);
\coordinate (B) at (4,0);
\coordinate (C) at (4,4);
\coordinate (D) at (0,4);
\coordinate (S) at (2,2,3.464); % 顶点S的坐标,根据侧棱长计算得到
% 绘制底面
\draw (A) -- (B) -- (C) -- (D) -- cycle;
% 绘制侧面
\draw (A) -- (S);
\draw (B) -- (S);
\draw (C) -- (S);
\draw (D) -- (S);
% 标注点
\foreach \point/\position in {A/below,B/below,C/above,D/above,S/right}
{
\fill (\point) circle (1.5pt);
\node[\position=3pt] at (\point) {$\point$};
}
% 标注底面边长和高
\draw[|<->|,yshift=-0.5cm] (0,0) -- node[fill=white] {$4$} (4,0);
\draw[|<->|,xshift=0.5cm] (4,0) -- node[fill=white] {$4$} (4,4);
\draw[|<->|,yshift=0.5cm] (2,2) -- node[fill=white] {$h$} (2,5.464);
% 计算高的辅助线
\draw[dashed] (2,2) -- (2,5.464);
\draw[dashed] (2,2) -- (4,2);
\draw[dashed] (4,2) -- (4,5.464);
\draw[dashed] (2,5.464) -- (4,5.464);
\node[below right] at (2,2) {$O$};
\node[right] at (4,2) {$M$};
\node[right] at (4,5.464) {$N$};
% 标注侧棱长
\draw[|<->|,xshift=0.5cm] (2,2) -- node[fill=white] {$6$} (4,5.464);
\end{tikzpicture}
\end{document}
deepseek的四棱锥图画对了,但高不对
\documentclass{standalone}
\usepackage{tikz}
\begin{document}
\begin{tikzpicture}[scale=1.5]
% 绘制底面 ABCD
\coordinate (A) at (0,0);
\coordinate (B) at (4,0);
\coordinate (C) at (5,-1.5);
\coordinate (D) at (1,-1.5);
% 绘制底面
\draw[thick] (A) -- (B) -- (C) -- (D) -- cycle;
% 绘制顶点 S
\coordinate (S) at (2.5,3);
% 绘制侧棱
\draw[thick] (S) -- (A);
\draw[thick] (S) -- (B);
\draw[thick] (S) -- (C);
\draw[thick] (S) -- (D);
% 标注底面边长
\draw[<->] (0,-0.3) -- (4,-0.3) node[midway, below] {4};
\draw[<->] (4.2,0) -- (5.2,-1.5) node[midway, right] {4};
% 标注侧棱
\draw[<->] (2.5,0.2) -- (2.5,3) node[midway, right] {$h = 2\sqrt{7}$};
% 标注顶点
\node at (A) [below left] {A};
\node at (B) [below right] {B};
\node at (C) [below right] {C};
\node at (D) [below left] {D};
\node at (S) [above] {S};
\end{tikzpicture}
\end{document}
添加提示:把底面平行四边形ABCD的AD、BC长度画成2、∠ADC=45°,高通过底面中心
后,deepseek画出了需要的图形。
\documentclass{standalone}
\usepackage{tikz}
\usepackage{amsmath} % 用于数学公式
\usetikzlibrary{calc} % 支持坐标计算
\begin{document}
\begin{tikzpicture}[scale=1.5]
% 定义底面 ABCD
% AD 和 BC 的长度为 2,且 ∠ADC = 45°
\coordinate (A) at (0,0);
\coordinate (D) at (45:2); % AD 长度为 2,角度为 45°
\coordinate (B) at (4,0);
\coordinate (C) at ($(B) + (D) - (A)$); % 保证 BC 平行且等于 AD
% 绘制底面
\draw[thick] (A) -- (B) -- (C) -- (D) -- cycle;
% 计算底面中心
\coordinate (Center) at ($(A)!0.5!(C)$);
% 绘制顶点 S
\coordinate (S) at ($(Center) + (0,{2*sqrt(7)})$);
% 绘制侧棱
\draw[thick] (S) -- (A);
\draw[thick] (S) -- (B);
\draw[thick] (S) -- (C);
\draw[thick] (S) -- (D);
% 绘制高
\draw[dashed] (Center) -- (S) node[midway, right] {$h = 2\sqrt{7}$};
% 标注底面边长
\draw[<->] ($(A)!0.1!(D)$) -- ($(D)!0.1!(A)$) node[midway, above left] {2}; % AD 长度
\draw[<->] ($(B)!0.1!(C)$) -- ($(C)!0.1!(B)$) node[midway, above right] {2}; % BC 长度
% 标注顶点
\node at (A) [below left] {A};
\node at (B) [below right] {B};
\node at (C) [above right] {C};
\node at (D) [above left] {D};
\node at (S) [above] {S};
% 标注计算高的公式
\node at (6, 2) {$
\begin{aligned}
h &= \sqrt{6^2 - \left(\frac{4\sqrt{2}}{2}\right)^2} \\
&= \sqrt{36 - 8} \\
&= \sqrt{28} \\
&= 2\sqrt{7}
\end{aligned}
$};
\end{tikzpicture}
\end{document}