në shtëpi » Kërpudha të ngrënshme » Zhvillimi dhe zbatimi i algoritmeve për trekëndëshimin tredimensional të rajoneve komplekse hapësinore. Optimizimi i algoritmit për kontrollimin e gjendjes Delaunay përmes ekuacionit të rrethit dhe aplikimit të tij

Zhvillimi dhe zbatimi i algoritmeve për trekëndëshimin tredimensional të rajoneve komplekse hapësinore. Optimizimi i algoritmit për kontrollimin e gjendjes Delaunay përmes ekuacionit të rrethit dhe aplikimit të tij

Në përgjithësi, të gjitha algoritmet bazohen në një ide shumë të thjeshtë të shtimit të pikave në mënyrë sekuenciale në një trekëndëshim Delaunay të ndërtuar pjesërisht. Formalisht, duket kështu.

Jepet një grup N pikash.

1. Ndërtojmë një trekëndësh në tre pikat e para të fillimit.

2. Në një lak prej n për të gjitha pikat e tjera, kryeni hapat 3-5.

3. Pika e n-të e radhës i shtohet strukturës së trekëndëshit tashmë të ndërtuar si më poshtë. Së pari, pika lokalizohet, d.m.th. ekziston një trekëndësh (i ndërtuar më herët) në të cilin bie pika tjetër. Ose, nëse pika nuk bie brenda trekëndëshit, një trekëndësh ndodhet në kufirin e trekëndëshit, më afër pikës tjetër.

4. Nëse një pikë bie në një nyje trekëndëshi të futur më parë, atëherë një pikë e tillë zakonisht hidhet, përndryshe pika futet në trekëndësh si një nyje e re. Për më tepër, nëse pika bie në ndonjë skaj, atëherë ajo ndahet në dy të reja, dhe të dy trekëndëshat ngjitur me skajin ndahen gjithashtu në dy më të vegjël. Nëse pika bie rreptësisht brenda një trekëndëshi, ajo ndahet në tre të reja. Nëse pika bie jashtë trekëndëshit, atëherë ndërtohen një ose më shumë trekëndësha.

5. Bëhen kontrolle lokale të trekëndëshave të sapopërfituar për respektimin e kushtit Delaunay dhe kryhen rikonstruksionet e nevojshme.

Fundi i algoritmit.

Më poshtë është një përshkrim i detajuar i disa algoritmeve.

Algoritmi i pangopur

Një nga të parët që propozoi algoritmin e mëposhtëm për ndërtimin e trekëndëshit.

Metoda e babëzitur- kjo është një metodë në të cilën ajo që është bërë më parë nuk zhbëhet kurrë. Algoritmi kryen hapat e mëposhtëm në mënyrë sekuenciale.

1. Skajet e të gjitha segmenteve strukturore vendosen në grupin e pikave fillestare.

2. Gjenerohen segmentet që lidhin të gjitha çiftet e pikave, segmentet renditen sipas gjatësisë.

3. Të gjitha segmentet e vijave strukturore futen në trekëndësh.

4. Për trekëndëshimin, segmentet zgjidhen në mënyrë sekuenciale nga një grup segmentesh të renditura sipas gjatësisë (nga më i shkurtër në më i gjatë). Nëse një segment kryqëzohet me ndonjë prej atyre të futur tashmë, atëherë ai hidhet, përndryshe futet në trekëndësh.

Hapi 4 përsëritet derisa segmentet të mbarojnë.

Vini re se nëse të gjitha segmentet e mundshme kanë gjatësi të ndryshme, atëherë rezultati i këtij algoritmi është i paqartë, përndryshe varet nga rendi i futjes së segmenteve me të njëjtën gjatësi.

Një trekëndësh quhet i pangopur nëse është i ndërtuar nga një algoritëm i pangopur.

Algoritmi "Fshi dhe ndërto"

Remove and Build nuk kryen asnjë rindërtim. Në vend të kësaj, me çdo futje të një nyje të re (a), të gjithë trekëndëshat në të cilët nyja e re (b) bie brenda rrathëve të rrethuar fshihen menjëherë. Në këtë rast, të gjithë trekëndëshat e hequr formojnë në mënyrë implicite një shumëkëndësh. Pas kësaj, në vend të trekëndëshave të hequr ndërtohet një trekëndësh mbushës duke lidhur një nyje të re me këtë shumëkëndësh (Fig. c).

Oriz. 4. Algoritmi "Fshi dhe ndërto"

Ky algoritëm ndërton të gjithë trekëndëshat e nevojshëm përnjëherë, në ndryshim nga algoritmi i zakonshëm iterativ, ku kur futet një nyje, janë të mundshme rindërtimet e shumta të të njëjtit trekëndësh. Sidoqoftë, këtu del në pah procedura për nxjerrjen e konturit të një poligoni të largët, nga efikasiteti i të cilit varet shpejtësia e përgjithshme e algoritmit. Në përgjithësi, në varësi të strukturës së të dhënave të përdorur, ky algoritëm mund të shpenzojë më pak kohë sesa një algoritëm me rindërtime dhe anasjelltas.

Algoritmi "Ndërto duke thyer"

Algoritmi për futjen e segmenteve strukturore "Ndërto me thyerje" është më i thjeshti për t'u zbatuar dhe më i qëndrueshëm në funksionim.

Në të, është e nevojshme, duke lëvizur në mënyrë sekuenciale përgjatë trekëndëshave përgjatë segmentit të futur, për të gjetur pikat e kryqëzimit të tij me skajet e trekëndëshit. Në këto pika kryqëzimi, ju duhet të vendosni nyje të reja trekëndëshi, duke thyer skajet dhe trekëndëshat ekzistues në pjesë. Pas kësaj, të gjithë trekëndëshat e sapondërtuar duhet të kontrollohen për gjendjen Delaunay dhe, nëse është e nevojshme, të rindërtohen pa prekur skajet e fiksuara.


Oriz. 5. Algoritmi "Ndërto duke thyer"

Në disa raste, një disavantazh i këtij algoritmi futjeje mund të jetë krijimi i një numri të madh nyjesh shtesë dhe skajeve trekëndore. Në të njëjtën kohë, në raste të tjera, ky disavantazh bëhet një avantazh, duke parandaluar formimin e trekëndëshave të gjatë të ngushtë, gjë që vlerësohet veçanërisht gjatë modelimit të terrenit.

Një avantazh tjetër i këtij algoritmi të futjes në krahasim me ato të mëvonshme shfaqet kur përpiqeni të futni një segment strukturor në një trekëndësh në të cilin ka skaje të fiksuara midis skajeve që ai kryqëzon. Brinjë të tilla, si të gjithë të tjerët, thjesht ndahen në dy pjesë.

Algoritmi me indeksimin e qendrave të trekëndëshit sipas pemës k-D

Në algoritmin e trekëndëshit me indeksimin e qendrave të trekëndëshit nga një pemë k-D, vetëm qendrat e trekëndëshave vendosen në pemën k-D (me k = 2). Kur fshini trekëndëshat e vjetër, është e nevojshme të hiqni qendrat e tyre nga pema k-D dhe kur ndërtoni të reja, shtoni ato.

Për të kërkuar një trekëndësh që përmban pikën aktuale që futet në trekëndësh, është e nevojshme të kryhet një pyetje pikë jo standarde në pemën k-D. Kërkimi në një pemë duhet të fillojë nga rrënja dhe të zbresë deri te gjethet. Nëse pasardhësit e nyjës aktuale të pemës k-D (drejtkëndëshi që mbyll pasardhësit) nuk mbulojnë pikën aktuale, atëherë është e nevojshme të zgjidhni pasardhësin më afër pikës së kërkimit për zbritje të mëtejshme përgjatë pemës.

Si rezultat, do të gjendet një trekëndësh, qendra e të cilit do të jetë afër pikës së dhënë. Nëse trekëndëshi i gjetur nuk përmban një pikë të caktuar, atëherë duhet të përdorni algoritmin e zakonshëm të kërkimit të trekëndëshit nga algoritmi i thjeshtë iterativ për ndërtimin e trekëndëshit Delaunay.

Për të vlerësuar në mënyrë sasiore cilësinë e trekëndëshit të ndërtuar, ne përcaktojmë dy lloje kriteresh: topologjik dhe gjeometrik.

Kriteri topologjik bazohet në fqinjët më të afërt të një pike nga një grup. Në një rast ideal, një pikë ka 6 fqinjë për një rajon dy-dimensional dhe 12 fqinjë për një rajon tredimensional. Ne marrim një vlerësim topologjik duke përdorur formulën (1), ku është numri total i pikave në zonë, është shkalla ose numri i pikave fqinje të thurura me një pikë të brendshme.

Kriteri gjeometrik bazohet në ndryshimin midis rrathëve të brendashkruar dhe të rrethuar rreth elementit trekëndor të projektimit. Ne marrim një vlerësim gjeometrik duke përdorur formulën (2), ku është numri i trekëndëshave, është rrezja e rrethit të brendashkruar, është rrezja e rrethit të rrethuar.

Algoritme për ndërtimin e trekëndëshit

Ekziston një numër i madh algoritmesh për ndërtimin e trekëndëshit. Ato ndryshojnë në intensitetin e punës, kompleksitetin e zbatimit në një kompjuter dhe qasjet ndaj ndërtimit. Më shumë informacion rreth algoritmeve mund të gjeni në librin e A.V. Skvortsova. Le të shohim disa algoritme.

Një nga të parët që u propozua algoritmi i pangopur ndërtimi i trekëndëshit. Një trekëndëshim i Delaunay quhet lakmitar nëse ndërtohet duke përdorur një algoritëm të babëzitur. Kompleksiteti i algoritmit të babëzitur me disa nga përmirësimet e tij është . Për shkak të një intensiteti kaq të lartë të punës, pothuajse kurrë nuk përdoret në praktikë. Le të shohim algoritmin hap pas hapi:

Hapi 1. Një listë e të gjitha segmenteve të mundshme që lidhin çifte pikash burimore krijohet dhe renditet sipas gjatësisë së segmentit.

Hapi 2. Duke filluar me më të shkurtërin, segmentet futen në trekëndësh në mënyrë sekuenciale. Nëse një segment nuk kryqëzohet me segmente të tjera të futura më parë, atëherë ai futet, përndryshe hidhet.

Vini re se nëse të gjitha segmentet e mundshme kanë gjatësi të ndryshme, atëherë rezultati i këtij algoritmi është i paqartë, përndryshe varet nga rendi i futjes së segmenteve me të njëjtën gjatësi.

