Raksti

1.4: Daudzstūri


1.4: Daudzstūri

Šīs īpašības attiecas uz visiem parastajiem daudzstūriem, neatkarīgi no tā, vai tie ir izliekti vai zvaigznīti.

Regulārs ndaudzpusējam daudzstūrim ir kārtības rotācijas simetrija n.

Visas regulārā daudzstūra virsotnes atrodas uz kopēja apļa (ap to apli), t.i., tie ir konkikliski punkti. Tas ir, regulārs daudzstūris ir ciklisks daudzstūris.

Kopā ar vienāda garuma malu īpašību tas nozīmē, ka katram regulārajam daudzstūrim ir arī uzrakstīts aplis vai aplis, kas pieskaras visām pusēm viduspunktā. Tādējādi regulārs daudzstūris ir tangenciāls daudzstūris.

Regulārs ndaudzpusīgu daudzstūri var konstruēt ar kompasu un taisni tikai tad, ja nepāra galvenie faktori ir n ir atšķirīgi Fermat pamatskaitļi. Skatīt konstruējamo daudzstūri.

Simetrija Rediģēt

Animetrijas simetrijas grupa nvienpusējs parastais daudzstūris ir divdimensiju grupa Dn (2. kārtasn): D2, D3, D4,. Tas sastāv no rotācijām Cn, kopā ar refleksijas simetriju n asis, kas iet caur centru. Ja n pat tad puse no šīm asīm iet caur divām pretējām virsotnēm, bet otra puse - pretējo malu viduspunktu. Ja n ir nepāra, tad visas asis iet caur virsotni un pretējās puses viduspunktu.

Visi parastie vienkāršie daudzstūri (vienkāršais daudzstūris ir tāds, kas nekrustojas nekur) ir izliekti. Arī tie, kuriem ir vienāds sānu skaits, ir līdzīgi.

An nvienpusējs izliekts regulārs daudzstūris tiek apzīmēts ar tā Schläfli simbolu <n>. Priekš n & lt 3, mums ir divi deģenerēti gadījumi:

Monogons <1> Deģenerējas parastajā telpā. (Lielākā daļa autoritāšu monogonu neuzskata par patiesu daudzstūri, daļēji tāpēc, un arī tāpēc, ka zemāk esošās formulas nedarbojas, un tā struktūra nav neviena abstrakta daudzstūra struktūra.) Digons <2> "dubultlīnijas segments" Deģenerējas parastajā telpā. (Dažas iestādes tāpēc neuzskata digonu par patiesu daudzstūri.)

Noteiktos apstākļos visi aplūkotie daudzstūri būs regulāri. Šādos apstākļos ir ierasts nomest prefiksu regulāri. Piemēram, visām vienveidīgo daudzskaldņu sejām jābūt regulārām, un tās tiks aprakstītas vienkārši kā trīsstūris, kvadrāts, piecstūris utt.

Leņķi Rediģēt

Par regulāru izliektu n-gon, katram iekšējam leņķim ir mērs:

n tuvojas bezgalībai, iekšējais leņķis tuvojas 180 grādiem. Regulāram daudzstūrim ar 10 000 sāniem (miriagons) iekšējais leņķis ir 179,964 °. Palielinoties sānu skaitam, iekšējais leņķis var būt ļoti tuvu 180 °, un daudzstūra forma tuvojas apļa formai. Tomēr daudzstūris nekad nevar kļūt par apli. Iekšējā leņķa vērtība nekad nevar kļūt precīzi vienāda ar 180 °, jo apkārtmērs faktiski kļūtu par taisnu līniju. Šī iemesla dēļ aplis nav daudzstūris ar bezgalīgi daudzām malām.

Diagonāles Rediģēt

Parastajam n-gon, kas ierakstīts rādiusa vienības rādiusā, attālumu no noteiktās virsotnes līdz visām pārējām virsotnēm (ieskaitot blakus esošās virsotnes un virsotnes, kas savienotas ar diagonāli) reizinājums n.

Punkti plaknē Rediģēt

Par regulāru vienkāršu n-gon ar apkārtmēru R un attālumi di no patvaļīga punkta plaknē līdz virsotnēm mums ir [1]

Interjera punkti Rediģēt

Parastajam n- perpendikulāro attālumu summa no jebkura iekšējā punkta līdz n puses ir n reizes apotēms [3]: lpp. 72 (apotēma ir attālums no centra līdz jebkurai pusei). Šis ir Viviani teorēmas vispārinājums par n= 3 gadījums. [4] [5]

Circumradius Edit

Circradius R no regulāra daudzstūra centra uz vienu no virsotnēm ir saistīta ar sānu garumu s vai uz apotēmu a pēc

Perpendikulāru summa no parastā n-gon virsotnes jebkurai līnijai, kas pieskaras apkārtmēram, ir vienādas n reizes apkārtmērs. [3]: lpp. 73.

Kvadrāta attālumu summa no parastā virsotnēm n-gon līdz jebkuram tās apļa punktam ir vienāds ar 2nR 2 kur R ir apkārtmērs. [3]: 73. lpp

Kvadrāta attālumu summa no parastā sānu viduspunktiem n-gon līdz jebkuram apļa punktam ir 2nR 2 − ns 2/4, kur s ir sānu garums un R ir apkārtmērs. [3]: lpp. 73.

Sadalījumi Rediģēt

Koksets apgalvo, ka katrs zonogons (a 2m-gon, kuru pretējās puses ir paralēlas un vienāda garuma), var sadalīt (n 2) < displaystyle < tbinom <2> >> vai m(m-1) / 2 paralelogrami. Šīs flīzes ir ietvertas kā virsotņu, malu un seju apakškopas taisnstūra projekcijās m-kubi. [6] Jo īpaši tas attiecas uz parastajiem daudzstūriem ar vienmērīgi daudzām malām, un tādā gadījumā paralelogrami ir rhombi. OEIS: A006245 sarakstā norādīts mazāku daudzstūru risinājumu skaits.

Izlases piemērs atlasītiem vienpusējiem parastajiem daudzstūriem
2m 6 8 10 12 14 16 18 20 24 30 40 50
Attēls
Rombas 3 6 10 15 21 28 36 45 66 105 190 300

Rediģēt apgabalu

Platība A izliekta regulāra ndaudzpusīgs daudzstūris ar sānu s, apkārtmērs R, apothem a, un perimetru lpp dod [7] [8]

Parastajiem daudzstūriem ar sānu s = 1, apkārtmērs R = 1 vai apotēma a = 1, rodas šāda tabula: [9] (ņemiet vērā, ka kopš bērnu gultiņa ⁡ x → 1 / x < displaystyle gultiņa x rightarrow 1 / x> kā x → 0 < displaystyle x rightarrow 0>, [10 ] apgabals, kad s = 1 < displaystyle s = 1> tiecas uz n 2/4 π < displaystyle n ^ <2> / 4 pi>, jo n < displaystyle n> aug liels.)

