OpenLayers PreFeatureInsert Vector Layer

by Thomas B.

HTML

<script src="http://openlayers.org/api/OpenLayers.js"></script>
OpenLayers PreFeatureInsert Vector Layer
<br />
<div id="map"></div>

CSS

html, body {
    width:100%;
    height:100%;
}
#map {
    width:100%;
    height:90%;
}

JavaScript

init();

function init() {
    //Map
    var map = new OpenLayers.Map("map", {
        projection: new OpenLayers.Projection("EPSG:900913")
    });

    //Base Layer
    var osm = new OpenLayers.Layer.OSM();
    map.addLayer(osm);

    //Vector Layer
    var vectorLayer = new OpenLayers.Layer.Vector("Transformer", {

        preFeatureInsert: function (feature) {
            feature.geometry.transform(
            new OpenLayers.Projection("EPSG:4326"),
            new OpenLayers.Projection("EPSG:900913"))
        }
    });
    map.addLayer(vectorLayer);

    //Point
    var point = new OpenLayers.Geometry.Point(-1.119715, 45.650678);

    var pointFeature = new OpenLayers.Feature.Vector(point);
    vectorLayer.addFeatures([pointFeature]);

    map.zoomToExtent(vectorLayer.getDataExtent());
}