Take the 2-minute tour ×
TeX - LaTeX Stack Exchange is a question and answer site for users of TeX, LaTeX, ConTeXt, and related typesetting systems. It's 100% free, no registration required.

I have seen the post on the rotation of arrows and one of the post is mine. However, I don't understand how to do accomplish it myself. For instance, I am making a picture of Hohmann transfer where on the orbits I want triangular arrows pointing counter clockwise and "v" type arrow on the transfer.

This part is completed:

My goals is to put on the outer orbit 2 of the triangle arrows: one at 30 degrees and the other at 210 degrees.

The inner orbit 2 triangular arrows at 135 and 315 degrees.

For the Hohmann transfer I want to put 2 arrows: one about 40 percent of the curve and the other 70 percent. However, I also am not sure how to create an arc that goes between the two orbits and arrives at (-3,0). I tried the arc command but that was just guessing and it wasn't looking pretty.

For some reason, only one arrow shows up on the Hohmann transfer. I specified at 0.15 and 0.35.

\documentclass[11pt]{article} 
\usepackage{tikz, tikz-qtree,kurier, pgfplots} 
\usetikzlibrary{arrows, decorations.markings, calc, fadings, decorations.pathreplacing, patterns, decorations.pathmorphing, positioning}
\begin{document}
\begin{center}
   \begin{tikzpicture}[line join = round, line cap = round, >=triangle 45]
     \filldraw[orange!60!yellow!50!red, opacity = .75] (0,0) circle (.25cm);
     \draw (0,0) -- (4,0);
     \draw (0,0) -- (3,3);
     \begin{scope}[decoration = {markings, mark = at position 0.0416 with {\arrow{>}}, mark = at
     position 0.58333 with {\arrow{>}}, }]
     \draw[postaction = decorate] (0,0) circle (3cm);
   \end{scope}
   \begin{scope}[decoration = {markings, mark = at position 0.375 with {\arrow{>}}, mark = at
     position 0.875 with {\arrow{>}}, }]
     \draw[postaction = decorate] (0,0) circle (1.5cm);
   \end{scope}
     \filldraw[red] (2.12132,2.12132) circle (.075cm);
   \begin{scope}[decoration = {markings, mark = at position 1 with {\arrow{>}}, }]
     \draw[postaction = decorate] (1,0) arc (0:45:1cm) node[scale = .75, fill = white,
     inner sep = .05cm, circle] at (.5,.2) {$\alpha$};
   \end{scope}
   \begin{scope}[decoration = {markings, mark = at position 0.15 with {\arrow{>}}, mark = at
     position 0.35 with {arrow{>}}, }]
     \clip (-3,0) rectangle (1.5,3);
     \draw[postaction = decorate] (-.75,0) ellipse (2.25cm and 2.4cm);
   \end{scope}
   \draw[fill = white] (-3,0) circle (.075cm);
   \filldraw[top color = green!75!blue, bottom color = blue!40!green] (1.5,0) circle (.15cm);
   \end{tikzpicture}
\end{center}
\end{document}
share|improve this question
1  
For the second question (arrows at 15 and 210 degrees), you can use a decoration: \begin{scope}[decoration={ markings, mark=at position 0.0416 with {\arrow{>}}, mark=at position 0.58333 with {\arrow{>}}, }] \draw[postaction=decorate] (0,0) circle (3cm); \end{scope} –  Gonzalo Medina Mar 29 '13 at 3:22
    
@GonzaloMedina Can you explain the position choice values? –  dustin Mar 29 '13 at 3:33
    
@GonzaloMedina percentage of 360 I suspect now. –  dustin Mar 29 '13 at 3:49
    
@GonzaloMedina I have accomplished everything except for putting two arrows on the transfer orbit. I specified 0.15 and 0.35. I am only clipping the lower half of the ellipse as well. –  dustin Mar 29 '13 at 4:22
1  
You forgot \ before arrow here position 0.35 with {arrow{>}}, }] –  Alain Matthes Mar 29 '13 at 8:00

1 Answer 1

up vote 2 down vote accepted

You can use the ellipse radii and start stop angles to use an arc. Also I've cleaned up a bit.

\documentclass[tikz]{standalone} 
\usetikzlibrary{arrows, decorations.markings}
\begin{document}

   \begin{tikzpicture}[>=triangle 45,
                       mydeco/.style = {decoration = {markings, 
                                                       mark = at position #1 with {\arrow{>}}}
                                       }
                      ]
     \filldraw[orange!60!yellow!50!red, opacity = .75] (0,0) circle (.25cm);
     \draw (0,0) -- (4,0);
     \draw (0,0) -- (3,3);
     \draw[postaction = {mydeco=0.0416 ,decorate}, 
           postaction = {mydeco=0.58333 ,decorate}] (0,0) circle (3cm);

     \draw[postaction = {mydeco=0.375 ,decorate}, 
           postaction = {mydeco=0.875 ,decorate}] (0,0) circle (1.5cm);

     \filldraw[red] (2.12132,2.12132) circle (.075cm);
     \draw[->] (1,0) arc (0:45:1cm) 
                       node[fill = white,inner sep = .05cm] at (.5,.2) {$\scriptstyle\alpha$};


     \draw[postaction = {mydeco=0.15 ,decorate}, 
           postaction = {mydeco=0.35 ,decorate}] (0:1.5) arc (0:180:2.25cm and 2.4cm);

   \draw[fill = white] (-3,0) circle (.075cm);

   \filldraw[top color = green!75!blue, bottom color = blue!40!green] (1.5,0) circle (.15cm);

   \end{tikzpicture}

\end{document}

enter image description here

share|improve this answer

Your Answer

 
discard

By posting your answer, you agree to the privacy policy and terms of service.

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