Algoritmi iterativ bazohen në një ide shumë të thjeshtë të shtimit të pikave në mënyrë sekuenciale në një trekëndëshim Delaunay të ndërtuar pjesërisht. Kompleksiteti i këtij algoritmi konsiston në kompleksitetin e kërkimit të një trekëndëshi, të cilit i shtohet një pikë në hapin tjetër, kompleksiteti i ndërtimit të trekëndëshave të rinj, si dhe kompleksiteti i rindërtimeve përkatëse të strukturës së trekëndëshit si rezultat i pakënaqësisë. kontrollet e çifteve të trekëndëshave fqinjë të trekëndëshit që rezulton për përmbushjen e kushtit Delaunay. Le të shohim algoritmin hap pas hapi:

Hapi 1. Ne ndërtojmë një trekëndësh në tre pikat e para të fillimit.

Hapi 2. Në ciklin për të gjitha pikat e tjera, kryeni hapat 3-5.

Hapi 3. Pika tjetër e i shtohet strukturës së trekëndëshit tashmë të ndërtuar si më poshtë. Së pari, pika lokalizohet, d.m.th. ekziston një trekëndësh (i ndërtuar më herët) në të cilin bie pika tjetër. Ose, nëse pika nuk bie brenda trekëndëshit, një trekëndësh ndodhet në kufirin e trekëndëshit, më afër pikës tjetër.

Hapi 4. Nëse një pikë bie në një nyje trekëndëshi të futur më parë, atëherë një pikë e tillë zakonisht hidhet, përndryshe pika futet në trekëndësh si një nyje e re. Për më tepër, nëse pika bie në ndonjë skaj, atëherë ajo ndahet në dy të reja, dhe të dy trekëndëshat ngjitur me skajin ndahen gjithashtu në dy më të vegjël. Nëse pika bie rreptësisht brenda një trekëndëshi, ajo ndahet në tre të reja. Nëse pika bie jashtë trekëndëshit, atëherë ndërtohen një ose më shumë trekëndësha.

Hapi 5. Bëhen kontrolle lokale të trekëndëshave të sapopërfituar për respektimin e kushtit Delaunay dhe kryhen rikonstruksionet e nevojshme.

Kur ndërtoni trekëndësha të rinj, dy situata janë të mundshme: pika e shtuar bie ose brenda trekëndëshit ose jashtë tij. Në rastin e parë ndërtohen trekëndësha të rinj dhe fiksohet numri i veprimeve të kryera nga algoritmi. Në të dytën, është e nevojshme të ndërtohen trekëndësha shtesë jashtë trekëndëshit aktual, dhe numri i tyre, në rastin më të keq, mund të jetë i barabartë me? 3. Megjithatë, gjatë të gjithë hapave të algoritmit, nuk do të shtohen më trekëndësha, ku është numri total i pikave fillestare. Prandaj, në të dyja rastet, koha totale e shpenzuar për ndërtimin e trekëndëshave është.

Algoritmi i zinxhirit një nga algoritmet e para efektive për ndërtimin e trekëndëshit bazohet në procedurën e rregullimit të grafikut planar dhe trekëndimit të shumëkëndëshave monoton. Kompleksiteti i këtij algoritmi është se ku është numri i segmenteve fillestare. Le të shohim algoritmin hap pas hapi:

Hapi 1. Nga grupi i segmenteve strukturore fillestare formojmë një grafik planar të lidhur (Figura 4,a).

Hapi 2. Grafiku është i rregulluar, d.m.th. shtohen skaje të reja që nuk kryqëzojnë të tjerat, në mënyrë që çdo kulm i grafikut të bëhet ngjitur me të paktën një kulm mbi të dhe një nën të. Rregullimi bëhet në dy kalime duke përdorur fshirje vertikale të sheshtë. Në kalimin e parë nga poshtë lart, të gjitha kulmet gjenden në mënyrë sekuenciale nga të cilat nuk dalin skajet që çojnë lart. Për shembull, në (Figura 4,b) kjo është kulmi B. Duke tërhequr një vijë horizontale, gjejmë skajet më të afërta të grafikut AD dhe EF që ai pret majtas dhe djathtas. Pastaj në katërkëndëshin DEHG gjejmë kulmin më të ulët dhe vizatojmë një skaj nga B në të Kalimi i dytë nga lart poshtë kryhet në mënyrë të ngjashme (Figura 4,c). Si rezultat i këtij hapi, çdo rajon i grafikut planar bëhet një shumëkëndësh monotonik.

Hapi 3.Çdo rajon i grafikut duhet të ndahet në trekëndësha. Për ta bërë këtë, mund të përdorni algoritmin për bashkimin jo konveks të dy trekëndëshave (Figura 4, d).


Figura 4. Skema e funksionimit të algoritmit të trekëndimit zinxhir: a) - segmentet fillestare; b - kalimi nga poshtë-lart i rregullimit të grafikut; c) - kalimi nga lart poshtë; d) - trekëndëshi i shumëkëndëshave monotonikë

Për të zbatuar një algoritëm të lidhur me zinxhirë, është më mirë të përdoren strukturat e të dhënave në të cilat skajet përfaqësohen në mënyrë eksplicite, të tilla si "Edges dyfishtë" ose "Nyjet, skajet dhe trekëndëshat".

Disavantazhi i algoritmit të zinxhirit është se asgjë nuk mund të thuhet paraprakisht për formën e trekëndëshit që rezulton. Ky nuk është trekëndëshim optimal, jo i babëzitur dhe trekëndësh Delaunay jo i kufizuar. Algoritmi i zinxhirit mund të prodhojë trekëndësha shumë të gjatë të zgjatur.

Për të përmirësuar cilësinë e trekëndëshit që rezulton, mund të kontrolloni të gjitha palët e trekëndëshave ngjitur që nuk janë të ndarë nga një skaj strukturor për gjendjen Delaunay dhe, nëse është e nevojshme, të bëni rindërtime. Rezultati do të jetë një trekëndëshim Delaunay me kufizime.

Trekëndëshi është përafrimi i sipërfaqes së një objekti të modeluar me pllaka trekëndore të larguara prej tij në një distancë që nuk kalon një vlerë të caktuar të caktuar 6. Të gjitha pllakat trekëndore duhet të bashkohen së bashku. Majat e tyre shtrihen në sipërfaqe. Një grup pllakash trekëndore është më i lehtë për t'u punuar sesa një sipërfaqe e përgjithshme. Pllakat trekëndore do t'i quajmë trekëndësha. Për një trekëndësh, distanca në një pikë të caktuar ose pika e kryqëzimit me një vijë të caktuar në hapësirë ​​llogaritet shpejt. Trekëndimi i fytyrave kryhet për perceptimin vizual të modelit gjeometrik, kështu që anët e trekëndëshave zgjidhen në mënyrë që syri të mos vërejë kthesat.

Kur shfaqen objekte gjeometrike me trekëndësha në rrafshet parametrike të sipërfaqeve, duhet të ndërtohet një trekëndësh hapësinor i faqeve të trupit duke llogaritur një sërë pikash në hapësirë ​​dhe një grup normalesh për faqet e trupit në këto pika duke përdorur një grup të Pikat dydimensionale Për të shfaqur shpejt trupat, fytyrat e tyre përafrohen me pllaka trekëndore të ndërtuara në pika normale për të përcaktuar sjelljen e rrezeve të dritës që ndërveprojnë me fytyrat e trupit. Vizatimet e toneve në kapitujt e mëparshëm dhe në këtë kapitull janë bërë duke përdorur trekëndëshim.

Si rezultat i trekëndëshimit të sipërfaqes, ne duam të kemi një grup pikash dydimensionale në një plan parametrik dhe një grup treshe numrash të plotë, që janë numrat e pikave në grupin e parë të përmendur. Kështu, çdo trekëndësh do të përfaqësohet nga tre numra të kulmeve të tij në grupin e parametrave. Për çdo pikë dydimensionale të fushës parametrike, mund të llogaritet një pikë hapësinore në sipërfaqe dhe sipërfaqja normale në të. Pikat hapësinore dhe normalet mund të ruhen në vargje të ngjashme me një grup pikash 2D.

Le të shohim disa metoda të trekëndëshimit. Për sipërfaqet e sheshta, ekzistojnë metoda të trekëndëshimit me kosto efektive në të cilat trekëndëshat ndërtohen në pikat kufitare të sipërfaqes dhe nuk ka nevojë të kërkohen pika brenda rajonit parametrik.

Trekëndëshimi i Delaunay.

Le të shqyrtojmë disa zona në aeroplan. Ne do ta quajmë një zonë konvekse nëse, kur lëvizni përgjatë kufirit të saj, duhet të ktheheni vetëm në një drejtim (vetëm majtas ose vetëm djathtas). Algoritmi Delaunay mund të përdoret për të trekëndëshuar rajonet planare konvekse. Ne nuk do të jemi në gjendje ta zbatojmë drejtpërdrejt këtë algoritëm për të trekëndëshuar sipërfaqet me formë të lirë, por do të përdorim metodën e tij për ndërtimin e trekëndëshave.

Oriz. 9.7.1. Rajoni konveks me pika të dhëna brenda

Le të jepet një rajon konveks dy-dimensional i kufizuar nga një vijë e mbyllur e thyer dhe një grup pikash brenda këtij rajoni (Fig. 9.7.1).

Kërkohet që zona e specifikuar të ndahet në trekëndësha, kulmet e të cilave janë pikat e dhëna brenda zonës dhe kulmet e vijës së thyer që e kufizon atë. Trekëndëshat nuk duhet të mbivendosen me njëri-tjetrin dhe anët e tyre mund të kryqëzohen vetëm në kulme.

Mund të ndërtohen disa grupe të ndryshme trekëndëshash për të mbushur një zonë të caktuar. Në të gjitha rastet, numri i trekëndëshave është i barabartë me , ku K është numri i kulmeve të polivijës kufizuese, I është numri i pikave të dhëna brenda rajonit.

Oriz. 9.7.2. Zgjedhja e pikës së tretë të algoritmit Delaunay

Një trekëndësh i një rajoni do të jetë një trekëndësh Delaunay nëse nuk ka kulme të trekëndëshave të tjerë brenda rrethit të përshkruar rreth çdo trekëndëshi. Trekëndëshi Delaunay ndërton trekëndësha sa më afër njëkëndëshit (nuk lejon ndërtimin e trekëndëshave të zgjatur në mënyrë të paarsyeshme).

