Drop links or images here to add them to the editor.

Gegeven

Naast zijn liefde voor Wilma en dieren, gaat Erik op regelmatige basis naar verschillende escaperooms doorheen heel Vlaanderen. Deze hobby van hem loopt volgens zijn ouders lichtjes uit de hand, maar toch houdt het hem niet tegen om op een zaterdag met zijn vrienden 2 uur te treinen om toch maar ergens een escape room te kunnen bezoeken waar ze nog niet geweest zijn.

In één van zijn laatste escaperooms, kwamen ze op een wel heel merkwaardig probleem uit. Ze moesten op een kaart een bepaalde locatie vinden in het midden van een futuristische stad, maar kregen hiervoor enkel coördinaten aan de rand van de stad. Na verder zoekwerk, vonden ze onderaan een stoel een stappenplan gekleefd. Volg hetzelfde stappenplan om deze opgave te automatiseren met Python.

Escape room.

Opgave

Schrijf de functie middelpunt(coordinaten) die het middelpunt van een cirkel bepaalt. coordinaten is een lijst met 3 coordinaten (tuples) die op deze cirkel vallen. De functie geeft het coordinaat van het middelpunt als tuple als antwoord. Rond het coordinaat af op 3 decimalen.

Je mag ervan uitgaan dat de 3 punten niet op 1 rechte liggen.

Stappenplan

Gegeven 3 willekeurige punten A, B en C.

Stappenplan.

\[\mathsf{x_{middel} = \dfrac{q_{2} - q_{1}}{rico_{\text{LoodrechtAB}} - rico_{\text{LoodrechtBC}}}} \qquad \text{en} \qquad \mathsf{y_{middel} = rico_{\text{LoodrechtAB}} \cdot x_{middel} + q_{1}}\]

waarbij

\[\mathsf{q_{1} = y_{1} - (rico_{\text{LoodrechtAB}} \cdot x_{1})} \qquad \text{en} \qquad \mathsf{q_{2} = y_{2} - (rico_{\text{LoodrechtBC}} \cdot x_{2})}\]

\(\mathsf{q_{1}}\) wordt hier bepaald door de ene rechte (met D en \(\mathsf{rico_{\text{LoodrechtAB}}}\)) en \(\mathsf{q_{2}}\) wordt bepaald door de andere rechte (met E en \(\mathsf{rico_{\text{LoodrechtBC}}}\)).

Voorbeelden

>>> middelpunt([(0, 0), (1, 1), (2, 0)])
(1, 0)
>>> middelpunt([(-7, 3), (4, -2), (8, 6)])
(0.444, 4.778)