Skaits
no sāniem
Platība, kad puse s = 1 Apgabals, kad apkārtmērs R = 1 Apgabals, kad apotēma a = 1
Precīzi Tuvināšana Precīzi Tuvināšana Kā (aptuvens)
daļa no
apļa apkārtne
Precīzi Tuvināšana Kā (aptuvens)
vairākkārtējs
apļa laukums
n n 4 bērnu gultiņa ⁡ (π n) < displaystyle < tfrac <4>>cot left(< frac > pa labi)> n 2 sin ⁡ (2 π n) < displaystyle < tfrac <2>>sin left(< frac <2pi >> pa labi)> n 2 π sin ⁡ (2 π n) < displeja stils < tfrac <2pi >>sin left(< frac <2pi >> pa labi)> n tan ⁡ (π n) < displaystyle n tan left (< tfrac < pi>> pa labi)> n π tan ⁡ (π n) < displeja stils < tfrac > an left(< frac > pa labi)>
3 3 4 < displaystyle < tfrac < sqrt <3>> <4> >> 0.433012702 3 3 4 < displaystyle < tfrac <3 < sqrt <3>>> <4> >> 1.299038105 0.4134966714 3 3 < displaystyle 3 < sqrt <3> >> 5.196152424 1.653986686
4 1 1.000000000 2 2.000000000 0.6366197722 4 4.000000000 1.273239544
5 1 4 25 + 10 5 < displaystyle < tfrac <1> <4>> < sqrt <25 + 10 < sqrt <5> >>>> 1.720477401 5 4 1 2 (5 + 5) < displaystyle < tfrac <5> <4>> < sqrt << tfrac <1> <2>> pa kreisi (5 + < sqrt <5>> pa labi ) >>> 2.377641291 0.7568267288 5 5 - 2 5 < displaystyle 5 < sqrt <5-2 < sqrt <5> >>>> 3.632712640 1.156328347
6 3 3 2 < displaystyle < tfrac <3 < sqrt <3>>> <2> >> 2.598076211 3 3 2 < displaystyle < tfrac <3 < sqrt <3>>> <2> >> 2.598076211 0.8269933428 2 3 < displaystyle 2 < sqrt <3> >> 3.464101616 1.102657791
7 3.633912444 2.736410189 0.8710264157 3.371022333 1.073029735
8 2 + 2 2 < displaystyle 2 + 2 < sqrt <2> >> 4.828427125 2 2 < displaystyle 2 < sqrt <2> >> 2.828427125 0.9003163160 8 (2 - 1) < displaystyle 8 left (< sqrt <2>> -1 right)> 3.313708500 1.054786175
9 6.181824194 2.892544244 0.9207254290 3.275732109 1.042697914
10 5 2 5 + 2 5 < displaystyle < tfrac <5> <2>> < sqrt <5 + 2 < sqrt <5> >>>> 7.694208843 5 2 1 2 (5 - 5) < displaystyle < tfrac <5> <2>> < sqrt << tfrac <1> <2>> pa kreisi (5 - < sqrt <5>> pa labi ) >>> 2.938926262 0.9354892840 2 25 - 10 5 < displaystyle 2 < sqrt <25-10 < sqrt <5> >>>> 3.249196963 1.034251515
11 9.365639907 2.973524496 0.9465022440 3.229891423 1.028106371
12 6 + 3 3 < displaystyle 6 + 3 < sqrt <3> >> 11.19615242 3 3.000000000 0.9549296586 12 (2 - 3) < displaystyle 12 left (2 - < sqrt <3>> right)> 3.215390309 1.023490523
13 13.18576833 3.020700617 0.9615188694 3.204212220 1.019932427
14 15.33450194 3.037186175 0.9667663859 3.195408642 1.017130161
15 [11] 17.64236291 [12] 3.050524822 0.9710122088 [13] 3.188348426 1.014882824
16 [14] 20.10935797 4 2 - 2 < displaystyle 4 < sqrt <2 - < sqrt <2> >>>> 3.061467460 0.9744953584 [15] 3.182597878 1.013052368
17 22.73549190 3.070554163 0.9773877456 3.177850752 1.011541311
18 25.52076819 3.078181290 0.9798155361 3.173885653 1.010279181
19 28.46518943 3.084644958 0.9818729854 3.170539238 1.009213984
20 [16] 31.56875757 [17] 3.090169944 0.9836316430 [18] 3.167688806 1.008306663
100 795.5128988 3.139525977 0.9993421565 3.142626605 1.000329117
1000 79577.20975 3.141571983 0.9999934200 3.141602989 1.000003290
10,000 7957746.893 3.141592448 0.9999999345 3.141592757 1.000000033
1,000,000 79577471545 3.141592654 1.000000000 3.141592654 1.000000000

No visa n-gons ar noteiktu perimetru, tas, kura platība ir vislielākā, ir regulāra. [19]

Dažus parastos daudzstūrus ir viegli konstruēt, izmantojot kompasu, un taisnvirziena citus parastos daudzstūrus nemaz nevar uzbūvēt. Senie grieķu matemātiķi prata konstruēt regulāru daudzstūri ar 3, 4 vai 5 malām [20]: lpp. xi un viņi prata uzbūvēt regulāru daudzstūri ar divkāršu dotā regulārā daudzstūra malu skaitu. [20]: 49. – 50. Lpp. Tas izraisīja jautājumu: vai ir iespējams konstruēt visi regulāri n-gons ar kompasu un taisni? Ja nē, kuru n-goni ir konstruējami un kuri nē?

Karls Frīdrihs Gauss 1796. gadā pierādīja parasto 17 gonu konstruējamību. Piecus gadus vēlāk viņš izstrādāja Gausa periodu teoriju savā Disquisitiones Arithmeticae. Šī teorija ļāva viņam formulēt pietiekamu nosacījumu regulāru daudzstūru konstruēšanai:

Regulārs n-gon var konstruēt ar kompasu un taisni, ja n ir 2 un jebkura skaita atšķirīgu Fermat pamatu (ieskaitot nevienu) reizinājums.

(Fermat prime ir formas 2 (2 n) + 1 primārais skaitlis. < Displaystyle 2 ^ <(2 ^)> + 1.>) Gauss bez pierādījumiem paziņoja, ka arī šis nosacījums ir nepieciešams, taču nekad nepublicēja savus pierādījumus. Pilnīgu nepieciešamības pierādījumu Pjērs Gvelcels sniedza 1837. gadā. Rezultāts ir pazīstams kā Gausa – Wantzela teorēma.

Līdzvērtīgi regulārs n-gon ir konstruējams tikai un vienīgi tad, ja tā kopējā leņķa kosinuss ir konstruējams skaitlis, tas ir, to var uzrakstīt četru aritmētisko pamatoperāciju un kvadrātsakņu iegūšanas izteiksmē.


Kubā ir slīps parasts sešstūris, kas redzams kā 6 sarkanas malas zig-zagging starp divām plaknēm, kas ir perpendikulāras kuba diagonālajai asij.

Zig-zagging sānu malas a n-antiprisms apzīmē regulāru šķībumu 2n-gon, kā parādīts šajā 17 gonu antiprismā.

A regulārs šķībs daudzstūris 3 telpā var redzēt kā neplānotus ceļus, kas zig-zagging starp divām paralēlām plaknēm, kas definētas kā vienotas antiprizmas sānu malas. Visas malas un iekšējie leņķi ir vienādi.


Platoniskās cietās vielas (tetraedrs, kubs, oktaedrs, dodekaedrs un ikozaedrs) satur Petrie daudzstūrus, kas šeit redzami sarkanā krāsā, ar attiecīgi 4, 6, 6, 10 un 10 malām.

