Bài viết

1.4: Đa giác


1.4: Đa giác

Các thuộc tính này áp dụng cho tất cả các đa giác đều, dù lồi hay hình sao.

Một thường xuyên nđa giác hai mặt có đối xứng quay theo thứ tự n.

Tất cả các đỉnh của một đa giác đều nằm trên một đường tròn chung (đường tròn ngoại tiếp) tức là chúng là các điểm hình tròn. Đó là, một đa giác đều là một đa giác tuần hoàn.

Cùng với tính chất của các cạnh có độ dài bằng nhau, điều này ngụ ý rằng mọi đa giác đều cũng có một đường tròn nội tiếp hoặc đường tròn nội tiếp tiếp xúc với mọi cạnh tại trung điểm. Do đó, một đa giác đều là một đa giác tiếp tuyến.

Một thường xuyên nĐa giác hai mặt có thể được xây dựng bằng la bàn và thước thẳng nếu và chỉ khi các hệ số nguyên tố lẻ của n là các số nguyên tố Fermat riêng biệt. Xem đa giác có thể xây dựng.

Đối xứng Chỉnh sửa

Nhóm đối xứng của một nĐa giác đều hai mặt là nhóm nhị diện Dn (của đơn hàng 2n): D2, D3, D4,. Nó bao gồm các vòng quay trong Cn, cùng với đối xứng phản xạ trong n trục đi qua tâm. Nếu n là chẵn khi đó một nửa của các trục này đi qua hai đỉnh đối diện và nửa còn lại đi qua trung điểm của các cạnh đối diện. Nếu n là lẻ thì tất cả các trục đều đi qua một đỉnh và trung điểm của cạnh đối diện.

Tất cả các đa giác đơn giản thông thường (một đa giác đơn giản là một đa giác không tự giao nhau ở bất kỳ đâu) là lồi. Những cái có cùng số cạnh cũng tương tự.

An nĐa giác đều hai mặt lồi được biểu thị bằng ký hiệu Schläfli của nó <n>. Đối với n & lt 3, chúng ta có hai trường hợp suy biến:

Monogon <1> Thoái hóa trong không gian thông thường. (Hầu hết các cơ quan có thẩm quyền không coi đa giác là một đa giác thực sự, một phần là do điều này, và cũng vì các công thức bên dưới không hoạt động và cấu trúc của nó không phải của bất kỳ đa giác trừu tượng nào.) Digon <2> a "double line segment" Thoái hóa trong không gian thông thường. (Một số nhà chức trách không coi digon là một đa giác thực sự vì điều này.)

Trong một số ngữ cảnh nhất định, tất cả các đa giác được coi là đều. Trong những trường hợp như vậy, thông lệ thường xuyên bỏ tiền tố. Ví dụ, tất cả các mặt của khối đa diện đều phải đều và các mặt sẽ được mô tả đơn giản là tam giác, vuông, ngũ giác, v.v.

Góc chỉnh sửa

Đối với một lồi thông thường n-gon, mỗi góc nội thất có số đo:

Như n tiệm cận vô cùng, góc trong tiệm cận 180 độ. Đối với một đa giác đều có 10.000 cạnh (một hình lục giác), góc trong là 179,964 °. Khi số lượng các cạnh tăng lên, góc bên trong có thể đến rất gần 180 ° và hình dạng của đa giác tiến tới hình tròn. Tuy nhiên, đa giác không bao giờ có thể trở thành một hình tròn. Giá trị của góc trong không bao giờ có thể trở thành chính xác bằng 180 °, vì chu vi sẽ trở thành một đường thẳng. Vì lý do này, một hình tròn không phải là một đa giác với vô số cạnh.

Đường chéo Chỉnh sửa

Đối với một thường xuyên n-gon nội tiếp trong một đường tròn bán kính đơn vị, tích của khoảng cách từ một đỉnh đã cho đến tất cả các đỉnh khác (bao gồm các đỉnh liền kề và các đỉnh nối với nhau bằng một đường chéo) bằng n.

Các điểm trên mặt phẳng Chỉnh sửa

Đối với một đơn giản thông thường n-gon với vòng tròn R và khoảng cách dTôi từ một điểm tùy ý trong mặt phẳng đến các đỉnh, ta có [1]

Điểm nội thất Sửa đổi

Đối với một n-gon, tổng các khoảng cách vuông góc từ bất kỳ điểm nào bên trong đến n hai bên là n times the apothem [3]: p. 72 (apothem là khoảng cách từ tâm đến bất kỳ phía nào). Đây là sự tổng quát của định lý Viviani cho n= 3 trường hợp. [4] [5]

Circumradius Chỉnh sửa

Vòng tròn R từ tâm của một đa giác đều đến một trong các đỉnh có liên quan đến độ dài cạnh S hoặc đến apothem a bởi

Tổng của các đường vuông góc từ một nđỉnh của -gon đối với bất kỳ đường thẳng nào tiếp tuyến với đường tròn ngoại tiếp bằng n lần vòng tròn. [3]: tr. 73

Tổng bình phương khoảng cách từ các đỉnh của một n-gon đến một điểm bất kỳ trên đường tròn ngoại tiếp của nó bằng 2nR 2 ở đâu R là vòng tròn. [3]: tr.73

Tổng bình phương khoảng cách từ các điểm giữa của các cạnh của một hình đều n-gon đến một điểm bất kỳ trên đường tròn ngoại tiếp là 2nR 2 − ns 2/4, ở đâu S là chiều dài cạnh và R là vòng tròn. [3]: tr. 73

