Интердисциплинарен форум България и Русия – посоки на взаимност 14-17 декември, 2008, Русе, България



Дата28.02.2017
Размер118.2 Kb.
#15894

НАУЧНИ ТРУДОВЕ

Интердисциплинарен форум

България и Русия – посоки на взаимност

14-17 декември, 2008, Русе, България




ГЕОМЕТРИЧНА АЛГЕБРА ОТ ПИТАГОР ДО PSTricks

Използване на LaTeX пакети pst-eucl, pdfscreen и animate при обучението по математика

СТЕФКА КАРАКОЛЕВА

МИХАИЛ ГЕОРГИЕВ, ТЕОДОР МАНОЛОВ

Abstract. Geometry Algebra from Pithagoras to PSTricks. Usage of the LaTeX-packages pst-eucl, pdfscreen and animate in education of mathematics. The project "Geometry Algebra from Pithagoras to PSTricks” is created by the resources of the typesetting system LaTeX, and compiled with the PDFLaTeX programme. Many of LaTeX packages have been used: pdfscreen for creation of screen presentation, pstricks, pst-eucl, pst-node, animate for Euclidean geometric figures, graphicx for graphics manipulation, hyperref for hyper-links, etc. The accent is set on the creation of color graphics by pst-eucl package. The pst-eucl package allows drawing of Euclidean geometric figures using LaTeX macros for specifying mathematical constraints. Thus it is possible to build point using common transformations and intersections.

Key words: LaTeX, PSTricks, PDFLaTeX, geometry, education, mathematics, animation

ВЪВЕДЕНИЕ


Геометрията и алгебрата са спътници на човека от древността до наши дни, [9]. Много сложни алгебрични задачи се доказват елегантно със средствата на геометрията. Графичното решаване на задачи във всички научни области доказва нуждата от математически знания и аргументира обучението, свързвайки науката с практиката.

„Баща” на геометричната алгебра е Питагор. Той се счита за основател на геометричния метод в алгебрата. Графичното пресмятане достига своя апогей през Деветнадесети век и намира достойно приложение в практиката. Днес широкото използване на компютърната техника във всички области на науката и практиката налага създаване на компютърни продукти за обучение в различни области на знанието.

Съвременното Интернет-поколение има нужда от интересно и нагледно обучение, в което да има цвят, движение и елементи на игра. За нуждите на обучението по математика е нужна такава компютърна система, която да осигурява удобство при писане на формули и в същото време да предоставя удобни среди за „чертане с линийка и пергел” на цветни графики.

Издателската система LaTeX, [1,3,4,5,7] напълно отговаря на тези изисквания. Тя предоставя удобни среди и пакети за форматиране на сложни математически формули, а графичните разширения на издателската система LaTeX от фамилията PSTricks, [6] осигуряват удобни макроси за чертане на графики.

За нуждите на мултимедийното обучение, системата LaTeX осигурява и разнообразни пакети за създаване на интерактивни, естетически издържани, хипертекстови презентации: beamer, pdfscreen, prosper и др. Резултатният файл е във формат pdf, достъпен с програмата Adobe Acrobat Reader.

Основна цел на авторите е изследване възможностите на пакетите от фамилията PSTricks за кодиране на цветни Евклидови графики и анимирането им чрез пакета animate. Резултатите от това изследване са докладвани на Деветата Конференция на Ученическия Институт по математика и информатика.

Резултатите от изследването са приложени при създаване на екранна презентация за обучение по математика, в която се използват сложни за изработване чертежи, чието създаване изисква точност и спазване на математическите закони, http://www.ru.acad.bg/staff/skarakoleva/index.php.

ИЗЛОЖЕНИЕ


Пакет pst-eucl

Пакетът pst-eucl, [6], е предназначен за чертане на сложни фигури в Евклидова геометрия. Използването му под операционна система Windows изисква инсталиране на MiKTeX, версия 2.7 или по-висока, Adobe Acrobat Reader, Ghostscript, GSView и интерфейс, например WinEdt, [8].

Основни обекти в пакета pst-eucl са точки. Те се задават с командата:

\pstGeonode[


](x1,y1){}(x2,y2){}...(xn,yn){},

като на всяка точка съответства възел с име и етикет по подразбиране, форматиран в математически режим. Положението на етикета по отношение на точката се контролира с параметъра PosAngle (по подразбиране 0), а самият етикет се определя с параметъра PointName (по подразбиране default). Празен етикет се определя чрез задаване на стойност none. Символът за изобразяване на точка се задава с параметъра PointSymbol (по подразбиране *). При задаване на none, точка не се изобразява. Параметрите се определят в областта


. Параметрите PosAngle, PointSymbol, PointName и PointNameSep могат да се установят или равни на единствена стойност, eдна и съща за всички точки, или равни на списък от стойности, заградени с {...} и отделени със запетая, което позволява да се диференцират стойностите за всяка отделна точка. Параметърът CurveType (по подразбиране none) се използва за чертане на линия през зададените точки: отворена начупена линия - polyline; затворена начупена линия - polygon; отворена и затворена крива линия – curve.

Класическата фигура, триъгълник, има собствено макро за бърза дефиниция:

\pstTriangle[
](xA,yA){}(xB,yB){}(xC,yC){}.

За да се поставят прецизно имената на точките, се използват три параметъра: PosAngleA, PosAngleB и PosAngleC, които са свързани съответно с възлите , и . Ако няма определен ъгъл за дадена точка, нейното име се поставя на ъглополовящата линия. Параметрите PointSymbolA, PointSymbolB и PointSymbolC контролират символа-точка, поставян във всеки възел.

Ъгъл се дефинира с три точки. Върхът е втората точка. Техният ред е важен, защото ъгълът се определя в положителна посока (обратна на часовата стрелка). Командата

\pstRightAngle[


]{
}{}{}

маркира прав ъгъл. Използваният символ се контролира от параметъра RightAngleType (по подразбиране default). Възможните стойности са: default – стандартен символ; german – германски символ; suisseromand – швейцарски символ. Параметърът RightAngleSize дефинира размера на символа (по подразбиране 0.28 единици). Други ъгли се маркират с командата:

\pstMarkAngle[
]{
}{}{}{

Класическата линия се чертае с командата

\pstLineAB[
]{
}{}.

Дължината и се котролира с параметрите nodesepA и nodesepB, които определят абсцисата на края на изчертаваната част от правата. Отрицателна абсциса определя външна точка, а положителна – вътрешна точка. Ако стойностите на тези параметри са равни, вместо тях може да се използва nodesep. Стойността по подразбиране на тези параметри е 0.

Окръжност се дефинира или с нейния център и точка от нея, или с две диаметрално противоположни точки с командите

\pstCircleOA[


]{}{
},

\pstCircleAB[


]{
}{}.

Възможно е да се пропусне втората точка и да се определи радиуса или диаметъра с използване на параметрите Radius и Diameter. Стойностите на тези параметри се определят с макросите

\pstDistAB[
]{
}{},

\pstDistVal[


]{}.

Първият определя разстоянието между две точки. Параметърът DistCoef може да бъде използван за определяне на коефициент за намаляване или увеличаване на това разстояние, като установяването на този коефициент трябва да е преди разстоянието. Второто макро се използва за определяне на конкретна числова стойност.

Окръжност през три точки се чертае като описана около триъгълника, определен от тях.

Дъги от окръжност с център O се чертаят с макросите

\pstArcOAB[
]{}{}{},

\pstArcnOAB[


]{}{
}{}.
Радиусът се дефинира чрез OA, началният ъгъл се задава с A и крайният ъгъл – с B. Първото макро чертае дъгата в положителна посока, а второто – в отрицателна.

Геометричните трансформации, дeфинирани като макроси в PSTricкs, са идеални инструменти за конструиране на геометрични фигури. Те имат сходен синтаксис, съдържащ накрая два списъка с точки – първообразите и образите при трансформацията. Чрез параметъра CodeFig се активира изчертаването на линии, показващи процеса на получаване на образите при трансформациите. По подразбиране стойността му е false, стилът на линията се задава с параметъра CodeFigStyle (по подразбиране dashed) с цвят, зададен с параметъра CodeFigColor (по подразбиране cyan).

Параметърът CurveType контролира изчертаването на крива през всички образи и позволява бързо изчертаване на трансформираната фигура.

Макрото


\pstSymO[
]{}{}[]

чертае симетрична точка по отношение на точка O,

чертае симетрична точка по отношение на правата AB,

\pstRotation[
]{}{}[

чертае образи при ротация с център O и ъгъл, зададен с параметъра RotAngle. Това може да бъде и ъгъл, определен от три точки. В този случай се използва функцията

\pstAngleABC{}{}{}.

Параметърът CodeFig поставят дъга със стрелка между точката и нейния образ и ако TransformLabel (по подразбиране none) съдържа текст, той се поставя над дъгата в математически режим.

Командата

\pstTranslation[


]{
}{}{}[]

чертае образ при транслация с вектор AB и е удобна за използване при изобразяване на успоредни прави. Параметърът DistCoef може да се използва като мащабиращ множител за модифициране на вектора на транслация. Параметърът CodeFig чертае транслационния вектор между точката и нейния образ, поставяйки етикет в средата с името на вектора или с текст, определен с TransformLabel (по подразбиране none). Макрото

\pstHomO[
]{
}{}{}[]

чертае образ при хомотетия с център O и коефициент, определен с параметъра HomCoef. Ортогоналната проекция на точка относно права AB

\pstProjection[
]{}{}{}[]

е полезно макро за построяване на височина в триъгълник.

Удобни са също и макросите за построяване на специални обекти. Средна точка I на отсечката AB се чертае с

\pstMiddleAB[


]{
}{}{},

като името на точката се поставя под отсечката. Център на гравитация G на триъгълник ABC се чертае с

\pstCGravABC[
]{
}{}{}{},

а център O на описана окръжност на триъгълник ABC - с макрото

\pstCircleABC[
]{
}{}{}{}.

Ефективното чертане се контролира от двоичния параметър DrawCirABC (по подразбиране true). Освен това, конструирането (чрез симетралите на страните на триъгълника) мове да бъде начертано чрез двоичния параметър CodeFig. В този случай средните точки на страните се маркират чрез използване на различни знаци, зададени с параметрите SegmentSymbolA, SegmentSymbolB и SegmentSymbolC.

Симетрала на отсечка (перпендикулярна права през средната точка на отсечката) се чертае с макрото

\pstMediatorAB[


]{
}{}{}{}.

Отсечката е AB, средната точка - I, а M е точка от симетралата. Тя се построява чрез ротация на точка B на 90º около I. Конструкцията се контролира с параметрите CodeFig, CodeFigColor и SegmentSymbol за маркиране на правия ъгъл; PointSymbol и PointName за контролиране изобразяването на двете точки, всяка от които може да бъде определена с параметрите ...A и ...B; а също така и параметри, контролиращи изобразяването на симетралата.

За изобразяване на вътрешна и външна ъглополовящи на ъгъл се използват макросите

\pstBissectBAC[


]{}{
}{}{},

\pstOutBissectBAC[


]{}{
}{}{}.

Ъгълът е определен от три точки, в положителна посока, а в резултат се получават права и точка от нея. Тя се получава чрез ротация на точка B.

Точки се дефинират и като сечения на други геометрични обекти. Работи се с шест вида сечения: права-права, права-окръжност, окръжност-окръжност, функция-функция, функция-права и функция-окръжност. Ако сечение не съществува, точките се позиционират в началото. Сечението на правите AB и CD се намира с

\pstInterLL[


]{}{}{}{}{},

пресечните точки на права AB и окръжност с център O и радиус OC - чрез

Окръжността е определена с център и точка от нея, или с център и радиус. Радиусът се определя или с параметъра Radius, или чрез диаметъра, зададен чрез параметъра Diameter. Тези два параметъра могат да се модифицират чрез параметъра DistCoef. Командата

\pstInterCC[
]{}{}{}{}{}{}

построява сечение на две окръжности. Параметрите CodeFigA и CodeFigB позволяват изчертаване на дъги от сеченията. Макрото

\pstInterFF[
]{}{}{}{}

намира сечението на две криви, зададени като функции, x0 е приблизително абсцисата на пресечната точка. Функциите се описват на езика PostScript. Макрото

\pstInterFL[
]{}{
}{}{}{}

определя точка M, като сечение на функция f и права AB, а сечението на функция и окръжност с център O и радиус OA се определя с командата

\pstInterFC[
]{}{}{
}{}{}.

Всяка фигура в презентацията се създава в отделен файл, компилира се с програмата LaTeX, полученият dvi–файл се конвертира в pdf, след което се включва в документа с командата \includegraphics на пакета graphicx.

За илюстрация на възможностите на пакета pst-eucl за намиране на специални точки и обекти в равнината, са представени две фигури. Изобразени са два триъгълника (остроъгълен и тъпоъгълен) и са построени с описаните команди на пакета pst-eucl външни и вътрешни ъглополовящи, симетрали, вписани и описани окръжности. Даден е кодът на първата фигура (остроъгълен триъгълник). Единствената разлика в кодовете на двата файла, са координатите на върховете на триъгълника.

\documentclass{article}

\usepackage{pstcol,pst-plot,pst-eucl}

\begin{document}

\begin{figure}\psset{unit=8mm}\centering

\begin{pspicture*}(-2.5,0)(20,24}

\pstTriangle(7,7){A}(14,7){B}(12,12){C}%триъгълник

\pstBissectBAC[PointSymbol=none,PointName=none,linecolor=green,nodesep=12]{B}{A}{C}{A'}%вътрешна ъглополовяща $\angle BAC$

\pstOutBissectBAC[PointSymbol=none,PointName=none,linestyle=dotted,nodesep=10]{B}{A}{C}{A''}%външна ъглополовяща $\angle BAC$

\pstBissectBAC[PointSymbol=none,PointName=none,linecolor=green,nodesep=17]{C}{B}{A}{B'}% вътрешна ъглополовяща $\angle CBA$

\pstOutBissectBAC[PointSymbol=none,PointName=none,linestyle=dotted,nodesep=10]{C}{B}{A}{B''}% външна ъглополовяща $\angle CBA$

\pstBissectBAC[PointSymbol=none,PointName=none,linecolor=green,nodesep=12]{A}{C}{B}{C'}% вътрешна ъглополовяща $\angle ACB$

\pstOutBissectBAC[PointSymbol=none,PointName=none,linestyle=dotted,nodesep=10]{A}{C}{B}{C''}% външна ъглополовяща $\angle ACB$

%%Вписана окръжност

\pstInterLL{A}{A'}{B}{B'}{O}%пресечна точка на ъглополовящите

\pstOrtSym[PointSymbol=none,PointName=none]{A}{B}{O}[O']

\pstInterLL[PosAngle=45]{O}{O'}{A}{B}{H}

\pstLineAB[linestyle=dashed]{O}{H}

\pstCircleOA[linecolor=blue,Radius=\pstDistAB{O}{H}]{O}{}

\pstRightAngle[RightAngleSize=.2]{A}{H}{O}

%Описана окръжност

\pstCircleABC[linecolor=gray,PointSymbol=asterisk,PosAngle={180},dotscale=3]{A}{B}{C}{V}

\pstInterLL[PosAngle={90},linestyle=dotted,dotscale=2,PointSymbol=triangle,dotsep=3mm]{A}{A'}{C}{C''}{O_2}

\pstInterLL[linestyle=dotted,dotscale=2,,PointSymbol=triangle,dotsep=3mm]{B}{B''}{C}{C'}{O_1}

\pstInterLL[linestyle=dotted,,dotscale=2,dotsep=3mm,PointSymbol=triangle,PosAngle={60}]{B}{B'}{A}{A''}{O_3}

\pstLineAB[linestyle=dashed,nodesep=-6]{A}{B}

\pstLineAB[linestyle=dashed,nodesepA=-6,nodesepB=-7]{B}{C}

\pstLineAB[linestyle=dashed,nodesep=-6]{C}{A}

%%Външно вписани окръжности

\pstOrtSym[PointSymbol=none,PointName=none]{A}{B}{O_3}[O_3']

\pstInterLL[PosAngle=-90]{A}{B}{O_3}{O_3'}{H_3}

\pstCircleOA[Radius=\pstDistAB{O_3}{H_3}]{O_3}{}

\pstOrtSym[PointSymbol=none,PointName=none]{B}{A}{O_2}[O_2']

\pstInterLL[PosAngle=-90]{B}{A}{O_2}{O_2'}{H_2}

\pstCircleOA[Radius=\pstDistAB{O_2}{H_2}]{O_2}{}

\pstOrtSym[PointSymbol=none,PointName=none]{A}{C}{O_1}[O_1']

\pstInterLL[PosAngle=120]{A}{C}{O_1}{O_1'}{H_1}

\pstCircleOA[Radius=\pstDistAB{O_1}{H_1}]{O_1}{}

\pstLineAB[linecolor=red]{O_1}{O_2}

\pstLineAB[linecolor=red]{O_2}{O_3}

\pstLineAB[linecolor=red]{O_1}{O_3}%триъгълник O_1 O_2 O_3

\pstLineAB[linestyle=dashed]{O_3}{H_3}

\pstRightAngle[RightAngleType=german,MarkAngleRadius=.3]%

{A}{H_3}{O_3}\pstLineAB[linestyle=dashed]{O_2}{H_2}

\pstRightAngle[RightAngleType=german,MarkAngleRadius=.3]%

{O_2}{H_2}{B}

\pstLineAB[linestyle=dashed]{O_1}{H_1}

\pstRightAngle[RightAngleType=german,MarkAngleRadius=.3]%

{O_1}{H_1}{A}%описна окръжност около O_1 O_2 O_3

\pstCircleABC[linestyle=dashed,dotscale=1.2,PointSymbol=pentagon*,linecolor=magenta,PosAngle=90]{O_1}{O_2}{O_3}{P}

\end{pspicture*}\end{figure}\end{document}

Пакет pdfscreen

Пакетът pdfscreen е предназначен за изобразяване на стандартни LaTeX- документи за четене на компютърен монитор, като едновременно с това се запазва възможността за форматиране на документа за стандартно отпечатване на хартия. За изобразяване на екран, се използва опция screen, а за хартия – print. Например, за изобразяване на екран, с панел вляво на екрана, в преамбюла на документа се поставя командата:

\usepackage[screen, panelleft]{pdfscreen}.

При това автоматично се зарежда и пакетът hyperref за хипервръзки, както и пакетът color. Има опции за извеждане на панел с бутони на екрана, който може да включва съдържанието на документа. Пакетът има удобна среда за писане на кодове на програми, която се активира чрез задаване на опцията code. Има възможност за включване на лого/емблема в навигационния панел и свързване на бутона в панела с указан адрес на електронна страница.



Пакет animate

Пакетът animate е предназначен за създаване на PDF файлове с анимирано съдържание, като се използва набор от графични файлове, създадени с различни приложения. Възможните файлови формати зависят от това дали се използва програмата LaTeX или PDFLaTeX.

В случай, че се използва LaTeX, най-напред се търси eps-файл, а след това mps или ps. С PDFLaTeX редът на търсене е: pdf, mps, png, jpg, jpeg, jbig2, jb2, jp2, j2k, jpx. Съществуват два различни подходa за използване на пакета animate, [10,11]. Авторите са използвали подхода, при който се използва командата

\animategraphics[][][]{}{}

на пакета animate. За създаване на анимирана фигура, освен множеството файлове, подготвени като отделни кадри, са нужни още два файла: главен файл, който се компилира с PDFLaTeX и използва пакета animate и текстов файл. Резултатният pdf документ с анимираната картинка се визуализира с Adobe Acrobat Reader.

Например, за анимиране на фигурата



се създават няколко файла с имена koren_1, koren_2, koren_3 като отделни кадри, като се използва следния код:

\documentclass{article}

\usepackage[a4paper,top=15pt,bottom=0pt,left=5pt,right=0pt,noheadfoot]{geometry}

\usepackage{pstcol,pst-plot,pst-eucl}

\begin{document}

\begin{pspicture}(0,0)(5,3)

\pstGeonode[PosAngle={-90,-90,-90}](0,0){O}(1,0){A}(5,0){B}

\pstGeonode[PointName=none,PointSymbol=none](2.5,0){P}(2,0){X}

\pstLineAB{O}{B}

\pstArcOAB{P}{B}{O}

\pstMediatorAB[linecolor=white,PointName=none,PointSymbol=none]{O}{X}{A}{N}

\pstInterLC[PointNameA=none,PointSymbol=none]{A}{N}{P}{B}{M_1}{M}

\pstLineAB[linecolor=red]{M}{A}

\rput[b](3,0.1){$N$}\rput[b](0.5,0.1){$1$}

\end{pspicture}

\end{document}

За да премине успешно процедурата и да се получи файлът anim_koren.pdf с анимираната фигура, е необходимо в същата директория да се постави и текстов файл timeline.txt:

::0x0

::1


::2

::3


След компилиране на файловете koren_1, koren_2, koren_3 с latexdvipsps2epsepstopdf, се компилира и файла anim_koren.tex с програмата PDFLaTeX, който използва пакета animate:

\documentclass[12pt,a4paper]{article}

\usepackage[pdftex]{color,graphicx}

\usepackage{animate}

\begin{document}

\begin{center}

\animategraphics[controls,timeline=timeline.txt]{1}{koren_}{1}{3}

\end{center}

\end{document}


ЗАКЛЮЧЕНИЕ


Изследването и работата по темата дава богати възможности за изследователска и творческа дейност. Тя е само начало на бъдещи изследвания за приложението на издателската система LaTeX в обучението при създаване на документи, обучаващи тестове и екранни презентации по геометрия.


ЛИТЕРАТУРА


    1. Leslie Lamport, LaTeX: A Document Preparation Syste, Addison-Wesley, Reading, Massachusetts,1994.

    2. Donald E. Knuth, The TeX book, Addison-Wesley, Reading, Massachusetts, 1984.

    3. Frank Mittelbach, Michel Goossens, The LaTeX Companion, Addison-Wesley, Reading, Massachusetts, 2004.

    4. Michel Goossens, Sebastian Rahtz and Frank Mittelbach, The LaTeX Graphics Companion, Addison-Wesley, Reading, Massachusetts, 2007.

    5. Michel Goossens and Sebastian Rahtz, The LaTeX Web Companion: Integrating TeX, HTML and XML, Addison-Wesley, Reading, Massachusetts, 1999.

    6. PSTricks documentation: http://tug.org/PSTricks/main.cgi/.

    7. Стефка Караколева, Въведение в издателската система LaTeX2e, Русенски Университет „А.Кънчев”, 2005.

    8. Стефка Караколева, Инсталиране на MiKTeX2.7, езикови настройки и включване на речници в WinEdt, 2007.

www.download.bg/index.php?cls=articles&mtd=single&id=450896

    1. Шчепан Еленски, По стъпките на Питагор, Техника, София, 1964.

    2. The Comprehensive TeX Arhive Network: http://www.ctan.org

    3. Package animate Documentation, The TeX Catalog online:

http://www.tex.ac.uk/tex-archive/help/Catalog/entries/animate.html

ЗА АВТОРИТЕ:

Стефка Караколева: http://www.ru.acad.bg/staff/skarakoleva/index.php

Катедра „Числени и статистически методи”, РУ “Ангел Кънчев”, тел. 082 888 466, e-mail: skarakoleva@ru.acad.bg



Михаил Георгиев: МГ „Баба Тонка” - Русе, 12 клас, mishone555@abv.bg

Теодор Манолов: МГ „Б.Тонка”-Русе, 12 клас, teodor_manolov@yahoo.com


България и Русия – посоки на взаимност 147

\pstInterLC[
]{
}{}{}{}{}{}.

\pstOrtSym[
]{
}{}{}[]




Сподели с приятели:




©obuch.info 2024
отнасят до администрацията

    Начална страница