LifeTally
Dichtstbijzijnde punt en afstand tot een 3D-lijnstuk
Waar ligt het dichtstbijzijnde punt op je eindige 3D-lijnstuk, en hoe ver ligt je punt ervan?
Voer de eindpunten A en B en punt P in. Bereken het dichtstbijzijnde punt Q, de positie van A naar B en de rechte afstand P–Q.
Je lijnstuk en punt
Gebruik dezelfde loodrechte cartesische assen, gelijke schaal en één coördinaateenheid voor A, B en P. Voer breuken als decimalen in, niet als a/b. De eindpunten behouden hun volgorde. Verticale, horizontale en tot één punt samengevallen lijnstukken zijn toegestaan.
Zo werkt de schatting
Stel d = B − A en u = P − A. Bij verschillende eindpunten geldt w = d·d > 0 en t = min(1, max(0, (u·d)/w)). Dan is Q = A + t d en de afstand √((Px − Qx)² + (Py − Qy)² + (Pz − Qz)²). t = 0 geeft A, t = 1 geeft B; een inwendig punt heeft 0 < t < 1. De gekwadrateerde afstand langs A + t d is een kwadratische functie met vrij minimum bij (u·d)/w. Beperking tot [0,1] geeft dus het minimum op het eindige lijnstuk. Als A = B, is Q = A en kiezen we t = 0 als afspraak. Afstand vereist altijd alle negen coördinaten; bij verschillende eindpunten geldt dat ook voor t, Q en de ligging. Bij bekende samenvallende eindpunten blijven t = 0, Q en die toestand bekend bij ongeldige P; de invoerfouten blijven zichtbaar en de afstand onbekend. Exacte decimale breuken van de geaccepteerde getallen worden vóór de eindafronding gebruikt. Afgeronde t of Q worden niet hergebruikt.
d = B − A; u = P − A; w = d · d
w > 0: t = min(1, max(0, (u · d) ÷ w))
Q = A + t d; |P − Q| = √((Px − Qx)² + (Py − Qy)² + (Pz − Qz)²)
A = B: Q = A; t = 0Alleen één opgegeven punt en één gesloten eindig recht lijnstuk in de driedimensionale euclidische ruimte, inclusief beide eindpunten. Samenvallende eindpunten en een punt op het lijnstuk zijn geldig; dat punt heeft afstand nul. Geen afstand tot een oneindige rechte, halfrechte, gebroken lijn, kromme, oppervlak, volumeobject of maas, geografische locatie of wegroute. Geen grafiek of 3D-weergave, eenhedenconversie, controle van metingen, onzekerheidsschatting of garantie voor fysieke passing of veiligheid. Exacte vergelijkingen gebruiken de geaccepteerde getallen zonder tolerantie rond nul en bewijzen geen eigenschappen van gemeten voorwerpen.
CGAL: gesloten 3D-lijnstuk en samenvallende eindpunten ↗OpenStax: inwendig product en vectorprojectie ↗
Controleer het ingevulde voorbeeld
Ons gekozen voorbeeld: A = (−2, 1, −1), B = (4, 1, 3), P = (−1, 3, 4). d = (6, 0, 4), u = (1, 2, 5), u·d = 26 en d·d = 52. Dus t = 0,5, Q = (1, 1, 1) ligt inwendig en P–Q = √17 ≈ 4,12311 coördinaateenheden. Dit zijn wiskundige voorbeeldcoördinaten, geen gemeten of aanbevolen afmetingen.
Geaccepteerde invoerwaarden
- Eindpunt A: x-coördinaat
- -2
- Eindpunt A: y-coördinaat
- 1
- Eindpunt A: z-coördinaat
- -1
- Eindpunt B: x-coördinaat
- 4
- Eindpunt B: y-coördinaat
- 1
- Eindpunt B: z-coördinaat
- 3
- Punt P: x-coördinaat
- -1
- Punt P: y-coördinaat
- 3
- Punt P: z-coördinaat
- 4
Plan je volgende stap
Gebruik de standaardrekenmachine voor losse bewerkingen. Controleer de volgorde van de eindpunten, bedoelde assen en gelijke eenheden voordat je de geometrie interpreteert.
Open de standaardrekenmachine →