Vispārīgāk regulāri šķībi daudzstūri var definēt n-telpa. Piemēri ir Petrie daudzstūri, daudzstūru malas, kas regulāru politopu sadala divās pusēs, un tiek uzskatītas par regulāru daudzstūri ortogonālā projekcijā.

Bezgalīgajā robežā regulāri šķībi daudzstūri kļūt par šķībiem apeirogoniem.

Neizliekts regulārs daudzstūris ir regulārs zvaigžņu daudzstūris. Visizplatītākais piemērs ir pentagramma, kurai ir tādas pašas virsotnes kā piecstūrim, bet kas savieno mainīgas virsotnes.

Par nvienpusējs zvaigznes daudzstūris, Schläfli simbols tiek modificēts, lai norādītu blīvums vai "zvaigznīte" m daudzstūra, kā <n/m>. Ja m ir, piemēram, 2, tad katrs otrais punkts ir savienots. Ja m ir 3, tad katrs trešais punkts ir savienots. Daudzstūra robeža vijas ap centru m reizes.

Regulāras (nedeģenerētas) zvaigznes līdz 12 malām ir:

m un n jābūt koprimam, vai arī figūra deģenerēsies.

Deģenerētās parastās zvaigznes līdz 12 pusēm ir:

  • Tetragons - <4/2>
  • Sešstūri - <6/2>, <6/3>
  • Astoņstūri - <8/2>, <8/4>
  • Eneagons - <9/3>
  • Decagons - <10/2>, <10/4> un <10/5>
  • Dodecagons - <12/2>, <12/3>, <12/4> un <12/6>

Atkarībā no precīzā Schläfli simbola atvasināšanas viedokļi par deģenerētās figūras raksturu atšķiras. Piemēram, <6/2> var apstrādāt divos veidos:

    Lielu daļu 20. gadsimta (skat., Piemēram, Kokseteru (1948)) mēs parasti esam ņēmuši / 2, lai norādītu, ka katra izliekta virsotne <6> ir savienota ar tās tuvākajiem kaimiņiem divu soļu attālumā, lai iegūtu regulāru divu trijstūru savienojumu. vai heksagramma.

Visi parastie daudzstūri ir duāli salīdzināmi un nepāra n tie ir identitātes divējādie.

Turklāt parastās zvaigžņu figūras (savienojumi), kas sastāv no regulāriem daudzstūriem, ir arī pašduplālas.

Vienveidīgajam daudzstūrim ir regulāri daudzstūri kā sejas, tā ka katrai divām virsotnēm ir izometrija, kas kartē vienu otru (tāpat kā parastajam daudzstūrim).

Kvaziregulārs daudzstūris ir vienveidīgs daudzstūris, kuram ir tikai divu veidu seja, kas mainās ap katru virsotni.

Parasts daudzskaldnis ir vienveidīgs daudzstūris, kuram ir tikai viena veida seja.

Atlikušās (nevienmērīgās) izliektās daudzskaldnes ar regulārām sejām ir pazīstamas kā Džonsona cietās vielas.

Daudzskaldni ar regulāriem trīsstūriem kā sejām sauc par deltaedru.

  1. ^ Parks, Poo-Sung. "Regulāri politopu attālumi", Forum Geometricorum 16, 2016, 227-232. http://forumgeom.fau.edu/FG2016volume16/FG201627.pdf
  2. ^ abc Meškišvili, Mamuka (2020). "Regulāru daudzstūru un platonisko cietvielu cikliskie vidējie rādītāji". Komunikācijas matemātikā un lietojumprogrammās. 11: 335–355.
  3. ^ abcd Džonsons, Rodžers A., Uzlabotā Eiklida ģeometrija, Dover Publ., 2007 (orig. 1929).
  4. ^ Pickover, Clifford A, Matemātikas grāmata, Sterling, 2009: lpp. 150
  5. ^ Chen, Zhibo un Liang, Tian. "Viviani teorēmas saruna", Koledžas matemātikas žurnāls 37 (5), 2006, 390–391.
  6. ^Koksets, Matemātiskās atpūtas un esejas, trīspadsmitais izdevums, 141. lpp
  7. ^
  8. "Matemātikas atvērta atsauce". Skatīts: 2014. gada 4. februāris.
  9. ^
  10. "Mathwords".
  11. ^ Rezultāti vaicājumam R = 1 un a = 1 iegūts ar Maple, izmantojot funkcijas definīciju:

Izteicieni n= 16 iegūst, divreiz pielietojot pieskares pusleņķa formulas iedegumu (π / 4)


Saturs

Vārds daudzstūris cēlies no grieķu valodas īpašības vārda πολύς (polús) “daudz”, “daudz” un γωνία (gōnía) “stūris” vai “leņķis”. Ir ierosināts, ka γόνυ (gónu) “ceļgals” var būt cilmes cēlonis gon. [1]

Sānu skaits

Daudzstūri galvenokārt tiek klasificēti pēc sānu skaita. Skatīt tabulu zemāk.

Izliekums un neizliekums

Daudzstūrus var raksturot ar to izliekumu vai neizliekuma veidu:

    : jebkura līnija, kas novilkta caur daudzstūri (un nepieskaras malai vai stūrim), precīzi divas reizes atbilst tās robežai. Tā rezultātā visi tā iekšējie leņķi ir mazāki par 180 °. Jebkurš līnijas segments ar galapunktiem uz robežas šķērso tikai iekšējos punktus starp tā galapunktiem.
  • Ne izliekta: var atrast līniju, kas pārsniedz tās robežu vairāk nekā divas reizes. Starp diviem robežpunktiem pastāv arī līnijas segments, kas iet ārpus daudzstūra. : daudzstūra robeža pati sevi nepārkāpj. Visi izliektie daudzstūri ir vienkārši. : Neizliekta un vienkārša. Ir vismaz viens iekšējais leņķis, kas ir lielāks par 180 °. : viss interjers ir redzams vismaz no viena punkta, nešķērsojot nevienu malu. Daudzstūrim jābūt vienkāršam, un tas var būt izliekts vai ieliekts. Visi izliektie daudzstūri ir zvaigznes formas. : daudzstūra robeža šķērso sevi. Termiņš komplekss dažreiz tiek izmantots atšķirībā no vienkārši, taču šī lietošana var sajaukt ar ideju par sarežģīts daudzstūris kā tāds, kas pastāv sarežģītajā Hilberta plaknē, kas sastāv no divām sarežģītām dimensijām. : daudzstūris, kas pats regulāri krustojas. Daudzstūris nevar būt gan zvaigzne, gan zvaigznes forma.

Vienlīdzība un simetrija

    : visi stūra leņķi ir vienādi. : visas malas ir vienāda garuma. : gan vienpusējs, gan vienstūrveida. : visi stūri atrodas uz viena apļa, ko sauc par apli. : visas puses ir pieskaras ierakstītajam lokam.
  • Izogonāls vai virsotnes transitīvs: visi stūri atrodas vienā un tajā pašā simetrijas orbītā. Daudzstūris ir arī ciklisks un vienstūrveida.
  • Izotoksāls vai tranzītmezgls: visas malas atrodas vienā simetrijas orbītā. Daudzstūris ir arī vienādmalu un tangenciāls.

Likumsakarību īpašību var definēt citādi: daudzstūris ir regulārs tikai un vienīgi tad, ja tas ir gan izogonāls, gan izotoksāls, vai līdzvērtīgi tas ir gan ciklisks, gan vienādmalu. Neizliektu regulāru daudzstūri sauc par a parasts zvaigžņu daudzstūris.