Mund të quhet e ekuilibruar. Një trekëndëshim Delaunay do të jetë unik nëse nuk ka katër kulme në të njëjtin rreth.

Le të shqyrtojmë trekëndëshin Delaunay. Kulmet e polivijës që kufizon rajonin dhe pikat e dhëna brenda rajonit do t'i quajmë kulme të trekëndëshit. Brinjët e trekëndëshave do t'i quajmë skaje. Ndër skajet zgjedhim segmente të polivijës kufizuese, të cilat do t'i quajmë skaje kufitare. Le t'i orientojmë të gjitha skajet kufitare në mënyrë që rajoni konveks të shtrihet në të majtë të çdo skaji. Le të jetë e nevojshme të ndërtohet një trekëndësh, ana e të cilit është buza kufitare AB, e paraqitur në Fig. 9.7.2.

Përmes kulmeve A, B dhe çdo kulmi që nuk shtrihet në të njëjtën vijë me to, mund të vizatohet një rreth. Si kulm i tretë i trekëndëshit, zgjedhim kulmin V, rrethi përkatës nuk përmban kulme të tjera në të njëjtën anë në lidhje me segmentin AB në të cilin shtrihet pika V Për një skaj kufitar, në rastin e përgjithshëm, një kulm i tillë mund të gjendet. Ne do ta quajmë atë më të afërt. Qendra e një rrethi që kalon nëpër pikat A, B dhe V shtrihet në kryqëzimin e pinguleve me mesin e segmenteve AB, BV dhe VA. Pozicioni i qendrës së rrethit do të karakterizohet nga parametri t i segmentit MN, pingul me skajin AB, i barabartë në gjatësi dhe kalon nga mesi i skajit AB.

Oriz. 9.7.3. Procesi i trekëndëshimit të Delaunay

Për të gjitha kulmet që shtrihen në të majtë të segmentit AB, kulmi më i afërt ka parametrin më të vogël t. Rrethi që korrespondon me kulmin më të afërt nuk përmban kulme të tjera në të majtë të segmentit AB. Le të përshkruhen kulmet A, B dhe V përkatësisht me vektorë me rreze dydimensionale. Vektorët e rrezes së mespikës së segmenteve AB dhe BV do të jenë të barabartë

Vlera e parametrit t të vijës, që korrespondon me pozicionin në të të qendrës së rrethit që kalon nëpër pikat A, B dhe V, është e barabartë me

Për kulmin më të afërt në të majtë të segmentit AB, parametri t ka një vlerë minimale.

Le t'i orientojmë të gjitha skajet kufitare në mënyrë që zona që do të trekëndëshohet të jetë në të majtë të secilës prej tyre. Fillojmë të ndërtojmë trekëndësha nga çdo skaj i kufirit. Le të gjejmë kulmin më të afërt për të, rrethi përkatës i të cilit nuk përmban kulme të tjera. Le të gjendet kulmi V më i afërt për skajin kufitar AB Më pas ndërtojmë një trekëndësh ABV dhe e transferojmë skajin AB në kategorinë e joaktive. Ne do t'i quajmë skajet dhe kulmet joaktive që nuk marrin pjesë në algoritmin e trekëndëshit. Nëse nuk ka buzë BV midis skajeve kufitare, atëherë ndërtojmë një skaj të ri kufitar në segmentin VB. Nëse midis skajeve kufitare ka një skaj BV, atëherë e transferojmë atë dhe kulmin B në kategorinë e joaktive. Nëse nuk ka buzë VA midis skajeve kufitare, atëherë do të ndërtojmë një skaj të ri kufitar në segmentin AV. Nëse midis skajeve kufitare ka një skaj VA, atëherë e transferojmë atë dhe kulmin A në kategorinë e joaktive. Procesi i trekëndëshit është paraqitur në Fig. 9.7.3.

Oriz. 9.7.4. Trekëndëshimi i Delaunay

Ne përfundojmë trekëndëshimin kur të gjitha kulmet dhe skajet bëhen joaktive. Rezultati i trekëndëshimit të një zone të caktuar është paraqitur në Fig. 9.7.4.

Trekëndëzimi me metodën e korrigjimit.

Le të shqyrtojmë trekëndëshin e një sipërfaqeje të caktuar me një domen drejtkëndor për përcaktimin e parametrave. Le të marrim distancat parametrike ndërmjet vijave ngjitur në përputhje me formulën (9.4.7) të jenë të barabarta

Le të marrim distancat parametrike ndërmjet vijave ngjitur në përputhje me formulën (9.4.8) të jenë të barabarta

Duke ndërtuar diagonale në të gjitha qelizat drejtkëndore, marrim një trekëndësh të sipërfaqes (përftojmë një grup trekëndëshash që plotëson kërkesat). Në Fig. 9.7.5 tregon trekëndëshimin e sipërfaqes së rrotullimit duke përdorur metodën e përshkruar.

Le të shqyrtojmë trekëndëshimin e një sipërfaqeje me një kufi arbitrar. Ne do të ndërtojmë metodën e trekëndëshit mbi korrigjimin me konturet kufitare të trekëndëshit të sipërfaqes të përshkruar më sipër me një zonë drejtkëndore për përcaktimin e parametrave.

Oriz. 9.7.5. Trekëndëshimi i një sipërfaqeje me domen drejtkëndor për përcaktimin e parametrave

Lëreni kufirin e sipërfaqes në domenin e përcaktimit të parametrave të përshkruhet nga disa konture dydimensionale jo të kryqëzuara (2.12.7). Njëra nga konturet është e jashtme dhe përmban konturet e mbetura. Për drejtimin pozitiv për çdo kontur do të marrim drejtimin përgjatë të cilit, kur lëvizim përgjatë, zona e përcaktimit të sipërfaqes është gjithmonë në të majtë të konturit, kur shikojmë drejt sipërfaqes normale. Le të ndërtojmë shumëkëndësha në drejtim pozitiv të kontureve kufitare të zonës së përcaktimit të sipërfaqes. Për të ndërtuar poligone kufitare, duhet të ecni përgjatë kontureve kufitare të sipërfaqes me një hap të ndryshueshëm dhe të plotësoni një grup pikash dydimensionale, koordinatat e të cilave janë parametrat e sipërfaqes. Ne do të ndërtojmë një poligon nga pikat në një plan parametrik, por hapi kur lëviz nga një pikë në tjetrën do të përcaktohet nga gjeometria hapësinore, domethënë, nga kushti që devijimi i harkut të kurbës midis pikave ngjitur të mos jetë më shumë se një i dhënë. vlerë. Ne llogarisim hapat parametrikë për ndërtimin e një shumëkëndëshi për lakoren e konturit të kufirit të sipërfaqes duke përdorur formulën (9.4.4).

Çdo shumëkëndësh përbëhet nga një grup i renditur pikash dydimensionale Çdo seksion i një shumëkëndëshi mund të konsiderohet si një segment i drejtë dydimensional i ndërtuar në dy pika ngjitur. Ne do të përdorim zona të tilla si skaje kufitare dhe pikat e shumëkëndëshave në të cilat bazohen skajet do të përdoren si kulme trekëndore. Meqenëse zona për përcaktimin e parametrave të sipërfaqes shtrihet në të majtë të poligoneve kufitare, kur ndërtoni trekëndësha për çdo skaj të trekëndëshit kufitar, duhet të kërkoni kulmin e tretë të trekëndëshit në të majtë të skajit.

Le të përcaktojmë se cilat nyje shtrihen brenda poligoneve kufitare dhe cilat shtrihen në kufi ose jashtë zonës së përcaktimit të sipërfaqes. Duke përdorur këtë informacion, ne i renditim qelizat e rrjetit drejtkëndor në dy grupe. Grupi i parë përfshin qelizat që shtrihen tërësisht brenda zonës ku përcaktohen parametrat e sipërfaqes (qelizat nuk duhet të prekin poligonet kufitare). Grupi i dytë përfshin qelizat e mbetura (të shtrira jashtë zonës së përcaktimit të sipërfaqes ose të kryqëzuara nga poligonet kufitare).

Oriz. 9.7.6. Trekëndëshim i papërfunduar i sipërfaqes

Brenda çdo qelize të grupit të parë, duke përdorur një diagonale, do të ndërtojmë dy trekëndësha. Kështu marrim një trekëndëshim të papërfunduar. Një shembull i ndërtimit të trekëndëshave në qelizat e grupit të parë për një sipërfaqe rrotullimi të kufizuar nga konturet është paraqitur në Fig. 9.7.6.

Ne do të ndërtojmë skajet kufitare në anët e paprerë të qelizave të grupit të dytë dhe do t'i drejtojmë ato në mënyrë që qeliza përkatëse të jetë në të majtë të skajit. Rreth qelizave të grupit të parë do të ndërtojmë një vijë të mbyllur të thyer (mundësisht disa vija të mbyllura) në mënyrë që kur lëvizim përgjatë saj, pjesa e zonës që nuk ndahet në trekëndësha të shtrihet në të majtë, kur shikon drejt sipërfaqes normale. . Ne gjithashtu do të përdorim seksionet e drejta të kësaj vije të thyer si skaje kufitare. Ne do t'i konsiderojmë të gjitha skajet si të barabarta. Për të përfunduar trekëndëshin, duhet të ndërtojmë trekëndësha midis skajeve të kufirit. Për çdo skaj do të kërkojmë një kulm që shtrihet në të majtë të tij dhe mund të përdoret për të ndërtuar një trekëndësh. Ne do të kërkojmë për një kulm vetëm midis atyre kulmeve që shtrihen në të njëjtën qelizë me skajin. Për të zgjedhur një kulm, ne përdorim metodën Delaunay të përshkruar më sipër dhe të ilustruar në Fig. 9.7.2. Nëse gjendet një kulm i tillë, atëherë duhet të kontrolloni nëse dy skajet e reja të trekëndëshit kryqëzohen me ndonjë skaj kufitar. Le të gjendet kulmi V më i afërt për skajin kufitar AB dhe kontrolloni që segmentet BV dhe VA të mos kryqëzojnë skajet e tjera kufitare. Më pas do të ndërtojmë trekëndëshin ABV dhe do ta transferojmë skajin AB në kategorinë joaktive. Nëse nuk ka buzë BV midis skajeve kufitare, atëherë do të ndërtojmë një skaj të ri kufitar në segmentin VB, por nëse ka një skaj BV midis skajeve kufitare, atëherë do ta transferojmë atë dhe kulmin B në kategorinë e joaktive. Nëse nuk ka buzë VA midis skajeve kufitare, atëherë do të ndërtojmë një skaj të ri kufitar në segmentin AV, por nëse ka një skaj VA midis skajeve kufitare, atëherë do ta transferojmë atë dhe kulmin A në kategorinë e joaktive.

