Convex Hull

Proiect
8/10 (1 vot)
Domeniu: Calculatoare
Conține 44 fișiere: doc, ppt, gif, htm, cpp, h, exe, txt, resx, ilk, ncb, sln, pdb, suo, dep
Pagini : 24 în total
Cuvinte : 1386
Mărime: 2.71MB (arhivat)
Publicat de: Achim-Amza Lazăr
Puncte necesare: 7

Cuprins

  1. 1. Introducere.2
  2. 2. Fundamentarea teoretică.2
  3. 3. Proiectarea aplicaţiei.6
  4. 4. Implementarea aplicaţiei.9
  5. 5. Concluzie.10
  6. 6. Bibliografie.10

Extras din proiect

1. INTRODUCERE

Tema propusă

În cadrul acestui proiect ne-am propus să abordăm o temă interesantă, diferită de cunoştinţele anterioare. De aceea am ales algoritmul convex hull, având ca şi temă „Determinarea înfăşurătoarei pentru un set de puncte”.

În decursul perioadei de practică am încercat să atingem următoarele obiective:

- Familiarizarea cu structurile de date specifice problemelor de geometrie analitică în plan.

- Implementarea algoritmului de ordine relativă a punctului în plan.

- Determinarea înfăşurătorii convexe a unei mulţimi de puncte.

2. FUNDAMENTAREA TEORETICĂ

Convex Hull-ul mulţimii P = { pi = (xi , yi) R2 / i = 0,n-1} este reprezentată de poligonul convex de arie minimă care încadrează toate punctele mulţimii P.

Figura 1. Poligonul convex

Primul algoritm liniar a fost propus de Sklansky în 1972. Era scurt şi elegant. Din nefericire era incorect. Primul algoritm corect a fost propus de McCallum şi Avis în 1979. Algoritmul considerat ca fiind cel mai bun a fost cel realizat de Melkman în 1987. Este puţin probabil să se realizeze un algoritm mai bun.

Algoritmul este folosit în foarte multe domenii:

a) Calculul drumului / traiectoriei razelor (ex. jocurile video)

b) Gasirea unui drum printre obstacole( path finding )

c) Modele de recunoastere vizuala

d) Sistemul Informatic Geografic

e) Geometrie (ex. estimarea geometrică).

Algoritmi şi Complexităţi

Există mai mulţi algoritmi de calcul al înfaşurătorii convexe. Majoritatea algoritmilor de complexitate O (n log n) necesită o presortare a punctelor, pentru un timp mai bun.

Algoritm Complexitate

Naive Bruteforce O ( n4 )

Better Bruteforce O ( n 3 )

Gift Wrapping (Jarvis March) O ( nh )

Quick Hull O ( nh )

Graham Scan O ( n log n)

Divide and Conquer O (n log n)

Monotone Chain O (n log n)

Incremental O (n log n)

Marriage before Conquest O (n log h)

Shatterhull O (n log h)

Chan’s O (n log h)

n – numărul de puncte

h – numărul de puncte din Convex Hull

Preview document

Convex Hull - Pagina 1
Convex Hull - Pagina 2
Convex Hull - Pagina 3
Convex Hull - Pagina 4
Convex Hull - Pagina 5
Convex Hull - Pagina 6
Convex Hull - Pagina 7
Convex Hull - Pagina 8
Convex Hull - Pagina 9
Convex Hull - Pagina 10
Convex Hull - Pagina 11

Conținut arhivă zip

  • convex hull2
    • convex hull
      • Debug
        • app.res
        • AssemblyInfo.obj
        • BruteForce.obj
        • BuildLog.htm
        • ChainHull.obj
        • convex hull.exe.intermediate.manifest
        • convex hull.obj
        • convex hull.pch
        • convexhull.Form1.resources
        • mt.dep
        • stdafx.obj
        • vc90.idb
        • vc90.pdb
      • app.aps
      • app.ico
      • app.rc
      • AssemblyInfo.cpp
      • BruteForce.cpp
      • ChainHull.cpp
      • ClassDiagram1.cd
      • ClassDiagram2.cd
      • ClassDiagram3.cd
      • convex hull.cpp
      • convex hull.vcproj
      • convex hull.vcproj.ACASA-A95A71688.Andreea.user
      • convex hull.vcproj.HOME-GY4XVD87GM.User.user
      • Form1.h
      • Form1.resx
      • Punct.h
      • ReadMe.txt
      • resource.h
      • stdafx.cpp
      • stdafx.h
      • text.txt
    • Debug
      • convex hull.exe
      • convex hull.ilk
      • convex hull.pdb
      • text.txt
    • convex hull.ncb
    • convex hull.sln
    • convex hull.suo
  • BuildHull.gif
  • Convex Hull.ppt
  • Documentatie.doc

Te-ar putea interesa și

Piața Contractelor Futures

Obiective (1) - Cum au apărut şi care sunt principalele repere temporale în istoria contractelor futures? - Care sunt caracteristicile pieței...

Interpolarea grafică

Prefaţă Grafica pe calculator este un domeniu modern cu multiple aplicaţii practice în diverse domenii de activitate (medicină, artă, etc.), care...

Frigate

Frigate is a name which has been used for several distinct types of warships at different times. It has referred to a variety of ship roles and...

Sisteme de Prelucrare Grafică

Curs nr. 1 Evolutia graficii: Se pot distinge mai multe etape: - grafica simpla care sa fie printata; - modele sau obiecte care trebuiau...

Introducere în IFD

Tematica – Capitolul 1 (PIF11) - CONCEPTUL DE INSTRUMENT FINANCIAR DERIVAT - TIPURI DE INSTRUMENTE FINANCIARE DERIVATE - PARTICIPAN.II PE...

Grafică pe calculator

1.SISTEME GRAFICE 1.1. Sinteza, prelucrarea şi analiza imaginilor Prin sistem grafic se înţelege un ansamblu din echipamente şi programe,...

Noțiuni de matematică folosite la cursul de elemente de grafică pe calculator

Alaturi de folosirea algoritmilor de calcul, pentru a rezolva o problema cu ajutorul calculatorului este necesara modelarea datelor specifice...

Ai nevoie de altceva?