[OpenLayers-Users] OL 4.2 with TypeScript:How to extend index.d.ts?

Ignacio Talavera ignacio.talavera at gmail.com
Mon Aug 7 10:41:46 PDT 2017


Thanks! perhaps I'm trying the wrong way. I',m using vector-tile from
geoserver and I get the same problem mentioned here
<https://stackoverflow.com/a/34850171> so I try to use ol.source.Vector
with ol.loadingstrategy.tile as loading strategy as follows.
.......................................................................................
strategy: ol.loadingstrategy.tile(tileGrid),
url: function(extent, resolution) {
        var tileCoord =
tileGrid.getTileCoordForCoordAndResolution(ol.extent.getCenter(extent),
resolution);
        var z = tileCoord[0];
        var x = tileCoord[1];
        var y = tileCoord[2];
*        var range = tileGrid.getFullTileRange(z);*
*        y = range.getHeight() + tileCoord[2];// I need the range to
transofrm 'Y' coordinate to fit  in geoserver tile range.*
        return '/geoserver/gwc/service/tms/1.0.0/' +layer
+'@EPSG%3A'+projection_epsg_no+'@geojson/'+z+'/'+ x+'/'+ y+'.geojson';
   }

Is there any workaround?



On Mon, Aug 7, 2017 at 12:46 PM, Olivier Guyot <olivier.guyot at camptocamp.com
> wrote:

> Hi,
>
> This function is not part of the public API, hence the fact it is not
> exposed in Typescript definitions. You could still use it without errors by
> casting the ol.tilegrid.Tilegrid object to `any`, like so:
> *(tilegridObj as any).getFullTileRange()*
> Although that is obviously not the recommended way to go.
>
> As for the execution error, Typescript would have nothing to do with that
> so there's probably a problem with how the tilegrid object is created.
>
> --
> *camptocamp*
> INNOVATIVE SOLUTIONS
> BY OPEN SOURCE EXPERTS
>
>
> *Olivier Guyot*
> Geospatial Developer
> +33 4 58 48 20 28 <+33%204%2058%2048%2020%2028>
>
> On Mon, Aug 7, 2017 at 4:49 PM, Ignacio Talavera <
> ignacio.talavera at gmail.com> wrote:
>
>> I'm using Openlayers v4.2.0 with typescript so I installed the
>> typesDefinition with npm install --save @types/openlayers
>> I need to execute the method *getFullTileRange()* from
>> ol.tilegrid.TileGrid type  but is not defined in the type definition from
>> @types/openlayers (index.d.ts).
>> First I get a compilation error because getFullTileRange method is not
>> declared in index.d.ts. I try to modify index.d.ts adding this method
>> (inside my IDE to skip compilation errors) but running my app I  get this
>> exection error
>>
>> *TypeError*: *tileGrid.getFullTileRange is not a function*.
>>
>> How can I extend index.d.ts to execute that function?
>>
>> Thanks!
>>
>>
>>
>> _______________________________________________
>> Users mailing list
>> Users at lists.osgeo.org
>> https://lists.osgeo.org/mailman/listinfo/openlayers-users
>>
>
>


-- 
Ing Ignacio Talavera
Tel: (+598) 99 993 382
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://lists.osgeo.org/pipermail/openlayers-users/attachments/20170807/c21938f7/attachment-0001.html>


More information about the Users mailing list