[OpenLayers-Dev] Re: [OpenLayers 3] code sprint summary, and request for comments

Bouiaw bouiaw at gmail.com
Mon Oct 4 04:38:40 EDT 2010


Hi,

On Mon, Oct 4, 2010 at 8:47 AM, Eric Lemoine
<eric.lemoine at camptocamp.com> wrote:
> On Saturday, October 2, 2010, Bouiaw <bouiaw at gmail.com> wrote:
>> Hi guys,
>
> Thanks for jumping in Sébastien.
>
>
>> I am really interested by this discussion, since we discussed a lot on
>> that on OpenScales side too. I think it could be interesting to share
>> what we have implemented in 1.2 and what we plan to do in 2.x, since
>> we have the same starting point (OpenScales 1.0 = OpenLayers 2
>> behaviour).
>>
>> We are also very interested by some feedbacks, in order to know if
>> what we have done could make sense, or not, in OpenLayers. We may be
>> be interested to backport it in an OpenLayers 3 fork on GitHub if
>> there is some interest.
>>
>> About previous discussion, I think Paul Spenser proposal is great.
>>
>> The behaviour we have on OpenScales 1.2 is the following :
>>  - Layer has no more isBaseLayer property
>>  - baseLayer is just a reference to a Layer (could be any layer),
>> stored in the map, in order to identify the current baseLayer
>>  - baseLayer define current projection, reolutions and extent
>>  - map has no projection, no resolutions, and use active baseLayer values
>>  - No more overlays, all layers have the same capabilities
>
> Is the base layer always below the other layers?

No, it can have any zindex.

>
>
>> Source code :
>> http://bitbucket.org/gis/openscales/src/tip/openscales-core/src/main/flex/org/openscales/core/Map.as
>> http://bitbucket.org/gis/openscales/src/tip/openscales-core/src/main/flex/org/openscales/core/layer/Layer.as
>>
>> For 2.x, we plan to implement free zoom mode and make resolution level
>> optional (not anymore in Layer, but deeper in inheritance tree). The
>> main "issue" we want to fix is the strong link between cached raster
>> layer resolution levels and display zoom levels. We will remove this
>> strong link, allowing the user to display any intermediate resolution
>> (continous zooming) and use raster scaling on client side to display
>> the closest raster cache level.
>>
>> Consequences of theses changes are the following :
>>  - No more baselayer
>>  - No more resolutions array or numZoomLevel in Layer class
>>  - We create a new DiscreteLevelLayer class with resolutions array,
>> numZoomLevel and related stuffs
>>  - Map have a projection property, that is used to define the display projection
>>  - Layer have a native projection property, and an information that
>> allow us to know if we can request data in another projection (server
>> ide reprojection)
>
> Any reason for having layers advertize "primary" and "secondary"
> projections? Why wouldn't a list of projections work for you?

Yes, a list of "native projections" could be fine. The idea behind the
native projection is to be able to know on client side the
projection(s) of precalculated layers (raster or layer) to request it
in the more efficient way possible.

>
> Do you really have no baseLayer anymore? With a Google layer, or any
> other DiscreteLevelLayer layer, how does the map know it should get
> resolutions from that layer if it's not a base/master layer from the
> map's perspective?

We will have a resolution, minResolution and maxResolution attribute,
defined by the map. But we don't need anymore a resolutions array that
will define at Map or baseLayer fixed levels because we don't need
them anymore.

>
>> Any feedback about these 2 behaviours applyed to OpenLayers 3 ?
>> Do you think free zoom mode based on client image scaling could make
>> sense in OpenLayers ? Is there some technical blocking points ?
>
>
> Do you know OpenLayers' fractionalZoom implementation? (I'm sure you
> do.) Do you have any issue with this implementation, making you
> contemplating other implementations? I rmyself really should go ahead
> a study the fractionalZoom implementation...
>

Yes, fractionalZoom could be a good starting point. What I don't know
is if it is usable if the user do live zooming (anyway, it is easy to
check) because this could imply some tricky performance optimisation.
This is a point where Flash and HTML/JS rendering are very differents
I think.

> Thanks again, it is nice the see the OpenScales and OpenLayers teams
> having design discussions together.

I think it could be valuable for both projects.

>
> --
> Eric Lemoine
>
> Camptocamp France SAS
> Savoie Technolac, BP 352
> 73377 Le Bourget du Lac, Cedex
>
> Tel : 00 33 4 79 44 44 96
> Mail : eric.lemoine at camptocamp.com
> http://www.camptocamp.com
>


More information about the Dev mailing list