Rovnice přímek v rovině

Podobné dokumenty
Středoškolská odborná činnost. Obor SOČ: 1. Matematika a statistika GRAFY FUNKCÍ

Aplikace pro vykreslování grafů elementárních funkcí

VZÁJEMNÁ POLOHA DVOU PŘÍMEK

VZÁJEMNÁ POLOHA DVOU PŘÍMEK V ROVINĚ

14. přednáška. Přímka

Analytická geometrie (AG)

ANALYTICKÁ GEOMETRIE LINEÁRNÍCH ÚTVARŮ V ROVINĚ

Matematika I, část I Vzájemná poloha lineárních útvarů v E 3

37. PARABOLA V ANALYTICKÉ GEOMETRII

Parametrická rovnice přímky v rovině

VZOROVÝ TEST PRO 3. ROČNÍK (3. A, 5. C)

Analytická geometrie. přímka vzájemná poloha přímek rovina vzájemná poloha rovin. Název: XI 3 21:42 (1 z 37)

Lingebraické kapitolky - Analytická geometrie

KRUŽNICE, KRUH, KULOVÁ PLOCHA, KOULE

Rovnice přímky. s = AB = B A. X A = t s tj. X = A + t s, kde t R. t je parametr. x = a 1 + ts 1 y = a 2 + ts 2 z = a 3 + ts 3. t R

CVIČNÝ TEST 15. OBSAH I. Cvičný test 2. Mgr. Tomáš Kotler. II. Autorské řešení 6 III. Klíč 15 IV. Záznamový list 17

Matematika I, část I. Rovnici (1) nazýváme vektorovou rovnicí roviny ABC. Rovina ABC prochází bodem A a říkáme, že má zaměření u, v. X=A+r.u+s.

Kreslení elipsy Andrej Podzimek 22. prosince 2005

3.2. ANALYTICKÁ GEOMETRIE ROVINY

1 Analytická geometrie

Projekt OPVK - CZ.1.07/1.1.00/ Matematika pro všechny. Univerzita Palackého v Olomouci

Programování jako nástroj porozumění matematice (seriál pro web modernivyuka.cz)

CVIČNÝ TEST 1. OBSAH I. Cvičný test 2. Mgr. Tomáš Kotler. II. Autorské řešení 6 III. Klíč 21 IV. Záznamový list 23

4. Statika základní pojmy a základy rovnováhy sil

Lineární funkce, rovnice a nerovnice 3 Soustavy lineárních rovnic

Průsečík exponenciální a logaritmické funkce pro základ od 0 do 1

Analytická geometrie kvadratických útvarů v rovině

Programování jako nástroj porozumění matematice (seriál pro web modernivyuka.cz)

ANALYTICKÁ GEOMETRIE ELIPSY

7.5.3 Hledání kružnic II

A[a 1 ; a 2 ; a 3 ] souřadnice bodu A v kartézské soustavě souřadnic O xyz

Programování jako nástroj porozumění matematice (seriál pro web modernivyuka.cz)

PŘÍMKA A JEJÍ VYJÁDŘENÍ V ANALYTICKÉ GEOMETRII

Digitální učební materiál

Rasterizace je proces při kterém se vektorově definovaná grafika konvertuje na. x 2 x 1

Matematika 1 MA1. 1 Analytická geometrie v prostoru - základní pojmy. 4 Vzdálenosti. 12. přednáška ( ) Matematika 1 1 / 32

Grafické řešení soustav lineárních rovnic a nerovnic

Rovnice přímky v prostoru

M - Příprava na 1. čtvrtletku pro třídu 4ODK

Diferenciální počet 1 1. f(x) = ln arcsin 1 + x 1 x. 1 x 1 a x 1 0. f(x) = (cos x) cosh x + 3x. x 0 je derivace funkce f(x) v bodě x0.

Matematika 1 pro PEF PaE

+ 2y. a y = 1 x 2. du x = nxn 1 f(u) 2x n 3 yf (u)

X = A + tu. Obr x = a 1 + tu 1 y = a 2 + tu 2, t R, y = kx + q, k, q R (6.1)

Geometrie v R n. z balíku student. Poznamenejme, že vlastně počítáme délku úsečky, která oba body spojuje. (b d)2 + (c a) 2

Pedagogická poznámka: Celý obsah se za hodinu stihnout nedá. z ] leží na kulové ploše, právě když platí = r. Dosadíme vzorec pro vzdálenost:

Geometrie v R n. student. Poznamenejme, že vlastně počítáme délku úsečky, která oba body spojuje. (b d)2 + (c a) 2

