Matematické Fórum

Nevíte-li si rady s jakýmkoliv matematickým problémem, toto místo je pro vás jako dělané.

Nástěnka
22. 8. 2021 (L) Přecházíme zpět na doménu forum.matweb.cz!
04.11.2016 (Jel.) Čtete, prosím, před vložení dotazu, děkuji!
23.10.2013 (Jel.) Zkuste před zadáním dotazu použít některý z online-nástrojů, konzultovat použití můžete v sekci CAS.

Nejste přihlášen(a). Přihlásit

#1 23. 12. 2015 15:54

unknow005
Příspěvky: 115
Škola: "Výběrová" Střední
Pozice: Programátor
Reputace:   
 

Bod nalevo, nebo napravo od roviny dané dvěma směrovými vektory

Dobrý den,

mohl bych poprosit o radu s určením polohy 3D bodu (zda-li je napravo, nebo nalevo) od roviny, která je popsaná dvěma směrovými jednotkovými vektory - Up Vektor a Direction Vektor. Pro lepší pochopení, jsem nakreslil jednoduchý obrázek níže. Rovina může ležet "jakkoliv" v prostoru.

Děkuji.


//forum.matweb.cz/upload3/img/2015-12/82414_vektory.jpg

Offline

 

#2 24. 12. 2015 00:29

check_drummer
Příspěvky: 5513
Reputace:   106 
 

Re: Bod nalevo, nebo napravo od roviny dané dvěma směrovými vektory

↑ unknow005:
Ahoj, zkus tu rovinu vyjádřit v obecné poloze jako (1) ax+by+cz+d=0 a pak to, zda je bod vlevo nebo vpravo určíš podle toho, za výraz na levé strany rovnosti (1) je buď kladný nebo záporný.


"Máte úhel beta." "No to nemám."

Offline

 

#3 24. 12. 2015 13:02

unknow005
Příspěvky: 115
Škola: "Výběrová" Střední
Pozice: Programátor
Reputace:   
 

Re: Bod nalevo, nebo napravo od roviny dané dvěma směrovými vektory

Děkuji za typ. Popřemýšlel jsem a z jednotkového Up Vektoru a jednotkového Direction Vektoru si spočítám Normálový Vektor:

// cross vektor
vNormal[0] := ((vUP[1] * vDIRECT[2]) - (vUP[2] * vDIRECT[1]));
vNormal[1] := ((vUP[2] * vDIRECT[0]) - (vUP[0] * vDIRECT[2]));
vNormal[2] := ((vUP[0] * vDIRECT[1]) - (vUP[1] * vDIRECT[0]));

Bod "Pxyz" (bod ze kterého směřují všechny tři jednotkové vektory) znám. Chápu tedy dobře, že když dosadím bod "Fxyz" do rovnice, tak mi mohou vyjít tři řešení:
1) rovnice se rovná 0 = bod "Fxyz" je součástí roviny
2) rovnice je záporná, nebo kladná = bod "Fxyz" leží na jedné, nebo druhé straně roviny

Jen mi nějak uniká ta rovnice. Nějaká rada?

Děkuji.

Offline

 

#4 25. 12. 2015 23:28

check_drummer
Příspěvky: 5513
Reputace:   106 
 

Re: Bod nalevo, nebo napravo od roviny dané dvěma směrovými vektory

↑ unknow005:
No jestliže máš normálový vektor p,q,r té roviny, tak její rovnice je px+qy+rz+D=0 pro nějaké D - a D např. zjištíš tak, že za x,y,z dosadíš nějaký bod, o kterém víš, že v té rovině leží.


"Máte úhel beta." "No to nemám."

Offline

 

#5 26. 12. 2015 08:03

unknow005
Příspěvky: 115
Škola: "Výběrová" Střední
Pozice: Programátor
Reputace:   
 

Re: Bod nalevo, nebo napravo od roviny dané dvěma směrovými vektory

Chápu to tedy správně?

Mám bod P = [4, 7, -1]
Mám normálový vektor (jednotkový) n = [0.2, 0.1, 0.7]
Chtěl bych zjistit, zda-li bod F = [12, 4, -8] leží nalevo, nebo napravo od roviny:

1) dosadím normálový vektor do rovnice: 0.2x + 0.1y + 0.7z + d = 0
2) dosadím bod F do rovnice: 0.2*12 + 0.1*4 + 0.7*-8 + d = 0
3) počítáme: 2.4 + 0.4 + (-5.6) + d = 0
                                       -2.8 + d = 0
                                                 d = 2.8

Je to správně?

Díky!

Offline

 

#6 26. 12. 2015 17:02

check_drummer
Příspěvky: 5513
Reputace:   106 
 

Re: Bod nalevo, nebo napravo od roviny dané dvěma směrovými vektory

↑ unknow005:
Ahoj, bod p leží v té rovině? Pokud nao, pak v bodě 2) musíš dosadit souřadnice nikoli bodu F, ale bodu P. Tak zjistíš d. A pak teprve (když znáš d, můžeš dosadit souřadnice bodu F a zkoumat, zda výsledné číslo je kladné nebo záporné.


"Máte úhel beta." "No to nemám."

Offline

 

#7 26. 12. 2015 20:59

unknow005
Příspěvky: 115
Škola: "Výběrová" Střední
Pozice: Programátor
Reputace:   
 

Re: Bod nalevo, nebo napravo od roviny dané dvěma směrovými vektory

Aha, takže dosadím nejprve bod P, který leží v rovině (z něj vychází směrové vektory):
    0.2*4 + 0.1*7 + 0.7*-1 + d = 0
                 0.8 + 0.4 - 0.7 + d = 0
                                          d = -1.9

a teď když znám d, tak dosadím bod F:
    0.2*12 + 0.1*4 + 0.7*-8 - 1.9 = 0
              2.4 + 0.4 + (-5.6) - 1.9 = 0
                                          -4.7 = 0

Vyšlo záporné číslo, takže bod leží na některé straně od roviny? Tak je to správně?

Díky!

Offline

 

#8 27. 12. 2015 01:33

check_drummer
Příspěvky: 5513
Reputace:   106 
 

Re: Bod nalevo, nebo napravo od roviny dané dvěma směrovými vektory

↑ unknow005:
Ještě je potřeba zjisit, co je "napravo" - pokud máš nějaký bod F o kterém víš, že leží např. napravo a po doszaení do té rovnice dostaneš záporné číslo, tak víš, že bodům napravo budou odpovídat záporná čísla.


"Máte úhel beta." "No to nemám."

Offline

 

#9 04. 01. 2016 06:58

unknow005
Příspěvky: 115
Škola: "Výběrová" Střední
Pozice: Programátor
Reputace:   
 

Re: Bod nalevo, nebo napravo od roviny dané dvěma směrovými vektory

↑ check_drummer:

Díky za pomoc. Po vložení do aplikace to vypadá, že vše funguje.

Offline

 

Zápatí

Powered by PunBB
© Copyright 2002–2005 Rickard Andersson