Mổ xẻ Chỉnh sửa

Coxeter tuyên bố rằng mọi zonogon (một 2m-gon có các cạnh đối diện song song và có độ dài bằng nhau) có thể được chia thành (n 2) < displaystyle < tbinom <2> >> hoặc m(m-1) / 2 hình bình hành. Các hình xếp này được chứa dưới dạng tập con của các đỉnh, các cạnh và các mặt trong các hình chiếu trực giao m-khối. [6] Đặc biệt, điều này đúng với đa giác đều có nhiều cạnh bằng nhau, trong trường hợp đó các hình bình hành đều là hình thoi. Danh sách OEIS: A006245 cung cấp số lượng giải pháp cho các đa giác nhỏ hơn.

Các phép mổ xẻ ví dụ cho các đa giác đều cạnh đều được chọn
2m 6 8 10 12 14 16 18 20 24 30 40 50
Hình ảnh
Hình thoi 3 6 10 15 21 28 36 45 66 105 190 300

Khu vực Chỉnh sửa

Khu vực A của một chính quy lồi nđa giác có mặt có cạnh S, vòng tròn R, apothem a, và chu vi p được đưa ra bởi [7] [8]

Đối với đa giác đều có cạnh S = 1, hình tròn R = 1, hoặc apothem a = 1, điều này tạo ra bảng sau: [9] (Lưu ý rằng vì cot ⁡ x → 1 / x < displaystyle cot x rightarrow 1 / x> as x → 0 < displaystyle x rightarrow 0>, [10 ] khu vực khi s = 1 < displaystyle s = 1> đang có xu hướng n 2/4 π < displaystyle n ^ <2> / 4 pi> khi n < displaystyle n> phát triển lớn.)

Con số
của các bên
Khu vực khi bên S = 1 Diện tích khi vòng tròn R = 1 Khu vực khi apothem a = 1
Chính xác Sự gần đúng Chính xác Sự gần đúng Như một (gần đúng)
phần của
khu vực hình tròn
Chính xác Sự gần đúng Như một (gần đúng)
bội số
khu vực vòng tròn
n n 4 cot ⁡ (π n) < displaystyle < tfrac <4>>cot left(< frac > right)> n 2 sin ⁡ (2 π n) < displaystyle < tfrac <2>>sin left(< frac <2pi >> right)> n 2 π sin ⁡ (2 π n) < displaystyle < tfrac <2pi >>sin left(< frac <2pi >> right)> n tan ⁡ (π n) < displaystyle n tan left (< tfrac < pi>> right)> n π tan ⁡ (π n) < displaystyle < tfrac > an left(< frac > right)>
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>> left (5 + < sqrt <5>> right ) >>> 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>> left (5 - < sqrt <5>> right ) >>> 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

Của tất cả n-bình có chu vi cho trước thì hình nào có diện tích lớn nhất là hình đều. [19]

Một số đa giác đều rất dễ dựng bằng compa và việc dựng thẳng các đa giác đều khác thì hoàn toàn không tạo được. Các nhà toán học Hy Lạp cổ đại đã biết cách xây dựng một đa giác đều có 3, 4 hoặc 5 cạnh, [20]: p. xi và họ đã biết cách dựng một đa giác đều với số cạnh gấp đôi của một đa giác đều đã cho. [20]: pp. 49–50 Điều này dẫn đến câu hỏi được đặt ra: liệu có thể xây dựng tất cả đều đặn n-gons với compa và thước thẳng? Nếu không, cái nào n-gons là xây dựng và không?

Carl Friedrich Gauss đã chứng minh khả năng xây dựng của 17 gon thông thường vào năm 1796. Năm năm sau, ông phát triển lý thuyết về các thời kỳ Gauss trong Disquisitiones Arithmeticae. Lý thuyết này cho phép ông xây dựng một điều kiện đủ để tạo ra các đa giác đều:

Một thường xuyên n-gon có thể được xây dựng bằng la bàn và thước thẳng nếu n là tích của lũy thừa 2 và bất kỳ số nguyên tố Fermat nào khác nhau (kể cả không có).

(Một số nguyên tố Fermat là một số nguyên tố có dạng 2 (2 n) + 1. < Displaystyle 2 ^ <(2 ^)> + 1.>) Gauss tuyên bố mà không có bằng chứng rằng điều kiện này cũng cần thiết, nhưng không bao giờ công bố bằng chứng của mình. Một bằng chứng đầy đủ về sự cần thiết đã được Pierre Wantzel đưa ra vào năm 1837. Kết quả được gọi là Định lý Gauss – Wantzel.

Tương đương, một n-gon có thể xây dựng được nếu và chỉ khi cosin của góc chung của nó là một số có thể xây dựng — nghĩa là, có thể được viết dưới dạng bốn phép toán số học cơ bản và phép chiết các căn bậc hai.


Hình lập phương chứa một hình lục giác đều xiên, được coi là 6 cạnh màu đỏ nằm ngoằn ngoèo giữa hai mặt phẳng vuông góc với trục đường chéo của hình lập phương.

Các cạnh bên ngoằn ngoèo của một n-antiprism đại diện cho một xiên 2 thông thườngn-gon, như được hiển thị trong phản 17-gonal này.

A đa giác xiên đều trong không gian 3 có thể được coi là các đường dẫn phi mặt phẳng ngoằn ngoèo giữa hai mặt phẳng song song, được định nghĩa là các cạnh bên của một phản lăng kính đều. Tất cả các cạnh và góc trong bằng nhau.