Dažādi

    : daudzstūra malas saskaras taisnā leņķī, t.i., visi tā iekšējie leņķi ir 90 vai 270 grādi. attiecībā uz noteiktu līniju L: katra taisne, kas ir perpendikulāra L, krustojas ar daudzstūri ne vairāk kā divas reizes.

Leņķi

Jebkuram daudzstūrim ir tik daudz stūru, cik malas. Katrā stūrī ir vairāki leņķi. Divi vissvarīgākie ir:

  • Interjera leņķis - vienkāršā iekšējā leņķa summa n-gon ir (n - 2) radradians vai (n - 2) × 180 grādi. Tas ir tāpēc, ka jebkura vienkārša n-gon (kam n puses) var uzskatīt parn - 2) trijstūri, kuru leņķa summa ir π radiāni vai 180 grādi. Izliekta regulāra jebkura iekšējā leņķa mērs n-gon ir (1 - 2 n) π < displaystyle left (1 - < tfrac <2>> pa labi) pi> radiāni vai 180 - 360 n < displaystyle 180 - < tfrac <360>>> grādi. Regulāru zvaigžņu daudzstūru iekšējos leņķus vispirms pētīja Poinsots, tajā pašā rakstā, kurā viņš aprakstīja četras parastās zvaigžņu polihedras: parastam p q < displaystyle < tfrac

    >> -gon (a lpp-gon ar centrālo blīvumu q), katrs iekšējais leņķis ir π (p - 2 q) p < displaystyle < tfrac < pi (p-2q)>

    >> radiāni vai 180 (p - 2 q) p < displaystyle < tfrac <180 (p-2q)>

    >> grādi. [2]

  • Ārējais leņķis - Ārējais leņķis ir papildu leņķis iekšējam leņķim. Izsekošana ap izliektu n-gon, stūrī "pagriezts" leņķis ir ārējais vai ārējais leņķis. Visu poligonu izsekošana veic vienu pilnu pagriezienu, tāpēc ārējo leņķu summai jābūt 360 °. Šo argumentu var vispārināt par ieliektiem vienkāršiem daudzstūriem, ja no kopējā pagrieziena tiek atņemti ārējie leņķi, kas pagriežas pretējā virzienā. Izsekošana ap n-gon, ārējo leņķu summa (kopējā summa, ko viens rotē virsotnēs) var būt jebkurš vesels skaitlis, kas ir daudzkārtējs d no 360 °, piem. 720 ° pentagrammai un 0 ° leņķiskajai "astoņai" vai antiparalelogrammai, kur d ir daudzstūra blīvums vai pagrieziena skaitlis. Skatiet arī orbītu (dinamika).

Ja daudzstūris nekrustojas ar sevi (tas ir, vienkārši), parakstītais laukums ir

Parakstītais laukums ir atkarīgs no virsotņu secības un plaknes orientācijas. Parasti pozitīvo orientāciju nosaka rotācija (pretēji pulksteņrādītāja kustības virzienam), kas pozitīvo x-asu kartē ar pozitīvo y-asi. Ja virsotnes ir sakārtotas pretēji pulksteņrādītāja virzienam (tas ir, saskaņā ar pozitīvo orientāciju), pretējā gadījumā parakstītais laukums ir pozitīvs, tas ir negatīvs. Jebkurā gadījumā laukuma formula ir pareiza absolūtā vērtībā. To parasti sauc par kurpju auklas formulu vai Mērnieka formulu. [5]

Platība A vienkārša daudzstūra vērtību var aprēķināt arī tad, ja sānu garumi, a1, a2, . an un ārējie leņķi, θ1, θ2, . θn ir zināmi no:

Formulu aprakstīja Lopsits 1963. gadā. [6]

Ja daudzstūri var uzzīmēt uz vienādi izvietota režģa tā, lai visas tā virsotnes būtu režģa punkti, Pika teorēma sniedz daudzstūra laukuma vienkāršu formulu, pamatojoties uz iekšējo un robežtīkla punktu skaitu: pirmais skaitlis plus puse no otrā skaitlis, mīnus 1.

Katrā daudzstūrī ar perimetru lpp un apgabals A , izoperimetriskā nevienlīdzība p 2 & gt 4 π A < displaystyle p ^ <2> & gt4 pi A> ir spēkā. [7]

Jebkuriem diviem vienkāršiem vienāda laukuma daudzstūriem Bolyai – Gerwien teorēma apgalvo, ka pirmo var sagriezt daudzstūra gabalos, kurus var no jauna salikt, veidojot otro daudzstūri.

Daudzstūra malu garumi parasti nenosaka tā platību. [8] Tomēr, ja daudzstūris ir ciklisks, tad malas darīt noteikt platību. [9] No visiem n-gons ar norādītajiem sānu garumiem, vislielākais laukums ir ciklisks. No visa n-gons ar noteiktu perimetru, lielākais laukums ir regulārs (un tāpēc ciklisks). [10]

Regulāri daudzstūri

Daudzas specializētās formulas attiecas uz regulāru daudzstūru apgabaliem.

Regulāra daudzstūra laukums ir norādīts rādiusa izteiksmē r tā uzrakstītā apļa un tā perimetra lpp pēc

Šis rādiuss tiek saukts arī par tā apotēmu un bieži tiek attēlots kā a.

Regulārā laukums n-gon rādiusa ziņā R tā ierobežotā apļa trigonometriski var izteikt kā: [11] [12]

Regulārā laukums n-gon ierakstīts rādiusa vienības rādiusā, ar sānu s un iekšējo leņķi α, < displaystyle alpha,> trigonometriski var izteikt arī šādi:

Paškrustojas

Paškrustojošā daudzstūra laukumu var definēt divējādi, sniedzot dažādas atbildes:

  • Izmantojot vienkāršu daudzstūru formulas, mēs pieļaujam, ka konkrēto daudzstūra reģionu laukumu var reizināt ar koeficientu, ko mēs saucam par blīvums reģionā. Piemēram, centrālajam izliektajam piecstūrim pentagramas centrā ir blīvums 2. Diviem šķērs četrstūra trīsstūrveida apgabaliem (tāpat kā 8. attēlā) blīvums ir pretēji parakstīts, un, saskaitot to laukumus kopā, kopējā platība var būt nulle. visai figūrai. [13]
  • Ņemot vērā slēgtos reģionus kā punktu kopas, mēs varam atrast pievienotās punktu kopas laukumu. Tas atbilst plaknes laukumam, ko aptver daudzstūris, vai viena vai vairāku vienkāršu daudzstūru laukumam, kam ir tādas pašas kontūras kā pašam krustojošajam. Šķērs četrstūra gadījumā to uzskata par diviem vienkāršiem trijstūriem. [nepieciešama atsauce]

Centroid

Izmantojot virsotņu koordinātēm tādu pašu kārtību kā iepriekšējā sadaļā, cietā vienkāršā daudzstūra centrroidas koordinātas tiek

Šajās formulās ir jāizmanto apgabala A parakstītā vērtība < displaystyle A>.

Trijstūriem ( n = 3), virsotņu un cietās formas centra centri ir vienādi, bet kopumā tas neattiecas uz n & gt 3. Daudzstūra ar n virsotnēm virsotņu kopas centroidam ir koordinātas

