Een boog programmeren in een grafiek van excel met visual basic

Moderators: jkien, Xilvo

Reageer
Berichten: 18

Een boog programmeren in een grafiek van excel met visual basic

In een module van VB berekenen ik de coordinaten van twee punten. Nu wil ik een boog tekenen tussen deze twee punten met een radius van 20mm en deze in een grafiek zetten in Excel. Een rechte lijn lukt wel, maar heb geen idee hoe ik een boog kan maken.

Berichten: 18

Re: Een boog programmeren in een grafiek van excel met visual basic

Of te wel in het kort: hoe kan ik in een grafiek van Excel een radius maken tussen twee punten.

Re: Een boog programmeren in een grafiek van excel met visual basic

Je zult denk ik een aantal tussenliggende punten moeten berekenen en daartussen lijnstukjes tekenen? Zowieso moet je aangeven of het middelpunt van de boog onder of boven de boog moet liggen, want er zijn er twee mogelijk. Als ik moet helpen met een formule roep je maar, misschien totdat iemand met de VBA routine opdraaft?

Berichten: 18

Re: Een boog programmeren in een grafiek van excel met visual basic

Het middelpunt ligt boven de boog, maar hoe bereken ik ook alweer meer punten uit die op de cirkel liggen?

Gebruikersavatar
Berichten: 7.390

Re: Een boog programmeren in een grafiek van excel met visual basic

Je hebt het middelpunt van je boog? En je hebt reeds een punt op de cirkel?

Dan maak je gebruik van
\(x^2 + y^2 = r^2\)
r=20 mm

x en y stellen de coördinaten van een punt op de boog voor. Dus je neemt een x-waarde die niet verder dan r van het middelpunt ligt, en met bovenstaande formule vind je de bijhorende y-waarde.

Met x en y is een nieuw punt bepaald.
"C++ : Where friends have access to your private members." Gavin Russell Baker.

Berichten: 18

Re: Een boog programmeren in een grafiek van excel met visual basic

Als het middelpunt van de cirkel niet in de oorsprong ligt. Hoe kun je dan de cirkel verplaatsen.

Coordinaten van het middelpunt zijn namelijk (-8.6.-3.5)

Re: Een boog programmeren in een grafiek van excel met visual basic

De lengte van een lijnstuk in xy-vlak is
\(l=\sqrt{(x1-x0)^2+(y1-y0)^2}\)
Voor een cirkel is x0,y0 het middelpunt en moet de lengte altijd r zijn. Dus wordt de vergelijking
\((x-x0)^2+(y-y0)^2=r^2\)
met x0=-8,6 en y0=-3,5 en natuurlijk r=20 in jouw geval. Dus krijg je
\((x+8,6)^2+(y+3,5)^2=400\)
Let even op de tekens tussen de haakjes, + en - worden verwisseld omdat jouw middelpunt negatieve coordinaten heeft.

Reageer