19 Eukleidovský bodový prostor

ANALYTICKÁ GEOMETRIE HYPERBOLY

Odvození středové rovnice kružnice se středem S [m; n] a o poloměru r. Bod X ležící na kružnici má souřadnice [x; y].

1. Parametrické vyjádření přímky Přímku v prostoru můžeme vyjádřit jen parametricky, protože obecná rovnice přímky v prostoru neexistuje.

1.13 Klasifikace kvadrik

Rovnice přímky vypsané příklady. Parametrické vyjádření přímky

Analytická geometrie lineárních útvarů

III/2 Inovace a zkvalitnění výuky prostřednictvím ICT

Příklady k analytické geometrii kružnice a vzájemná poloha kružnice a přímky

Analytická geometrie. c ÚM FSI VUT v Brně

III/2 Inovace a zkvalitnění výuky prostřednictvím ICT

3. ÚVOD DO ANALYTICKÉ GEOMETRIE 3.1. ANALYTICKÁ GEOMETRIE PŘÍMKY

CVIČNÝ TEST 19. OBSAH I. Cvičný test 2. Mgr. Kateřina Nováková. II. Autorské řešení 5 III. Klíč 13 IV. Záznamový list 15

CVIČNÝ TEST 5. OBSAH I. Cvičný test 2. Mgr. Václav Zemek. II. Autorské řešení 6 III. Klíč 17 IV. Záznamový list 19

III/2 Inovace a zkvalitnění výuky prostřednictvím ICT

CVIČNÝ TEST 40. OBSAH I. Cvičný test 2. Mgr. Tomáš Kotler. II. Autorské řešení 6 III. Klíč 13 IV. Záznamový list 15

= cos sin = sin + cos = 1, = 6 = 9. 6 sin 9. = 1 cos 9. = 1 sin cos 9 = 1 0, ( 0, ) = 1 ( 0, ) + 6 0,

8. Parametrické vyjádření a. Repetitorium z matematiky

Definice Tečna paraboly je přímka, která má s parabolou jediný společný bod,

Funkce jedné reálné proměnné. lineární kvadratická racionální exponenciální logaritmická s absolutní hodnotou

5. Statika poloha střediska sil

Projekt OPVK - CZ.1.07/1.1.00/ Matematika pro všechny. Univerzita Palackého v Olomouci

CVIČNÝ TEST 13. OBSAH I. Cvičný test 2. Mgr. Zdeňka Strnadová. II. Autorské řešení 6 III. Klíč 15 IV. Záznamový list 17

( ) ( ) ( ) ( ) Skalární součin II. Předpoklady: 7207

Lineární funkce IV

9.1 Definice a rovnice kuželoseček

Skládání různoběžných kmitů. Skládání kolmých kmitů. 1) harmonické kmity stejné frekvence :

Michal Zamboj. January 4, 2018

2D transformací. červen Odvození transformačního klíče vybraných 2D transformací Metody vyrovnání... 2

2. ANALYTICKÁ GEOMETRIE V PROSTORU Vektory Úlohy k samostatnému řešení... 21

Projekt OPVK - CZ.1.07/1.1.00/ Matematika pro všechny. Univerzita Palackého v Olomouci

3.3. ANALYTICKÁ GEOMETRIE KRUŽNICE A KOULE

III Rychlé určování hodnot funkcí sinus a cosinus. Předpoklady: 4207, 4208

9. Soustava lineárních rovnic

III/2 Inovace a zkvalitnění výuky prostřednictvím ICT

CVIČNÝ TEST 22. OBSAH I. Cvičný test 2. Mgr. Tomáš Kotler. II. Autorské řešení 6 III. Klíč 13 IV. Záznamový list 15

CVIČNÝ TEST 9 OBSAH. Mgr. Václav Zemek. I. Cvičný test 2 II. Autorské řešení 5 III. Klíč 17 IV. Záznamový list 19

Michal Zamboj. December 23, 2016

( ) ( ) ( ) Tečny kružnic I. Předpoklady: 4501, 4504

obecná rovnice kružnice a x 2 b y 2 c x d y e=0 1. Napište rovnici kružnice, která má střed v počátku soustavy souřadnic a prochází bodem A[-3;2].

CVIČNÝ TEST 17. OBSAH I. Cvičný test 2. Mgr. Tomáš Kotler. II. Autorské řešení 6 III. Klíč 13 IV. Záznamový list 15

Náhodná a pseudonáhodná čísla

