Oscar Lorentzon
de9ec99079
Report image loading progress.
...
Push node cache asset stream updates to image loading status.
Do not subscribe directly because the load
status stream will be completed when node asset stream is
completed. Use next instead.
2016-10-14 14:24:12 +02:00
Oscar Lorentzon
c5c250f196
Caching spatial edges depend on sequence.
2016-10-14 14:24:12 +02:00
Oscar Lorentzon
7dab69d6d7
Separate spatial node caching from edge caching.
...
Require fill node to be defined when making node full.
2016-10-14 14:24:12 +02:00
Oscar Lorentzon
29d30d05fd
Cache sequence edges separately from sequence.
2016-10-14 14:24:12 +02:00
Oscar Lorentzon
6efe2f69eb
Rename graph methods for clarity.
2016-10-14 14:24:12 +02:00
Oscar Lorentzon
1cd650ada5
Subscribe to node cache first for performance.
...
Ensure that the node assets are requested before the sequence and
spatial resources by subscribing to node first.
2016-10-14 14:24:12 +02:00
Oscar Lorentzon
bc320e3294
Wrap and expose all node properties.
2016-10-14 14:24:12 +02:00
Oscar Lorentzon
0977532ae6
Cache spatial nodes for requested key.
...
Fill all nodes required for spatial edge calculation
when node is requested.
Use bounding box based on threshold to retrieve
spatial nodes from node index.
2016-10-14 14:24:12 +02:00
Oscar Lorentzon
f514c8cac9
Fetch core tiles required for spatial edge calculation.
2016-10-14 14:24:12 +02:00
Oscar Lorentzon
313aaefeb2
Track cached nodes.
...
Initialize caching of node from graph.
Use cache class to ensure that not every created
node has observables created.
Add dispose method to be able to uncache and clear node.
2016-10-14 14:24:12 +02:00
Oscar Lorentzon
5f4b55fd57
Cache node assets before returning from graph service.
2016-10-14 14:24:12 +02:00
Oscar Lorentzon
c0f1a0b57c
Fetch sequence for requested node.
...
Initialize sequence request in parallell to node return.
2016-10-14 14:24:12 +02:00
Oscar Lorentzon
2627926b07
Fetch node properties when requested.
...
Add node to graph when retrived.
Wrap core properties in public getters.
Add specific API calls for node retrieval.
API response interfaces.
2016-10-14 14:24:12 +02:00
Oscar Lorentzon
9f4787e7ac
Add empty caching methods for node and graph.
2016-10-14 14:24:12 +02:00
Oscar Lorentzon
ffc4182bb6
Remove unused node uncaching code.
2016-08-24 08:44:03 -04:00
Oscar Lorentzon
77239f6bf3
Restructure node class.
...
Make fields private. Provide getters only.
Add methods with clear names for setting properties.
Make internally used graph methods private.
2016-08-24 08:36:00 -04:00
Oscar Lorentzon
f5f98c70e1
Migrate to RxJS 5 beta.
...
Fixes #116
Fixes #117
Migrate src and spec.
Handle change operator specs.
Install es6-shim typings for RxJS promise support.
Remove RxJS browser file.
Import only needed classes and functions from RxJS to enable
smaller builds.
2016-07-14 13:20:17 -04:00
Oscar Lorentzon
b41d39ad53
Migrate to typings 1.0.
...
Fixes #135
2016-06-07 14:53:35 +02:00
Oscar Lorentzon
85fce67515
Correct direction parameter type in graph service.
2016-04-21 10:48:10 +02:00
Oscar Lorentzon
8fee10d6d0
Do not cache all eight neighbouring tiles.
...
The worthy/unworthy logic handles the tile caching so
that all tiles are fetched that are required for edge
calculation.
Improve performance by not caching all eight
neighbouring tiles.
2016-03-31 13:27:07 +02:00
Oscar Lorentzon
f98175028e
Retreive key instead of node for next node.
...
When a node is outside all retrieved tiles the result when
requesting it from the graph is null. This can happen for
sequence edges because they are not spatially related.
When retrieving the key for a sequence edge with a node
that does not exist in the graph a tiles fetch will be
triggered that will result in the node being added to
the graph.
2016-03-31 13:10:32 +02:00
Johan Gyllenspetz
fef3e62cbf
Create apiV3 and make VectorTiles return MapillaryObjects
2016-03-01 16:16:33 -08:00
Johan Gyllenspetz
decea2dcf9
Rename GoogleTilesService to VectorTilesService
2016-03-01 12:43:59 -08:00
Johan Gyllenspetz
7af75b8fec
Start with getting objects from Google Tile
2016-02-29 21:15:38 -08:00
Oscar Lorentzon
8066b9c52a
Use Typings instead of TSD.
...
Remove deprecated TSD dependency.
Use Typings to install type definitions.
Install rx typings from npm package.
2016-02-29 16:58:56 +01:00
Johan Gyllenspetz
7fe77acb9f
Handle errors in image pipelines
2016-02-08 13:51:18 -08:00
Johan Gyllenspetz
084f34ac21
Add worthy logic
2016-02-02 22:42:04 -08:00
Oscar Lorentzon
d0fd5a0413
Return observable to avoid null subscriptions.
...
Fixes #48
An observable flatMap / selectMany should not return null,
instead it should return an observable with the next
emitted item set to null. Then it is possible to
subscribe. Subscription must handle the possibility of
the next value being null.
2016-02-02 10:15:20 +01:00
Johan Gyllenspetz
9e6e872e75
Add status for actual Image and Mesh loading
2016-01-20 14:03:38 +01:00
Johan Gyllenspetz
83be315025
Make cachedNode a hot observable to disable several loads of meshes and images
2016-01-18 17:47:45 -08:00
Johan Gyllenspetz
d14d6c1006
Codingstandard action adding _x for private, x$ for stream
2016-01-17 18:02:27 -08:00
Johan Gyllenspetz
92d2163818
Add LoadingService indicating for system when load happens
2016-01-14 21:51:38 -08:00
Johan Gyllenspetz
4f2b48b17f
Move APIv2 to navigator and add experimental moveCloseTo
...
* Add search/im/close2 to API
* Move APIv2 initialization to Navigator and push it down
* Add experimental moveCloseTo
2016-01-05 16:49:45 -08:00
Johan Gyllenspetz
8d0b401685
Make sure there is a shutdown of the sequence after the first node is received from GraphService
2016-01-04 22:32:56 -08:00
Johan Gyllenspetz
54ed7063e6
Cache edges through a bot not inside the GraphService
2016-01-04 15:12:01 -08:00
Johan Gyllenspetz
eb6664e4d3
Rename MyGraph to Graph
2016-01-04 14:25:55 -08:00
Johan Gyllenspetz
29fc4cdc37
Remove pristine hack in GraphService
2016-01-04 14:16:46 -08:00
Johan Gyllenspetz
9a50542e5f
For speed and demo purposes add temp caching of all edges
2015-12-29 11:09:15 -08:00
Johan Gyllenspetz
e7ab40c8e2
Prepare for cache eveiction of nodes
2015-12-29 10:54:47 -08:00
Johan Gyllenspetz
d43c650292
Seperate MyGraph from GraphService
2015-12-29 10:02:34 -08:00
Johan Gyllenspetz
8e1fe9ba62
Cached edges on node while using experimental GraphService
2015-12-28 22:51:12 -08:00
Johan Gyllenspetz
d1c750f41a
Simplify both TilesService and GraphService by using distinct instead of a cache
2015-12-28 13:28:53 -08:00
Oscar Lorentzon
3dc69ef9d9
Compute translation in graph method.
...
Compute translation from reference lat lon
using rotation.
2015-12-23 23:17:10 +01:00
Oscar Lorentzon
e4d4486cbf
Reference is lat, lon and alt.
2015-12-23 22:20:18 +01:00
Oscar Lorentzon
b8edbe8597
Add reference lat lon on graph.
2015-12-23 21:30:49 +01:00
Oscar Lorentzon
6f9644e776
Calculate step edges in graph.
...
Because translation is at the origin for all
nodes no edges will be returned currently.
2015-12-23 21:23:03 +01:00
Oscar Lorentzon
6b8e26f7fc
Retreive edges on current node and graph change.
...
Map out edges to include edge data in graph.
2015-12-23 20:06:08 +01:00
Johan Gyllenspetz
5a18d1245b
Add experimental StateService based on RxJS
2015-12-21 18:44:17 -08:00
Johan Gyllenspetz
aaaca33d0d
Better and more correct tiling cache for experimental TilesService
2015-12-19 16:53:22 -08:00
Johan Gyllenspetz
f26d6f2813
Add naive caching for experimental GraphService
2015-12-18 23:14:25 -08:00