Fichièr d'origina(2 000 × 1 100 pixèl, talha del fichièr: 1,05 Mo, tipe MIME: image/png)

Descripcion

Descripcion
English: Map of Capri. Uses terrain data from SRTM3 (http://dds.cr.usgs.gov/srtm/version2_1/SRTM3/Eurasia/N40E014.hgt.zip).

Bitmap version of File:Capri_sights_terrain.svg.

Note: An offical map of Capri (with roads, etc.) can be found at http://www.capritourism.com/imgg/download/capri_map_en.pdf
Data
Font Trabalh personal
Autor Morn the Gorn
compass rose from Maps_template-fr.svg: Eric Gaba (Sting - fr:Sting)
Road and rail data from OpenStreetMap
Autras versions

Code

Terrain shading layer was generated with the following Python script (requires Python Imaging Library and NumPy):

# Read SRTM3 file and create shaded relief

# 2010-04-05

from struct import unpack,calcsize

from numpy import *
import numpy as np
from PIL import Image

row_length = 1201	# row_length is 1201 for SRTM3 or 3601 for SRTM1
file_name  = "N40E014.hgt"	# from http://dds.cr.usgs.gov/srtm/version2_1/SRTM3/Eurasia/
hlim       = 800	# height limit for map [m]

ref_lat    = 40.55	# reference latitude
earth_eq   = 6371. * 1000. * 2. * pi
x_scale    = 1./360.*earth_eq*cos(ref_lat/180.*pi)/row_length
y_scale    = 1./360.*earth_eq/row_length

print "1 pixel = %u * %u m" % (x_scale, y_scale)
print "factor", y_scale/x_scale

h = zeros((row_length, row_length))
f = open(file_name, 'r')
li = []

for j in range(row_length):
	for i in range(row_length):
		d = f.read(2)
		(height,) = unpack('>h', d)
	        h[i,j] = height
		if height < -1000:
			li.append((i,j))

hmax = h.max()
h3 = zeros_like(h)
h3[:,:] = h[:,:]
print len(li), "missing data points"

def get_nei(z):
	h2 = h[z[0]-1:z[0]+2,z[1]-1:z[1]+2]
	nn = sum(where(h2 < -1000, 0, 1))
	av = sum(where(h2 > -1000, h2, 0)) / float(nn)
	return nn, av

# fill missing points with a nearest-neighbor averaging method:
loop = len(li)
lim = 7
while loop > 0:
	sd = False
	for q in range(len(li)):
		if h[li[q]] > -1000.: continue
		n, a = get_nei(li[q])
		if n >= lim:
			print li[q],loop, n, a, lim
			h3[li[q]] = a
			loop -= 1
			sd = True
	if not sd: lim -= 1
	h[:,:] = h3[:,:]
print "missing points done"	

def hext(a):
	"Hex color to triplet."
	r,g,b = a[0:2], a[2:4], a[4:6]
	return int(r, 16), int(g, 16), int(b, 16)

# from http://en.wikipedia.org/wiki/Wikipedia:WikiProject_Maps/Conventions/Topographic_maps:
col_sea = hext("0978ab")
cols = """
{{Mapcolor|r=245|v=244|b=242|hex=#F5F4F2|col=black}}
{{Mapcolor|r=224|v=222|b=216|hex=#E0DED8|col=black}}
{{Mapcolor|r=202|v=195|b=184|hex=#CAC3B8|col=black}}
{{Mapcolor|r=186|v=174|b=154|hex=#BAAE9A|col=black}}
{{Mapcolor|r=172|v=154|b=124|hex=#AC9A7C|col=black}}
{{Mapcolor|r=170|v=135|b=83|hex=#AA8753|col=black}}
{{Mapcolor|r=185|v=152|b=90|hex=#B9985A|col=black}}
{{Mapcolor|r=195|v=167|b=107|hex=#C3A76B|col=black}}
{{Mapcolor|r=202|v=185|b=130|hex=#CAB982|col=black}}
{{Mapcolor|r=211|v=202|b=157|hex=#D3CA9D|col=black}}
{{Mapcolor|r=222|v=214|b=163|hex=#DED6A3|col=black}}
{{Mapcolor|r=232|v=225|b=182|hex=#E8E1B6|col=black}}
{{Mapcolor|r=239|v=235|b=192|hex=#EFEBC0|col=black}}
{{Mapcolor|r=225|v=228|b=181|hex=#E1E4B5|col=black}}
{{Mapcolor|r=209|v=215|b=171|hex=#D1D7AB|col=black}}
{{Mapcolor|r=189|v=204|b=150|hex=#BDCC96|col=black}}
{{Mapcolor|r=168|v=198|b=143|hex=#A8C68F|col=black}}
{{Mapcolor|r=148|v=191|b=139|hex=#94BF8B|col=black}}
{{Mapcolor|r=172|v=208|b=165|hex=#ACD0A5|col=black}}
"""
col = []

for l in cols.splitlines():
	if len(l) < 10: continue
	i = l.find('#')
	if i > -1:
		col.append(hext(l[i+1:i+7]))

col.reverse()	# -> bottom to top

o = Image.new('RGB', h.shape)

def interp(c, f):
	"Interpolate into color table."
	r = int((1.-f) * col[c][0] + f * col[c+1][0])
	g = int((1.-f) * col[c][1] + f * col[c+1][1])
	b = int((1.-f) * col[c][2] + f * col[c+1][2])
	return r,g,b

for j in range(row_length):
	for i in range(row_length):
		c, f = divmod(h[j,i] / hmax * (len(col)-1), 1)
		if 0 < h[j,i] < hmax:
			o.putpixel((j,i), interp(int(c), f))
		elif h[i,j] == hmax:
			o.putpixel((j,i), col[-1])
		else: o.putpixel((j,i), col_sea)

o.save("map_height.png")	# save height map
o2 = o.crop((0,0,942,603))
o2.save("map_height_cropped.png")

# taken from hillshade.py:
#def illumination(idata,azdeg=315.0,altdeg=45.):
def illumination(idata,azdeg=225.0,altdeg=45.):
    # convert alt, az to radians
    az = azdeg*np.pi/180.0
    alt = altdeg*np.pi/180.0
    # gradient in x and y directions
    dx, dy = np.gradient(idata)
    slope = 0.5*np.pi - np.arctan(np.hypot(dx, dy))
    aspect = np.arctan2(dx, dy)
    odata = np.sin(alt)*np.sin(slope) + np.cos(alt)*np.cos(slope)*np.cos(-az -\
             aspect - 0.5*np.pi)
    # rescale to interval -1,1
    # 1 means maximum sun exposure and 0 means complete shade.
    odata = (odata - odata.min())/(odata.max() - odata.min())
    return odata

il = 255 * illumination(h)

o4 = Image.new('RGBA', il.shape)
for j in range(row_length-1):
	for i in range(row_length-1):
		v = int(il[j,i])
		if 0 <= v < 128:
			alpha = (255 - 2*v)
			o4.putpixel((j,i), (0,0,0,alpha))
		elif v == 128:
			o4.putpixel((j,i), (0,0,0,0))
		elif 128 < v < 256:
			alpha = 2*(v-128)
			o4.putpixel((j,i), (255,255,255,alpha))
		else:
			o4.putpixel((j,i), (255,255,255,0))
o4.save("il_NW_alpha.png")	# NW-illuminated (alpha transparency for use with Inkscape)

Publicat jos licéncia(s)

Ieu, autor d'aquesta òbra, publiqui jos las licéncias seguentas:
w:oc:Creative Commons
atribucion partiment a l'identic
Sètz liure :
  • de partejar – de copiar, distribuir e transmetre aquesta òbra
  • d'adaptar – d'adaptar aquesta òbra
Jos las condicions seguentas :
  • atribucion – Vos cal atribuir aquesta òbra amb lo biais especificat per l'autor o lo concedent (mas pas dins un sens que suggerís que vos apròvan o qu'apròvan l'utilizacion d'aquesta òbra).
  • partiment a l'identic – Se modificatz, transformatz, o vos basatz sus aquesta òbra, vos cal distribuir l'òbra resultanta jos la meteissa licéncia o una licéncia similara a aquesta.
