Files
openlayers/examples/styles-rotation.html
2008-10-28 03:03:19 +00:00

86 lines
2.8 KiB
HTML

<html xmlns="http://www.w3.org/1999/xhtml">
<head>
<title>OpenLayers Styles Rotation Example</title>
<style type="text/css">
#map {
width: 800px;
height: 475px;
border: 1px solid black;
}
</style>
<script src="../lib/OpenLayers.js" type="text/javascript"></script>
<script type="text/javascript">
var map;
var vectors;
function init(){
map = new OpenLayers.Map('map');
var wms = new OpenLayers.Layer.WMS(
"OpenLayers WMS",
"http://labs.metacarta.com/wms/vmap0",
{layers: 'basic'}
);
vectors = new OpenLayers.Layer.Vector(
"Simple Geometry",
{
styleMap: new OpenLayers.StyleMap({
"default": {
externalGraphic: "../img/marker-gold.png",
//graphicWidth: 17,
graphicHeight: 20,
graphicYOffset: -19,
rotation: "${angle}",
fillOpacity: "${opacity}"
},
"select": {
cursor: "crosshair",
externalGraphic: "../img/marker.png"
}
})
}
);
map.addLayers([wms, vectors]);
var features = [];
var x = -111.04;
var y = 45.68;
for(var i = 0; i < 10; i++){
x += i * .5;
y += i * .1;
features.push(
new OpenLayers.Feature.Vector(
new OpenLayers.Geometry.Point(x, y), {angle: (i*36)%360-180, opacity:i/10+.1}
)
);
features.push(
new OpenLayers.Feature.Vector(
new OpenLayers.Geometry.Point(x, y), {angle: (i*36)%360, opacity:i/10+.1}
)
);
}
map.setCenter(new OpenLayers.LonLat(x-10, y), 5);
vectors.addFeatures(features);
var selectControl = new OpenLayers.Control.SelectFeature(
vectors, {hover: true});
map.addControl(selectControl);
selectControl.activate();
};
</script>
</head>
<body onload="init()">
<h1 id="title">Rotation Style Example</h1>
<p id="shortdesc">To style point features with rotation, use the rotation
property of the symbolizer. The center of the rotation is the point of the
image specified by graphicXOffset and graphicYOffset.</p>
<div id="map"></div>
<div id="docs"/>
</body>
</html>