Daudzstūra ideja ir vispārināta dažādos veidos. Daži no svarīgākajiem ir:

  • Sfēriskais daudzstūris ir lielu loku (sānu) un virsotņu loku ķēde uz sfēras virsmas. Tas ļauj digonam - daudzstūrim, kuram ir tikai divas malas un divi stūri, kas plakanā plaknē nav iespējams. Sfēriskiem daudzstūriem ir svarīga loma kartogrāfijā (karšu izgatavošanā) un Wythoff vienotās daudzskaldņu konstrukcijā.
  • Slīps daudzstūris neatrodas plakanā plaknē, bet zigzags trīs (vai vairāk) izmēros. Parasto politopu Petrie daudzstūri ir labi zināmi piemēri.
  • Apeirogons ir bezgalīga sānu un leņķu secība, kas nav slēgta, bet kurai nav galu, jo tā sniedzas bezgalīgi abos virzienos.
  • Šķībs apeirogons ir bezgalīgs sānu un leņķu secība, kas nav plakanā plaknē.
  • Komplekss daudzstūris ir konfigurācija, kas ir analoga parastam daudzstūrim, kas pastāv divu reālu un divu iedomātu dimensiju kompleksajā plaknē.
  • Abstrakts daudzstūris ir daļēji sakārtota algebriskā kopa, kas attēlo dažādus elementus (malas, virsotnes utt.) Un to savienojamību. Īsts ģeometriskais daudzstūris ir a realizācija saistītā abstraktā daudzstūra. Atkarībā no kartēšanas var realizēt visus šeit aprakstītos vispārinājumus.
  • Daudzskaldnis ir trīsdimensiju cietviela, ko ierobežo plakanas daudzstūra formas sejas, kas ir analogs daudzstūrim divās dimensijās. Atbilstošās formas četrās vai augstākās dimensijās sauc par politopiem. [14] (Citās konvencijās vārdi daudzskaldnis un politopu tiek izmantoti jebkurā dimensijā, nošķirot abus, ka politopam obligāti jābūt ierobežotam. [15])

Vārds daudzstūris nāk no vēlā latīņu valodas poligōnum (lietvārds), no grieķu valodas πολύγωνον (poligōnon / polugōnon), πολύγωνος (poligōnos / polugōnos, vīrišķīgais īpašības vārds), kas nozīmē "daudzšķautņains". Atsevišķi daudzstūri tiek nosaukti (un dažreiz klasificēti) pēc sānu skaita, apvienojot grieķu valodā atvasinātu skaitlisko prefiksu ar sufiksu -gon, piem. piecstūris, divpadsmitstūris. Izņēmums ir trīsstūris, četrstūris un nonagon.

Ārpus decagoniem (10-sided) un dodecagons (12-sided) matemātiķi parasti izmanto ciparu apzīmējumus, piemēram, 17-gon un 257-gon. [16]

Pastāv izņēmumi sānu skaitīšanai, ko vieglāk izteikt verbālā formā (piemēram, 20 un 30) vai kurus izmanto nematemātiķi. Dažiem īpašiem daudzstūriem ir arī savi nosaukumi, piemēram, parasto zvaigžņu piecstūri sauc arī par pentagramu.

Daudzstūru nosaukumi un dažādas īpašības
Nosaukums Sāni Rekvizīti
monogons 1 Nav vispāratzīts kā daudzstūris, [17] lai gan dažās disciplīnās, piemēram, grafu teorijā, dažreiz tiek izmantots šis termins. [18]
digons 2 Euklida plaknē parasti nav atzīts par daudzstūri, lai gan tas var pastāvēt kā sfērisks daudzstūris. [19]
trīsstūris (vai trigons) 3 Vienkāršākais daudzstūris, kas var pastāvēt Eiklida plaknē. Var flīzēt lidmašīnu.
četrstūris (vai četrstūris) 4 Visvienkāršākais daudzstūris, kas var šķērsot pats vienkāršākais daudzstūris, kas var būt ieliekts, vienkāršākais daudzstūris, kas var nebūt ciklisks. Var flīzēt lidmašīnu.
piecstūris 5 [20] Vienkāršākais daudzstūris, kas var pastāvēt kā parasta zvaigzne. Zvaigžņu piecstūris ir pazīstams kā pentagramma vai pentakls.
sešstūris 6 [20] Var flīzēt plakni.
septiņstūris (vai septiņstūris) 7 [20] Vienkāršākais daudzstūris tā, ka parastā forma nav konstruējama ar kompasu un taisni. Tomēr to var uzbūvēt, izmantojot Neusis konstrukciju.
astoņstūris 8 [20]
nonagon (vai enneagon) 9 [20] "Nonagon" sajauc latīņu valodu [novems = 9] ar grieķu valodu "enneagon" ir tīrs grieķu valoda.
desmitstūris 10 [20]
hendecagon (vai undecagon) 11 [20] Visvienkāršākais daudzstūris, ar kuru regulāru formu nevar konstruēt ar kompasu, taisni un leņķa trisektoru.
divpadsmitstūris (vai divpadsmitstūris) 12 [20]
tridecagon (vai triskaidecagon) 13 [20]
tetradecagon (vai tetrakaidecagon) 14 [20]
pentadecagon (vai pentakaidecagon) 15 [20]
sešstūra (vai sešstūra četrstūra) 16 [20]
heptadecagon (vai heptakaidecagon) 17 Uzbūvējams daudzstūris [16]
oktadecagon (vai octakaidecagon) 18 [20]
enneadecagon (vai enneakaidecagon) 19 [20]
ikozagons 20 [20]
ikositetragons (vai ikozikaitetragons) 24 [20]
triakontagons 30 [20]
tetrakontagons (vai tesakakakmens) 40 [20] [21]
piecstūris (vai piecstūris) 50 [20] [21]
sešstūrains (vai sešstūrains) 60 [20] [21]
sešstūra (vai hebdomecontagon) 70 [20] [21]
oktakontagons (vai ogdoëcontagon) 80 [20] [21]
enneacontagon (vai enenecontagon) 90 [20] [21]
hektogons (vai sešstūris) [22] 100 [20]
257 gon 257 Uzbūvējams daudzstūris [16]
chiliagon 1000 Filosofi, tostarp Renē Dekarts [23], Imanuels Kants [24] Deivids Hjūms [25], diskusijās izmantoja chiliagon kā piemēru.
myriagon 10,000 Izmantots kā piemērs dažās filozofiskās diskusijās, piemēram, Dekarta Meditācijas par pirmo filozofiju
65537-gon 65,537 Uzbūvējams daudzstūris [16]
megagons [26] [27] [28] 1,000,000 Tāpat kā ar Renē Dekarta chiliagona piemēru, miljonu sānu daudzstūris ir izmantots kā labi definēta jēdziena ilustrācija, kuru nevar vizualizēt. [29] [30] [31] [32] [33] [34] [35] Megagons tiek izmantots arī kā ilustrācija par regulāru daudzstūru konverģenci uz apli. [36]
apeirogon Deģenerēts daudzstūris no bezgalīgi daudzām pusēm.

Augstāku vārdu konstruēšana

Lai izveidotu daudzstūra nosaukumu ar vairāk nekā 20 un mazāk par 100 malām, apvienojiet prefiksus šādi. [20] Termins "kai" attiecas uz 13 goniem un augstāku, un to izmantoja Keplers, un Džons H. Konvejs to atbalstīja, lai skaidrība būtu saistīta ar sasietiem prefiksu numuriem kvaziregulāro daudzskaldņu nosaukumos. [22]

