Tôi đã chỉ tò mò cách chính xác để vẽ một tuyến đường đơn giản giữa một tập hợp các điểm là gì? Tôi hiện đang có một mảng tọa độ và khi tôi chuyển nó sang polylineWithCoordinates và làm tất cả những thứ cần thiết khác, nó sẽ vẽ một mạng lưới lớn các đường kết nối tất cả các điểm với nhau. Tôi đã xem xét một vài mẫu nhưng không ai trong số họ dường như làm bất cứ điều gì đặc biệt để giải thích cho điều này, ngay cả khi họ sử dụng nhiều hơn hai điểm.MapKit - polylineWithĐối sánh kết nối tất cả các điểm
- (void)viewDidLoad
{
[super viewDidLoad];
...
//Add drawing of route line
CLLocationCoordinate2D coordinates[[myCheckpoints count]];
int i = 0;
for (Checkpoint *ckpt in myCheckpoints)
{
coordinates[i] = CLLocationCoordinate2DMake([ckpt.lat floatValue] , [ckpt.lon floatValue]);
i++;
}
MKPolyline *route = [MKPolyline polylineWithCoordinates: coordinates count: [myCheckpoints count]];
[mapView addOverlay:route];
}
- (MKOverlayView *)mapView:(MKMapView *)mapView viewForOverlay:(id <MKOverlay>)overlay {
MKPolylineView *polylineView = [[[MKPolylineView alloc] initWithPolyline:overlay] autorelease];
polylineView.strokeColor = [UIColor greenColor];
polylineView.lineWidth = 5.0;
return polylineView;
}
Đây là mã trong bản đồ của tôiViewController có trách nhiệm vẽ, trong trường hợp ai đó nhìn thấy những gì tôi đang làm hoặc không làm.
Bây giờ tôi nhìn vào mọi thứ gần hơn, thực sự không kết nối các tọa độ lân cận với nhau. Mỗi điểm chỉ có 2 dòng xuất phát từ nó kết nối điểm đó với 2 điểm nữa nhưng tôi không thể tìm ra mẫu của nó để kết nối chúng.
Có bất kỳ tọa độ nào lặp lại không? Đảm bảo tọa độ trong myCheckpoints theo thứ tự bạn muốn vẽ. – Anna
Yea, tất cả tọa độ là duy nhất và theo thứ tự đúng. Vì vậy, tôi đúng trong giả định điều này không phải là nghĩa vụ phải xảy ra? –
Nó sẽ vẽ các đường theo thứ tự các tọa độ được cung cấp. Có bao nhiêu điểm trong hàng? Đăng nhập các tọa độ khi chúng được thêm vào trong vòng lặp. – Anna