-1

I am preparing thesis about Euler Lines and Schiffler Point; at the end of thesis I need to give example and I chose 75-60-45 triangle. First I need to draw triangle and I must put incentre(I)and draw of course. Then draw Euler lines for each triangles ABI, BIC, CIA and ABC. They are gonne concur at the point which we call Schiffler Point. How can I do that? Thanks for help.

It must looks like; enter image description here

Note: 1=Euler(CIB) etc

Torbjørn T.
  • 206,688
  • 4
    Search for tkz-euclide it has a French documentation but the examples are pretty self explanatory – percusse Jan 03 '16 at 23:40
  • 2
    If it's just this one figure ("at the end of the thesis") you can include it as a graphic (png or jpg or pdf). That will be faster than learning TikZ. – Ethan Bolker Jan 03 '16 at 23:47
  • I suppose, that after writing your thesis, you should have knowledge, how to draw this image by hand. Draw it on such a way, calculate coordinates of lines and triangles, then those coordinates transfer to the LaTeX. For example, using TikZ package use this coordinates for example \draw (coordinate 1) -- (coordinate 2); After this you can search/ask for more sophisticated way, how to draw this picture. In this probably will help pseudo code of coordinates calculation. – Zarko Jan 04 '16 at 00:59
  • It looks like you've got two separate accounts, which means you cannot edit your original post or leave comments. The Stack Exchange staff can merge them together for you. – Werner Jan 04 '16 at 01:22
  • 1
    Geogebra can do all these calculations/constructions interactively and can export TikZ code. It's not great TikZ code, but good enough that you can clean it up without knowing too much about TikZ. – Andrew Kepert Jan 04 '16 at 07:13
  • Geogebra is best choice, imho. It can export to PDF and PDF can be simply imported to TeX. No Tikz is needed, no manual coordinate calculations, no programming the image. You can simply create the image in the interactive GUI. – wipet Jan 04 '16 at 12:54

3 Answers3

5