Nëse një segment ose VA kryqëzon skajet e tjera kufitare, atëherë kalojmë në kërkimin e kulmit më të afërt për një skaj tjetër kufitar. Trekëndëzimi do të përfundojë pasi të gjitha skajet dhe kulmet të klasifikohen si joaktive.

Oriz. 9.7.7. Trekëndëzimi me metodën e korrigjimit

Në Fig. 9.7.7 tregon trekëndëshimin e sipërfaqes me metodën e korrigjimit të trekëndëshave në qelizat e kryqëzuara nga konturet kufitare. Në Fig. 9.7.8, duke përdorur trekëndëshin që rezulton, shfaqet vetë sipërfaqja.

Nëse shumëkëndëshat kufitarë dhe sipërfaqja kanë njëfarë simetrie, atëherë trekëndëshimi me metodën e korrigjimit do të ketë një simetri të ngjashme.

Trekëndëzimi me metodën e përthithjes.

Le të shqyrtojmë një metodë tjetër trekëndëshimi. Për sa i përket shpejtësisë, është inferior ndaj trekëndëshit të Delaunay dhe modifikimeve të tij. Për të filluar procedurën e trekëndëshit, është e nevojshme të paraqitet kufiri i sipërfaqes në formën e shumëkëndëshave të mbyllur. Gjatë procesit të trekëndëshimit, do të na duhet të përcaktojmë hapat bazuar në parametrat e sipërfaqes. Me një drejtim të njohur lëvizjeje, këto hapa përcaktohen nga formula (9.4.6). Hapat e përafërt për parametrat e sipërfaqes mund të gjenden si më poshtë. Le të përcaktojmë një rajon në rrafshin e parametrave rreth një pike të caktuar në mënyrë të tillë që çdo segment hapësinor nga pika në pikë në këtë rajon të mos jetë më larg se një vlerë e dhënë S nga sipërfaqja.

Për ta bërë këtë, ne llogarisim rritjet e lejuara të parametrave përgjatë vijave të koordinatave

ku janë koeficientët e formës së parë dhe të dytë kuadratike të sipërfaqes në pikën . Si kufi i rajonit të dëshiruar, marrim një elips me një qendër në një pikë dhe gjysmë boshte. Kjo elipsë ka ekuacionin

Nëse dëshironi të gjeni një pikë në rrafsh pranë një pike në drejtimin e dhënë nga këndi me boshtin dhe, atëherë parametrat e saj do të jenë

Së pari, le të shqyrtojmë një rast më të thjeshtë kur zona e parametrave të sipërfaqes është e kufizuar në një kontur të jashtëm. Ne e përafrojmë kufirin e sipërfaqes me një shumëkëndësh të mbyllur në domenin parametrik. Gjatë ndërtimit të trekëndëshit do të përdorim poligonin punues, të cilin në këtë rast do ta marrim si shumëkëndësh të konturit të jashtëm. Ne do t'i shtojmë pikat e shumëkëndëshit në grupin rezultues të pikave dydimensionale. Ne do të ndërtojmë trekëndësha nga buza e zonës së punës duke e ngushtuar atë derisa të mbeten vetëm tre pika në zonën e punës.

Le të gjejmë një kulm në shumëkëndëshin punues në të cilin ai kthehet në rajon. Një pikë e tillë ekziston gjithmonë dhe këndi i rrotullimit në të është më i vogël. Le ta shënojmë këtë pikë me O dhe parametrat e saj me Afër kësaj pike do të ndërtojmë një ose dy trekëndësha, në varësi të këndit të rrotullimit. Nëse këndi është më i vogël, atëherë në këto tri pika do të ndërtojmë një trekëndësh (Fig. 9.7.9). Përndryshe, mbi këtë do të ndërtojmë dy trekëndësha, dy fqinjë dhe një të re (Fig. 9.7.11). Pika e re caktohet me P. Ne do të kërkojmë pikën P në diagonalen e paralelogramit B OS P. Nëse kulmi i paralelogramit shtrihet brenda elipsit (Fig. 9.7.10), atëherë do ta marrim atë si pikën P. Ndryshe, pikëprerjen e elipsës dhe diagonales së paralelogramit do ta marrim si pikë P. Në rastin e fundit, nuk është aspak e nevojshme të kërkohet kryqëzimi i elipsit dhe segmentit.

Koordinatat e pikës P përcaktohen përmes koordinatave të pikave O BC

Këndi i segmentit OP me horizontalin përcaktohet nga barazia

(9.7.8)

Këto të dhëna bëjnë të mundur përcaktimin e pozicionit të pikës P në raport me elipsin (9.7.5).

Në rastin e treguar në Fig. 9.7.9, le të ndërtojmë një trekëndësh (kujtoni numrat e kulmeve të tij) dhe të fshijmë pikën O në zonën e punës në rastin e treguar në Fig. 9.7.11, do të ndërtojmë dy trekëndësha dhe në zonën e punës do të zëvendësojmë pikën O me pikën P dhe do ta vendosim këtë të fundit në grupin e pikave që rezulton. Në Fig. Në figurën 9.7.12 është paraqitur shumëkëndëshi i përftuar pas ndërtimit të dy trekëndëshave dhe eliminimit të pikës O. Në të dyja rastet, pika O do të hiqet nga shumëkëndëshi punues dhe shumëkëndëshi punues do të ngushtohet. Vini re se trekëndëshat mund të ndërtohen vetëm kur zona e punës, pas ngushtimit, nuk kryqëzohet vetë.

Oriz. 9.7.9. Ndërtimi i një trekëndëshi

Oriz. 9.7.10. Rezultati poligon

Oriz. 9.7.11. Ndërtimi i dy trekëndëshave

Oriz. 9.7.12. Rezultati poligon

Situata të tilla janë paraqitur në Fig. 9.7.13. Ato mund të ndodhin kur anët e trekëndëshave të ndërtuar kryqëzojnë anët e zonës së punës që nuk janë ngjitur me to. Përpara se të ndërtoni një trekëndësh të ri si në rastin e treguar në Fig. 9.7.9, dhe në rastin e treguar në Fig. 9.7.11, duhet të bëhet një kontroll për t'u siguruar që shumëkëndëshi që rezulton nuk kryqëzohet në vetvete.

Për më tepër, gjatë përcaktimit të pozicionit të pikës P, është e rëndësishme që ajo të jetë në një distancë të mjaftueshme nga pikat e tjera të zonës së punës dhe të mos afrohet me segmentet që lidhin pikat e zonës. Përndryshe, në të ardhmen mund të shfaqen vështirësi gjatë ndërtimit të trekëndëshave. Prandaj, përpara se të ngushtoni poligonin e punës, duhet të kontrolloni poligonin që rezulton për vetë-kryqëzimin. Nëse është e pamundur të ndërtoni një trekëndësh (trekëndësha) afër pikës O, atëherë në vend të kësaj duhet të gjeni një pikë tjetër në të cilën poligoni mbështillet brenda konturit më shumë se në të tjerët, dhe të kryeni veprimet e përshkruara në të.

Më pas, me zonën e modifikuar të punës, ne do të kryejmë të njëjtat veprime që sapo përshkruam. Le të gjejmë një pikë në shumëkëndëshin e punës në të cilën ai kthehet brenda zonës më shumë se në pikat e tjera, kontrollojmë mundësinë e ngushtimit të shumëkëndëshit në të duke ndërtuar një ose dy trekëndësha dhe ngushtojmë shumëkëndëshin.

Oriz. 9.7.13. Ju nuk mund të ndërtoni trekëndësha në këtë cep

Në vazhdim të këtij procesi do të zgjerojmë grupin e pikave dydimensionale dhe grupin e trekëndëshave dhe në të njëjtën kohë do të ngushtojmë shumëkëndëshin e punës, duke zvogëluar sipërfaqen që mbulon dhe numrin e pikave të tij. Në një fazë të këtyre veprimeve do të marrim një poligon pune të përbërë nga tre pika. Le të ndërtojmë trekëndëshin e fundit në këto pika, të eliminojmë zonën e punës dhe të përfundojmë trekëndëshin. Në metodën e përshkruar të trekëndëshit, zona e kufizuar nga zona e punës eliminohet, si të thuash, duke prerë trekëndëshat prej saj.

Le të shqyrtojmë rastin e përgjithshëm kur zona e parametrave të sipërfaqes kufizohet nga një kontur i jashtëm dhe disa konture të brendshme që shtrihen tërësisht brenda konturit të jashtëm. Ne e përafrojmë kufirin e sipërfaqes me shumëkëndësha të mbyllur në domenin parametrik. Për çdo kontur do të ndërtojmë poligonin tonë. Ashtu si për konturet, edhe për poligonet e ndërtuara mbi to, duhet të respektohet rregulli i orientimit të tyre reciprok. Orientimi i shumëkëndëshit të brendshëm duhet të jetë i kundërt me orientimin e shumëkëndëshit të jashtëm. Le të fillojmë ndërtimin e trekëndëshit me poligonin konturor të jashtëm. Le t'i vendosim pikat e tij në grupin rezultues të pikave dydimensionale dhe ta bëjmë vetë shumëkëndëshin funksional.

Ne do të ndërtojmë trekëndësha në të njëjtën mënyrë si në rastin e një rajoni thjesht të lidhur. Le të gjejmë pikën O në zonën e punës, të kontrollojmë mundësinë e ngushtimit të zonës së punës atje dhe të ngushtojmë zonën. Nëse ka konturet e brendshme, bëhet më e vështirë të kontrollohet mundësia e ngushtimit të zonës së punës në një pikë të zgjedhur. Përveç kontrolleve të përshkruara për kryqëzimin e brinjëve të trekëndëshave me anët e zonës së punës, është e nevojshme të kontrollohet për kryqëzimin e brinjëve të trekëndëshave me brinjët e të gjithë shumëkëndëshave të brendshëm.

