6

I'm trying to do a nice sketch using tikz.

My tikz code is like this:

\documentclass[]{scrartcl}  
\usepackage{tikz}   
\usetikzlibrary{arrows}       
\begin{document}

\begin{tikzpicture}[allow upside down, scale=1]
%(0,0)(0.70,1.9)(1.41,3.6)
%\draw plot [smooth, tension=0.5] coordinates{(2.13,5.1)(2.86,6.4)(3.62,7.5)(4.42,8.4)(5.30,9.1)(6.34,9.6)(7.13,9.8)(8.42,9.9)}
\draw[red,line width=1pt] (2.13,5.1) -- (2.86,6.4) -- (3.62,7.5) -- (4.42,8.4) -- (5.30,9.1) -- (6.34,9.6) -- (7.13,9.8) -- (8.42,9.9) [smooth, tension=0.5]
node[sloped,inner sep=0cm,above,pos=.5,
anchor=south west,
minimum height=2cm,minimum width=1cm](N){};

\path (N.south west)
edge[->,blue] node[left] {$\vec{ n}$} (N.north west);

\end{tikzpicture}

\end{document}

Mostly taken from there: How to draw tangent vectors and component vectors on a curve My Problems:

  1. How do I define the point for the normal vector?
  2. I'd really like that smooth ... how?
  3. How do I add another vector (same target, but other angle)

Output of the current code:

enter image description here

What I'm trying to do:

enter image description here

5
  1. You have to put the node at appropriate places:

    \draw[red,line width=1pt,smooth, tension=1.9,samples=1000] (2.13,5.1) -- 
    node[sloped,inner sep=0cm,above,pos=.5, anchor=south west,
    minimum height=2cm,minimum width=1cm](N){}(2.86,6.4) -- (3.62,7.5) -- (4.42,8.4) --
    (5.30,9.1) -- (6.34,9.6) -- (7.13,9.8) -- (8.42,9.9)node[black,above,anchor=west] 
    {Frontwant};
    
  2. You can use rounded corners=<dimension>. Choose proper <dimension>.

  3. Using calc library, add x value to (N.east). Reverse the arrow direction:

     \path  (N.south west) edge[stealth-,red!50!black,shorten <=2pt]   ($(N.east) + 
     (0.3,0)$) node[above=1.4cm] {$\hat{S}$};
    

    Change 0.3 in ($(N.east) + (0.3,0)$) to suit the angle you want.

With all the above, and lot of additions, the full code:

\documentclass[]{scrartcl}
\usepackage{tikz}
\usetikzlibrary{arrows,calc,positioning}
\begin{document}

\begin{tikzpicture}[allow upside down, scale=1]
%(0,0)(0.70,1.9)(1.41,3.6)
%\draw plot [smooth, tension=0.5] coordinates{(2.13,5.1)(2.86,6.4)(3.62,7.5)(4.42,8.4)(5.30,9.1)(6.34,9.6)(7.13,9.8)(8.42,9.9)}
\draw [red,line width=1pt,smooth, tension=1.9,samples=1000,rounded corners=15pt] (2.13,5.1) -- node[sloped,inner sep=0cm,above,pos=.5,
anchor=south west,
minimum height=1cm,minimum width=0.5cm](N){}(2.86,6.4) -- (3.62,7.5) -- (4.42,8.4) --  (5.30,9.1) -- (6.34,9.6) -- (7.13,9.8) -- (8.42,9.9)node[black,above,anchor=west] {Frontwand}
;

%% vectors
\path (N.south west)
edge[-stealth,blue] node[below,pos=0.9] {$\vec{ n}$} (N.north west);
\path  (N.south west) edge[stealth-,red!50!black,shorten <=2pt] node[above,pos=1,text=red!50!black] {$\hat{S}$  }   ($(N.east) + (0,0.5)$);
%% horizontal lines and coordinates...
\path[draw,red!70!green] ($(N.south west) + (-2,0)$) -- ($(N.south west) + (7,0)$)node[coordinate, pos=0] (a){} node[coordinate,pos=1,label=right:{\color{black}$z$}] (b){} node[pos=.3,above=-0.1cm,black] {$A(z)$};
\path[draw,red!70!green] (a |- 2.86,6.4 ) -- (b |- 2.86,6.4)node[pos=1,anchor=west,black](c) {$z-1$}node[pos=.38,above=-0.1cm,black] {$A(z-1)$};
%% Co ordinate system
\node [right=1.5cm of b,scale=0.9] (O) {$\bigotimes$};
\draw[-latex](O.center) -- (c -| O)node[above]{$z$};
\draw[-latex](O.center) -- +(0:.7cm)node[right]{$x$};
\draw[-latex,shorten >= -5pt] (O.center) -- (O.north east) node[pos=1.8]{$y$};
\fill (N.south west) circle (2pt);
\fill (2.86,6.4) circle (2pt);

\end{tikzpicture}

\end{document}

enter image description here

While I did not optimize the code, lot of typing could have been saved. I left it more verbose.

1

Another attempt where the first 4 coordinates of OP are borrowed.

enter image description here

Code:

\documentclass[]{article}  
\usepackage{tikz}   
\usetikzlibrary{arrows,positioning}       
\begin{document}

\begin{tikzpicture}[scale=1.5]
\draw[black,thick] (-1,6.4)--(5,6.4) node[right]{$z-1$};
\draw[black,thick] (-1,5.1)--(5,5.1) node[right]{$z$};
\draw[black,thick,->] (7,5.5) node[label=below:$y$]{$\bigotimes$}-- (8,5.5)node[right]{$x$}; 
\draw[black,thick,->] (7,5.5) -- (7,6.5)node[right]{$z$}; 
\draw[black, line width=2pt] (1.7,4.1) -- (2.13,5.1) node[above right,xshift=5pt]{$A(z)$} -- (2.86,6.4) node[above right,xshift=5pt]{$A(z-1)$} -- (3.62,7.5) -- (4.42,8.4) node[above right]{Frontwand};
\draw[->,>=stealth',thick] (2.13,5.1) -- +(120:0.8cm) node[above left]{$n$};
\node[fill=black, circle, scale=0.5,pin={[pin distance=2cm,pin edge={<-,>=stealth'}]above:{$\hat S$}}] at  (2.13,5.1){};
\node[fill=black, circle, scale=0.5] at (2.86,6.4){};
\end{tikzpicture}

\end{document}

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service, privacy policy and cookie policy

Not the answer you're looking for? Browse other questions tagged or ask your own question.