A pstricks solution (you can compile it with pdf-latex if it is launched with the --enable-write18 switch (MiKTeX) or -shell-escape (TeX Live, MacTeX):

\documentclass[12pt, x11names]{article}%

\usepackage{pstricks-add}
\usepackage{pst-eucl}
\usepackage{auto-pst-pdf}

\begin{document}

\psset{unit=10,dotsize = 3pt}
\begin{pspicture}(-3,-1.5)(3,2.5)
    \pstGeonode[PosAngle=180,linecolor=LightSteelBlue3](0,0){A}%(1;45){R}
    \pstGeonode[linecolor=LightSteelBlue3](1,0){B}
    {\psset{PointSymbol=none, PointName=none}
        \pstRotation[RotAngle=45]{A}{B}[R]
        \pstRotation[RotAngle=-60]{B}{A}[T] }
    \pstInterLL[PosAngle=90, linecolor=LightSteelBlue3]{A}{R}{B}{T}{C}
    \pspolygon[linecolor=LightSteelBlue3](A)(B)(C)
    %% Bissectors
    {\psset{PointSymbol=none, PointName=none, linestyle=none}
        \pstBissectBAC{C}{B}{A}{B1}
        \pstBissectBAC{A}{C}{B}{C1}}
    \pstInterLL{B}{B1}{C}{C1}{I}
    \psline(A)(I)(B)\psline(I)(C)
    %%%Centres
    \psset{linestyle=none}
    \pstCircleABC{A}{B}{C}{O}\pstCGravABC{A}{B}{C}{G}
    \pstCircleABC{B}{I}{C}{O1}\pstCGravABC{B}{I}{C}{G1}
    \pstCircleABC{C}{I}{A}{O2}\pstCGravABC{I}{C}{A}{G2}
    \pstCircleABC{A}{I}{B}{O3}\pstCGravABC{A}{I}{B}{G3}
    %%%Euler lines
    \psset{linestyle=solid, linecolor=red, nodesep=0.5,nodesepA=1}
    \pstLineAB[,nodesepA=0.5]{O}{G}
    \pstLineAB{O1}{G1}
    \pstLineAB{O2}{G2}
    \pstLineAB{O3}{G3}
    \color{DarkOrange3}\boldmath\pstInterLL[PointSymbol=o, PosAngle=-30]{O}{G}{O1}{G1}{S}
\end{pspicture}

\end{document} 

enter image description here

Bernard
  • 271,350
  • 3
    what will say OP's thesis adviser, when he/she will see, that one of important contribution of OP's thesis has been made by you? Sorry, I hadn't resist :-). Otherwise very nice solution! – Zarko Jan 04 '16 at 02:35
  • 1
    @Zarko: I guess (I hope) it is not a thesis on how to draw such and such geometric figures… He/she will think he had some help, butit should unimportant. Anyway, I really don't see how to give only a few useful hints to someone who seems to be a relatively new user of LaTeX. – Bernard Jan 04 '16 at 02:49
  • 1
    In that case, it is not clear why the OP's instructors would object to the inclusion of a PNG or why they are insisting that the figure be coded in LaTeX. – cfr Jan 04 '16 at 03:03
4

Here is a plain Metapost approach, featuring the wonderful whatever keyword in as many places as I could think of. Most of the geometric techniques used here are developed at the end of Ch.9 of The METAFONT Book.

enter image description here

I thought it looked better when I made angle ACB slightly more than a right angle, so that the Euler line for triangle ABC does not pass through point C. The manoeuvres at the end are just to clip the picture to a nice rectangle.

prologues:=3;
outputtemplate:="%j%c.eps";

vardef centroid(expr a, b, c) =
  save m; pair m; m = whatever [a, 1/2[b,c]] = whatever [b, 1/2[a,c]]; m
enddef;

vardef circumcenter(expr a, b, c) =
  save m; pair m;
  m = whatever [a,b] rotatedaround(1/2[a,b],90) 
    = whatever [b,c] rotatedaround(1/2[b,c],90); m
enddef;

vardef orthocenter(expr a, b, c) =
  save m,p,q,r; pair m, p, q, r; 
  p = whatever[b,c]; p-a = whatever * (c-b) rotated 90;
  q = whatever[c,a]; q-b = whatever * (a-c) rotated 90;
  r = whatever[a,b]; r-c = whatever * (b-a) rotated 90;
  m = whatever[a,p] = whatever[b,q]; m
enddef;

vardef incenter(expr a,b,c) = 
  save m; pair m;
  m = whatever [a,b] rotatedaround(a, 1/2 (angle (c-a) - angle (b-a) ) )
    = whatever [b,c] rotatedaround(b, 1/2 (angle (a-b) - angle (c-b) ) ); m
enddef;

% how high is c given a--b as a base?
vardef altitude(expr a,b,c) = 
  save p; pair p; 
  p = whatever[a,b]; p-c = whatever * (b-a) rotated 90;
  length(p-c)
enddef;

newinternal lt_overshoot; lt_overshoot := 10;
vardef line_through (expr a, b) = 
  pair t; t = unitvector(b-a) scaled lt_overshoot;
  -t shifted a -- t shifted b
enddef;   

% Allow en_GB spelling of centre
def circumcentre = circumcenter enddef;
def orthocentre  = orthocenter  enddef;
def incentre     = incenter     enddef;

vardef euler_line(expr a,b,c) = 
  line_through(circumcenter(a,b,c),orthocenter(a,b,c))
enddef;

beginfig(1);

pair A, B, C;

A = origin;
B = 264 right;
C = quartercircle scaled 400 
    intersectionpoint 
    quartercircle rotated 90 scaled 300 shifted B;

pair I; I = incenter(A,B,C);

draw fullcircle scaled 2 altitude(A,B,I) shifted I dashed withdots scaled 1/3 withcolor .7 white;
draw A--B--C--cycle; 
draw A--I;
draw B--I;
draw C--I;

path e[];
e0 = euler_line(A,B,C);
e1 = euler_line(A,B,I);
e2 = euler_line(B,C,I);
e3 = euler_line(C,A,I);

pair S;
S = e0 intersectionpoint e1;

for i=0 upto 3:
  draw e[i] withcolor .67 red;
endfor

draw fullcircle scaled 4 shifted S;
label(btex $S$ etex, S + 12 right);

dotlabel.lft(btex $A$ etex, A);
dotlabel.rt (btex $B$ etex, B);
dotlabel.urt(btex $C$ etex, C);
dotlabel.urt(btex $I$ etex, I);

currentpicture := currentpicture shifted -S;
setbounds currentpicture to unitsquare shifted -(1/2,2/5) xscaled 377 yscaled 233;

endfig;
end
Thruston
  • 42,268
2

As Percusse told you in the comments, tkz-euclide has French-only documentation, but the examples are very straightforward, especially because the code is always present for each of them and the commands are in English. Performing a search in the document for the commands will usually bring you to the solution.

In order to load the package, you need to add this to your preamble (the second command is loading libraries):

\usepackage{tkz-euclide}
\usetkzobj{all}

Since it's based on TikZ, you need to enclose it in a tikzpicture environment. And actually, it can work together with TikZ, but calculating points/lines is usually easier with this package, whereas TikZ might require some more manual work (it depends on the case though).

My code basically sets up the triangle ABC. From it, you can obtain the triangle incenter and then draw the relative segments. This is provided in the example below to give you an idea on how to get points. As far as the Euler lines are concerned, according to the definition, they are lines that pass through several points relative to a triangle, some of which are:

  • the orthocenter
  • the circumcenter
  • the centroid
  • the Exeter point
  • the center of the nine-point circle

To form a line, any line, you only need two points. I managed to get the first three for each triangle. Although in the graph, I only use the circumcenter and the orthocenter.

Output

enter image description here

Code

\documentclass[margin=10pt]{standalone}
\usepackage{tkz-euclide}
\usetkzobj{all}


\begin{document}
\begin{tikzpicture}[label style/.style={font=\scriptsize}]
\clip (-1,-1) rectangle (6,4);
\tkzDefPoints{%
    0/0/A,
    5/0/B,
    3.5/3/C}
\tkzDrawPolygon[blue](A,B,C)

\tkzInCenter(A,B,C)\tkzGetPoint{I}
\tkzDrawSegments[blue](A,I B,I C,I)

 For triangle ABC
\tkzCentroid(A,B,C)\tkzGetPoint{ABCc}
\tkzCircumCenter(A,B,C)\tkzGetPoint{ABCcc}
\tkzOrthoCenter(A,B,C)\tkzGetPoint{ABCo}

% For triangle ACI
\tkzCentroid(A,C,I)\tkzGetPoint{ACIc}
\tkzCircumCenter(A,C,I)\tkzGetPoint{ACIcc}
\tkzOrthoCenter(A,C,I)\tkzGetPoint{ACIo}

% For triangle ABI
\tkzCentroid(A,B,I)\tkzGetPoint{ABIc}
\tkzCircumCenter(A,B,I)\tkzGetPoint{ABIcc}
\tkzOrthoCenter(A,B,I)\tkzGetPoint{ABIo}

% For triangle CBI
\tkzCentroid(C,B,I)\tkzGetPoint{CBIc}
\tkzCircumCenter(C,B,I)\tkzGetPoint{CBIcc}
\tkzOrthoCenter(C,B,I)\tkzGetPoint{CBIo}

\tkzDrawSegments[red](ACIcc,ACIo ABIcc,ABIo)
\tkzDrawLines[color=red,add = .7 and .5](CBIo,CBIcc ABCcc,ABCo)
\tkzInterLL(ACIcc,ACIo)(ABIcc,ABIo) \tkzGetPoint{S}

\tkzDrawPoints[color=red,fill=white](S)

\tkzDrawPoints[color=blue, fill=white](A,B,C,I)
\tkzLabelPoints[above left](S)
\tkzLabelPoints[below left](A)
\tkzLabelPoints[above](C)
\tkzLabelPoints[below right](B)
\tkzLabelPoints[above right](I)
\end{tikzpicture}
\end{document}
Alenanno
  • 37,338