Le të kontrollojmë mundësinë e ndërtimit të dy trekëndëshave në pikën O (Fig. 9.7.11), dhe të gjejmë se pika e re P, pasi të ndërtohet, do të bjerë brenda një prej shumëkëndëshave të brendshëm ose do të jetë në afërsi të papranueshme me segmentet e saj. Në këtë rast, ne nuk do të ndërtojmë pikën P, por përkundrazi do ta përfshijmë këtë shumëkëndësh të brendshëm në poligonin e punës duke ndërtuar dy trekëndëshat e paraqitur në Fig. 9.7.14.

Për të përfshirë pikat e njërit prej shumëkëndëshave të brendshëm në shumëkëndëshin punues, ndër pikat e shumëkëndëshit të brendshëm gjejmë pikën më të afërt me pikën C (në afërsi të pikës O) të shumëkëndëshit punues.

Le të ndërtojmë trekëndësha në pikat OCF dhe CEF dhe midis pikave O dhe C të zonës së punës futim pikat e poligonit të brendshëm, duke filluar nga pika F dhe duke përfunduar me pikën E. Kështu, do të thyejmë zonën e punës në segmentin OS, do të thyejmë poligonin e brendshëm në segmentin EF dhe bashkojini ato me segmentet OF dhe BE.

Oriz. 9.7.14. Ndërtimi i dy trekëndëshave

Oriz. 9.7.15. Bashkimi i shumëkëndëshave të jashtëm dhe të brendshëm

Rezultati i bashkimit është paraqitur në Fig. 9.7.15. Natyrisht, përpara bashkimit të poligonit të jashtëm dhe të brendshëm, duhet të bëhen kontrolle për të siguruar korrektësinë e këtij operacioni.

Më pas, do të vazhdojmë të ngushtojmë zonën e punës në mënyrën e përshkruar derisa të gjejmë veten në afërsi të një zone tjetër të brendshme dhe ta përfshijmë atë në zonën e punës. Si rezultat, të gjithë poligonet e brendshëm do të përfshihen në poligonin e punës, i cili duhet të ngushtohet në tre pikat e fundit. Si rezultat, i gjithë rajoni i lidhur shumëfish për përcaktimin e parametrave të sipërfaqes do të mbulohet me trekëndësha.

Oriz. 9.7.16. Ju nuk mund të ndërtoni trekëndësha në këtë cep.

Mund të ketë situata kur është e pamundur të ndërtohet një trekëndësh i vetëm në shumëkëndëshat e dhënë. Në Fig. Figura 9.7.16 tregon një zonë të kufizuar nga dy poligone, secili prej të cilëve përbëhet nga katër segmente. Për shumëkëndëshin e jashtëm, ne nuk mund të vazhdojmë trekëndëshin sepse shumëkëndëshi i brendshëm është në rrugë. Në këtë rast, do të gjejmë dy pika fqinje B dhe C të shumëkëndëshit, për të cilat mund të ndërtojmë një trekëndësh HRV. Pika P është projektuar në mesin e brinjës BC dhe ndodhet në një distancë të tillë nga ajo që trekëndëshi i ri nuk i pret shumëkëndëshat.

Metoda të tjera të trekëndëshimit.

Ka mënyra të tjera të trekëndëshimit. Për shembull, pas ndërtimit të poligoneve të kontureve të jashtme dhe të brendshme të zonës së përcaktimit të sipërfaqes, mund të zgjidhet një strategji e ndryshme për ndërtimin e trekëndëshave. Një opsion tjetër është të kombinoni poligonin e jashtëm dhe të brendshëm në një shumëkëndësh përpara se të filloni trekëndëshimin. Ju mund të "skiconi" pikat brenda zonës së përcaktimit të parametrave duke përdorur një algoritëm të caktuar dhe të kryeni trekëndëshimin e Delaunay duke përdorur ato dhe pikat e poligoneve të kontureve kufitare. Ka algoritme që fillimisht ndërtojnë trekëndësha të mëdhenj dhe më pas i ndajnë në madhësi të menaxhueshme.

Trekëndëshimi i trupit.

Trekëndëshi i një trupi është një grup trekëndëshash që përftohen nga trekëndëshimi i sipërfaqeve të faqeve të tij. Trekëndëshimi i sipërfaqeve individuale ndryshon nga trekëndëshimi i faqeve të trupit në atë që në rastin e fundit, poligonet kufitare për faqet ngjitur duhet të jenë konsistente (Fig. 9.7.17).

Oriz. 9.7.17. Konsistenca e poligonit të kufirit të fytyrës së trupit

Seksionet e poligoneve të faqeve ngjitur që kalojnë përgjatë skajeve të përbashkëta do të jenë të qëndrueshme nëse pikat e tyre përkojnë në hapësirë.

Zbatimi i trekëndëshit.

Trekëndëshat e ndërtuar si rezultat i trekëndëshit përdoren për të marrë imazhe tonike. Në Fig. 9.7.18 dhe 9.7.19 tregojnë trekëndëshat e faqes së një trupi fletë, imazhi i tonit të së cilës është paraqitur në Fig. 6.5.1.

Oriz. 9.7.18. Trekëndëshimi i fytyrës së trupit duke përdorur metodën e korrigjimit

Ndarja e fushës së përcaktimit të parametrave të sipërfaqes në trekëndësha mund të përdoret në integrale (8.6.2), (8.6.3), (8.6.12), (8.7.17)-(8.7.22) kur llogariten karakteristikat gjeometrike të trupave . Gjatë integrimit numerik, hapi parametrik për kurbat duhet të llogaritet duke përdorur formulën (8.11.5), dhe për sipërfaqet, hapat parametrikë duhet të llogariten duke përdorur formulat (8.11.1) dhe (8.11.2).

Modelet GRID janë modele të qelizave të rregullta.

Le të prezantohet sistemi i koordinatave
Dhe Dhe
. Kompletet e përdoruesve
dhe hapat e kampionimit
.


,

- koordinatat fizike të pikës.

Ne llogarisim
Dhe
,
- rrjetë bit.

- vlerat e kuantizuara. E vërtetë:

- Parametri i algoritmit - numri i pikave, - peshë. Sa më afër pika, aq më e madhe është pesha.

- shkalla e distancës (1 ose 2).

Koeficienti i normalizimit:

Si më afër 1, aq më shumë pikë me peshë më të madhe merren parasysh.

Kjo është metoda IDW - e gjatë, për çdo t është e nevojshme të gjenden fqinjë. Grupi i fqinjëve mund të gjendet me efikasitet - më i afërti. Çdo pikë prodhon një "kunj" të një lartësie të caktuar. Shumë varet nga parregullsia e vendosjes së pikës, për këtë ata marrin
ose
ato. të ndarë në sektorë dhe të ndërtojnë pika në afërsi.

Avantazhi- thjeshtësi

E meta:


------Bileta 14. Model kallaji. Algoritmet e trekëndëshimit të Delaunay------

1) Trekëndësh (kallaj).

Trekëndëshi– ndërtimi i një funksioni në formën e një grupi funksionesh lineare pjesë-pjesë

Trekëndëshi– interpolimi brenda një rajoni konveks.

Trekëndëshi– një grafik planar, të gjitha skajet e brendshme të të cilit janë trekëndësha; një mënyrë për të paraqitur hapësirën në formën e trekëndëshave ngjitur me njëri-tjetrin pa mbivendosje. Trekëndëshi ndërtohet mbi një grup pikash në disa mënyra.

Nevojitet një algoritëm për të ndërtuar trekëndëshim optimal.

Një aeroplan që kalon nëpër 3 pika.

1) Gjeni një trekëndësh që
;

2)
- të ndërtojë një ekuacion të rrafshit.

Për të kontrolluar nëse pikat janë brenda trekëndëshit apo jo, duhet të zëvendësoni vlerën në ekuacionin e vijave - skajet e trekëndëshit. Nëse të 3 ekuacionet > 0, atëherë brenda.

Struktura e prezantimit:

Çdo trekëndësh përmban të njëjtin numër trekëndëshash.

, Ku - numri i pikave të brendshme,
- sasia e pikëve.

Trekëndëshim i pangopur.

Ne i lidhim të gjitha pikat me skajet, zgjedhim minimumin dhe i shtojmë ato në trekëndësh. Më pas, marrim minimumin tjetër që nuk kryqëzohet me ato të mëparshme, etj. Rezultati është trekëndëshi i pangopur.

Trekëndëshimi i Delaunay.

Pjesa e brendshme e një rrethi të rrethuar rreth çdo trekëndëshi nuk përfshin pikat e trekëndëshave të tjerë. Është ndërtuar në të vetmen mënyrë.

Një rrokullisje është një transferim i skajeve. Kjo ju lejon të kaloni nga trekëndëshimi konvencional në trekëndëshimin Delaunay. Për të kontrolluar nëse një pikë i përket një rrethi: zëvendësoni nëse< R, то внутри.

Gjendja Delaunay.

Ekuacioni i një rrethi që kalon nëpër tre pika:

Nëse më pak se zero, atëherë e jashtme, përndryshe - e brendshme.

– Gjendja Delaunay.

Algoritmi për ndërtimin e trekëndëshit të Delaunay:

1) Shtimi i pikave nën hetim– një algoritëm i thjeshtë përsëritës:

Ka një grup
shtoni në trekëndësh, ndërtimi kryhet
ndarje trekëndëshi
rindërtimi. Në fazën zero shtojmë 3-4 pika fiktive, të cilat padyshim mbulojnë zarfin tonë, të gjitha pikat brenda. Më pas hedhim pikën, shikojmë se cilin trekëndësh godet, e ndajmë në 3, për çdo trekëndësh kontrollojmë gjendjen Delaunay dhe kryejmë një transferim të skajeve. Numri mesatar i ndryshimeve të korsive është tre.

Kompleksiteti teorik

2) Metodat e përshpejtimit. Bazuar në pikat statistikisht të varura. Trekëndëshi i farës është trekëndëshi në të cilin ra pika e mëparshme. Pastaj lidhim dy pika - atë të mëparshmen dhe atë të re.

Ne kalojmë nga pika e parë në tjetrën.

Dërgoni punën tuaj të mirë në bazën e njohurive është e thjeshtë. Përdorni formularin e mëposhtëm

Studentët, studentët e diplomuar, shkencëtarët e rinj që përdorin bazën e njohurive në studimet dhe punën e tyre do t'ju jenë shumë mirënjohës.

Postuar në http://www.allbest.ru/

PROJEKT KURSI

NDËRTIMITREKËNDËSHIMETDELAUNAIS