Desmitiem un Vieni galīgais sufikss
-kai- 1 -hena- -gon
20 ikosi- (ikosa- ja viens pats) 2 -di-
30 triaconta- (vai triconta-) 3 -tri-
40 tetraconta- (vai tessaraconta-) 4 -tetra-
50 pentakonta- (vai pentekonta-) 5 -penta-
60 heksakonta- (vai heksekonta-) 6 -hexa-
70 heptaconta- (vai hebdomeconta-) 7 -hepta-
80 octaconta- (vai ogdoëconta-) 8 -okta-
90 enneaconta- (vai eneneconta-) 9 -enea-

Daudzstūri ir zināmi kopš seniem laikiem. Kārtējie daudzstūri bija zināmi senajiem grieķiem, un pentagramma, kas nav izliekta regulāra daudzstūra (zvaigžņu daudzstūra), parādījās jau 7. gadsimtā pirms mūsu ēras. uz Aristofanes krātera, kas atrasts Caere un tagad Kapitolija muzejā. [37] [38]

Pirmo zināmo sistemātisko pētījumu par neizliektajiem daudzstūriem 14. gadsimtā veica Tomass Bredvardīns. [39]

Džefrijs Kolins Šefards 1952. gadā daudzstūru ideju vispārināja ar sarežģītu plakni, kur katru reālo dimensiju pavada iedomāta, lai izveidotu sarežģītus daudzstūrus. [40]

Daudzstūri parādās iežu veidojumos, visbiežāk kā plakanas kristālu šķautnes, kur leņķi starp sāniem ir atkarīgi no minerāla veida, no kura tiek izgatavots kristāls.

Regulāri sešstūri var rasties, kad lavas atdzišana veido blīvi iesaiņotu bazalta kolonnu laukumus, kurus var redzēt pie Milzu celiņa Ziemeļīrijā vai pie Velna pastalas Kalifornijā.

Bioloģijā bišu izgatavotā vaska šūnveida virsma ir sešstūru masīvs, un katras šūnas malas un pamatne ir arī daudzstūri.

Datorgrafikā daudzstūris ir primitīvs, ko izmanto modelēšanā un renderēšanā. Tie ir definēti datu bāzē, kas satur virsotņu masīvus (ģeometrisko virsotņu koordinātas, kā arī citus daudzstūra atribūtus, piemēram, krāsu, ēnojumu un faktūru), informāciju par savienojamību un materiālus. [41] [42]

Jebkura virsma tiek modelēta kā tesselācija, ko sauc par daudzstūra sietu. Ja kvadrātveida acs ir n + 1 punkti (virsotnes) katrā pusē, ir n kvadrātveida kvadrāti tīklā vai 2n kvadrātveida trīsstūri, jo kvadrātā ir divi trīsstūri. Tur ir (n + 1) 2 / 2(n 2) virsotnes uz trīsstūra. Kur n ir liels, tas tuvojas pusei. Vai arī katra virsotne kvadrātveida acu iekšpusē savieno četras malas (līnijas).

Attēlveidošanas sistēma izsauc poligonu struktūru, kas nepieciešama ainas izveidošanai no datu bāzes. Tas tiek pārsūtīts uz aktīvo atmiņu un visbeidzot uz displeja sistēmu (ekrāns, TV monitori utt.), Lai ainu varētu apskatīt. Šī procesa laikā attēlveidošanas sistēma padara daudzstūrus pareizā perspektīvā gatavus apstrādāto datu pārsūtīšanai uz displeja sistēmu. Lai gan daudzstūri ir divdimensiju, caur sistēmas datoru tie tiek ievietoti vizuālajā ainā pareizā trīsdimensiju orientācijā.


Mēs sākam šķērsot grafiku no kreisā-apakšējā punkta un turpinām, līdz tajā atkal nonākam. Sākumā mēs atzīmējam visas malas kā neapmeklētas. Katrā atkārtojumā jāizvēlas nākamais punkts un jāatzīmē kā apmeklēts.

Lai izvēlētos nākamo punktu, izvēlieties malu ar maksimālo iekšējo leņķi pretēji pulksteņrādītāja kustības virzienam.

Es aprēķinu divus vektorus: vektors1 pašreizējai malai un vektors2 katrai nākamajai neapmeklētajai malai (kā parādīts attēlā).

  1. Skalārais produkts (punktveida produkts). Tas atgriež vērtību, kas saistīta ar leņķi starp vektoriem.
  2. Vektorprodukts (šķērsprodukts). Tas atgriež jaunu vektoru. Ja šī vektora z-koordināta ir pozitīva, skalārais reizinājums dod man taisnu leņķi pretēji pulksteņrādītāja kustības virzienam. Citādi (z-koordinātas ir negatīvas), es aprēķinu iegūšanas leņķi starp vektoriem kā 360 leņķi no skalārā reizinājuma.

Rezultātā es saņemu malu (un atbilstošu nākamo virsotni) ar maksimālo leņķi.

Rezultātu sarakstam pievienoju katru nodoto virsotni. Rezultātu saraksts ir savienojuma daudzstūris.


Rīka padoms

Izmanto, lai parādītu mazus tekstus virs kartes slāņiem.

Lietojuma piemērs

Piezīme par padomu nobīdi. Brošūrā ir ņemtas vērā divas iespējas, lai aprēķinātu rīka padomu kompensāciju:

  • opcija ofseta Rīka padoms: pēc noklusējuma tā ir [0, 0], un tā ir raksturīga vienam rīka padomam. Pievienojiet pozitīvu x nobīdi, lai pārvietotu rīka padomu pa labi, un pozitīvu y nobīdi, lai pārvietotu to uz leju. Negatīvie virzīsies pa kreisi un uz augšu.
  • opcija tooltipAnchor Icon: tas tiks ņemts vērā tikai marķierim. Jums vajadzētu pielāgot šo vērtību, ja izmantojat pielāgotu ikonu.

Radīšana

Rūpnīca Apraksts
L.tooltip( iespējas?, avots?) Instant rīka padoma objektu, kam piešķirts izvēles objektu objekts, kas apraksta tā izskatu un atrašanās vietu, kā arī izvēles avota objektu, kas tiek izmantots, lai marķētu rīka padomu ar atsauci uz slāni, uz kuru tas attiecas.

Iespējas

Variants Tips Noklusējums Apraksts
rūts Stīga & # x27tooltipPane & # x27 Kartes rūts, kur tiks pievienots padoms.
kompensēt Punkts Punkts (0, 0) Izvēles padoma pozīcijas nobīde.
virzienu Stīga & # x27auto & # x27 Norāde, kur atvērt rīka padomu. Iespējamās vērtības ir: labā, kreisā, augšējā, apakšējā, centra, automātiskā. auto dinamiski pārslēgsies starp labo un kreiso atbilstoši rīka padoma stāvoklim kartē.
pastāvīgs Būla nepatiesa Vai pastāvīgi atvērt rīka padomu vai tikai ar peles kursoru.
lipīga Būla nepatiesa Ja tā ir taisnība, rīka padoms sekos pelei, nevis tiks fiksēts funkciju centrā.
interaktīvs Būla nepatiesa Ja tā ir taisnība, rīka padoms klausīsies funkciju notikumus.
necaurredzamība Skaits 0.9 Rīka padoma konteinera necaurredzamība.
Variants Tips Noklusējums Apraksts
className Stīga & # x27 & # x27 Pielāgots CSS klases nosaukums, ko piešķirt uznirstošajam logam.
Variants Tips Noklusējums Apraksts
attiecinājums Stīga nulle Virkne, kas jāparāda attiecinājuma kontrolē, piem. & quot © OpenStreetMap līdzautori & quot. Tas apraksta slāņa datus un bieži vien ir juridisks pienākums pret autortiesību īpašniekiem un flīžu piegādātājiem.

