Jump to content
php.lv forumi

Recommended Posts

Posted

Esmu ticis līdz man īsti neatkožamam sortēšanas algoritmam. Proti - ir dotas virsotnes, kuras jāsakārto pulksteņrādītāja kustības virzienā. It kā atradu http://www10.dcccafe.com/ng/article.php?id...hics.algorithms algoritmu, bet ir gadījumi, kad man viņš nestrādā. Piemēram, ja punkti ir no Latvijas kontūrām. Viss ir normāli, līdz jāprecizē ir, piemēram, Rīgas līci. Tad tas algoritms iedomājas, ka punkts pie Jūrmalas ir nevis punkts pēc Kolkas, bet pēc Pāvilostas.

Ir gadījumi, kad viss strādā kā vajag. Pieļauju, ka problēma ir centra punkta izvēlē. To izvēlos vienkarši noskaidrojot min+max/2 (gan pa X gan pa Y). Bet laikam Latvijas gadījumā tas īsti neder.

 

Tad nu jautājums - ir kāds saprātīgs veids, kā punktus sakārtot pulksteņrādītāja kustības virzienā?

Posted (edited)

man liekas, ka centra x būs average(x1, x2 ... xn) un y savukārt average(y1, y2.. yn); nevis vidējais starp "maximālo" un "minimālo" punktu

Edited by v3rb0
Posted (edited)

Arī tādu variantu biju iedomājies, bet tas nenostrādāja.

Taču pamēģināšu vēlreiz. Ja nu iepriekš kaut ko ne tā uzrakstīju.

 

Update: Pamēģināju vēlreiz - v3rb0 tavs variants neder.

Visas cerības uz bubu, ka viņš kā spēļu koderis zinās šīs ģeometriskās lietas atrisināt :)

Edited by Endijs
Posted (edited)

sin & cos ir tavs draugs, nosakot lenķus ( arccos un arcsin, precīzāk ;) un tos jau sakārtot ir viegli.

Edited by Kavacky
Posted

Tagad nožēloju, ka ģeometriju nemācijos tik cītīgi kā vajadzēja.

Skatos uz tām figūrām, leņķiem un netopu gudrs. Laikam ka jau nav tādas domāšanas tad nav. Bet neko darīt - vajadzēs vai nu pazīlēt vai arī uzmeklēt kādu funkciju. Domāju, ka jābūt kaut kam +- gatavam jau.. tikai kur šams slēpjas :D

×
×
  • Create New...