Các chất rắn Platonic (tứ diện, lập phương, bát diện, khối đa diện và khối icosahedron) có các đa giác Petrie, được nhìn thấy ở đây màu đỏ, với các cạnh tương ứng là 4, 6, 6, 10 và 10.

Nói chung hơn đa giác xiên đều có thể được định nghĩa trong n-không gian. Các ví dụ bao gồm đa giác Petrie, các đường đa giác của các cạnh chia một đa giác đều thành hai nửa và được xem như một đa giác đều trong phép chiếu trực giao.

Trong giới hạn vô hạn đa giác xiên đều trở thành apeirogons xiên.

Một đa giác đều không lồi là một đa giác sao đều. Ví dụ phổ biến nhất là ngôi sao năm cánh, có các đỉnh giống như một hình ngũ giác, nhưng nối các đỉnh xen kẽ nhau.

Cho một nđa giác sao hai mặt, biểu tượng Schläfli được sửa đổi để biểu thị tỉ trọng hay "starriness" m của đa giác, dưới dạng <n/m>. Nếu m là 2, chẳng hạn, sau đó mỗi điểm thứ hai được nối. Nếu m là 3, sau đó mọi điểm thứ ba được tham gia. Ranh giới của đa giác uốn lượn quanh trung tâm m lần.

Các ngôi sao thông thường (không thoái hóa) có tối đa 12 mặt là:

mn phải là coprime, nếu không con số sẽ bị thoái hóa.

Các ngôi sao đều đặn thoái hóa có tới 12 mặt là:

  • Tetragon - <4/2>
  • Hình lục giác - <6/2>, <6/3>
  • Bát giác - <8/2>, <8/4>
  • Enneagon - <9/3>
  • Decagons - <10/2>, <10/4> và <10/5>
  • Dodecagons - <12/2>, <12/3>, <12/4> và <12/6>

Tùy thuộc vào nguồn gốc chính xác của biểu tượng Schläfli, các ý kiến ​​khác nhau về bản chất của hình suy biến. Ví dụ: <6/2> có thể được xử lý theo một trong hai cách:

    Trong phần lớn thế kỷ 20 (xem ví dụ Coxeter (1948)), chúng ta thường lấy / 2 để chỉ việc nối mỗi đỉnh của một lồi <6> với các hàng xóm gần của nó cách đó hai bước, để thu được hợp chất thông thường của hai tam giác , hoặc quẻ.

Tất cả các đa giác thông thường là tự kép đối với đồng dư, và đối với số lẻ n chúng tự kép với bản sắc.

Ngoài ra, các hình sao thông thường (hợp chất), bao gồm các đa giác đều, cũng là tự kép.

Một đa diện đều có các đa giác đều là các mặt, sao cho cứ hai đỉnh thì có một ánh xạ đẳng phương ánh xạ cái này vào cái kia (giống như đối với một đa giác đều).

Hình đa diện tứ giác là một hình đa diện đều có hai loại mặt xen kẽ xung quanh mỗi đỉnh.

Hình đa diện đều là hình đa diện đều chỉ có một loại mặt.

Khối đa diện lồi còn lại (không đồng dạng) với các mặt đều được gọi là khối rắn Johnson.

Một hình đa diện có các tam giác đều là các mặt được gọi là hình tam giác.

  1. ^ Park, Poo-Sung. "Khoảng cách đa giác thông thường", Forum Geometricorum 16, 2016, 227-232. http://forumgeom.fau.edu/FG2016volume16/FG201627.pdf
  2. ^ abc Meskhishvili, Mamuka (2020). "Trung bình theo chu kỳ của đa giác đều và chất rắn Platonic". Truyền thông trong Toán học và Ứng dụng. 11: 335–355.
  3. ^ abcd Johnson, Roger A., Hình học Euclid nâng cao, Dover Publ., 2007 (ban đầu năm 1929).
  4. ^ Pickover, Clifford A, Sách Toán học, Sterling, 2009: tr. 150
  5. ^ Chen, Zhibo và Liang, Tian. "Ngược lại của định lý Viviani", Tạp chí Toán học Cao đẳng 37 (5), 2006, trang 390–391.
  6. ^Coxeter, Giải trí và tiểu luận toán học, ấn bản thứ mười ba, tr.141
  7. ^
  8. "Tham khảo Mở Toán học". Truy cập ngày 4 tháng 2 năm 2014.
  9. ^
  10. "Toán học".
  11. ^ Kết quả cho R = 1 và a = 1 thu được với Maple, sử dụng định nghĩa hàm:

Các biểu thức cho n= 16 nhận được bằng cách áp dụng hai lần công thức nửa góc tiếp tuyến với tan (π / 4)


Nội dung

Từ đa giác bắt nguồn từ tính từ tiếng Hy Lạp πολύς (polús) 'nhiều', 'nhiều' và γωνία (gōnía) 'góc' hoặc 'góc'. Có ý kiến ​​cho rằng γόνυ (gónu) 'đầu gối' có thể là nguồn gốc của gon. [1]

Số mặt

Đa giác chủ yếu được phân loại theo số cạnh. Xem bảng bên dưới.

Lồi và không lồi