Nejprve si uděláme malé opakování z kurzu Množiny obecně.

Projekt OPVK - CZ.1.07/1.1.00/ Matematika pro všechny. Univerzita Palackého v Olomouci

f(x) = arccotg x 2 x lim f(x). Určete všechny asymptoty grafu x 2 2 =

Kótované promítání. Úvod. Zobrazení bodu

3.4 Řešení Příkladu 1 (str.55) v programu Maple

BIOMECHANIKA KINEMATIKA

CVIČNÝ TEST 18. OBSAH I. Cvičný test 2. Mgr. Kateřina Nováková. II. Autorské řešení 6 III. Klíč 13 IV. Záznamový list 15

M - Příprava na 12. zápočtový test

3.6. ANALYTICKÁ GEOMETRIE PARABOLY

DERIVACE. ln 7. Urči, kdy funkce roste a klesá a dále kdy je konkávní a

Podrobnější výklad tématu naleznete ve studijním textu, na který je odkaz v Moodle. Tam je téma

ANALYTICKÁ GEOMETRIE LINEÁRNÍCH ÚTVARŮ V ROVINĚ

Transkript:

STŘEDOŠKOLSKÁ ODBORNÁ ČINNOST Obor č. 1 Matematika a statistika Rovnice přímek v rovině Autoři: Jan Kabíček, Petr Henzl Škola: Střední škola spojů a informatiky Tábor, Bydlinského 2474 Kraj: Jihočeský Konzultant: Mgr. Jiřina Bartoňová Tábor 2019 1

Prohlášení Prohlašujeme, že jsme svou práci SOČ vypracovali samostatně a použili jsme pouze prameny a literaturu uvedené v seznamu bibliografických záznamů. Prohlašujeme, že tištěná verze a elektronická verze soutěžní práce SOČ jsou shodné. Nemáme závažný důvod proti zpřístupňování této práce v souladu se zákonem č. 121/2000 Sb., o právu autorském, o právech souvisejících s právem autorským a o změně některých zákonů (autorský zákon) ve znění pozdějších předpisů. V Táboře dne 11.4.2019 2

Poděkování Tímto bychom chtěli poděkovat paní učitelce Mgr. Jiřině Bartoňové za obětavou pomoc a cenné rady, které nám pomohly tuto práci zkompletovat. 3

Anotace Cílem této práce je napsat program, který dokáže vytvořit rovnici přímky dané dvěma body, určit jejich vzájemnou polohu, vykreslit přímky do grafu a usnadnit tak výuku tohoto učiva. Výstupem je aplikace v jazyce C#, která dokáže po zadání bodů vypsat jak obecnou, tak parametrickou rovnici a vykreslit přímku do grafu. Po zadání dvou rovnic přímek buď obecných, nebo parametrických, aplikace vypíše jejich vzájemnou polohu a vykreslí je do grafu. U různoběžek určí souřadnice průsečíku a odchylku. Klíčová slova Obecná rovnice přímky; parametrická rovnice přímky; vzájemná poloha přímek; přímka; průsečík přímek; odchylka přímek; 4

Obsah Úvod... 6 1 Úvodní formulář aplikace... 7 2 Princip vykreslování grafu... 8 3 Jednotlivé rovnice přímek... 10 3.1 Obecná rovnice přímky... 10 3.2 Parametrická rovnice přímky... 11 3.3 Krácení vektorů... 12 4 Vzájemná poloha přímek... 13 4.1 Určení vzájemné polohy... 13 4.2 Určení souřadnic průsečíku... 14 4.3 Odchylka... 15 Závěr... 16 Zdroje... 17 Příloha obsah vloženého CD... 17 5

Úvod Při volbě tématu pro tuto práci jsme se inspirovali při hodinách matematiky. Probírali jsme rovnice přímek v rovině. Každou rovnici jsme si vykreslili do grafu. Pokud jsme měli zadané dvě rovnice, řešili jsme jejich vzájemnou polohu a pokud byli různoběžné, hledali jsme jejich průsečík a odchylku. Pro vytvoření aplikace, která by se dala použít při výuce matematiky, jsme se rozhodli poté, co jsme se seznámili při programování s jazykem C#. 6

1 Úvodní formulář aplikace Obrázek 1 úvodní formulář Po spuštění aplikace se objeví úvodní okno programu, které slouží pro výběr. Můžeme buď vytvářet rovnice přímky dané dvěma body nebo hledat vzájemnou polohu přímek. Pro pokračování k vykreslování a výpočtu rovnic přímek uživatel stiskne tlačítko Rovnice přímek a k určení a vykreslení polohy přímek Poloha přímek. Po kliknutí na tlačítko se objeví nové okno, kde uživatel bude zadávat potřebné údaje. 7