Nga disipline "StrukturatDhealgoritmepërpunimitë dhëna"

përmbajtja

  • Prezantimi
  • 2.1 Algoritmi i pangopur
  • 2.4 Algoritmi me indeksimin e qendrave të trekëndëshitk- D- pemë
  • 3.4 Algoritmi i ventilatorit
  • 4. Pjesa e softuerit
  • konkluzioni

Prezantimi

Sot, në fillim të shekullit të 21-të, njerëzimi po hyn në një qytetërim të ri - një qytetërim i lidhur me depërtimin e kompjuterëve në të gjitha sferat e veprimtarisë njerëzore. Ky qytetërim quhet informacion, virtual, kompjuter.

TeorikeInformatikë- një disiplinë matematikore që përdor metoda matematikore për të ndërtuar dhe studiuar modele të përpunimit, transmetimit dhe përdorimit të informacionit. Ai bazohet në logjikën matematikore dhe përfshin seksione të tilla si teoria e algoritmeve dhe automateve, teoria e informacionit dhe teoria e kodimit, teoria e gjuhëve dhe gramatikave formale, kërkimi i operacioneve dhe të tjera.

Një nga fushat e shkencës teorike kompjuterike është gjeometria llogaritëse , i cili zhvillon metoda për zgjidhjen e problemeve gjeometrike në kompjuter duke përdorur algoritme dhe programe.

Informatikëgjeometriaështë një degë e shkencës kompjuterike që studion algoritmet për zgjidhjen e problemeve gjeometrike. Probleme të tilla gjenden në grafikën kompjuterike, projektimin e qarqeve të integruara, pajisjet teknike, etj. Të dhënat fillestare për probleme të tilla mund të jenë një grup pikash në një plan, një grup segmentesh, një shumëkëndësh etj. Problemet gjeometrike në shkencat kompjuterike hasen mjaft shpesh, pasi kompjuteri është një mjet shumë i përshtatshëm dhe i shpejtë për zgjidhjen e tyre, pasi llogaritja manuale është absolutisht e pazbatueshme këtu.

SynimipunaDhedetyrat: studioni një nga algoritmet përsëritëse për ndërtimin e trekëndëshit Delaunay.

1) Studioni përkufizimet dhe teoremat bazë të problemit të trekëndëshimit të Delaunay;

2) Konsideroni llojet kryesore të algoritmeve përsëritëse për ndërtimin e trekëndëshit;

3) Zbatoni algoritmin "Fshi dhe ndërto" për ndërtimin e trekëndëshit Delaunay.

1. Përshkrimi i përgjithshëm i trekëndëshit të Delaunay

Problemi i ndërtimit të trekëndëshit.

Delaunay është një nga ato bazë në gjeometrinë llogaritëse. Shumë probleme të tjera vijnë deri te ajo përdoret gjerësisht në grafikën kompjuterike dhe në sistemet e informacionit gjeografik për modelimin e sipërfaqeve dhe zgjidhjen e problemeve hapësinore. Detyra e ndërtimit të trekëndëshit të Delaunay u shtrua për herë të parë në vitin 1934 në veprën e matematikanit sovjetik Boris Nikolaevich Delaunay.

TrekëndëshiDelaunay për një grup pikash S në një rrafsh, një trekëndësh DT (S) quhet i tillë që asnjë pikë A nga S nuk gjendet brenda një rrethi të rrethuar rreth ndonjë trekëndëshi nga DT (S) në mënyrë që asnjë nga kulmet e tij të mos jetë një pikë A.

1.1 Analiza e literaturës për këtë temë

SkvortsovA.NË.TrekëndëshiDelaunayDhesajaplikacion. /SkvortsovA.NË. -Tomsk: Shtepi botueseVëllimi. Un-ta,2002 . - 128s. Ky tutorial është ai kryesor për këtë projekt kursi. Ai përshkruan në detaje informacionin teorik të lidhur me trekëndëshimin e Delaunay dhe ofron përkufizime dhe teorema të ndryshme.

Ekzistojnë gjithashtu seksione që përshkruajnë në detaje algoritmet për ndërtimin e trekëndëshave, jepen karakteristikat e tyre krahasuese dhe kompleksiteti i algoritmeve.

Çfarë huazuar: material bazë, informacion teorik, përkufizime, vizatime.

PopovME.A.InformatikëmetodatDheprogramimit. / PopovME.A. -Moska: Shtepi botueseMSU,2008, - 24s. Ky udhëzues metodologjik është një burim ndihmës i literaturës. Disa algoritme përshkruhen nga pikëpamja matematikore, llogariten formulat për ndërtim, si dhe ka një përshkrim të trekëndëshit në hapësirën Euklidiane.

Çfarë huazuar: përshkrim matematikor i trekëndëshit të Delaunay, ndërtim në hapësirën Euklidiane

MedvedevN.N.MetodaVoronoi - DelaunayVkërkimorestrukturatjo kristaloresistemeve/ RAS,Novosibirsk: Shtepi botueseCORAS,2000, - 214 Me. Një libër kushtuar përshkrimit të metodave Voronoi dhe Delaunay në sistemet jo-kristalore.

Çfarë huazuar: vetitë e trekëndëshave të Delaunay, përkufizimi i trekëndëshimit të Delaunay.

1.2 Përkufizimet dhe vetitë themelore

Trekëndëshiështë një graf planar, rajonet e brendshme të të cilit janë të gjitha trekëndësha.

Vetitë:

· Trekëndëshi i Delaunay korrespondon një me një me diagramin Voronoi për të njëjtin grup pikash.

· Si pasojë: nëse nuk ka katër pika në të njëjtin rreth, trekëndëshi i Delaunay është unik.

· Trekëndëshi Delaunay maksimizon këndin minimal midis të gjitha këndeve të të gjithë trekëndëshave të ndërtuar, duke shmangur kështu trekëndëshat "të hollë".

· Trekëndëshimi Delaunay maksimizon shumën e rrezeve të sferave të brendashkruara.

· Trekëndëshimi Delaunay minimizon funksionalitetin diskrete të Dirichlet.

· Trekëndëshimi Delaunay minimizon rrezen maksimale të sferës minimale të ambientit.

· Trekëndëshi Delaunay në rrafsh ka shumën minimale të rrezeve të rrathëve të përshkruar rreth trekëndëshave midis të gjithë trekëndëshave të mundshëm.

Figura 1. Triangulimi.

Konveks trekëndëshim është një trekëndësh për të cilin shumëkëndëshi minimal që përfshin të gjithë trekëndëshat është konveks. Një trekëndësh që nuk është konveks quhet jo konveks.

Detyrë ndërtimi trekëndëshim Nga dhënë rekrutimi dy dimensionale pikëështë problemi i lidhjes së pikave të dhëna me segmente që nuk priten në mënyrë që të formohet një trekëndësh.

Ata thonë se trekëndëshi kënaq gjendje Delaunay , nëse asnjë nga pikat e dhëna të trekëndëshit nuk bie brenda rrethit të rrethuar rreth ndonjë trekëndëshi të ndërtuar.

Trekëndëshithirrurtrekëndëshim Delaunay , nëse është konveks dhe plotëson kushtin Delaunay.

Figura 2. Trekëndëshimi i Delaunay.

1.3 Metoda e topit të zbrazët Delaunay. Ndërtimi në rastin e përgjithshëm

Le të përdorim një top bosh, të cilin do ta lëvizim, duke ndryshuar madhësinë e tij në mënyrë që të mund të prekë pikat e sistemit (A), por të mbetet gjithmonë bosh.

Pra, le të vendosim një top Delaunay bosh në sistemin e pikëve (A). Kjo është gjithmonë e mundur nëse zgjidhni një top mjaft të vogël. Le të fillojmë të rrisim rrezen e tij, duke e lënë qendrën e topit në vend. Në një moment sipërfaqja e topit do të takohet me një pikë i të sistemit (A). Kjo do të ndodhë patjetër, sepse nuk ka zbrazëti pafundësisht të mëdha në sistemin tonë. Ne do të vazhdojmë të rrisim rrezen e topit bosh në mënyrë që pika i të mbetet në sipërfaqen e tij. Për ta bërë këtë, do t'ju duhet të lëvizni qendrën e topit nga pika i. Herët a vonë topi do të arrijë me sipërfaqen e tij një pikë tjetër në sistemin (A).

Fig. 3 - Pllaka Delaunay e një sistemi dy-dimensional pikash

Simplekset Delaunay mbushin hapësirën pa boshllëqe ose mbivendosje.

Sfera e përshkruar e çdo simplex nuk përmban pika të tjera të sistemit brenda vetes.

Le të jetë kjo pika j. Le të vazhdojmë të rrisim rrezen e topit tonë, duke i mbajtur të dyja pikat në sipërfaqen e tij. Ndërsa topi rritet, ai do të arrijë një pikë të tretë të sistemit, pikën k. Në rastin dydimensional, "rrethi ynë bosh" do të fiksohet në këtë moment, d.m.th. Do të bëhet e pamundur të rritet më tej rrezja e tij duke e mbajtur rrethin bosh. Në të njëjtën kohë, ne identifikojmë një konfigurim elementar dy-dimensional të tre pikave (i, j, k), duke përcaktuar një trekëndësh të caktuar, e veçanta e të cilit është se nuk ka pika të tjera të sistemit (A) brenda rrethit të tij. Në hapësirën tre-dimensionale, një top nuk përcaktohet nga tre pika. Le të vazhdojmë të rrisim rrezen e tij, duke mbajtur të tre pikat që gjenden në sipërfaqen e tij. Kjo do të jetë e mundur derisa sipërfaqja e topit të përmbushë pikën e katërt l të sistemit. Pas kësaj, lëvizja dhe rritja e topit bosh do të bëhet e pamundur. Katër pikat e gjetura (i,j,k,l) ​​përcaktojnë kulmet e tetraedrit, i cili karakterizohet nga fakti se brenda sferës së tij të rrethuar nuk ka pika të tjera të sistemit (A). Një tetraedron i tillë quhet Delaunay simplex.

Në matematikë, një simpleks është figura më e thjeshtë në një hapësirë ​​të një dimensioni të caktuar: një tetraedron - në hapësirën tredimensionale; trekëndësh - në dy dimensione. Një tre (katër) pika arbitrare të sistemit që nuk shtrihen në të njëjtin rrafsh përcakton gjithmonë një simpleks të caktuar. Megjithatë, do të jetë një Simplex Delaunay vetëm nëse sfera e përshkruar e tij është bosh. Me fjalë të tjera, thjeshtësimet e Delaunay përcaktohen nga një zgjedhje e veçantë e trinjakëve (katërfishave) të pikave në sistemin (A).