Đa giác có thể được đặc trưng bởi độ lồi hoặc kiểu không lồi của chúng:

    : bất kỳ đường thẳng nào vẽ qua đa giác (và không tiếp tuyến với một cạnh hoặc góc) gặp ranh giới của nó chính xác hai lần. Do đó, tất cả các góc bên trong của nó đều nhỏ hơn 180 °. Tương tự, bất kỳ đoạn thẳng nào có điểm cuối trên ranh giới chỉ đi qua các điểm bên trong giữa các điểm cuối của nó.
  • Không lồi: có thể tìm thấy một đường gặp ranh giới của nó nhiều hơn hai lần. Tương tự, tồn tại một đoạn thẳng giữa hai điểm biên đi ra bên ngoài đa giác. : ranh giới của đa giác không tự cắt nhau. Tất cả các đa giác lồi đều đơn giản. : Không lồi và đơn giản. Có ít nhất một góc bên trong lớn hơn 180 °. : toàn bộ bên trong có thể nhìn thấy từ ít nhất một điểm, không vượt qua bất kỳ cạnh nào. Đa giác phải đơn giản và có thể lồi hoặc lõm. Tất cả các đa giác lồi đều có hình sao. : ranh giới của đa giác tự cắt nhau. Thời hạn phức tạp đôi khi được sử dụng trái ngược với đơn giản, nhưng cách sử dụng này có nguy cơ nhầm lẫn với ý tưởng về đa giác phức tạp như một trong những tồn tại trong mặt phẳng Hilbert phức tạp bao gồm hai chiều phức tạp. : một đa giác tự cắt nhau một cách đều đặn. Một đa giác không thể vừa là hình sao vừa là hình sao.

Bình đẳng và đối xứng

    : các góc ở đáy bằng nhau. : tất cả các cạnh có cùng độ dài. : cả hai cạnh đều và tương đương. : tất cả các góc đều nằm trên một đường tròn duy nhất, gọi là đường tròn ngoại tiếp. : tất cả các cạnh là tiếp tuyến của một đường tròn nội tiếp.
  • Isogonal hoặc vertex-transitive: tất cả các góc nằm trong cùng một quỹ đạo đối xứng. Đa giác cũng là chu kỳ và tương đương.
  • Isotoxal hoặc edge-transitive: tất cả các mặt nằm trong cùng một quỹ đạo đối xứng. Đa giác cũng là cạnh đều và tiếp tuyến.

Tính chất của tính đều đặn có thể được định nghĩa theo những cách khác: một đa giác đều nếu và chỉ khi nó vừa là đẳng giác vừa là đẳng hướng, hoặc tương đương nó vừa là chu kỳ vừa là cạnh đều. Một đa giác đều không lồi được gọi là đa giác sao đều đặn.

Điều khoản khác

    : các cạnh của đa giác gặp nhau ở góc vuông, tức là tất cả các góc bên trong của nó là 90 hoặc 270 độ. liên quan đến một dòng nhất định L: mọi đường thẳng trực giao với L cắt đa giác không quá hai lần.

Góc

Bất kỳ đa giác nào cũng có bao nhiêu góc và nó có các cạnh. Mỗi góc có một số góc. Hai điều quan trọng nhất là:

  • Góc nội thất - Tổng các góc bên trong của một đơn giản n-gon là (n - 2) số πradian hoặc (n - 2) × 180 độ. Điều này là bởi vì bất kỳ đơn giản n-gon (có n các mặt) có thể được coi là được tạo thành từ (n - 2) hình tam giác, mỗi hình có tổng góc là π radian hoặc 180 độ. Số đo của bất kỳ góc bên trong của hình phẳng lồi n-gon là (1 - 2 n) π < displaystyle left (1 - < tfrac <2>> right) pi> radian hoặc 180 - 360 n < displaystyle 180 - < tfrac <360>>> độ. Các góc bên trong của đa giác sao đều lần đầu tiên được Poinsot nghiên cứu, trong cùng một bài báo, trong đó ông mô tả bốn hình đa diện sao đều: cho một p q < displaystyle < tfrac thông thường

    >> -gon (a p-gon với mật độ trung tâm q), mỗi góc bên trong là π (p - 2 q) p < displaystyle < tfrac < pi (p-2q)>

    >> radian hoặc 180 (p - 2 q) p < displaystyle < tfrac <180 (p-2q)>

    >> độ. [2]

  • Góc ngoài - Góc bên ngoài là góc bổ sung cho góc bên trong. Tìm kiếm xung quanh một chỗ lồi n-gon, góc "quay" ở một góc là góc ngoài hoặc góc ngoài. Việc theo dõi tất cả các con đường xung quanh đa giác sẽ thực hiện hết một lượt, vì vậy tổng các góc bên ngoài phải là 360 °. Lập luận này có thể được tổng quát thành đa giác lõm đơn giản, nếu các góc bên ngoài quay theo hướng ngược lại bị trừ khỏi tổng số đã quay. Truy tìm xung quanh một n-nói chung, tổng các góc bên ngoài (tổng số góc quay ở các đỉnh) có thể là bội số nguyên bất kỳ d 360 °, ví dụ: 720 ° cho một ngôi sao năm cánh và 0 ° cho một góc "tám" hoặc một hình bình hành, trong đó d là mật độ hoặc số bước ngoặt của đa giác. Xem thêm quỹ đạo (động lực học).

Nếu đa giác không tự giao nhau (nghĩa là đơn giản), vùng có dấu là

Diện tích có dấu phụ thuộc vào thứ tự của các đỉnh và hướng của mặt phẳng. Thông thường, hướng dương được xác định bằng phép quay (ngược chiều kim đồng hồ) ánh xạ trục x dương sang trục y dương. Nếu các đỉnh được sắp xếp ngược chiều kim đồng hồ (nghĩa là theo chiều dương), vùng có dấu là dương, ngược lại là vùng âm. Trong cả hai trường hợp, công thức diện tích là đúng về giá trị tuyệt đối. Công thức này thường được gọi là công thức dây giày hoặc công thức của Người khảo sát. [5]

