func (p *Point) Icon(b *bytes.Buffer) {
	longitude := p.Longitude
	latitude := p.Latitude

	if longitude < 0 {
		longitude = longitude + 360.0
	}

	switch {
	// New Zealand.
	case longitude >= 165.0 && longitude <= 180.0 && latitude >= -48.0 && latitude <= -34.0:
		x := int(math.Floor((longitude+0.05)*10)) - 1650
		y := int(math.Floor((latitude+0.05)*10)) + 480
		if x >= 0 && x <= 151 && y >= 0 && y <= 141 {
			b.WriteString(nzIcon)
			p.x = nzIconPts[x][y].x
			p.y = nzIconPts[x][y].y
			p.visible = true
		}
	// New Zealand, Raoul, Chathams.
	case longitude >= 165.0 && longitude <= 193.0 && latitude >= -48.0 && latitude <= -20.0:
		x := int(math.Floor(longitude+0.5)) - 165
		y := int(math.Floor(latitude+0.5)) + 48
		if x >= 0 && x <= 29 && y >= 0 && y <= 29 {
			b.WriteString(nzrcIcon)
			p.x = nzrcIconPts[x][y].x
			p.y = nzrcIconPts[x][y].y
			p.visible = true
		}
	// New Zealand, South.
	case longitude >= 156.0 && longitude <= 180.0 && latitude >= -55.0 && latitude <= -34.0:
		x := int(math.Floor(longitude+0.5)) - 156
		y := int(math.Floor(latitude+0.5)) + 55
		if x >= 0 && x <= 21 && y >= 0 && y <= 22 {
			b.WriteString(nzsIcon)
			p.x = nzsIconPts[x][y].x
			p.y = nzsIconPts[x][y].y
			p.visible = true
		}
	default:
		b.WriteString(nzIcon)
		p.x = -1000
		p.y = -1000
	}
}
/*
Icon selects a small low resolution coastline map of New Zealand, and possibly surrounding regions, that is
suitable for icon size maps.
*/
Icon selects a small low resolution coastline map of New Zealand, and possibly surrounding regions, that is
suitable for icon size maps.
/ * Icon selects a small low resolution coastline map of New Zealand and possibly surrounding regions that is suitable for icon size maps . * /
func (p *Point) Icon(b *bytes.Buffer) {
	longitude := p.Longitude
	latitude := p.Latitude
	if longitude < 0 {
		longitude = longitude + 360.0
	}
	switch {
	case longitude >= 165.0 && longitude <= 180.0 && latitude >= -48.0 && latitude <= -34.0:
		x := int(math.Floor((longitude+0.05)*10)) - 1650
		y := int(math.Floor((latitude+0.05)*10)) + 480
		if x >= 0 && x <= 151 && y >= 0 && y <= 141 {
			b.WriteString(nzIcon)
			p.x = nzIconPts[x][y].x
			p.y = nzIconPts[x][y].y
			p.visible = true
		}
	case longitude >= 165.0 && longitude <= 193.0 && latitude >= -48.0 && latitude <= -20.0:
		x := int(math.Floor(longitude+0.5)) - 165
		y := int(math.Floor(latitude+0.5)) + 48
		if x >= 0 && x <= 29 && y >= 0 && y <= 29 {
			b.WriteString(nzrcIcon)
			p.x = nzrcIconPts[x][y].x
			p.y = nzrcIconPts[x][y].y
			p.visible = true
		}
	case longitude >= 156.0 && longitude <= 180.0 && latitude >= -55.0 && latitude <= -34.0:
		x := int(math.Floor(longitude+0.5)) - 156
		y := int(math.Floor(latitude+0.5)) + 55
		if x >= 0 && x <= 21 && y >= 0 && y <= 22 {
			b.WriteString(nzsIcon)
			p.x = nzsIconPts[x][y].x
			p.y = nzsIconPts[x][y].y
			p.visible = true
		}
	default:
		b.WriteString(nzIcon)
		p.x = -1000
		p.y = -1000
	}
}
func ( p * Point ) Icon ( b * bytes . Buffer ) { longitude := p . Longitude latitude := p . Latitude if longitude < 0 { longitude = longitude + 360.0 } switch { case longitude >= 165.0 && longitude <= 180.0 && latitude >= - 48.0 && latitude <= - 34.0 : x := int ( math . Floor ( ( longitude + 0.05 ) * 10 ) ) - 1650 y := int ( math . Floor ( ( latitude + 0.05 ) * 10 ) ) + 480 if x >= 0 && x <= 151 && y >= 0 && y <= 141 { b . WriteString ( nzIcon ) p . x = nzIconPts [ x ] [ y ] . x p . y = nzIconPts [ x ] [ y ] . y p . visible = true } case longitude >= 165.0 && longitude <= 193.0 && latitude >= - 48.0 && latitude <= - 20.0 : x := int ( math . Floor ( longitude + 0.5 ) ) - 165 y := int ( math . Floor ( latitude + 0.5 ) ) + 48 if x >= 0 && x <= 29 && y >= 0 && y <= 29 { b . WriteString ( nzrcIcon ) p . x = nzrcIconPts [ x ] [ y ] . x p . y = nzrcIconPts [ x ] [ y ] . y p . visible = true } case longitude >= 156.0 && longitude <= 180.0 && latitude >= - 55.0 && latitude <= - 34.0 : x := int ( math . Floor ( longitude + 0.5 ) ) - 156 y := int ( math . Floor ( latitude + 0.5 ) ) + 55 if x >= 0 && x <= 21 && y >= 0 && y <= 22 { b . WriteString ( nzsIcon ) p . x = nzsIconPts [ x ] [ y ] . x p . y = nzsIconPts [ x ] [ y ] . y p . visible = true } default : b . WriteString ( nzIcon ) p . x = - 1000 p . y = - 1000 } }
Icon selects a small low resolution coastline map of New Zealand, and possibly surrounding regions, that is
suitable for icon size maps.
Icon selects a small low resolution coastline map of New Zealand and possibly surrounding regions that is suitable for icon size maps .
// New Zealand. // New Zealand, Raoul, Chathams. // New Zealand, South.