Notikumi

Notikums Dati Apraksts
pievienotNotikums Darbina pēc slāņa pievienošanas kartei
noņemtNotikums Darbina pēc slāņa noņemšanas no kartes
Notikums Dati Apraksts
uznirstošais logsPopupEvent Aktivizēts, kad tiek atvērts šim slānim piesaistīts uznirstošais logs
uznirstošais logsPopupEvent Tiek aktivizēts, kad uz šo slāni piesaistītais uznirstošais logs ir aizvērts
Notikums Dati Apraksts
toolpopenRīka padomsEvent Aktivizēts, kad tiek atvērts rīka padoms, kas saistīts ar šo slāni.
tooltipcloseRīka padomsEvent Aktivizēts, ja šajā slānī piesaistītais rīka padoms ir slēgts.

Metodes

Slānis tiek pievienots dotajai kartei vai slāņu grupai.

Noņem slāni no kartes, kurā tas pašlaik ir aktīvs.

Noņem no norādītās kartes slāni

Atgriež HTMLElement, kas apzīmē nosaukto rūti kartē. Ja nosaukums nav norādīts, atgriež šī slāņa rūti.

Lieto attiecinājuma vadīkla, atgriež attiecinājuma opciju.

Saista uznirstošo slāni ar nodoto saturu un izveido nepieciešamos notikumu klausītājus. Ja funkcija tiek nodota, tā kā pirmo argumentu saņem slāni un tai jāatgriež virkne vai HTMLElement.

Noņem uznirstošo logu, kas iepriekš bija saistīts ar bindPopup.

Atver saistīto uznirstošo logu norādītajā latlng vai noklusējuma uznirstošajā enkurā, ja nav nodota latlng.

Aizver uznirstošo logu, kas saistīts ar šo slāni, ja tas ir atvērts.

Atver vai aizver uznirstošo logu, kas saistīts ar šo slāni, atkarībā no tā pašreizējā stāvokļa.

Atgriež vērtību true, ja šim slānim piesaistītais uznirstošais logs pašlaik ir atvērts.

Sets the content of the popup bound to this layer.

Returns the popup bound to this layer.

Binds a tooltip to the layer with the passed content and sets up the necessary event listeners. If a Function is passed it will receive the layer as the first argument and should return a String or HTMLElement .

Removes the tooltip previously bound with bindTooltip .

Opens the bound tooltip at the specified latlng or at the default tooltip anchor if no latlng is passed.

Closes the tooltip bound to this layer if it is open.

Opens or closes the tooltip bound to this layer depending on its current state.

Returns true if the tooltip bound to this layer is currently open.

Sets the content of the tooltip bound to this layer.

Returns the tooltip bound to this layer.

Adds a listener function ( fn ) to a particular event type of the object. You can optionally specify the context of the listener (object the this keyword will point to). You can also pass several space-separated types (e.g. 'click dblclick' ).

Adds a set of type/listener pairs, e.g.

Removes a previously added listener function. If no function is specified, it will remove all the listeners of that particular event from the object. Note that if you passed a custom context to on , you must pass the same context to off in order to remove the listener.

Removes a set of type/listener pairs.

Removes all listeners to all events on the object.

Fires an event of the specified type. You can optionally provide an data object — the first argument of the listener function will contain its properties. The event can optionally be propagated to event parents.

Returns true if a particular event type has any listeners attached to it.

Behaves as on(…) , except the listener will only get fired once and then removed.

Adds an event parent - an Evented that will receive propagated events

Removes an event parent, so it will stop receiving propagated events


How to find the area of a polygon?

Area of a polygon can be calculated by using the area of a polygon formula. To calculate the area of a regular polygon, follow the below steps:

  1. Identify and write down the given values to calculate the polygon area.
  2. Write down the formula for polygon area.
  3. Substitute the values in the formula to get the area of the polygon.

Suppose we have a polygon which has each side of 6 cm. There are a total of 7 sides in the polygon. Calculate the area of the polygon.

Step 1: Identify and write down the given values to calculate the polygon area. Here we have:

a= 6 cm, n = 7

Step 2: Write down the formula for the polygon area.

A = (1/4) na 2 cot (&pi/n) = nr 2 tan (&pi/n)

According to the given values, we will use the (1/4) na 2 cot (&pi/n) part of the equation. If the radius of the polygon would have been known instead of side length, we should use nr 2 tan (&pi/n) part of the equation. Both of them can calculate the area of the polygon.

Step 3: Substitute the values in the formula to get the area of the polygon.

A = (1/4) na 2 cot (&pi/n) = (1/4) 7 × 6 2 cot (3.1415/7)

A = (1/4) × 252 × cot (0.4488) = (1/4) × 252 × 2.07

A = 130.41 cm 2

So, a polygon with a total of 7 sides with each side of 6 cm will have an area of 130.41 cm 2 . 7 sided polygons are referred to as septagon. Refer to the below image:


1.4: Polygons

The fastest and smallest JavaScript polygon triangulation library. 2.5KB gzipped.

The library implements a modified ear slicing algorithm, optimized by z-order curve hashing and extended to handle holes, twisted polygons, degeneracies and self-intersections in a way that doesn't garantija correctness of triangulation, but attempts to always produce acceptable results for practical data.

Why another triangulation library?

The aim of this project is to create a JS triangulation library that is fast enough for real-time triangulation in the browser, sacrificing triangulation quality for raw speed and simplicity, while being robust enough to handle most practical datasets without crashing or producing garbage. Some benchmarks using Node 0.12:

(ops/sec) pts earcut libtess poly2tri pnltri polyk
OSM building 15 795,935 50,640 61,501 122,966 175,570
dude shape 94 35,658 10,339 8,784 11,172 13,557
holed dude shape 104 28,319 8,883 7,494 2,130 n / a
complex OSM water 2523 543 77.54 neveiksme neveiksme n / a
huge OSM water 5667 95 29.30 neveiksme neveiksme n / a

The original use case it was created for is Mapbox GL, WebGL-based interactive maps.

If you want to get correct triangulation even on very bad data with lots of self-intersections and earcut is not precise enough, take a look at libtess.js.

Signature: earcut(vertices[, holes, dimensions = 2]) .

  • vertices is a flat array of vertex coordinates like [x0,y0, x1,y1, x2,y2, . ] .
  • holes is an array of hole indices if any (e.g. [5, 8] for a 12-vertex input would mean one hole with vertices 5–7 and another with 8–11).
  • dimensions is the number of coordinates per vertex in the input array ( 2 by default).

Each group of three vertex indices in the resulting array forms a triangle.

If you pass a single vertex as a hole, Earcut treats it as a Steiner point.

If your input is a multi-dimensional array (e.g. GeoJSON Polygon), you can convert it to the format expected by Earcut with earcut.flatten :