Ne kemi ndërtuar një Delaunay simplex, por duke vendosur topin bosh në vende të ndryshme dhe duke përsëritur të njëjtën procedurë, ne mund të përcaktojmë të tjerat. Thuhet se grupi i të gjitha thjeshtësimeve të Delaunay të sistemit (A) e mbush hapësirën pa mbivendosje dhe boshllëqe, d.m.th. zbaton ndarjen e hapësirës, ​​por këtë herë në katërkëndëshe. Kjo ndarje quhet ndarjaDelaunay(Fig. 3).

1.4 Zbatimi i trekëndëshit të Delaunay

Trekëndëshat Delaunay përdoren shpesh në hapësirën Euklidiane. Pema e shtrirjes minimale Euklidiane është e garantuar të shtrihet në trekëndëshin Delaunay, kështu që disa algoritme përdorin trekëndëshim. Gjithashtu, përmes trekëndëshit të Delaunay, problemi i shitësit udhëtues Euklidian zgjidhet përafërsisht.

Në interpolimin 2D, trekëndëshimi Delaunay e ndan rrafshin në trekëndëshat më të trashë të mundshëm, duke shmangur këndet shumë të mprehta dhe shumë të mprehta. Duke përdorur këto trekëndësha, mund të ndërtoni, për shembull, interpolim bilinear.

Një problem tjetër i hasur shpesh në gjeoinformatikë është ndërtimi i ekspozimeve të shpateve. Këtu është e nevojshme të përcaktohen drejtimet mbizotëruese të shpateve sipas drejtimit kardinal dhe të ndahet sipërfaqja në rajone në të cilat dominon një drejtim i caktuar. Meqenëse përcaktimi i ekspozimit nuk ka kuptim për zonat horizontale të sipërfaqes, zonat që janë horizontale ose kanë një pjerrësi të vogël ndahen në një rajon të veçantë, p.sh.<5 о. По странам света деление обычно выполняется на 4, 8 или 16 частей.

Fig.4. Një shembull i llogaritjes së ekspozimeve të pjerrësisë duke përdorur një model reliev

Problemi i llogaritjes së ekspozimeve të pjerrësisë zakonisht përdoret për të analizuar ndriçimin e Tokës. Në këtë drejtim, shpesh ekziston nevoja për të marrë parasysh gjithashtu pozicionin aktual të Diellit, d.m.th. ekspozimi llogaritet si drejtimi ndërmjet normales në trekëndësh dhe drejtimit drejt diellit.

Kështu, çdo trekëndësh trekëndëshi mund të klasifikohet sipas parimit të përkatësisë në një rajon të caktuar. Pas kësaj, ju vetëm duhet të telefononi algoritmin e përzgjedhjes së rajonit.

2. Përshkrimi i algoritmeve të ndërtimit

Në përgjithësi, të gjitha algoritmet bazohen në një ide shumë të thjeshtë të shtimit të pikave në mënyrë sekuenciale në një trekëndëshim Delaunay të ndërtuar pjesërisht. Formalisht, duket kështu.

E dhënë një tufë me nga N pikë.

1. Ndërtojmë një trekëndësh në tre pikat e para të fillimit.

2. Në një lak prej n për të gjitha pikat e tjera, kryeni hapat 3-5.

3. Pika e n-të e radhës i shtohet strukturës së trekëndëshit tashmë të ndërtuar si më poshtë. Së pari, pika lokalizohet, d.m.th. ekziston një trekëndësh (i ndërtuar më herët) në të cilin bie pika tjetër. Ose, nëse pika nuk bie brenda trekëndëshit, një trekëndësh ndodhet në kufirin e trekëndëshit, më afër pikës tjetër.

4. Nëse një pikë bie në një nyje trekëndëshi të futur më parë, atëherë një pikë e tillë zakonisht hidhet, përndryshe pika futet në trekëndësh si një nyje e re. Për më tepër, nëse pika bie në ndonjë skaj, atëherë ajo ndahet në dy të reja, dhe të dy trekëndëshat ngjitur me skajin ndahen gjithashtu në dy më të vegjël. Nëse pika bie rreptësisht brenda një trekëndëshi, ajo ndahet në tre të reja. Nëse pika bie jashtë trekëndëshit, atëherë ndërtohen një ose më shumë trekëndësha.

5. Bëhen kontrolle lokale të trekëndëshave të sapopërfituar për respektimin e kushtit Delaunay dhe kryhen rikonstruksionet e nevojshme.

fund algoritmi.

Më poshtë jepet të detajuara përshkrim disa algoritme.

2.1 Algoritmi i pangopur

Një nga të parët që propozoi algoritmin e mëposhtëm për ndërtimin e trekëndëshit.

Të pangopurmetodë- kjo është një metodë në të cilën ajo që është bërë më parë nuk zhbëhet kurrë. Algoritmi kryen hapat e mëposhtëm në mënyrë sekuenciale.

1. Skajet e të gjitha segmenteve strukturore vendosen në grupin e pikave fillestare.

2. Gjenerohen segmentet që lidhin të gjitha çiftet e pikave, segmentet renditen sipas gjatësisë.

3. Të gjitha segmentet e vijave strukturore futen në trekëndësh.

4. Për trekëndëshimin, segmentet zgjidhen në mënyrë sekuenciale nga një grup segmentesh të renditura sipas gjatësisë (nga më i shkurtër në më i gjatë). Nëse një segment kryqëzohet me ndonjë prej atyre të futur tashmë, atëherë ai hidhet, përndryshe futet në trekëndësh.

Hapi 4 përsëritet derisa segmentet të mbarojnë.

Vini re se nëse të gjitha segmentet e mundshme kanë gjatësi të ndryshme, atëherë rezultati i këtij algoritmi është i paqartë, përndryshe varet nga rendi i futjes së segmenteve me të njëjtën gjatësi.

Trekëndëshi quhet i pangopur , nëse është ndërtuar nga një algoritëm i pangopur.

2.2 Algoritmi "Fshi dhe Ndërto".

" Fshije Dhe ndërtoj " nuk bëhen ndryshime. Në vend të kësaj, me çdo futje të një nyje të re (a), të gjithë trekëndëshat në të cilët nyja e re (b) bie brenda rrathëve të rrethuar fshihen menjëherë. Në këtë rast, të gjithë trekëndëshat e hequr formojnë në mënyrë implicite një shumëkëndësh. Pas kësaj, në vend të trekëndëshave të hequr ndërtohet një trekëndësh mbushës duke lidhur një nyje të re me këtë shumëkëndësh (Fig. c).

Oriz. 4. Algoritmi "Fshi dhe ndërto"

Ky algoritëm ndërton të gjithë trekëndëshat e nevojshëm përnjëherë, në ndryshim nga algoritmi i zakonshëm iterativ, ku kur futet një nyje, janë të mundshme rindërtimet e shumta të të njëjtit trekëndësh. Sidoqoftë, këtu del në pah procedura për nxjerrjen e konturit të një poligoni të largët, nga efikasiteti i të cilit varet shpejtësia e përgjithshme e algoritmit. Në përgjithësi, në varësi të strukturës së të dhënave të përdorur, ky algoritëm mund të shpenzojë më pak kohë sesa një algoritëm me rindërtime dhe anasjelltas.

2.3 Algoritmi "Ndërto duke thyer"

Algoritmi për futjen e segmenteve strukturore "Ndërto me thyerje" është më i thjeshti për t'u zbatuar dhe më i qëndrueshëm në funksionim.

Në të, është e nevojshme, duke lëvizur në mënyrë sekuenciale përgjatë trekëndëshave përgjatë segmentit të futur, për të gjetur pikat e kryqëzimit të tij me skajet e trekëndëshit. Në këto pika kryqëzimi, ju duhet të vendosni nyje të reja trekëndëshi, duke thyer skajet dhe trekëndëshat ekzistues në pjesë. Pas kësaj, të gjithë trekëndëshat e sapondërtuar duhet të kontrollohen për gjendjen Delaunay dhe, nëse është e nevojshme, të rindërtohen pa prekur skajet e fiksuara.

Oriz. 5. Algoritmi "Ndërto duke thyer"

Në disa raste, një disavantazh i këtij algoritmi futjeje mund të jetë krijimi i një numri të madh nyjesh shtesë dhe skajeve trekëndore. Në të njëjtën kohë, në raste të tjera, ky disavantazh bëhet një avantazh, duke parandaluar formimin e trekëndëshave të gjatë të ngushtë, gjë që vlerësohet veçanërisht gjatë modelimit të terrenit.

Një avantazh tjetër i këtij algoritmi të futjes në krahasim me ato të mëvonshme shfaqet kur përpiqeni të futni një segment strukturor në një trekëndësh në të cilin ka skaje të fiksuara midis skajeve që ai kryqëzon. Brinjë të tilla, si të gjithë të tjerët, thjesht ndahen në dy pjesë.

2.4 Algoritmi me indeksimin e qendrave të trekëndëshit sipas pemës k-D

algoritmi trekëndëshim Me indeksimi qendrat trekëndëshat k-D- pemë vetëm qendrat e trekëndëshave vendosen në pemën k-D (për k = 2). Kur fshini trekëndëshat e vjetër, është e nevojshme të hiqni qendrat e tyre nga pema k-D dhe kur ndërtoni të reja, shtoni ato.

Për të kërkuar një trekëndësh që përmban pikën aktuale që futet në trekëndësh, është e nevojshme të kryhet një pyetje pikë jo standarde në pemën k-D. Kërkimi në një pemë duhet të fillojë nga rrënja dhe të zbresë deri te gjethet. Nëse pasardhësit e nyjës aktuale të pemës k-D (drejtkëndëshi që mbyll pasardhësit) nuk mbulojnë pikën aktuale, atëherë është e nevojshme të zgjidhni pasardhësin më afër pikës së kërkimit për zbritje të mëtejshme përgjatë pemës.

Si rezultat, do të gjendet një trekëndësh, qendra e të cilit do të jetë afër pikës së dhënë. Nëse trekëndëshi i gjetur nuk përmban një pikë të caktuar, atëherë duhet të përdorni algoritmin e zakonshëm të kërkimit të trekëndëshit nga algoritmi i thjeshtë iterativ për ndërtimin e trekëndëshit Delaunay.