2 Princip vykreslování grafu Obrázek 2 soustava souřadná Pro vykreslení grafu je použit ovládací prvek Panel. Velikost panelu je 600px na šířku i výšku. K překreslení panelu dojde vždy, když nastane událost Paint. V obslužné metodě této události je vytvořena kreslící plocha s názvem kp. Graphics kp = e.graphics; Tato plocha je totožná s celým povrchem panelu. Při kreslení se používají souřadnice v pixelech. Levý horní roh má souřadnice [0;0]. Souřadnice ve vodorovném směru roste směrem doprava. Souřadnice ve svislém směru roste směrem dolů, tedy obráceně než v soustavě souřadné pro vykreslení grafu. Do panelu se vykresluje soustava souřadná se všemi čtyřmi kvadranty. Středem této soustavy je střed panelu, tedy bod [300;300]. Jednotka je nastavena v celočíselné proměnné jednotka. Ve výchozím nastavení je hodnota této proměnné nastavena na 20px. Pokud uživatel usoudí, že jednotku by bylo vhodné změnit, má možnost pomocí přepínače zvolit jednotku 10px, 20px nebo 30px a stiskem tlačítka Vykresli graf znovu vykreslit graf do nové soustavy. Nastavení jednotky je pomocí neúplných podmínek, ve kterých se testuje zaškrtnutí jednotlivých přepínačů. 8

if (radiobutton10.checked) { jednotka = 10; } if (radiobutton20.checked) { jednotka = 20; } if (RadioButton30.Checked) { jednotka = 30; } Soustava souřadná a následně i graf funkce se kreslí pomocí nástroje zvaného tužka. Tato tužka kreslí plnou čáru tloušťky 1px. V průběhu kreslení se mění pouze její barva. Pen tužka = new Pen(Color.LightGray); Nejprve se vykreslují světle šedé vodící čáry, poté černé souřadnicové osy, popisky na osách a čárky označující jednotky na jednotlivých osách. Vodící čáry a čárky na osách se vykreslují po čtyřech najednou, vždy v každém kvadrantu jedna. Počet vodících čar samozřejmě závisí na zvolené jednotce a prostoru, který máme pro každý kvadrant k dispozici. int početčárek = 290 / jednotka; Po vykreslení soustavy souřadné se načtou souřadnice zadaných bodů A a B, podle kterých se vykreslí do grafu přímka procházející těmito body. 9

3 Jednotlivé rovnice přímek 3.1 Obecná rovnice přímky Obecná rovnice přímky je dána předpisem ax + by + c = 0, kde a a b jsou souřadnice normálového vektoru. Tyto souřadnice dostaneme tak, že odečteme souřadnice jednotlivých bodů (A a B). Souřadnici x bodu A odečteme od x bodu B a souřadnici y bodu A odečteme od y bodu B, souřadnice otočíme a u jedné z nich otočíme znaménko. Tím získáme potřebný normálový vektor. Tyto souřadnice poté vynásobíme souřadnicemi jednoho z bodů např. A. Souřadnici x bodu A vynásobíme se souřadnicí x směrového vektoru a totéž uděláme i se souřadnicí y. Poté již řešíme klasickou rovnici, pomocí které dopočítáme koeficient c. Výsledkem je tedy rovnice, kde za a dosadíme souřadnici x normálového vektoru a za b y souřadnici normálového vektoru. Obrázek 3 obecná rovnice přímky 10

3.2 Parametrická rovnice přímky Parametrická rovnice přímky je dána předpisem x = xa+u1*t y = ya+u2*t, kde xa je souřadnice x bodu A a ya je souřadnice y bodu A, u1 a u2 jsou souřadnice směrového vektoru, který získáme odečtením souřadnic dvou bodů, v našem případě A a B. Souřadnici x bodu A odečteme od x bodu B a souřadnici y bodu A odečteme od y bodu B. Tím získáme směrový vektor, který dosadíme za u1 a u2. Obrázek 4 parametrická rovnice přímky 11

