Punt buiten driehoek berekenen
Ik heb een driehoek (eigenlijk een veelhoek). En ik wil daaromheen een evenwijdige driehoek tekenen met afstand m. Als ik de coordinaten van punt a, b, c weet, hoe bereken ik dan b' ?
Floris
Iets anders - donderdag 15 juli 2004
Antwoord
Ik noem A=(a1,a2) B=(b1,b2) C=(c1,c2)
We verschuiven nu driehoek ABC zo dat het beeld van B in de oorsprong O komt te liggen: O=(0,0), P=(p1,p2)=(a1-b1,a2-b2) Q=(q1,q2)=(c1-b1,c2-b2) Lijn OP heeft vergelijking p1·y-p2·x=0 Lijn OQ heeft vergelijking q1·y-q2·x=0
Er zijn twee lijnen evenwijdig met OP op afstand m: p1·y-p2·x=+/-m·Ö(p12+p22)
Er zijn twee lijnen evenwijdig met OQ op afstand m: q1·y-q2·x=+/-m·Ö(q12+q22) Het juiste teken kunnen we bepalen m.b.v. de uitdrukking d=q2·p1-p2·q1.
We krijgen: p1·y-p2·x=-sign(d)·Ö(p12+p22)=r en q1·y-q2·x=sign(d)m·Ö(q12+q22)=s (sign(d) is het teken van d) Het snijpunt van deze twee lijnen is x=(r·q1-s·p1)/(q2·p1-p2·q1)=(r·q1-s·p1)/d y=(r·q2-s·p2)/d
Met gebruikmaking van sign(d)/d=1/|d| en teruginvullen van r en s krijgen we: x=-m·(Ö(p12+p22)·q1+Ö(q12+q22)·p1)/|d| y=-m·(Ö(p12+p22)·q2+Ö(q12+q22)·p2)/|d| (|d|=abs(d) is de absolute waarde van d)
Terugschuiven naar de oorspronkelijke driehoek en met gebruikmaking van de volgende afspraken: A=(a1,a2) B=(b1,b2) C=(c1,c2) p1=a1-b1 p2=a2-b2 q1=c1-b1 q2=c2-b2 d=q2·p1-p2·q1. lp=Ö(p12+p22) lq=Ö(q12+q22) krijgen we dan uiteindelijk: xb'=b1-m·(lp·q1+lq·p1)/|d| yb'=b2-m·(lp·q2+lq·p2)/|d|
En dat vind ik een behoorlijk mooi antwoord!
Mocht het gaan om 3 punten in de ruimte: A=(a1,a2,a3) B=(b1,b2,b3) C=(c1,c2,c3) neem dan
p1=a1-b1 p2=a2-b2 p3=a3-b3 q1=c1-b1 q2=c2-b2 q3=c3-b3 lp=Ö (p12+p22+p32) lq=Ö(q12+q22+q32) Voor d kan dan genomen worden: d=Ö(lp2*lq2-(p1q1+p2q2+p3q3)2) We krijgen dan: xb'=b1-m·(lp·q1+lq·p1)/d yb'=b2-m·(lp·q2+lq·p2)/d zb'=b3-m·(lp·q3+lq·p3)/d
Een afleiding van deze formule kan handig gebeuren langs de volgende weg:
Het punt b' moet liggen op de bissectrice van hoek ABC. Het punt b', het punt b en de projectie van B op BC (of BA) vormen een rechthoekige driehoek. Het is dan mogelijk de lengte van het lijnstuk bb' uit te drukken in m en de hoek ABC: Het lijnstuk bb' heeft de lengte m/sin(0.5hoek(ABC)). Dit combineren met een vectorvoorstelling van de bissectrice van hoek ABC levert dan bovenstaande formule.
donderdag 15 juli 2004
©2001-2024 WisFaq
|