3. Vlerësimi i efektivitetit të algoritmeve

Kompleksiteti llogaritës i një algoritmi është një funksion që përcakton varësinë e sasisë së punës së kryer nga një algoritëm nga madhësia e të dhënave hyrëse. Sasia e punës zakonisht matet në koncepte abstrakte të kohës dhe hapësirës të quajtura burime kompjuterike. Koha përcaktohet nga numri i hapave elementare që nevojiten për të zgjidhur një problem, ndërsa hapësira përcaktohet nga sasia e memories ose hapësirës në një medium ruajtjeje.

3.1 Algoritmi i thjeshtë përsëritës

Në një algoritëm të thjeshtë përsëritës, kërkimi për trekëndëshin tjetër zbatohet si më poshtë. Merret çdo trekëndësh që tashmë i përket trekëndëshit (për shembull, i zgjedhur rastësisht), dhe trekëndëshi i kërkuar kërkohet nga kalimet e njëpasnjëshme përgjatë trekëndëshave të lidhur.

Në rastin më të keq, ju duhet të kryqëzoni të gjithë trekëndëshat e trekëndëshit, kështu që kompleksiteti i një kërkimi të tillë është O(N). Megjithatë, mesatarisht, vetëm operacionet e tranzicionit O() kërkohen për të arritur një shpërndarje uniforme në katror. Kështu, kompleksiteti i algoritmit më të thjeshtë përsëritës është në rastin më të keq, dhe mesatarisht -

3.2 Algoritmi përsëritës me indeksimin e trekëndëshit

Kompleksiteti i kërkimit të një trekëndëshi në një pemë R është O(N) në rastin më të keq dhe O(log N) mesatarisht. Në këtë rast, mund të gjenden trekëndësha nga 1 në N, të cilët më pas duhet të kontrollohen. Përveç kësaj, shpenzohet kohë shtesë për mirëmbajtjen e strukturës së pemës - O (log N) sa herë që krijohen dhe fshihen trekëndëshat. Nga kjo gjejmë se kompleksiteti i algoritmit të trekëndëshit me indeksimin e trekëndëshit është në rastin më të keq, dhe mesatarisht - O (N log N).

3.3 Algoritmi përsëritës me indeksimin e qendrave të trekëndëshit sipas pemës k-D

Kompleksiteti i kërkimit të një pike në një pemë k-D është O(N) në rastin më të keq dhe O(logN) në mesatare. Më pas, mund të përdoret procedura e tranzicionit të trekëndëshit, e cila mund të jetë intensive e punës në rastin më të keq O N (). Ka gjithashtu kohë shtesë të shpenzuar për mirëmbajtjen e strukturës së pemës - O N (log) për çdo ndërtim dhe heqje të trekëndëshave.

Nga kjo gjejmë se kompleksiteti i algoritmit të trekëndëshit me indeksimin e qendrave të trekëndëshit është në rastin më të keq, dhe mesatarisht - O (N log N).

3.4 Algoritmi i ventilatorit

Në algoritmin e trekëndëshit të ventilatorit (algoritmi i planit të fshirjes radiale), së pari, nga pikat fillestare, zgjidhet ai që është sa më afër qendrës së masës së të gjitha pikave. Më pas, këndi polar në lidhje me pikën qendrore të zgjedhur llogaritet për pikat e mbetura dhe të gjitha pikat renditen sipas këtij këndi. Pastaj të gjitha pikat lidhen me skaje me pikën qendrore dhe fqinjët e saj në listën e renditur. Pastaj trekëndëshimi plotësohet në një konveks. Dhe së fundi, trekëndëshi është rindërtuar plotësisht për të përmbushur kushtin Delaunay.

Kompleksiteti i një algoritmi të tillë është mesatarisht O N (). Algoritmi funksionon me afërsisht të njëjtën shpejtësi si algoritmi i mëparshëm.

4. Pjesa e softuerit

Programi u zhvillua në mjedisin e zhvillimit të Microsoft Visual Studio 2012. Aplikacioni është një dritare në të cilën përdoruesi mund të shtojë në mënyrë arbitrare pikat që lidhen menjëherë në një trekëndëshim Delaunay. Në të djathtë është një listë e koordinatave të të gjitha pikave të shtuara.

kryesore. cpp - funksionet e dritares, funksionet për të punuar me ndërfaqen e përdoruesit

delon. cpp - algoritmi dhe funksionet që janë të nevojshme për të punuar me të

Përshkrimi i funksioneve të programit:

void DrawPoint (int x, int y) - funksion për vizatimin e një pike në dritaren e aplikacionit

void Triangulation() - funksion për të kryer trekëndëshim

void TriangulationIn () - një funksion për kryerjen e veprimeve me pikat që janë brenda trekëndëshit

void TriangulationOut () - një funksion për kryerjen e veprimeve me pikat që janë jashtë trekëndëshit.

Për të punuar me aplikacionin, përdoruesi duhet të klikojë në zonën e dëshiruar, pas së cilës ndërtohet trekëndëshi Delaunay.

algoritmi i softuerit trekëndor delaunay

Oriz. 6. Ndërfaqja e programit

konkluzioni

Në këtë punim u zhvillua një program mbi bazën e të cilit ndërtohet trekëndëshi Delaunay.

Gjithashtu u arritën të gjitha qëllimet dhe objektivat, përkatësisht, u studiua një nga algoritmet përsëritëse për ndërtimin e trekëndëshit Delaunay; u studiuan përkufizimet dhe teoremat bazë të problemit të trekëndëshimit të Delaunay; merren parasysh llojet kryesore të algoritmeve përsëritëse për ndërtimin e trekëndëshit; Është zbatuar një algoritëm për ndërtimin e trekëndëshit të Delaunay.

Lista e literaturës së përdorur

1. Skvortsov A.V. Trekëndëshimi i Delaunay dhe aplikimi i tij. /Skvortsov A.V. - Tomsk: Shtëpia botuese Tom. Univ., 2012. - 128 f.

2. Popov S.A. Metodat llogaritëse dhe programimi. / Popov S.A. - Moskë: Shtëpia Botuese e Universitetit Shtetëror të Moskës, 2008, - 24 f.

3. Medvedev N.N. Metoda Voronoi-Delaunay në studimin e strukturës së sistemeve jo-kristalore / RAS, Novosibirsk: Shtëpia Botuese SB RAS, 2009, - 214 f.

Postuar në Allbest.ru

Dokumente të ngjashme

    Metoda e topit të zbrazët Delaunay. Ndarje e thjeshtë (trekëndëshim). Veçoritë e rregullimit relativ të thjeshtësimeve të Delaunay. Algoritmi për ndërtimin e një rrethi Delaunay. Aftësitë e programimit duke përdorur teknologjinë e Microsoft Windows Presentation Foundation.

    puna e kursit, shtuar 14.05.2011

    Studimi i aftësive të programit "Sipërfaqja": shqyrtimi i metodave për ndërtimin e izolinave, diagramet Voronoi, profilet, grafikët e interpoluar, vizualizimi tredimensional, sipërfaqet duke përdorur metodën e trekëndimit Delaunay dhe llogaritja e zonave të vijës së shikimit.

    përmbledhje, shtuar 02/11/2010

    Hulumtimi teorik i çështjes dhe zbatimi praktik. Informacione të përgjithshme rreth grafikëve. Algoritmi i Dijkstra. Karakteristikat e punës në mjedis. Implementimi i softuerit. Përshkrimi i algoritmit dhe strukturës së programit. Përshkrimi i softuerit. Teksti i programit.

    puna e kursit, shtuar 27/11/2007

    Ndërtimi i bllok diagrameve – paraqitje grafike të algoritmeve digjitale të filtrimit. Opsionet e mundshme për sintetizimin e strukturave duke përdorur shembullin e filtrave rekurzivë. Ndërtimi i ekuacionit të diferencës së filtrave të tillë me regjistrimin e funksionit të sistemit në formë të përgjithshme.

    prezantim, shtuar 19.08.2013

    Përshkrimi i zgjidhjes së projektimit të sistemit strategjik, fazat e analizës dhe dizajnit të orientuar nga objekti. Përshkrimi i lidhjeve ndërmjet objekteve. Implementimi i softuerit, ndërtimi i një modeli të gjendjeve të objektit. Manuali i përdoruesit dhe përshkrimi i programit.

    puna e kursit, shtuar 17.11.2011

    Karakteristikat kryesore të algoritmeve evolucionare. Përshkrimi i algoritmeve të përzgjedhjes, mutacionit, kryqëzimit të përdorur për zbatimin e algoritmeve gjenetike. Llogaritja e funksionit të fitnesit. Implementimi i softuerit. Testimi dhe manuali i përdorimit.

    puna e kursit, shtuar 03/11/2014

    Fazat e zhvillimit të grafikës kompjuterike. Koncepti i përgjithshëm rreth grafikës tredimensionale. Organizimi i procesit të ndërtimit të projektimit. Modeli i telit, prerja e fytyrave jo të fytyrës, rrotullimi. Zbatimi i softuerit të ndërtimit të imazhit. Ndërtimi i modeleve komplekse.

    puna e kursit, shtuar 06/11/2012

    Rrjetet semantike si modele të përfaqësimit të njohurive. Metodat themelore për përcaktimin e ngjashmërisë së modeleve grafike të sistemeve. Një metodë për zgjidhjen e problemeve të përcaktimit të ngjashmërisë së rrjeteve semantike bazuar në kompleksitetin e tyre. Zhvillimi i algoritmeve dhe zbatimi i softuerit të tyre.

    tezë, shtuar 17.12.2011

    Përshkrimi i procesit të skanimit në një formë të thjeshtuar. Përshkrimi i komponentëve të metamodelit dhe gjendjet e tyre të mundshme. Iniciatorët dhe rezultantët, klasa ekuivalente. Operacionet në procese: ripozicion, reduktim, përbërje. Ndërtimi i rrjetës Petri dhe vetitë e saj.

    puna e kursit, shtuar më 13/06/2011

    Ndërtimi i një modeli konceptual dhe metodë simulimi. Përcaktimi i ekuacioneve të ndryshueshme të një modeli matematikor dhe ndërtimi i një algoritmi modelimi. Përshkrimi i përmirësimeve të mundshme në sistem dhe modeli përfundimtar me rezultatet.



Artikulli i mëparshëm: Artikulli vijues:

© 2015 .
Rreth sajtit | Kontaktet
| Harta e faqes