3.3 Krácení vektorů Ve výpočtech rovnic přímek je důležité souřadnice vektorů krátit, pokud to lze. Proto jsme hledali způsob jak vektory krátit. První cesta, kterou jsme se dali při hledání největšího společného dělitele, byla zbytečně složitá a zdlouhavá. Později jsme zjistili, že existuje Euklidův algoritmus, který jsme použili na místo našeho starého nápadu. Euklidův algoritmus: Při hledání největšího společného dělitele čísel m, n je nejprve třeba seřadit výchozí čísla podle velikosti tak, aby m > n. Dále potřebujeme pomocnou proměnnou r a opakujeme: do r uložíme zbytek po dělení čísla m číslem n. do m uložíme n do n uložíme r Opakování končí, když n = 0. V proměnné m pak je největší společný dělitel. private Point dividevectors(int vectorx, int vectory) { int basevectorx = vectorx; int basevectory = vectory; int pomoc; if (vectorx < vectory) { pomoc = vectorx; vectorx = vectory; vectory = pomoc; } do { pomoc = vectorx % vectory; vectorx = vectory; vectory = pomoc; } while (vectory!= 0); int delitel = vectorx; } Point p=new Point(basevectorX/delitel, basevectory / delitel); return p; 12

4 Vzájemná poloha přímek 4.1 Určení vzájemné polohy Ve vzájemné poloze přímek mohou nastat tři možnosti: rovnoběžné různé, různoběžné nebo shodné. Pokud jsou přímky různoběžné, protínají se v jednom bodě. Tento bod nazýváme průsečík. Přímky lze zadat obecně nebo parametricky. Parametrickou rovnici převedeme na obecnou stejným způsobem jako při vytváření obecné rovnice ze dvou bodů. Pro zjištění vzájemné polohy přímek stačí zjistit rovnost případně nerovnost podílů koeficientů, a. Jestliže, pak jsou přímky shodné Jestliže, pak jsou přímky rovnoběžné různé Jestliže, pak jsou přímky různoběžné Po zjištění vzájemné polohy vykreslíme přímky do grafu a u různoběžek ještě určíme odchylku a průsečík. Obrázek 5 Vzájemná poloha přímky 13

4.2 Určení souřadnic průsečíku Pokud nám vyjde, že přímky jsou různoběžné, hledáme bod, kde se protínají (průsečík P). Pro výpočet souřadnic průsečíku řešíme soustavu rovnic: Z první rovnice vyjádříme vztah: + + 0 + + 0 Dosadíme do druhé rovnice a získáme hodnotu: poloha = "ruznobezne"; y = (c1 * a2 - a1 * c2) / (a1 * b2 - b1 * a2); x = (b1 * y * -1 - c1) / a1; countdeviation(); return "p a q jsou ruznoběžky a prusecik je P[" + x + ";" + y + "]"; 14

4.3 Odchylka Dále zde počítáme odchylku různoběžných přímek φ. Pro výpočet použijeme normálové vektory obou přímek ;, ; cos + + + Metoda Math.Acos(), kterou použijeme k určení velikosti úhlu, vrací výsledek v radiánech. Musíme ještě převést na stupně. private void countdeviation() { double pomoc = Math.Abs(a1 * a2 + b1 * b2) / (Math.Sqrt(a1 * a1 + b1 * b1) * Math.Sqrt(a2 * a2 + b2 * b2)); double fi = (Math.Acos(pomoc) * 180) / Math.PI; } int stupne = (int)fi; fi = (fi - stupne) * 60; int minuty = (int)fi; fi = (fi - minuty) * 60; int vteriny = (int)fi; labelodchylka.text=stupne.tostring() + " " + minuty.tostring() + "'" + vteriny.tostring() + "\""; 15

Závěr Cílem práce bylo vytvořit aplikaci, která po zadání vstupních parametrů vygeneruje rovnice přímek, jak obecné, tak parametrické, určuje jejich vzájemnou polohu a vykresluje přímky do grafu. Při vytváření aplikace jsme se přiučili spoustu věcí jak z programování, tak i z matematiky. Poprvé jsme vytvořili kompletní aplikaci většího rozsahu. Zároveň jsme si vyzkoušeli společnou práci a rádi bychom v naší spolupráci pokračovali. Aplikace pro výuku přímek v rovině je funkční a použitelná při výuce. Na tuto práci plánujeme navázat vytvořením podobné aplikace na téma kuželosečky. 16

Zdroje Vystavěl Radek, Moderní programování učebnice pro začátečníky, ISBN 987-80- 903951-8-3 Vystavěl Radek, Moderní programování učebnice pro středně pokročilé, ISBN 987-80-903951-2-1 Příloha obsah vloženého CD Text práce ve formátu PDF Složka s kompletním zdrojovým kódem Samostatně spustitelná aplikace 17