» »

Algoritem za izračun težišča poljubnega 2D lika

Algoritem za izračun težišča poljubnega 2D lika

MaCoFaCo ::

Recimo da imamo koordinate robnih točk nekega 2D lika shranjene v arrayu. Ali težišče izračunamo preprosto tako tako da seštejemo x komponente točk in delimo s številom točk, enako potem še storimo z y komponentami?

Torej nekaj v smislu:

Point[] tocke;
int xSum = 0;
int ySum = 0;

foreach (Point tocka in tocke)
{
xSum += tocka.X;
ySum += tocka.Y;
}

Point tezisce = new Point(xSum / tocke.Length, ySum / tocke.Length);
  • spremenilo: MaCoFaCo ()

Thomas ::

Ne gre tako, da bi upošteval samo robne točke. Vse točke lika pa ja.
Man muss immer generalisieren - Carl Jacobi

Highlag ::

Kaj pa presečišča diagonal, ki povezujejo ogljišča? Pri 4 kotniku bi to verjetno delovalo? :8)
Never trust a computer you can't throw out a window

Thomas ::

Obesiš lik za eno robno točko, da svobodno visi in narišeš navpičnico iz obesišča.

Potem še za eno poljubno drugo točko in spet narišeš navpičnico iz nje.

Sečišče navpičnic je težišče.

No, zdej tale algoritem prevedi v C++, VB, Javo ali kaj drugega takega.
Man muss immer generalisieren - Carl Jacobi

ql000 ::

vsota statičnih momentov (točka x koordinata) ulomljeno z vsoto točk.

Gundolf ::

Lahko bi pa lik najprej razdelil na trikotnike in potem seštel težišča trikotnikov.


Vredno ogleda ...

TemaSporočilaOglediZadnje sporočilo
TemaSporočilaOglediZadnje sporočilo
»

Načrtovanje trikotnika(nujno)

Oddelek: Šola
134270 (4018) euler
»

Lagrangev izrek

Oddelek: Šola
69608 (8620) Genetic
»

Matematika( Limite zaporedja)

Oddelek: Šola
124571 (3777) overman
»

Tocka in trikotnik + 3D

Oddelek: Programiranje
81667 (1512) tomblord
»

poligon

Oddelek: Programiranje
201935 (1637) Thomas

Več podobnih tem