GNU head Avètz la permission de copiar, distribuir e modificar aqueste document segon los tèrmes de la Licéncia de documentacion liura GNU, version 1.2 o mai recenta publicada per la Free Software Foundation; sens seccions inalterablas, sens tèxte de primièra pagina de tempa e sens tèxte de darrièra pagina de tempa. Un exemplar de la licéncia es inclús dins la seccion intitulada GNU Free Documentation License.
Podètz causir la licéncia que volètz.

Llegendes

Afegeix una explicació d'una línia del que representa aquest fitxer

Elements representats en aquest fitxer

subjècte representat

Algun valor sense element de Wikidata

image/png

dd052a2b31b71693be103e2d85c8a0c6f50ea7ad

1 105 800 Byte

1 100 píxel

amplada catalan

2 000 píxel

Istoric del fichièr

Clicar sus una data e una ora per veire lo fichièr tal coma èra a aqueste moment

(Darrièras contribucions | Primièras contribucions) Veire (10 mai recentas) () (10 | 20 | 50 | 100 | 250 | 500).
Data e oraMiniaturaDimensionsUtilizaireComentari
actual30 setembre de 2010 a 22.15Miniatura per la version del 30 setembre de 2010 a 22.152 000×1 100 (1,05 Mo)Mornadded OpenStreetMap layer
7 abril de 2010 a 22.55Miniatura per la version del 7 abril de 2010 a 22.552 000×1 100 (951 Ko)Mornadded scale in feet
7 abril de 2010 a 18.44Miniatura per la version del 7 abril de 2010 a 18.442 049×1 154 (956 Ko)Mornmore mountains
7 abril de 2010 a 13.47Miniatura per la version del 7 abril de 2010 a 13.472 000×1 100 (935 Ko)Mornmountain heights
6 abril de 2010 a 21.48Miniatura per la version del 6 abril de 2010 a 21.482 000×1 100 (914 Ko)MornPhilosophical Park as area
5 abril de 2010 a 18.58Miniatura per la version del 5 abril de 2010 a 18.582 000×1 100 (909 Ko)Mornimproved terrain
4 abril de 2010 a 18.59Miniatura per la version del 4 abril de 2010 a 18.592 000×1 100 (857 Ko)Morncompass rose
4 abril de 2010 a 15.45Miniatura per la version del 4 abril de 2010 a 15.452 000×1 100 (818 Ko)Mornhypsometric colors
4 abril de 2010 a 00.32Miniatura per la version del 4 abril de 2010 a 00.322 000×1 127 (670 Ko)Mornslightly stronger colors
3 abril de 2010 a 19.44Miniatura per la version del 3 abril de 2010 a 19.442 000×1 100 (655 Ko)Mornterrain shading from SRTM 3 data
(Darrièras contribucions | Primièras contribucions) Veire (10 mai recentas) () (10 | 20 | 50 | 100 | 250 | 500).

La pagina çaijós compòrta aqueste imatge :

Usatge global del fichièr

Los autres wikis seguents utilizan aqueste imatge :

Veire l'utilizacion globala d'aqueste fichièr.