Algorytmy geometryczne w języku Python

licenciate
dc.abstract.enComputational geometry is devoted to study algorithms and data structures solving problems involving geometric objects (points, segments, lines, polygons). Python implementation of selected computational geometry algorithmsin the plane is presented. Separate clases representing geometric object were built and tools used in geometric algorithms were collected. Exemplary operations: finding the oriented area of a parallelogram, testing segments intersections, sorting points by angles.Three algorithms for computing the convex hull for a finite set of points are presented: the Graham scan algorithm,the gift wrapping (Jarvis march) algorithm, and the quickhull algorithm.Two algorithms solving the point in polygon problem are implemented: the crossing number method and the winding number method. The method of rotating calipers is used to generate all antipodal pairs of points for a convex polygon.Antipodal pairs are used to find a pair of furthest points. The algorithm for finding the orientation of a simple polygonis also implemented. There are algorithms for testing if a polygon is simple (brute force)and if a simple polygon is convex.pl
dc.abstract.plGeometria obliczeniowa zajmuje się badaniem algorytmów i struktur danych rozwiązujących problemy zdefiniowane z użyciem obiektów geometrycznych (punkty, odcinki, proste, wielokąty). W pracy przedstawiono implementację w języku Python wybranych algorytmów geometrii obliczeniowej na płaszczyźnie. Zbudowano szereg klas reprezentujących obiekty geometryczne, a także zebrano narzędzia często używane w algorytmach geometrycznych.Przykładowe operacje to znajdowanie zorientowanego pola równoległoboku, sprawdzanie przecinania się odcinków, sortowanie punktów względem kąta.Przygotowano trzy algorytmy wyznaczające otoczkę wypukłą dla skończonego zbioru punktów: algorytm Grahama, algorytm Jarvisa i algorytm quickhull.Zaimplementowano dwa algorytmy sprawdzające zawieranie się punktu w wielokącie: metoda liczby przecięć i metoda liczby nawinięć. Metoda rotujących suwmiarek została wykorzystana do wygenerowania wszystkich par punktów antypodycznych, które z kolei pozwalają szybko wyznaczyć parę najdalszych punktów. Zaimplementowano algorytm wyznaczający orientację wielokąta prostego. Są algorytmy testujące, czy wielokąt jest prosty (metoda siłowa) i czy wielokąt prosty jest wypukły.pl
dc.affiliationWydział Fizyki, Astronomii i Informatyki Stosowanejpl
dc.areaobszar nauk ścisłychpl
dc.contributor.advisorKapanowski, Andrzej - 100452 pl
dc.contributor.authorPermus, Marcinpl
dc.contributor.departmentbycodeUJK/WFAISpl
dc.contributor.reviewerKapanowski, Andrzej - 100452 pl
dc.contributor.reviewerCieśla, Michał - 101020 pl
dc.date.accessioned2020-07-27T20:51:23Z
dc.date.available2020-07-27T20:51:23Z
dc.date.submitted2019-07-16pl
dc.fieldofstudyinformatykapl
dc.identifier.apddiploma-128459-178736pl
dc.identifier.projectAPD / Opl
dc.identifier.urihttps://ruj.uj.edu.pl/xmlui/handle/item/232223
dc.languagepolpl
dc.subject.encomputational geometry, polygons, convex hull, rotating calipers, two furthest pointspl
dc.subject.plgeometria obliczeniowa, wielokąty, otoczka wypukła, obracające się suwmiarki, dwa najdalsze punktypl
dc.titleAlgorytmy geometryczne w języku Pythonpl
dc.title.alternativeGeometric algorithms with Pythonpl
dc.typelicenciatepl
dspace.entity.typePublication
dc.abstract.enpl
Computational geometry is devoted to study algorithms and data structures solving problems involving geometric objects (points, segments, lines, polygons). Python implementation of selected computational geometry algorithmsin the plane is presented. Separate clases representing geometric object were built and tools used in geometric algorithms were collected. Exemplary operations: finding the oriented area of a parallelogram, testing segments intersections, sorting points by angles.Three algorithms for computing the convex hull for a finite set of points are presented: the Graham scan algorithm,the gift wrapping (Jarvis march) algorithm, and the quickhull algorithm.Two algorithms solving the point in polygon problem are implemented: the crossing number method and the winding number method. The method of rotating calipers is used to generate all antipodal pairs of points for a convex polygon.Antipodal pairs are used to find a pair of furthest points. The algorithm for finding the orientation of a simple polygonis also implemented. There are algorithms for testing if a polygon is simple (brute force)and if a simple polygon is convex.
dc.abstract.plpl
Geometria obliczeniowa zajmuje się badaniem algorytmów i struktur danych rozwiązujących problemy zdefiniowane z użyciem obiektów geometrycznych (punkty, odcinki, proste, wielokąty). W pracy przedstawiono implementację w języku Python wybranych algorytmów geometrii obliczeniowej na płaszczyźnie. Zbudowano szereg klas reprezentujących obiekty geometryczne, a także zebrano narzędzia często używane w algorytmach geometrycznych.Przykładowe operacje to znajdowanie zorientowanego pola równoległoboku, sprawdzanie przecinania się odcinków, sortowanie punktów względem kąta.Przygotowano trzy algorytmy wyznaczające otoczkę wypukłą dla skończonego zbioru punktów: algorytm Grahama, algorytm Jarvisa i algorytm quickhull.Zaimplementowano dwa algorytmy sprawdzające zawieranie się punktu w wielokącie: metoda liczby przecięć i metoda liczby nawinięć. Metoda rotujących suwmiarek została wykorzystana do wygenerowania wszystkich par punktów antypodycznych, które z kolei pozwalają szybko wyznaczyć parę najdalszych punktów. Zaimplementowano algorytm wyznaczający orientację wielokąta prostego. Są algorytmy testujące, czy wielokąt jest prosty (metoda siłowa) i czy wielokąt prosty jest wypukły.
dc.affiliationpl
Wydział Fizyki, Astronomii i Informatyki Stosowanej
dc.areapl
obszar nauk ścisłych
dc.contributor.advisorpl
Kapanowski, Andrzej - 100452
dc.contributor.authorpl
Permus, Marcin
dc.contributor.departmentbycodepl
UJK/WFAIS
dc.contributor.reviewerpl
Kapanowski, Andrzej - 100452
dc.contributor.reviewerpl
Cieśla, Michał - 101020
dc.date.accessioned
2020-07-27T20:51:23Z
dc.date.available
2020-07-27T20:51:23Z
dc.date.submittedpl
2019-07-16
dc.fieldofstudypl
informatyka
dc.identifier.apdpl
diploma-128459-178736
dc.identifier.projectpl
APD / O
dc.identifier.uri
https://ruj.uj.edu.pl/xmlui/handle/item/232223
dc.languagepl
pol
dc.subject.enpl
computational geometry, polygons, convex hull, rotating calipers, two furthest points
dc.subject.plpl
geometria obliczeniowa, wielokąty, otoczka wypukła, obracające się suwmiarki, dwa najdalsze punkty
dc.titlepl
Algorytmy geometryczne w języku Python
dc.title.alternativepl
Geometric algorithms with Python
dc.typepl
licenciate
dspace.entity.type
Publication
Affiliations

* The migration of download and view statistics prior to the date of April 8, 2024 is in progress.

Views
138
Views per month
Views per city
Warsaw
24
Krakow
14
Poznan
11
Gdansk
7
Siedlce
7
Wroclaw
6
Bydgoszcz
4
Częstochowa
4
Katowice
4
Gdynia
3

No access

No Thumbnail Available