Vector links of rechts tov van vorige vector bepalen?

Moderators: dirkwb, Xilvo

Reageer
Berichten: 7

Vector links of rechts tov van vorige vector bepalen?

Hi Allemaal.

Ik ben nu al enige tijd aan het proberen een programma te schrijven om een twee dimesionale polygoon om te zetten naar 3d. Hiervoor moet ik deze trianguleren.

Nu heb ik her en der info gevonden en ben er in zovere uit dat ik nu het meest linkse punt kan vinden en globaal het volgende aansluitende punt tegen de klok in.

Met globaal bedoel ik dat het nog niet helemaal goed werkt. Maar wel voor het doel waar ik het voor gebruik. Dus als iemand hier ook en suggestie voor heeft :D

De volgorde van de punten moet dan ook tegen de klok in verzameld worden omdat ik mb daarvan de reflex en convex punten kan vinden.

dat wil zeggen: of het volgende punt ten opzichte van de vorige links(convex) of rechts(dus reflex) af slaat.

Nu de vraag...

hoe doe ik dat??? dus:

hoe bepaal ik of het volgende punt P+1 ten opzichte van de vorige P links of rechtsaf slaat

Afbeelding

in de bovenstaande tekening zie je dat er 2 punten (p4 en p5) zijn die rechtsaf slaan...

Dat zijn de punten (vectoren) die ik mbv een berekening moet zien te vinden..

Bij voorbaat dank

Gilbert

Berichten: 2.746

Re: Vector links of rechts tov van vorige vector bepalen?

Ik snap niet goed hoe je dan die 3d polynoom opstelt. hoe doe je dat?

Berichten: 7

Re: Vector links of rechts tov van vorige vector bepalen?

Hi,

Nou dat is vrij simpel. ik ben een web applicatie aan het maken waarin je eerst de plattegrond van je woonkamer tekent. Dit is dan een 2d polygoon met allemaal xy coordinaten. Als men klaar is met de plattegrond wordt de tekening omgezet naar 3d door de z coordinaat er aan toe te voegen. Dus voor de vloer voeg je aan de xy coordinaten de z coordinaat 0 toe. En voor het plafond is z bijv 3 (voor 3 meter). Nu moet je natuurlijk wel rekenig houden het coordinaten stelsel. want in 3d is de y coordinaat de hoogte en de z en x het horizontale vlak...

ik hoop dat het duidelijk is...

groetjes...

Berichten: 2.746

Re: Vector links of rechts tov van vorige vector bepalen?

in een standaard assenstelsel is z nog steeds de hoogte.

En je originele vraag, je hebt een punt en je zoekt het punt waar de vector uitkomt?

dan gewoon: Pn+1=Pn + Vectorn ?

Berichten: 7

Re: Vector links of rechts tov van vorige vector bepalen?

Laat mij het anders uitleggen.

Stel je voor: je gaat wandelen mbv een kaart zie fig.a.

De punten P1 t/m P6 zijn (x,y) coordinaten die bekend zijn.

Afbeelding

fig.a

Je loopt van P1 naar P2 naar P3 enz.

Om van P1 bij P3 te komen moet je op P2 naar links.

Om van P1 bij P4 te komen moet je 2 keer links, te weten op P2 en P3.

Dus als je een vierkante route (tegen de klok in) volgt moet je 3 keer naar links om bij het begin uit te komen.

In dit geval moet je, om bij je beginpunt uit te komen, ook een keer naar rechts bij P4.

Hoe kan ik aan de hand van de gegevens van de kaart bereken of ik naar links of recht moet..

Groetjes gilbert.

Berichten: 2.746

Re: Vector links of rechts tov van vorige vector bepalen?

ik heb het nog niet 100% door, maar dat ligt waarschijnlijk aan mij.
Hoe kan ik aan de hand van de gegevens van de kaart bereken of ik naar links of recht moet..
\(P_{x_n}<P_{x_{n+1}} \rightarrow rechts \)

Berichten: 7

Re: Vector links of rechts tov van vorige vector bepalen?

Nee dat klopt... :D

Want deze vergelijking gaat niet meer op als je hem toepast op de tekening in mijn eerste post bovenaan. en helemaal niet als de tekening nog ingewikkelder is...

De vergelijking moet op alle hoeken toepasbaar zijn...

Berichten: 2.746

Re: Vector links of rechts tov van vorige vector bepalen?

haja zo, dus je moet altijd meekijken met de vector?

dan zou ik mijn assenstelsel meedraaien met mijn vector, dus als de vector naar boven wijst, neem je een gewoon assenstelsel, als je vector naar beneden wijst, neem je y:=-y;

en om te weten of je vector naar boven of onder wijst; vergelijk de y-compontent van je twee punten (zoals bij mijn vorige post)

Berichten: 2.746

Re: Vector links of rechts tov van vorige vector bepalen?

of dat is misschien een beetje te moeilijk gemaakt;

een gevallenonderzoekje die x en y componenten vergelijkt van twee punten zal het simpelst zijn om te weten of je naar rechts of links moet

Berichten: 7

Re: Vector links of rechts tov van vorige vector bepalen?

Okay... en hoe doe ik dat dan??? :D

Berichten: 2.746

Re: Vector links of rechts tov van vorige vector bepalen?

Afbeelding

Het is een beetje anders dan ik eerst gezegd heb (je moet rekening houden met drie punten, hier een methode (het kan hoogstwaarschijnlijk korter en eleganter, hoewel, dit ziet er hier redelijk programmeerbaar uit :D )

de situatie is zo, je komt van
\(P_{n-1}\)
, draait in
\(P_{n}\)
links of rechts om naar
\(P_{n+1}\)
[visualisatie kan op bovenstaande afbeelding] en; (Px is de x-component van P)

A)
\(Px_n=Px_{n+1}\)
  • \(Py_n-Py_{n-1}<0 \)
    • \(Px_n>Px_{n+1} \rightarrow links\)
    • \(Px_n<Px_{n+1} \rightarrow rechts\)
  • \(Py_n-Py_{n-1}>0 \)
    • \(Px_n>Px_{n+1} \rightarrow rechts\)
    • \(Px_n<Px_{n+1} \rightarrow links\)
B)
\(Py_n=Py_{n+1}\)
volgens volledig dezelfde methode, maareuh, de goesting ontbreekt me ...

(een '>' is snel verkeerd geplaatst, dus ik kan niet direct juistheid garanderen (en ik ben moe))

geef je opmerkingen maar, komt dit overeen met hoe het probleem echt is, of heb ik het verkeerd geinterpreteerd

morgen doe ik eventueel verder

Berichten: 7

Re: Vector links of rechts tov van vorige vector bepalen?

Hmm zo op het eerste gezicht ziet het er goed uit... Ik zal het morgen eens gaan testen...

In ieder geval dank je voor je hulp... :D

Reageer