Il 08/10/2009 15:20, Andreas Hocevar scrisse:
> Hi,
>
> ok, this is something different. How about the following split handler:
>
> split: function(event) {
>       if (event.features.length>2) {
>               event.features = [event.original.clone()];
>         }
> }

No way! :-(

It works with a 2 steps strategy:

split = new OpenLayers.Control.Split({
        layer: vlayer,
        eventListeners: {
                split: function(event) {                                        
                        if (event.features.length>2)
                                this.srcFeature=event.original.clone();
                        }
                },
                aftersplit: function(event) {
                        if (event.features.length<=2)                           
vlayer.removeFeatures(event.features[event.features.length-1]);
                        else    {
                                vlayer.removeFeatures(event.features);
                                vlayer.addFeatures(this.srcFeature);
                        }
                }
        });

I don't know if there's a faster or cleaner way. Suggestions are welcome.

Thanks
   maxx
_______________________________________________
Users mailing list
[email protected]
http://openlayers.org/mailman/listinfo/users

Reply via email to