Khu vực A của một đa giác đơn giản cũng có thể được tính toán nếu độ dài của các cạnh, a1, a2, . an và các góc bên ngoài, θ1, θ2, . θn được biết đến, từ:

Công thức được Lopshits mô tả vào năm 1963. [6]

Nếu đa giác có thể được vẽ trên một lưới cách đều nhau sao cho tất cả các đỉnh của nó là các điểm lưới, thì định lý Pick đưa ra một công thức đơn giản cho diện tích của đa giác dựa trên số điểm lưới bên trong và đường biên: số trước cộng với một nửa số sau số, trừ 1.

Trong mọi đa giác có chu vi p và khu vực A , bất đẳng thức đẳng tích p 2 & gt 4 π A < displaystyle p ^ <2> & gt4 pi A> giữ nguyên. [7]

Đối với bất kỳ hai đa giác đơn giản nào có diện tích bằng nhau, định lý Bolyai – Gerwien khẳng định rằng đa giác thứ nhất có thể được cắt thành các mảnh đa giác có thể ghép lại để tạo thành đa giác thứ hai.

Nói chung, độ dài các cạnh của một đa giác không xác định diện tích của nó. [8] Tuy nhiên, nếu đa giác là chu kỳ thì các cạnh làm xác định khu vực. [9] Tất cả n-góc có độ dài cạnh cho trước thì hình có diện tích lớn nhất là chu kì. Của tất cả n-Hình có chu vi cho trước, hình có diện tích lớn nhất là hình đều (và do đó có chu vi). [10]

Đa giác đều

Nhiều công thức chuyên biệt áp dụng cho các diện tích của đa giác đều.

Diện tích của một đa giác đều được cho dưới dạng bán kính r của đường tròn nội tiếp và chu vi của nó p bởi

Bán kính này cũng được gọi là apothem của nó và thường được biểu diễn dưới dạng a.

Khu vực thường xuyên n-gon về bán kính R của đường tròn ngoại tiếp của nó có thể được biểu thị lượng giác là: [11] [12]

Khu vực thường xuyên n-gon nội tiếp trong một đường tròn bán kính đơn vị, có cạnh S và góc bên trong α, < displaystyle alpha,> cũng có thể được biểu thị lượng giác như sau:

Tự giao nhau

Diện tích của một đa giác tự cắt nhau có thể được xác định theo hai cách khác nhau, đưa ra các câu trả lời khác nhau:

  • Sử dụng các công thức cho đa giác đơn giản, chúng tôi cho phép các vùng cụ thể trong đa giác có thể có diện tích nhân với một hệ số mà chúng tôi gọi là tỉ trọng thuộc khu vực. Ví dụ, ngũ giác lồi ở trung tâm của một ngôi sao năm cánh có mật độ 2. Hai vùng tam giác của một tứ giác chéo (như hình 8) có mật độ trái dấu và cộng các diện tích của chúng với nhau có thể cho tổng diện tích bằng không. cho toàn bộ con số. [13]
  • Coi các vùng bao quanh là tập hợp điểm, chúng ta có thể tìm thấy diện tích của tập hợp điểm bao quanh. Điều này tương ứng với diện tích của mặt phẳng được bao phủ bởi đa giác hoặc với diện tích của một hoặc nhiều đa giác đơn giản có đường viền giống như tự giao của một đa giác. Trong trường hợp tứ giác chéo nhau, nó được coi là hai tam giác đơn giản. [cần trích dẫn]

Tâm

Sử dụng cùng quy ước cho tọa độ đỉnh như trong phần trước, tọa độ trọng tâm của một đa giác đặc đơn là

Trong các công thức này, giá trị có dấu của vùng A < displaystyle A> phải được sử dụng.

Đối với hình tam giác ( n = 3), trọng tâm của các đỉnh và của hình đặc giống nhau, nhưng nói chung, điều này không đúng với n & gt 3. Trọng tâm của tập hợp đỉnh của một đa giác có n đỉnh có tọa độ là

Ý tưởng về một đa giác đã được khái quát hóa theo nhiều cách khác nhau. Một số quan trọng hơn bao gồm:

  • Đa giác hình cầu là một mạch gồm các đường tròn lớn (các cạnh) và các đỉnh trên bề mặt của một hình cầu. Nó cho phép hình đa giác, một đa giác chỉ có hai cạnh và hai góc, không thể có trong một mặt phẳng. Đa giác hình cầu đóng một vai trò quan trọng trong bản đồ (tạo bản đồ) và trong việc xây dựng các khối đa diện đều của Wythoff.
  • Đa giác xiên không nằm trong một mặt phẳng mà nằm ngoằn ngoèo theo ba (hoặc nhiều) kích thước. Đa giác Petrie của các đa giác thông thường là những ví dụ nổi tiếng.
  • Apeirogon là một chuỗi vô hạn của các cạnh và góc, không khép kín nhưng không có kết thúc bởi vì nó kéo dài vô hạn theo cả hai hướng.
  • Apeirogon xiên là một chuỗi vô hạn các cạnh và góc không nằm trong một mặt phẳng.
  • Đa giác phức là một cấu hình tương tự như một đa giác thông thường, tồn tại trong mặt phẳng phức của hai chiều thực và hai chiều ảo.
  • Đa giác trừu tượng là một tập hợp đại số có thứ tự từng phần đại diện cho các phần tử khác nhau (cạnh, đỉnh, v.v.) và kết nối của chúng. Một đa giác hình học thực được cho là hiện thực hóa của đa giác trừu tượng liên quan. Tùy thuộc vào ánh xạ, tất cả các khái quát được mô tả ở đây có thể được thực hiện.
  • Hình đa diện là một vật rắn ba chiều được giới hạn bởi các mặt đa giác phẳng, tương tự như một đa giác theo hai chiều. Các hình dạng tương ứng trong bốn kích thước hoặc cao hơn được gọi là polytopes. [14] (Trong các quy ước khác, các từ khối đa diệnpolytope được sử dụng trong bất kỳ thứ nguyên nào, với sự phân biệt giữa hai thứ nguyên đó là một đa giác nhất thiết phải có giới hạn. [15])

