Seite 1 von 1

Tikz 3D - Lattice with balls

Verfasst: Do 23. Jan 2014, 14:58
von BlackDevil
Aloah

Erstmal das gewüschte Endergebnis:
Bild

Modifikation: Die rote Kugel ist so grau wie alle anderen und die drei Kugeln (Wagenposition, Ballgeschw. und Wagengeschw.) haben keine Beschriftung. Außerdem sind sie mit allen anderen verbunden.

Wie einfach oder schwer ist es das in Tikz umzusetzen? Möglichst mit einem 3D package... ich habe aber nur Tikz 3D Plot gefunden und ich bin mir nicht sicher ob ich es damit umsetzen kann. Ich wollte es vermeiden das in 2D zu zeichnen, bin nicht so fit im räumlichen Denken :roll:

Kann jemand helfen?

Grüße

Verfasst: Do 23. Jan 2014, 15:58
von Johannes_B
Drüben bei TeXwelt sind mehr Leute mit Tikz-Erfahrung zu finden. Dort würde eventuell sogar jemand ein Beispiel machen, um die Verwendung zu demonstrieren. Für dich bedeutet das, du hast etwas zum Testen und Nachmachen.

Verfasst: Do 23. Jan 2014, 16:00
von BlackDevil
Ich hab in der Zwischenzeit mal mein Hirn benutzt
\documentclass{scrbook}

\usetikzlibrary{calc}

\begin{document}

\begin{tikzpicture}
	\foreach \x in {0pt,0.75pt,...,3pt}
	{
		\foreach \y in {0pt,0.75pt,...,3pt}
		{
			\pgfmathsetmacro\resulta{\x + \y}
			\pgfmathsetmacro\resultb{cos(30) * \y}
			\shade[ball color=gray] (\resulta,\resultb) circle (0.25);
		}
	}
	\foreach \x/\name in {0cm/a,1cm/b,2cm/c,3cm/d}
	{	
		\shade[ball color=gray!50] (\x,-2) circle (0.25);
		\node (\name) at (\x,-2) {\name};
	}
\end{tikzpicture}
\end{document}
Das resultiert schon mal in einem der 3D Perspektive sehr ähnlichen Raster. Die Kugeln unten drunter sind nun noch nicht so perfekt angeordnet, weiß aber auch noch nicht so ganz wo ich sonst damit hin soll. Würde aber passen. Ich weiß nun nur noch nicht wie ich die Kugeln im Raster benennen soll, also Nodes hinzufügen soll. Meine bisherigen Versuche in die erste For-Schleife eine zweite Variable \name hinzuzufügen endete darin, das jede Reihe den gleichen Namen hatte...

Vielleicht macht es das nun einfacher zu helfen :) Im Zweifelsfall schau ich bei der TexWelt vorbei :)

Edit:

Ta-da 8) :D
\documentclass{scrbook}

\begin{document}
\usetikzlibrary{backgrounds}

\begin{tikzpicture}
	\foreach[count=\i] \x in {0pt,0.75pt,...,3pt}
	{
		\foreach[count=\j] \y in {0pt,0.75pt,...,3pt}
		{
			\pgfmathsetmacro\resulta{\x + \y}
			\pgfmathsetmacro\resultb{cos(30) * \y}
			\shade[ball color=gray] (\resulta,\resultb) circle (0.25);
			\node[circle] (\i\j) at (\resulta,\resultb) {\i\j};
		}
	}
	\foreach \x/\nameb in {0cm/a,1cm/b,2cm/c,3cm/d}
	{	
		\shade[ball color=gray!50] (\x,-1) circle (0.2);
		\node[circle] (\nameb) at (\x,-1) {\nameb};
	}
	\begin{pgfonlayer}{background}
	\foreach \letter in {a,b,c,d}
	{
		\foreach \x in {1,2,...,5}
		{
			\foreach \y in {1,2,...,5}
			{
				\draw[->] (\letter) -- (\x\y);
			} 
		}
	}
	\end{pgfonlayer}
\end{tikzpicture}
\end{document}