For å tegne polygon på google kartet med MapKit rammeverk

stemmer
5

Jeg ønsket å vise Google kart i et kartutsnitt som jeg ønsker å tegne en polygon / sirkel.

Noen råd?

Publisert på 26/08/2009 klokken 11:42
kilden bruker
På andre språk...                            


2 svar

stemmer
6

Måten jeg leser spørsmålet ditt er at du ønsker å programma tegne polygon på kartet. For dette, ta kontakt med de Apple docs på MapKit.

Du trenger ikke å legge til gjennomsiktige utsikt over kartet MapKit ( MKMapView). Du oppretter et overlegg objekt, i dette tilfellet en MKPolygon. (i det følgende eksempel variabelen mapvil være MKMapViewtilfellet eies av visningen kontrolleren som du legger denne koden inn):

CLLocationCoordinate2D  points[4];

points[0] = CLLocationCoordinate2DMake(41.000512, -109.050116);
points[1] = CLLocationCoordinate2DMake(41.002371, -102.052066);
points[2] = CLLocationCoordinate2DMake(36.993076, -102.041981);
points[3] = CLLocationCoordinate2DMake(36.99892, -109.045267);

MKPolygon* poly = [MKPolygon polygonWithCoordinates:points count:4];
poly.title = @"Colorado";

[map addOverlay:poly];

Så, hvis du ønsker å tilpasse utseendet (farger, hjerneslag, etc.) på overlegget, implementere deg MKMapViewDelegateprotokollen i visningen kontrolleren du har som eier MKMapViewobjektet og gir en implementering av mapView:viewForOverlay:

- (MKOverlayView *)mapView:(MKMapView *)mapView viewForOverlay:(id <MKOverlay>)overlay
{
    if ([overlay isKindOfClass:[MKPolygon class]])
    {
        MKPolygonView* aView = [[[MKPolygonView alloc] initWithPolygon:(MKPolygon*)overlay] autorelease];

        aView.fillColor = [[UIColor cyanColor] colorWithAlphaComponent:0.2];
        aView.strokeColor = [[UIColor blueColor] colorWithAlphaComponent:0.7];
        aView.lineWidth = 3;

        return aView;
    }

    return nil;
}

Selvfølgelig, alltid huske å faktisk tildele kartet eksempel er delegat til visningen kontrolleren (MKMapViewDelegate), enten i Interface Builder, eller i kode (f.eks viewDidLoad).

Svarte 15/05/2012 kl. 07:00
kilden bruker

stemmer
1

Jeg brukte ideer fra dette personer blogginnlegg å oppnå dette. Det utgangspunktet innebærer å legge en transparent utsikt over kartet. Kartet gir deg deretter om å konvertere steder å poeng på visningen. Gi meg beskjed hvis området ikke hjelpe deg, og jeg kan prøve å grave opp et eksempel fra min kode.

http://spitzkoff.com/craig/?p=65

Svarte 14/10/2009 kl. 19:59
kilden bruker

Cookies help us deliver our services. By using our services, you agree to our use of cookies. Learn more