After getting a triangulation, you can verify its correctness with earcut.deviation :

Returns the relative difference between the total area of triangles and the area of the input polygon. 0 means the triangulation is fully correct.

  • Fixed a rare race condition where the split routine would choose bad diagonals.
  • Fixed a rare race condition in the "cure local intersections" routine.
  • Fixed a rare race condition where a hole that shares a point with the outer ring would be handled incorrectly.
  • Fixed a bug where a closing point wouldn't be filtered as duplicate, sometimes breaking triangulation.
  • Added earcut.deviation function for verifying correctness of triangulation.
  • Added earcut.flatten function for converting GeoJSON-like input into a format Earcut expects.
  • Changed the algorithm to avoid filtering colinear/duplicate vertices unless it can't triangulate the polygon otherwise. Improves performance on simpler shapes and fixes some 3D use cases.
  • Improved robustness and reliability of the triangulation algorithm.
  • Improved performance by up to 15%.
  • Significantly improved source code clarity.
  • Fixed a z-curve hashing bug that could lead to unexpected results in very rare cases involving shapes with lots of points.
  • Fixed yet another rare race condition (multiple holes connected with colinear bridges).
  • Fixed crash on empty input.
  • Breaking: changed the API to accept a flat input array of vertices with hole indices and return triangle indices. It makes the indexed output much faster than it was before (up to 30%) and improves memory footprint.
  • Fixed indexed output to produce indices not multiplied by dimension and work with any number of dimensions.
  • Added a second argument to earcut that switches output format to flat vertex and index arrays if set to true .
  • Significantly improved performance for polygons with self-intersections (e.g. big OSM water polygons are now handled 2-3x faster)
  • Significantly improved performance on polygons with high number of vertices by using z-order curve hashing for vertex lookup.
  • Slightly improved overall performance with better point filtering.
  • Improved performance on polygons with holes by switching from Held to Eberly hole elimination algorithm
  • More robustness fixes and tests

Piemēri

Specifying Coordinates

Create a single polygon by specifying the ( x,y ) coordinates of each vertex. Then, add two more polygons to the figure.

Create a red square with vertices at (0,0) , (1,0) , (1,1) , and (0,1) . Specify x as the x -coordinates of the vertices and y as the y -koordinātas. patch automatically connects the last ( x,y ) coordinate with the first ( x,y ) coordinate.

Create two polygons by specifying x and y as two-column matrices. Each column defines the coordinates for one of the polygons. patch adds the polygons to the current axes without clearing the axes.

Specifying Categorical and Duration Coordinates

Define X as a vector of categorical values, and define Y as a vector of duration values. The patch function uses a sorted list of categories, so the x -axis might display them in a different order than you expect. To specify the order, call the reordercats function. Then, create a red patch to visualize the data.

Specifying Faces and Vertices

Create a single polygon by specifying the coordinates of each unique vertex and a matrix that defines how to connect them. Then, add two more polygons to the figure.

Create a red square with corners at (0,0) , (1,0) , (1,1) , and (0,1) . Specify v so that each row defines the ( x,y ) coordinates for one vertex. Then, specify f as the vertices to connect. Set the color by specifying the FaceColor property.

Create two polygons by specifying f as a two-row matrix. Each row defines the face for one patch.

Different Polygon Face Colors

Create two polygons and use a different color for each polygon face. Use a colorbar to show how the colors map into the colormap.

Create the polygons using matrices x and y . Specify c as an column vector with two elements since there are two polygon faces, and add a colorbar.

Alternatively, you can get the same result when using f and v instead. When you create the polygons, set FaceVertexCData to a column vector with two elements since there are two polygon faces. Set FaceColor to 'flat' .

Interpolated Polygon Face Colors

Interpolate colors across polygon faces by specifying a color at each polygon vertex, and use a colorbar to show how the colors map into the colormap.

Create the polygons using matrices x and y . Specify c as a matrix the same size as x and y defining one color per vertex, and add a colorbar.

Alternatively, you can get the same result using f and v instead. When you create the polygons, set FaceVertexCData to a column vector with one value per vertex and set FaceColor to 'interp' .

Polygon Edges Without Faces

Create a polygon with green edges and do not display the face. Then, create a second polygon with a different color for each edge.

Use a different color for each edge by specifying a color for each vertex and setting EdgeColor to 'flat' .

Polygons Using Structure

Use a structure to create two polygons. First, create a structure with fields names that match patch property names. Then, use the structure to create the polygons.

Semitransparent Polygons

Create two semitransparent polygons by setting the FaceAlpha property to a value between 0 and 1 .

Create Multicolored Line

Create a multicolored line with markers at each vertex. Interpolate the colors and use a colorbar to show how the values map to the colormap.

Create the data. Set the last entry of y to NaN so that patch creates a line instead of a closed polygon. Define a color for each vertex using the y values. The values in c map to colors in the colormap.

Create the line. Show markers at each vertex and set the EdgeColor to 'interp' to interpolate the colors between vertices. Add a colorbar.


Find the area of a polygon with the given vertices? A(1, 4), B(-2, -2) C(-7, -2), D(-4, 4) Please show work.

Consider that the polygon ABCD is composed of the triangle ABC and ACD.

To find the area of a triangle whose vertices coordinates are given we can use the Cramer's Rule, described in:
Finding the area of a triangle using the determinant of a matrix

Evaluating the determinant of the Cramer's Rule we get:
#S_(triangle) =(1/2)|x_1y_2+x_2y_3+x_3y_1-x_1y_3-x_2y_1-x_3y_2|#
#S_(triangle)=(1/2)|x_1*(y_2-y_3)+x_2*(y_3-y_1)+x_3*(y_1-y_2)|#

Paskaidrojums:

If we plot those points we'll see that A and D are in the same line ( #y=4# ) parallel to the x-axis and that B and C also are in the same line ( #y=-2# ) also parallel to the x-axis.

Beyond that, since A and D are in the same line and also B and C are in the same line
#DA=|x_A-x_D|=|1+4|=5#
#BC=|x_B-x_B|=|-7+2|=5#
=> #DA=BC#

Two segments of line of the same size in lines parallel to each other, yet the segments are not aligned: it means that the polygon is a parallelogram, whose equation of area is #base*height# .

The separation or distance between the two lines ( #y=4# and #y=-2# ) give us the height. The separation is #4-(-2)=6# linear units.

So the area of the polygon ABCD, a parallelogram, is
#S_(ABCD)=base*height=5*6=30#


Sīkāka informācija

The coordinates can be passed in a plotting structure (a list with x and y components), a two-column matrix, . See xy.coords .

It is assumed that the polygon is to be closed by joining the last point to the first point.

The coordinates can contain missing values. The behaviour is similar to that of lines , except that instead of breaking a line into several lines, NA values break the polygon into several complete polygons (including closing the last point to the first point). See the examples below.

When multiple polygons are produced, the values of density , angle , col , border , and lty are recycled in the usual manner.

Shading of polygons is only implemented for linear plots: if either axis is on log scale then shading is omitted, with a warning.

Self-intersecting polygons may be filled using either the “odd-even” or “non-zero” rule. These fill a region if the polygon border encircles it an odd or non-zero number of times, respectively. Shading lines are handled internally by R according to the fillOddEven argument, but device-based solid fills depend on the graphics device. The windows , pdf and postscript devices have their own fillOddEven argument to control this.