Từ đa giác đến từ tiếng Latinh muộn polygōnum (một danh từ), từ tiếng Hy Lạp πολύγωνον (polygōnon / polugōnon), danh từ sử dụng neuter của πολύγωνος (polygōnos / polugōnos, tính từ nam tính), có nghĩa là "nhiều góc cạnh". Các đa giác riêng lẻ được đặt tên (và đôi khi được phân loại) theo số cạnh, kết hợp tiền tố số có nguồn gốc từ tiếng Hy Lạp với hậu tố -gon, ví dụ. Hình năm góc, dodecagon. Tam giác, tứ giác và nonagon là những trường hợp ngoại lệ.

Ngoài decagons (10 mặt) và dodecagons (12 mặt), các nhà toán học thường sử dụng ký hiệu số, ví dụ 17-gon và 257-gon. [16]

Các ngoại lệ tồn tại đối với các số đếm bên dễ được thể hiện dưới dạng lời nói hơn (ví dụ: 20 và 30) hoặc được sử dụng bởi các nhà toán học không chuyên. Một số đa giác đặc biệt cũng có tên riêng của chúng, ví dụ như ngôi sao ngũ giác thông thường còn được gọi là ngôi sao năm cánh.

Tên đa giác và các thuộc tính khác
Tên Sides Tính chất
monogon 1 Thường không được công nhận là một đa giác, [17] mặc dù một số ngành như lý thuyết đồ thị đôi khi sử dụng thuật ngữ này. [18]
digon 2 Thường không được công nhận là một đa giác trong mặt phẳng Euclide, mặc dù nó có thể tồn tại dưới dạng một đa giác hình cầu. [19]
hình tam giác (hoặc hình tam giác) 3 Đa giác đơn giản nhất có thể tồn tại trong mặt phẳng Euclide. Có thể lát mặt phẳng.
tứ giác (hoặc tứ giác) 4 Đa giác đơn giản nhất có thể tự cắt qua đa giác đơn giản nhất có thể lõm xuống đa giác đơn giản nhất có thể không theo chu kỳ. Có thể lát mặt phẳng.
Hình năm góc 5 [20] Đa giác đơn giản nhất có thể tồn tại như một ngôi sao thông thường. Ngôi sao ngũ giác được gọi là ngôi sao năm cánh hay ngũ giác.
Hình lục giác 6 [20] Có thể lát mặt phẳng.
heptagon (hoặc septagon) 7 [20] Đa giác đơn giản nhất mà dạng thông thường không thể dựng được bằng compa và thước thẳng. Tuy nhiên, nó có thể được xây dựng bằng cách sử dụng công trình Neusis.
hình bát giác 8 [20]
nonagon (hoặc enneagon) 9 [20] "Nonagon" kết hợp tiếng Latinh [novem = 9] với "enneagon" trong tiếng Hy Lạp là tiếng Hy Lạp thuần túy.
hình lục giác 10 [20]
hendecagon (hoặc undecagon) 11 [20] Đa giác đơn giản nhất như dạng thông thường không thể được xây dựng bằng compa, thước thẳng và thước đo góc.
dodecagon (hoặc duodecagon) 12 [20]
tridecagon (hoặc triskaidecagon) 13 [20]
tetradecagon (hoặc tetrakaidecagon) 14 [20]
ngũ giác (hoặc ngũ giác) 15 [20]
lục giác (hoặc lục giác) 16 [20]
heptadecagon (hoặc heptakaidecagon) 17 Đa giác có thể xây dựng [16]
bát giác (hoặc bát giác) 18 [20]
enneadecagon (hoặc enneakaidecagon) 19 [20]
icosagon 20 [20]
icositetragon (hoặc icosikaitetragon) 24 [20]
triacontagon 30 [20]
tứ giác (hoặc tessaracontagon) 40 [20] [21]
ngũ giác (hoặc ngũ giác) 50 [20] [21]
lục giác (hoặc lục giác) 60 [20] [21]
heptacontagon (hoặc hebdomecontagon) 70 [20] [21]
bát giác (hoặc ogdoëcontagon) 80 [20] [21]
enneacontagon (hoặc Enecontagon) 90 [20] [21]
hectogon (hoặc hecatontagon) [22] 100 [20]
257-gon 257 Đa giác có thể xây dựng [16]
ớt chuông 1000 Các triết gia bao gồm René Descartes, [23] Immanuel Kant, [24] David Hume, [25] đã sử dụng hình ảnh trái ớt làm ví dụ trong các cuộc thảo luận.
myriagon 10,000 Được sử dụng làm ví dụ trong một số cuộc thảo luận triết học, ví dụ như trong bài viết của Descartes Suy ngẫm về triết học đầu tiên
65537-gon 65,537 Đa giác có thể xây dựng [16]
megagon [26] [27] [28] 1,000,000 Như với ví dụ của René Descartes về hình quả ớt, đa giác triệu cạnh đã được sử dụng như một minh họa cho một khái niệm được xác định rõ ràng mà không thể hình dung được. [29] [30] [31] [32] [33] [34] [35] Hình megagon cũng được sử dụng như một minh họa về sự hội tụ của các đa giác đều thành một đường tròn. [36]
apeirogon Một đa giác suy biến có vô số cạnh.

