Một đa giác trên bề mặt trái đất. Một đa giác có thể là hình lồi hoặc lõm, nó có thể trải dài qua kinh tuyến 180 và có thể có các lỗ không được lấp đầy. Mã này có các thuộc tính sau:
- Đường viền
- Đường viền được xác định bởi một danh sách các đỉnh theo chiều kim đồng hồ hoặc ngược chiều kim đồng hồ. Điểm bắt đầu và điểm kết thúc không cần phải trùng khớp; nếu không, đa giác sẽ tự động bị đóng. Các đoạn thẳng được vẽ giữa các điểm liên tiếp theo hướng ngắn hơn trong hai hướng (đông hoặc tây).
- Lỗ
- Lỗ hổng là một vùng bên trong đa giác chưa được lấp đầy. Lỗ được xác định chính xác giống như đường viền. Lỗ phải được chứa đầy đủ trong đường viền. Bạn có thể chỉ định nhiều lỗ, tuy nhiên, chúng tôi không hỗ trợ các lỗ chồng chéo lên nhau.
- Chiều rộng nét
- Chiều rộng phân đoạn đường kẻ tính bằng pixel màn hình. Chiều rộng là không đổi và không phụ thuộc vào mức thu phóng của máy ảnh. Giá trị mặc định là 10.
- Màu nét
- Màu của phân đoạn đường kẻ ở định dạng ARGB, chính là định dạng mà
Color
sử dụng. Giá trị mặc định là màu đen (0xff000000
). - Loại khớp nối
- Kiểu khớp xác định hình dạng sẽ được sử dụng khi nối các đoạn đường thẳng liền kề tại tất cả các đỉnh của đường viền đa giác. Xem
JointType
để biết các loại khớp được hỗ trợ. Giá trị mặc định làDEFAULT
. - Mẫu nét
- Độ rắn (mặc định, được biểu thị bằng
null
) hoặc một chuỗi đối tượngPatternItem
cần lặp lại dọc theo đường viền của đa giác. Các loạiPatternItem
có sẵn:Gap
(được xác định bằng độ dài dấu cách tính bằng pixel),Dash
(được xác định theo chiều rộng nét vẽ và chiều dài dấu gạch ngang tính bằng pixel) vàDot
(hình tròn, căn giữa trên đường viền đa giác, đường kính được xác định bằng chiều rộng nét vẽ tính bằng pixel). - Màu nền
- Tô màu theo định dạng ARGB, chính định dạng mà
Color
sử dụng. Giá trị mặc định là trong suốt (0x00000000
). Nếu hình dạng đa giác không được chỉ định chính xác (xem phần Đường viền và Lỗ ở trên) thì sẽ không có màu nền nào được vẽ. - Chỉ mục Z
- Thứ tự vẽ đa giác này tương ứng với các lớp phủ khác, bao gồm
Polyline
,Circle
,GroundOverlay
vàTileOverlay
, nhưng không phảiMarker
. Một lớp phủ có chỉ mục z lớn hơn được vẽ trên các lớp phủ có chỉ mục z nhỏ hơn. Thứ tự của các lớp phủ có cùng giá trị z-index là tuỳ ý. Giá trị mặc định là 0. - Chế độ hiển thị
- Cho biết đa giác hiển thị hay vô hình, tức là đa giác được vẽ trên bản đồ. Đa giác không hiển thị sẽ không được vẽ, nhưng giữ lại tất cả các thuộc tính khác của nó. Giá trị mặc định là
true
, tức là hiển thị. - Trạng thái đo lường
- Cho biết liệu các phân đoạn của đa giác có nên được vẽ dưới dạng trắc địa hay không, chứ không phải là các đường thẳng trên phép chiếu đôi ánh xạ phép. Trắc địa là đường đi ngắn nhất giữa hai điểm trên bề mặt Trái Đất. Đường cong trắc địa được xây dựng với giả định Trái đất là một hình cầu
- Khả năng nhấp
- Nếu bạn muốn xử lý các sự kiện được kích hoạt khi người dùng nhấp vào đa giác, hãy thiết lập thuộc tính này thành
true
. Bạn có thể thay đổi giá trị này bất cứ lúc nào. Giá trị mặc định làfalse
. Nếu bạn đặt thuộc tính này thànhtrue
, ứng dụng sẽ nhận được thông báo đếnGoogleMap.OnPolygonClickListener
đã đăng ký thông quasetOnPolygonClickListener(GoogleMap.OnPolygonClickListener)
. - Gắn thẻ
- Một
Object
liên kết với đa giác. Ví dụ:Object
có thể chứa dữ liệu về nội dung mà đa giác đó đại diện. Việc này sẽ dễ dàng hơn so với việc lưu trữ mộtMap<Polygon, Object>
riêng. Một ví dụ khác, bạn có thể liên kết một mã nhận dạngString
tương ứng với mã nhận dạng trong tập dữ liệu. SDK Google Maps dành cho Android không đọc hay ghi thuộc tính này.
Các phương thức trong lớp này phải được gọi trên luồng giao diện người dùng Android. Nếu không, IllegalStateException
sẽ được gửi trong thời gian chạy.
Ví dụ:
GoogleMap map;
// ... get a map.
// Add a triangle in the Gulf of Guinea
Polygon polygon = map.addPolygon(new PolygonOptions()
.add(new LatLng(0, 0), new LatLng(0, 5), new LatLng(3, 5), new LatLng(0, 0))
.strokeColor(Color.RED)
.fillColor(Color.BLUE));
Hướng dẫn cho nhà phát triển
Để biết thêm thông tin, hãy đọc hướng dẫn cho nhà phát triển về Hình dạng.
Tóm tắt phương thức công khai
boolean | |
int |
getFillColor()
Lấy màu nền của đa giác này.
|
List<List<LatLng>> |
Hàm getHoles()
Trả về ảnh chụp nhanh của các lỗ của đa giác này tại thời điểm này .
|
Chuỗi |
getId()
Lấy mã nhận dạng của đa giác này.
|
List<LatLng> |
Hàm getPoints()
Trả về ảnh chụp nhanh các đỉnh của đa giác này tại thời điểm này .
|
int |
Hàm getStrokeColor()
Lấy màu vẽ của đa giác này.
|
int |
Hàm getStrokeJointType()
Lấy kiểu khớp nét được sử dụng ở tất cả các đỉnh của đường viền đa giác.
|
List<PatternItem> |
getStrokePattern()
Lấy mẫu nét của đường viền đa giác này.
|
float |
Hàm getStrokeWidth()
Lấy độ rộng nét của đa giác này.
|
Đối tượng |
Hàm getTag()
Lấy thẻ cho đa giác.
|
float |
getZIndex()
Lấy zIndex của đa giác này.
|
int |
hashCode()
|
boolean |
isClickable()
Lấy khả năng nhấp của đa giác.
|
boolean |
Hàm isGeodesic()
Nhận xem mỗi đoạn của đường có được vẽ dưới dạng trắc địa hay không.
|
boolean |
isVisible()
Xem chế độ hiển thị của đa giác này.
|
void |
xoá()
Xóa đa giác khỏi bản đồ.
|
void |
setClickable(có thể nhấp vào boolean)
Đặt khả năng nhấp của đa giác.
|
void |
setFillColor(màu int)
Đặt màu tô cho đa giác này.
|
void |
setGeodesic(boolean geodesic)
Thiết lập xem có vẽ từng đoạn của đường ở dạng trắc địa hay không.
|
void | |
void | |
void |
setStrokeColor(màu int)
Đặt màu cho nét vẽ của đa giác này.
|
void |
setStrokeJointType(int matchingType)
Đặt kiểu kết hợp cho tất cả các đỉnh của đường viền đa giác.
|
void | |
void |
setStrokeWidth(độ rộng số thực)
Đặt độ rộng nét của đa giác này.
|
void |
setTag(Thẻ đối tượng)
Đặt thẻ cho đa giác.
|
void |
setVisible(boolean hiển thị)
Thiết lập chế độ hiển thị của đa giác này.
|
void |
setZIndex(số thực dấu phẩy động zIndex)
Thiết lập zIndex của đa giác này.
|
Tóm tắt phương thức kế thừa
Phương thức công khai
boolean công khai bằng (Đối tượng khác)
public int getFillColor ()
Lấy màu nền của đa giác này.
Trả bóng
- màu ở định dạng ARGB.
công khai Danh sách<List<LatLng>> getHoles ()
Trả về ảnh chụp nhanh của các lỗ của đa giác này tại thời điểm này . Danh sách được trả về là bản sao của danh sách các lỗ hổng, do đó những thay đổi đối với các lỗ hổng của đa giác sẽ không được danh sách này phản ánh, đồng thời các thay đổi đối với danh sách này cũng sẽ không được đa giác phản ánh.
công khai Chuỗi getId ()
Lấy mã nhận dạng của đa giác này. ID sẽ là duy nhất trong số tất cả các Đa giác trên bản đồ.
công khai Danh sách<LatLng> getPoints ()
Trả về ảnh chụp nhanh các đỉnh của đa giác này tại thời điểm này . Danh sách được trả về là một bản sao của danh sách các đỉnh, do đó, những thay đổi đối với đỉnh của đa giác sẽ không được danh sách này phản ánh, đồng thời các thay đổi đối với danh sách này cũng sẽ không được đa giác phản ánh. Để thay đổi các đỉnh của đa giác, hãy gọi setPoints(List)
.
public int getStrokeColor ()
Lấy màu vẽ của đa giác này.
Trả bóng
- màu ở định dạng ARGB.
public int getStrokeJointType ()
Lấy kiểu khớp nét được sử dụng ở tất cả các đỉnh của đường viền đa giác. Hãy xem JointType
để biết các giá trị có thể có.
Trả bóng
- kiểu khớp nét.
công khai Danh sách<PatternItem> getStrokePattern ()
Lấy mẫu nét của đường viền đa giác này.
Trả bóng
- mẫu nét vẽ.
public float getStrokeWidth ()
Lấy độ rộng nét của đa giác này.
Trả bóng
- chiều rộng tính bằng pixel màn hình.
công khai Đối tượng getTag ()
Lấy thẻ cho đa giác.
Trả bóng
- thẻ nếu thẻ được đặt bằng
setTag
;null
nếu chưa có thẻ nào được đặt.
public float getZIndex ()
Lấy zIndex của đa giác này.
Trả bóng
- zIndex của đa giác.
public int hashCode ()
công khai boolean isClickable ()
Lấy khả năng nhấp của đa giác. Nếu có thể nhấp vào đa giác, ứng dụng của bạn sẽ nhận được thông báo đến GoogleMap.OnPolygonClickListener
khi người dùng nhấp vào đa giác đó.
Trình nghe sự kiện được đăng ký thông qua setOnPolygonClickListener(GoogleMap.OnPolygonClickListener)
.
Trả bóng
true
nếu đa giác có thể nhấp được; nếu không thì trả vềfalse
.
công khai boolean isGeodesic ()
Nhận xem mỗi đoạn của đường có được vẽ dưới dạng trắc địa hay không.
Trả bóng
true
nếu mỗi đoạn được vẽ dưới dạng trắc địa;false
nếu mỗi đoạn được vẽ dưới dạng một đường thẳng trên phép chiếu{8}
boolean công khai isVisible ()
Xem chế độ hiển thị của đa giác này.
Trả bóng
- chế độ hiển thị đa giác này.
công khai khoảng trống xoá ()
Xóa đa giác khỏi bản đồ. Sau khi một đa giác bị xoá, hành vi của tất cả các phương thức của đa giác đó là không xác định.
công khai void setClickable (boolean có thể nhấp)
Đặt khả năng nhấp của đa giác. Nếu có thể nhấp vào đa giác, ứng dụng của bạn sẽ nhận được thông báo đến GoogleMap.OnPolygonClickListener
khi người dùng nhấp vào đa giác đó.
Trình nghe sự kiện được đăng ký thông qua setOnPolygonClickListener(GoogleMap.OnPolygonClickListener)
.
Các tham số
có thể nhấp | Cài đặt khả năng nhấp mới cho đa giác. |
---|
public void setFillColor (int color)
Đặt màu tô cho đa giác này.
Các tham số
màu | màu ở định dạng ARGB |
---|
public void setGeodesic (boolean geodesic)
Thiết lập xem có vẽ từng đoạn của đường ở dạng trắc địa hay không.
Các tham số
trắc địa | nếu true , thì mỗi đoạn được vẽ dưới dạng trắc địa; nếu false ,
mỗi đoạn được vẽ dưới dạng một đường thẳng trên phép chiếu{8}
|
---|
công khai khoảng trống setHoles (List<? mở rộng lỗ<LatLng>>)
Thiết lập các lỗ của đa giác này. Phương thức này sẽ sao chép các lỗ hổng, do đó, các thay đổi tiếp theo đối với holes
sẽ không ảnh hưởng đến đa giác này.
Các tham số
lỗ | danh sách các lỗ, trong đó một lỗ là danh sách các LatLng .
|
---|
công khai khoảng trống setPoints (Danh sách<LatLng> điểm)
Thiết lập các điểm của đa giác này. Phương thức này sẽ lấy một bản sao của các điểm, do đó, các thay đổi tiếp theo đối với points
sẽ không ảnh hưởng đến đa giác này.
Các tham số
điểm | danh sách các LatLng là đỉnh của đa giác.
|
---|
public void setStrokeColor (int color)
Đặt màu cho nét vẽ của đa giác này.
Các tham số
màu | màu ở định dạng ARGB |
---|
public void setStrokeJointType (int joinType)
công khai khoảng trống setStrokePattern (List<PatternItem>pattern)
Đặt mẫu nét của đường viền đa giác. Mẫu nét mặc định là kiểu liền nét, được biểu thị bằng null
.
Các tham số
hình mở khóa | mẫu nét vẽ. |
---|
công khai khoảng trống setStrokeWidth (độ rộng số thực)
Đặt độ rộng nét của đa giác này.
Các tham số
chiều rộng | chiều rộng tính bằng pixel hiển thị. |
---|
công khai khoảng trống setTag (Thẻ đối tượng)
Đặt thẻ cho đa giác.
Bạn có thể sử dụng thuộc tính này để liên kết Object
tuỳ ý với đa giác này. Ví dụ: Object
có thể chứa dữ liệu về nội dung mà đa giác đó đại diện. Việc này sẽ dễ dàng hơn so với việc lưu trữ một Map<Polygon, Object>
riêng. Một ví dụ khác, bạn có thể liên kết một mã nhận dạng String
tương ứng với mã trong một tập dữ liệu. SDK Google Maps dành cho Android không đọc hay ghi thuộc tính này. Bạn có trách nhiệm gọi setTag(null)
để xoá thẻ khi không cần nữa, nhằm ngăn ngừa rò rỉ bộ nhớ trong ứng dụng của bạn.
Các tham số
tag | nếu giá trị rỗng, thẻ sẽ bị xoá. |
---|
public void setVisible (boolean visible)
Thiết lập chế độ hiển thị của đa giác này. Khi không hiển thị, một đa giác sẽ không được vẽ, nhưng vẫn giữ tất cả các thuộc tính khác của nó.
Các tham số
hiển thị | nếu true thì đa giác sẽ hiển thị; nếu false thì không phải là đa giác.
|
---|
công khai khoảng trống setZIndex (float zIndex)
Thiết lập zIndex của đa giác này. Đa giác có zIndice cao hơn sẽ được vẽ phía trên các đa giác có chỉ số thấp hơn.
Các tham số
zIndex | zIndex của đa giác này. |
---|