Đa giác

lớp cuối cùng công khai Đa giác mở rộng Đối tượng

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ượng PatternItem cần lặp lại dọc theo đường viền của đa giác. Các loại PatternItem 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, GroundOverlayTileOverlay, nhưng không phải Marker. 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ành true, ứng dụng sẽ nhận được thông báo đến GoogleMap.OnPolygonClickListener đã đăng ký thông qua setOnPolygonClickListener(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ộ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ã 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
bằng(Đối tượng khác)
Kiểm tra xem Polygon này có bằng với một giá trị khác hay không.
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
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
setHoles(Danh sách<? mở rộng lỗ trong Danh sách<LatLng>>)
Thiết lập các lỗ của đa giác này.
void
setPoints(Danh sách<LatLng> điểm)
Thiết lập các điểm của đa giác này.
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
setStrokePattern(Danh sách<PatternItem> mẫu)
Đặt mẫu nét của đường viền đa giác.
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)

Kiểm tra xem Polygon này có bằng với một giá trị khác hay không.

Các tham số
Chi phí khác một Object.
Trả bóng
  • true nếu cả hai đối tượng là cùng một đối tượng, nghĩa là đây == 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)

Đặt kiểu kết hợp cho 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 phép. Giá trị mặc định DEFAULT sẽ được sử dụng nếu kiểu khớp không xác định hoặc không phải là một trong các giá trị được phép.

Các tham số
jointType kiểu khớp nét.

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.