Xây dựng tên cao hơn

Để xây dựng tên của một đa giác có nhiều hơn 20 và ít hơn 100 cạnh, hãy kết hợp các tiền tố như sau. [20] Thuật ngữ "kai" áp dụng cho 13 gons trở lên và được sử dụng bởi Kepler, và John H. Conway ủng hộ để làm rõ ràng các số tiền tố được nối trong cách đặt tên của các khối đa diện tứ giác. [22]

Hàng chục Ones hậu tố cuối cùng
-kai- 1 -hena- -gon
20 icosi- (icosa- khi ở một mình) 2 -di-
30 triaconta- (hoặc triconta-) 3 -tri-
40 tetraconta- (hoặc tessaraconta-) 4 -tetra-
50 pentaconta- (hoặc penteconta-) 5 -penta-
60 hexaconta- (hoặc hexeconta-) 6 -hexa-
70 heptaconta- (hoặc hebdomeconta-) 7 -hepta-
80 octaconta- (hoặc ogdoëconta-) 8 -octa-
90 enneaconta- (hoặc thụt tháo-) 9 -ennea-

Đa giác đã được biết đến từ thời cổ đại. Người Hy Lạp cổ đại đã biết đến các đa giác đều, với ngôi sao năm cánh, một đa giác đều không lồi (đa giác sao), xuất hiện vào đầu thế kỷ thứ 7 trước Công nguyên. trên một krater của Aristophanes, được tìm thấy tại Caere và hiện tại ở Bảo tàng Capitoline. [37] [38]

Nghiên cứu có hệ thống đầu tiên được biết đến về đa giác không lồi nói chung được thực hiện bởi Thomas Bradwardine vào thế kỷ 14. [39]

Năm 1952, Geoffrey Colin Shephard đã khái quát ý tưởng về đa giác sang mặt phẳng phức, trong đó mỗi chiều thực đi kèm với một chiều tưởng tượng, để tạo ra đa giác phức tạp. [40]

Đa giác xuất hiện trong các thành tạo đá, phổ biến nhất là các mặt phẳng của tinh thể, trong đó góc giữa các mặt phụ thuộc vào loại khoáng chất mà tinh thể được tạo ra.

Các hình lục giác đều có thể xảy ra khi dung nham nguội đi tạo thành các khu vực của các cột đá bazan được đóng gói chặt chẽ, có thể được nhìn thấy tại Giant's Causeway ở Bắc Ireland hoặc tại Devil's Postpile ở California.

Trong sinh học, bề mặt của tổ ong sáp do ong tạo ra là một mảng hình lục giác, các cạnh và đáy của mỗi ô cũng là đa giác.

Trong đồ họa máy tính, một đa giác là một hình nguyên thủy được sử dụng trong mô hình hóa và kết xuất. Chúng được xác định trong cơ sở dữ liệu, chứa các mảng đỉnh (tọa độ của các đỉnh hình học, cũng như các thuộc tính khác của đa giác, chẳng hạn như màu sắc, bóng và kết cấu), thông tin kết nối và vật liệu. [41] [42]

Bất kỳ bề mặt nào cũng được mô hình hóa như một lớp tessellation được gọi là lưới đa giác. Nếu một lưới vuông có n + 1 điểm (đỉnh) mỗi bên, có n hình vuông bình phương trong lưới, hoặc 2n tam giác vuông vì có hai tam giác trong một hình vuông. Có (n + 1) 2 / 2(n 2) các đỉnh của mỗi tam giác. Ở đâu n lớn, điều này tiếp cận một nửa. Hoặc, mỗi đỉnh bên trong lưới vuông nối bốn cạnh (đường thẳng).

Hệ thống hình ảnh gọi lên cấu trúc của các đa giác cần thiết cho cảnh được tạo từ cơ sở dữ liệu. Điều này được chuyển đến bộ nhớ hoạt động và cuối cùng, đến hệ thống hiển thị (màn hình, màn hình TV, v.v.) để có thể xem cảnh. Trong quá trình này, hệ thống hình ảnh hiển thị các đa giác ở góc độ chính xác sẵn sàng để truyền dữ liệu đã xử lý đến hệ thống hiển thị. Mặc dù đa giác là hai chiều, thông qua máy tính hệ thống, chúng được đặt trong một cảnh trực quan theo đúng hướng ba chiều.


Chúng tôi bắt đầu đi ngang qua biểu đồ từ điểm dưới cùng bên trái và tiếp tục cho đến khi chúng tôi quay trở lại nó. Khi bắt đầu, chúng tôi đánh dấu tất cả các cạnh là không được sử dụng. Trên mỗi lần lặp lại, bạn nên chọn điểm tiếp theo và đánh dấu điểm đó là đã truy cập.

Để chọn điểm tiếp theo, hãy chọn một cạnh có góc bên trong lớn nhất theo hướng ngược chiều kim đồng hồ.

