Skip to content

Releases: iTowns/itowns

2.3.0

27 Feb 14:05
Compare
Choose a tag to compare

Breaking change

  • The geodesic normal in the center of the tile's geometry is aligned with the mesh's local Z axis.
    Previously, the tiles were not oriented. their local landmark had the same orientation as the world landmark.
    You must take into account the orientation of the tile if you add objects to this tile.
  • For OSM color layers, user should use the xyz protocol instead of tms (reserved for "real" TMS layers, the difference between the 2 is the y origin)
  • update to major release THREE v0.89

Features

  • 3dtiles
    • add wireframe support for 3dTiles layer, and add wireframe checkbox to 3dTilesDebugUI, visible in the 3dTiles example (1a0d632)
  • core
    • add bounding sphere helper in debug mode (d1a5cd8)
    • add event to coordinates helpers (861114c)
    • re-enable three.js object sorting (fc1f3eb)
    • update to THREE v89 (97a0c90)
  • examples
    • add gui debug in planar in debug mode only (ccfede0)
  • wfs
    • Add a debug UI for geometry layer, to change visibility, opacity and toggle wireframe, material size and material linewith (89a05ef)

Performance Improvements

  • core
    • reduce to obb's highest points for horizon culling (2073699)
  • examples
    • increase performance in filtering the duplicates lines (f0d5948)
    • increase performance to compute altitude line (bef8b9e)
  • geometry
    • avoid useless computation for elevation layers (eece915)
  • protocols
    • increase performance to building features (4201967)

Bug Fixes

  • 3dtiles
    • fix the sphere bounding volume visualisation in debug mode (dc431e4)
    • SSE computation for spherical bounding volumes (e133a84)
  • controls
    • Fix typo in getBoundingClientRect (28a365b)
    • stop using originalTarget which mozilla-specific (bccf23b)
  • core
    • blending with premultiplied color to transparent color layer (b8062a3)
    • disable logdepthbuffer if EXT_frag_depth is missing (eb6da6d)
    • error to update OBBHelper (58ef581)
    • fix wrong calculation of the color of the sky (77c19ef), closes #652
    • handle near pos. in box3 visibility functions (628eeb3)
    • marked dependency is insecure version (b7c222f)
    • Prevent to subdivide for poor elevation level (60dccb5)
    • use parent extent transformation to compute tile's transformation (84f45ca), closes #668 #642
    • wrong building 3dTiles's OBB (20c9a90)
  • examples
  • gis
    • possibility to set tiled crs (a7d3422)
    • update proj4 to 2.4.4 (b8b8cf1)
  • GlobeControls
  • protocols
    • avoid to set points's count at zero (4f854e6)
    • determine the correct mimeType when using StaticProvider (d172dfe)
    • stop parsing unnecessarily xbil buffer (1f987ff)
    • wfs, adapt the mesh transformation with the tile space (776101a), closes #558
    • wrong OBB for 3dTile's region (c9e3098)
  • wfs
    • use bigger integer data type for indices array, for THREE.LineSegments. (133a85b)

2.2.0

18 Dec 09:40
Compare
Choose a tag to compare

2.2.0 (2017-12-15)

Breaking change

  • view.addFrameRequester signature changed, you now need to specify a hook point
    when registering them. The old behaviour is achieved with MAIN_LOOP_EVENTS.AFTER_CAMERA_UPDATE hook point (see MainLoop.js).
    So for instance, you should transform the following calls:

view.addFrameRequester(myFunc)-> view.addFrameRequester('after-camera-update', myFunc)
view.addFrameRequester(myObj) -> view.addFrameRequester('after-camera-update', myObj.update.bind(myObj)).

Note that we no more support object with update function, as it does not really make sense any more with several hook points).

See MainLoop.js for the full list of available hook points.

  • three.js and proj4 are now peer dependencies of the npm package. If you are not using the itowns.js bundle, you need to add them to your package.json's dependencies.

v2.1.0

15 Sep 15:21
Compare
Choose a tag to compare

Here is a somewhat complete changelog:

Core:

  • FrameRequester: module can now be notified at each animation frame.
  • Ability to reproject extent via Extent.as
  • DEMUtils, set of utility to read elevations

Format and protocol support

  • Point clouds from potree converter
  • 3dTiles: support for batch table, pnts and b3dm RTC.
  • WFS/geojson
  • GPX support greatly improved
  • Add a provider that generates 2D texture from vector datas (geojson, gpx and kml)

Layers:

  • options.zoom now takes precedence over configured tileMatrixSetLimits
  • It's now possible to specify another Object3D than scene to geometry layers to use when adding children.
  • add GeometryLayer.postUpdate method
  • Some helpers to ease the creation of planar and globe geometry have been added
  • Child layer now use parent's extent if it doesn't have one already

Controls:

Some new control examples:

  • PlanarControls
  • FlyControls
  • FirstPersonControls

It's now possible to instanciate the globe without using GlobeControls

Examples

In addition of examples for new protocol and format, here are the new showcases:

  • Mini-viewer for globe.html
  • Cube with elevation and color layers (cubic_planar.html)
  • A THREE mesh in an itowns scene (positionGlobe.html)
  • Splitted rendering (split.html)

Others

  • Countless bug fixes.
  • update THREE to 0.87

v2.0.0

06 Jul 11:21
Compare
Choose a tag to compare

The first release of itowns v2.