Hình nhiều đường

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

Hình nhiều đường là một danh sách các điểm, nơi các đoạn thẳng được vẽ giữa các điểm liên tiếp. Hình nhiều đường có các thuộc tính sau:

Điểm
Các đỉnh của đường thẳng. Đoạn thẳng được vẽ giữa các điểm liên tiếp. Theo mặc định, một hình nhiều đường không được đóng. Để tạo thành một hình nhiều đường đóng, điểm bắt đầu và điểm kết thúc phải giống nhau.
Chiều rộng
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
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).
Giới hạn bắt đầu/kết thúc
Xác định hình dạng sẽ được sử dụng ở đầu hoặc cuối của một hình nhiều đường. Các loại giới hạn được hỗ trợ: ButtCap, SquareCap, RoundCap (áp dụng cho hoa văn nét liền) và CustomCap (áp dụng cho mọi hoa văn nét vẽ). Mặc định cho cả điểm bắt đầu và kết thúc: ButtCap.
Loại mối nối
Kiểu khớp xác định hình dạng sẽ được dùng khi nối các đoạn thẳng liền kề tại tất cả các đỉnh của hình nhiều đường, ngoại trừ đỉnh bắt đầu và kết thú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
Solid (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 trên một dòng. Các loại PatternItem có sẵn: Gap (được xác định theo độ dài khoảng trống tính bằng pixel), Dash (được xác định theo chiều rộng đường kẻ và độ dài dấu gạch ngang tính bằng pixel) và Dot (hình tròn, ở giữa một đường, đường kính được xác định bằng chiều rộng của đường kẻ tính bằng pixel).
Chỉ mục Z
Thứ tự vẽ lớp phủ ô này tương ứng với các lớp phủ khác (bao gồm GroundOverlay, TileOverlay, CirclePolygon 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 chỉ mục z là tuỳ ý. zIndex mặc định là 0.
Chế độ hiển thị
Cho biết liệu hình nhiều đường có thể nhìn thấy hay không, tức là hình nhiều đường đó được vẽ trên bản đồ. Một hình nhiều đường vô hình sẽ không được vẽ, nhưng giữ lại tất cả các thuộc tính khác. Giá trị mặc định là true, tức là hiển thị.
Trạng thái đo lường
Cho biết các đoạn của hình nhiều đường có nên được vẽ dưới dạng phép đo trắc địa hay không, chứ không phải là các đường thẳng trên phép chiếu Optimizer. 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 hình nhiều đường, hãy đặt 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.OnPolylineClickListener đã đăng ký thông qua setOnPolylineClickListener(GoogleMap.OnPolylineClickListener).
Gắn thẻ
Một Object liên kết với hình nhiều đường. Ví dụ: Object có thể chứa dữ liệu về nội dung mà hình nhiều đường đại diện. Việc này sẽ dễ dàng hơn so với việc lưu trữ một Map<Polyline, 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.
Vùng
Xác định các span có các kiểu khác nhau dùng để kết xuất hình nhiều đường này. Bạn có thể sử dụng thuộc tính này để tạo một hình nhiều đường với StrokeStyle khác nhau trên các đoạn khác nhau của hình nhiều đường.

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 thin red line from London to New York.
 Polyline line = map.addPolyline(new PolylineOptions()
     .add(new LatLng(51.5, -0.1), new LatLng(40.7, -74.0))
     .width(5)
     .color(Color.RED));
 

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 Polyline này có bằng với một giá trị khác hay không.
int
Hàm getColor()
Lấy màu của hình nhiều đường này.
Mũi tên
getEndCap()
Lấy giới hạn ở đỉnh cuối của hình nhiều đường này.
Chuỗi
getId()
Lấy mã nhận dạng của hình nhiều đường này.
int
Hàm getJointType()
Lấy kiểu khớp được dùng ở tất cả đỉnh của hình nhiều đường, ngoại trừ đỉnh bắt đầu và đỉnh kết thúc.
List<PatternItem>
getPattern()
Lấy mẫu nét của hình nhiều đường này.
List<LatLng>
Hàm getPoints()
Trả về ảnh chụp nhanh các đỉnh của hình nhiều đường này tại thời điểm này .
Mũi tên
getStartCap()
Lấy giới hạn ở đỉnh bắt đầu của hình nhiều đường này.
Đối tượng
Hàm getTag()
Lấy thẻ cho hình nhiều đường.
float
getWidth()
Lấy chiều rộng của hình nhiều đường này.
float
getZIndex()
Lấy zIndex của hình nhiều đường này.
int
boolean
isClickable()
Xem khả năng nhấp vào được của hình nhiều đường.
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 hình nhiều đường này.
void
xoá()
Xóa hình nhiều đường này khỏi bản đồ.
void
setClickable(có thể nhấp vào boolean)
Đặt khả năng nhấp vào được của hình nhiều đường.
void
setColor(màu int)
Đặt màu của hình nhiều đường này.
void
setEndCap(Cap endCap)
Đặt mũ ở đỉnh cuối của hình nhiều đường 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
setJointType(int matchingType)
Đặt kiểu khớp cho tất cả đỉnh của hình nhiều đường, ngoại trừ đỉnh bắt đầu và đỉnh kết thúc.
void
setPattern(Mẫu danh sách<PatternItem>)
Đặt mẫu nét của hình nhiều đường.
void
setPoints(Danh sách<LatLng> điểm)
Đặt các điểm của hình nhiều đường này.
void
setSpans(Danh sách<StyleSpan> span)
Đặt các span của hình nhiều đường.
void
setStartCap(Cap startCap)
Đặt giới hạn ở đỉnh bắt đầu của hình nhiều đường này.
void
setTag(Thẻ đối tượng)
Đặt thẻ cho hình nhiều đường.
void
setVisible(boolean hiển thị)
Thiết lập chế độ hiển thị của hình nhiều đường này.
void
setWidth(chiều rộng có độ chính xác đơn)
Đặt chiều rộng của hình nhiều đường này.
void
setZIndex(số thực dấu phẩy động zIndex)
Thiết lập zIndex của hình nhiều đường 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 Polyline 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 getColor ()

Lấy màu của hình nhiều đường này.

Trả bóng
  • màu ở định dạng ARGB.

công khai Cap getEndCap ()

Lấy giới hạn ở đỉnh cuối của hình nhiều đường này.

Trả bóng
  • kiểu chữ hoa.

công khai Chuỗi getId ()

Lấy mã nhận dạng của hình nhiều đường này. Mã nhận dạng sẽ là duy nhất trong số tất cả các hình nhiều đường trên bản đồ.

Trả bóng
  • mã nhận dạng của hình nhiều đường này.

public int getJointType ()

Lấy kiểu khớp được dùng ở tất cả đỉnh của hình nhiều đường, ngoại trừ đỉnh bắt đầu và đỉnh kết thúc. Hãy xem JointType để biết các giá trị có thể có.

Trả bóng
  • loại khớp.

công khai Danh sách<PatternItem> getPattern ()

Lấy mẫu nét của hình nhiều đường này.

Trả bóng
  • mẫu nét vẽ.

công khai Danh sách<LatLng> getPoints ()

Trả về ảnh chụp nhanh các đỉnh của hình nhiều đường 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 đỉnh. Do đó, những thay đổi đối với đỉnh của hình nhiều đường sẽ không được danh sách này phản ánh, cũng như các thay đổi đối với danh sách này sẽ không được hình nhiều đường phản ánh. Để thay đổi các đỉnh của hình nhiều đường, hãy gọi setPoints(List).

công khai Cap getStartCap ()

Lấy giới hạn ở đỉnh bắt đầu của hình nhiều đường này.

Trả bóng
  • hình bắt đầu.

công khai Đối tượng getTag ()

Lấy thẻ cho hình nhiều đường.

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 getWidth ()

Lấy chiều rộng của hình nhiều đường này.

Trả bóng
  • chiều rộng tính bằng pixel màn hình.

public float getZIndex ()

Lấy zIndex của hình nhiều đường này.

Trả bóng
  • zIndex của hình nhiều đường.

public int hashCode ()

công khai boolean isClickable ()

Xem khả năng nhấp vào được của hình nhiều đường. Nếu hình nhiều đường có thể nhấp vào được, ứng dụng sẽ nhận được thông báo gửi đến GoogleMap.OnPolylineClickListener khi người dùng nhấp vào hình nhiều đường đó. Trình nghe sự kiện được đăng ký thông qua setOnPolylineClickListener(GoogleMap.OnPolylineClickListener).

Trả bóng
  • true nếu hình nhiều đường có thể nhấp vào đượ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 hình nhiều đường này.

Trả bóng
  • khả năng hiển thị của hình nhiều đường này.

công khai khoảng trống xoá ()

Xóa hình nhiều đường này khỏi bản đồ. Sau khi một hình nhiều đường đã bị xoá, hành vi của tất cả các phương thức của hình nhiều đường đó sẽ không xác định được.

công khai void setClickable (boolean có thể nhấp)

Đặt khả năng nhấp vào được của hình nhiều đường. Nếu hình nhiều đường có thể nhấp vào được, ứng dụng sẽ nhận được thông báo gửi đến GoogleMap.OnPolylineClickListener khi người dùng nhấp vào hình nhiều đường đó. Trình nghe sự kiện được đăng ký thông qua setOnPolylineClickListener(GoogleMap.OnPolylineClickListener).

Các tham số
có thể nhấp Chế độ cài đặt mới về khả năng nhấp cho hình nhiều đường.

public void setColor (int color)

Đặt màu của hình nhiều đường này.

Các tham số
màu màu ở định dạng ARGB

public void setEndCap (Cap endCap)

Đặt mũ ở đỉnh cuối của hình nhiều đường này. Giới hạn kết thúc mặc định là ButtCap.

Các tham số
endCap chữ hoa. Không được là null.

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}

public void setJointType (int joinType)

Đặt kiểu khớp cho tất cả đỉnh của hình nhiều đường, ngoại trừ đỉnh bắt đầu và đỉnh kết thú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 loại khớp.

công khai khoảng trống setPattern (List<PatternItem> mẫu)

Đặt mẫu nét của hình nhiều đường. 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 setPoints (Danh sách<LatLng> điểm)

Đặt các điểm của hình nhiều đường 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 hình nhiều đường này.

Các tham số
điểm danh sách các LatLng là đỉnh của hình nhiều đường.

public void setSpans (List<StyleSpan> spans)

Đặt các span của hình nhiều đường.

Các tham số
khoảng

public void setStartCap (Cap startCap)

Đặt giới hạn ở đỉnh bắt đầu của hình nhiều đường này. Giới hạn bắt đầu mặc định là ButtCap.

Các tham số
startCap giới hạn bắt đầu. Không được là null.

công khai khoảng trống setTag (Thẻ đối tượng)

Đặt thẻ cho hình nhiều đường.

Bạn có thể dùng thuộc tính này để liên kết Object tuỳ ý với hình nhiều đường này. Ví dụ: Object có thể chứa dữ liệu về nội dung mà hình nhiều đường đại diện. Việc này sẽ dễ dàng hơn so với việc lưu trữ một Map<Polyline, 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 hình nhiều đường này. Khi không hiển thị, một hình nhiều đường sẽ không được vẽ, nhưng vẫn giữ nguyên tất cả các thuộc tính khác.

Các tham số
hiển thị nếu true thì hình nhiều đường sẽ xuất hiện; nếu false thì không.

công khai khoảng trống setWidth (chiều rộng có độ chính xác đơn)

Đặt chiều rộng của hình nhiều đường này.

Các tham số
chiều rộng chiều rộng tính bằng pixel màn hình

công khai khoảng trống setZIndex (float zIndex)

Thiết lập zIndex của hình nhiều đường này. Các hình nhiều đường có zIndice cao hơn được vẽ phía trên các đường có chỉ số thấp hơn.

Các tham số
zIndex zIndex của hình nhiều đường này.