Tôi tính toán hai vectơ: vectơ1 cho cạnh hiện tại và vectơ2 cho mỗi cạnh chưa xem tiếp theo (như được trình bày trong hình).

  1. Sản phẩm vô hướng (sản phẩm chấm). Nó trả về một giá trị liên quan đến một góc giữa các vectơ.
  2. Sản phẩm vector (sản phẩm chéo). Nó trả về một vectơ mới. Nếu tọa độ z của vectơ này là dương, tích vô hướng cho tôi góc vuông theo hướng ngược chiều kim đồng hồ. Khác (tọa độ z là âm), tôi tính toán góc giữa các vectơ là 360 - góc từ tích vô hướng.

Kết quả là tôi nhận được một cạnh (và một đỉnh tiếp theo tương ứng) với góc lớn nhất.

Tôi thêm vào danh sách kết quả mỗi đỉnh đã qua. Danh sách kết quả là đa giác liên hợp.


Chú giải công cụ

Được sử dụng để hiển thị các văn bản nhỏ trên đầu các lớp bản đồ.

Ví dụ sử dụng

Lưu ý về độ lệch chú giải công cụ. Tờ rơi xem xét hai tùy chọn để tính toán bù trừ chú giải công cụ:

  • tùy chọn Chú giải công cụ bù đắp: nó mặc định là [0, 0] và cụ thể cho một chú giải công cụ. Thêm một phần bù x dương để di chuyển chú giải công cụ sang bên phải và một phần bù y dương để di chuyển nó xuống dưới cùng. Phủ định sẽ di chuyển sang trái và trên cùng.
  • tùy chọn tooltipAnchor Icon: tùy chọn này sẽ chỉ được xem xét cho Marker. Bạn nên điều chỉnh giá trị này nếu bạn sử dụng biểu tượng tùy chỉnh.

Sự sáng tạo

Nhà máy Sự miêu tả
L.tooltip( các tùy chọn?, nguồn?) Khởi tạo một đối tượng Chú giải công cụ được cung cấp cho một đối tượng tùy chọn tùy chọn mô tả diện mạo và vị trí của nó và một đối tượng nguồn tùy chọn được sử dụng để gắn thẻ chú giải công cụ với tham chiếu đến Lớp mà nó tham chiếu đến.

Tùy chọn

Lựa chọn Kiểu Mặc định Sự miêu tả
ngăn Chuỗi & # x27tooltipPane & # x27 Ngăn bản đồ nơi chú giải công cụ sẽ được thêm vào.
bù lại Điểm Điểm (0, 0) Độ lệch tùy chọn của vị trí chú giải công cụ.
phương hướng Chuỗi & # x27auto & # x27 Hướng dẫn nơi mở chú giải công cụ. Các giá trị có thể là: phải, trái, trên, dưới, giữa, tự động. tự động sẽ tự động chuyển đổi giữa phải và trái theo vị trí chú giải công cụ trên bản đồ.
dài hạn Boolean sai Mở chú giải công cụ vĩnh viễn hay chỉ khi di chuột qua.
dính Boolean sai Nếu đúng, chú giải công cụ sẽ chạy theo chuột thay vì cố định ở trung tâm tính năng.
tương tác Boolean sai Nếu đúng, chú giải công cụ sẽ lắng nghe các sự kiện tính năng.
sự mờ đục Con số 0.9 Độ mờ vùng chứa chú giải công cụ.
Lựa chọn Kiểu Mặc định Sự miêu tả
tên lớp Chuỗi & # x27 & # x27 Tên lớp CSS tùy chỉnh để gán cho cửa sổ bật lên.
Lựa chọn Kiểu Mặc định Sự miêu tả
sự phân bổ Chuỗi vô giá trị Chuỗi sẽ được hiển thị trong kiểm soát phân bổ, ví dụ: & quot © Cộng tác viên OpenStreetMap & quot. Nó mô tả dữ liệu lớp và thường là nghĩa vụ pháp lý đối với chủ sở hữu bản quyền và nhà cung cấp ô.

Sự kiện

Biến cố Dữ liệu Sự miêu tả
thêm vàoBiến cố Kích hoạt sau khi lớp được thêm vào bản đồ
tẩyBiến cố Kích hoạt sau khi lớp được xóa khỏi bản đồ
Biến cố Dữ liệu Sự miêu tả
popupopenPopupEvent Kích hoạt khi một cửa sổ bật lên liên kết với lớp này được mở ra
popupclosePopupEvent Kích hoạt khi cửa sổ bật lên liên kết với lớp này bị đóng
Biến cố Dữ liệu Sự miêu tả
tooltipopenTooltipEvent Kích hoạt khi chú giải công cụ liên kết với lớp này được mở.
tooltipcloseTooltipEvent Kích hoạt khi chú giải công cụ liên kết với lớp này bị đóng.

Phương pháp

Thêm lớp vào bản đồ hoặc nhóm lớp đã cho.

Xóa lớp khỏi bản đồ mà nó hiện đang hoạt động.

Xóa lớp khỏi bản đồ đã cho

Trả về HTMLElement đại diện cho ngăn được đặt tên trên bản đồ. Nếu tên bị bỏ qua, trả về ngăn cho lớp này.

Được sử dụng bởi kiểm soát phân bổ, trả về tùy chọn phân bổ.

Binds a popup 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 popup previously bound with bindPopup .

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

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

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

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

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 guarantee 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 failure failure n/a
huge OSM water 5667 95 29.30 failure failure 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

Các ví dụ

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 -coordinates. 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)|#

Explanation:

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#


Chi tiết

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.


Xem video: Đa giác - Đa giác đều - Bài 1 - Toán học 8 - Cô Phạm Thị Huệ Chi DỄ HIỂU NHẤT (Tháng Giêng 2022).