npm package discovery and stats viewer.

Discover Tips

  • General search

    [free text search, go nuts!]

  • Package details

    pkg:[package-name]

  • User packages

    @[username]

Sponsor

Optimize Toolset

I’ve always been into building performant and accessible sites, but lately I’ve been taking it extremely seriously. So much so that I’ve been building a tool to help me optimize and monitor the sites that I build to make sure that I’m making an attempt to offer the best experience to those who visit them. If you’re into performant, accessible and SEO friendly sites, you might like it too! You can check it out at Optimize Toolset.

About

Hi, 👋, I’m Ryan Hefner  and I built this site for me, and you! The goal of this site was to provide an easy way for me to check the stats on my npm packages, both for prioritizing issues and updates, and to give me a little kick in the pants to keep up on stuff.

As I was building it, I realized that I was actually using the tool to build the tool, and figured I might as well put this out there and hopefully others will find it to be a fast and useful way to search and browse npm packages as I have.

If you’re interested in other things I’m working on, follow me on Twitter or check out the open source projects I’ve been publishing on GitHub.

I am also working on a Twitter bot for this site to tweet the most popular, newest, random packages from npm. Please follow that account now and it will start sending out packages soon–ish.

Open Software & Tools

This site wouldn’t be possible without the immense generosity and tireless efforts from the people who make contributions to the world and share their work via open source initiatives. Thank you 🙏

© 2024 – Pkg Stats / Ryan Hefner

@vcmap/export

v2.0.1

Published

Warehouse export plugin for VC Map

Downloads

349

Readme

@vcmap/export

General

The export plugin allows to export different source data from within the VC Map. This includes data from the city model, oblique images and other spatial data that is visualized in the map as geojson areas.

General configurations are:

| key | type | default | description | | --------------------- | ------------------------------------------------------------------------------------------ | ----------------------- | ------------------------------------------------------------------------------------------------------------------------- | | dataSourceOptionsList | Array<ObliqueDataSourceOptions | GeoJSONDataSourceOptions | {type: 'cityModel'}> | [{ type: 'cityModel' }] | The data sources that the export widget should support. | | requestTermsConsent | Url | null | A link to the terms of use. If a link is provided the acceptance of the terms is requested before a download is possible. | | maxSelectionArea | number | 2000000 | The maximum area of the area selection mode. |

ObliqueDataSourceOptions

| key | type | required | description | | --------------------- | --------- | -------- | ------------------------------------------------------------------------------------------------------------ | | type | 'oblique' | ✓ | type of export data source. For ObliqueDataSourceOptions it is always 'oblique'. | | baseUrl | string | | The base url for the images if dedicatedSource is true. | | obliqueCollectionName | string | ✓ | The name of the oblique collection. | | fileExtension | string | | The file extension for the images. Allowed values are 'jpg', 'jpeg', 'png', 'tif', 'tiff'. Default is 'jpg'. | | dedicatedSource | boolean | | If the oblique images can be downloaded directly. Otherwise they are put together from the tiles in the map. | | resolution | number | | The zoom level of the images. |

GeoJSONDataSourceOptions

| key | type | required | description | | ---------- | ------------------ | -------- | ------------------------------------------------------------------------------------------------------------- | | type | 'geojson' | ✓ | type of export data source. For GeoJSONDataSourceOptions it is always 'geojson'. | | baseUrl | string | null | | The base url for the urls in the GeoJSON file. | | geojsonUrl | string | ✓ | The url of the geojson data set, which contains a property url, linking to the datasets to download. | | title | string | | The title that is shown in the ui for this data source. If no title is provided, the title will be "GeoJSON". |

City Model

This data source type allows to download city model objects, the terrain and the whole scene in many different data formats. Selected are either single objects or surfaces, as polygon or as BBOX. For object selection you need at least one layer in a module configuration with an exportWorkbench property configured, where the property value corresponds to the fmeServerUrl of the table below:

{
  "layers": [
    {
      "type": "CesiumTilesetLayer",
      "name": "Berlin untexturiert openData (pbr recalculation)",
      "url": "https://www.virtualcitymap.de/datasource-data/f892f6af-180a-4eef-917f-5ff03c260b32/tileset.json",
      "properties": {
        "title": "Berlin - LOD2",
        "exportWorkbench": "https://fmeserver-virtualcitysystems--2.fmecloud.com/fmedatadownload/germany_viewer/MultiExporter.fmw"
      }
    }
  ]
}

The exportWorkbench property is checked, whenever a feature is clicked upon object selection or right click interactions (context menu). Only features of 3D layers with that property assigned are supported for export!

The export of this source has the following configurations:

| key | type | default | description | | ------------------------ | ----------------------------- | -------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | | exportFormatList | Array | ['2D Shape', '3D Shape - PolygonZ', '3D Shape - Multipatch', 'ESRI FGDB', 'KMZ', 'CityGML', 'CityJSON', 'DXF', 'DWG', '3DS', 'SketchUp', 'OBJ', 'VRML', 'COLLADA', 'GLTF', '3DPDF', 'FMEAR', 'STL', 'STEP', 'GEOPACKAGE', 'FBX'] | The export formats the user can select from. The supported formats are listed here. | | exportFormatDefault | Array | ['2D Shape'] | The export formats that are initially selected. They need to be listed inside exportFormatList. | | lodList | Array | ['LoD1', 'LoD2', 'LoD3', 'haLoD'] | The available level of details the user can select from. | | lodDefault | string | 'haLoD' | The initially selected level of detail. | | thematicClassOptions | Array | ['26', '7', '14', '5', '21', '85', '64', '45', '43', '46', '8', '9', '4', '44'] | The ids of the thematic classes the user can select from. A list of the possible ids with the corresponding class names can be found here. | | thematicClassDefault | Array | ['26'] | The initially selected thematic classes. | | appearanceThemeList | Array | ['rgbTexture'] | The available appearance themes for the city model. | | appearanceThemeDefault | string | 'rgbTexture' | The initially selected appearance theme. Needs to be listed in appearanceThemeList. | | heightModeDefault | 'absolute' | 'ellipsoid' | 'absolute' | If the z values of the exported data are absolute values or relative to the ellipsoid. | | allowHeightMode | boolean | true | If the user can select the height mode. | | allowAddGenericAttrs | boolean | true | If true, the user can choose whether generic attributes should be added to the exported dataset or not. | | allowTiledExport | boolean | true | If true, the user can choose whether the data should be exported as tiles or not. | | allowTerrainExport | boolean | true | If true, the user can select whether ther terrain should also be exported. Only available for some data formats. | | terrainAppearanceOptions | Object<string, number> | {} | With this setting the terrain texture for different zoom levels can be set. The key of the object is the name of the imagery layer, the value the zoom level. | | terrainUrl | string | null | URL used if terrainExport is true, if not provided the currently active terrain will be used. | | terrainZoomLevel | number | -1 | Zoom level of terrain used if terrainExport is true. To have an effect, the number needs to be > 0. | | crs | string | null | The output crs as epsg code. If array is provided user can select. Example: ["EPSG:25832", "EPSG:3587"]. If not provided, the default projection of the VC Map is used. | | allowDescription | boolean | true | If user can add an export description. This helps the user to identify a specific request, if many requests were send. The description is added to a summary text file of the download. | | allowEmail | boolean | true | If user can enter an export email. This is necessary if the results should be sent to users via Email. If the results should be pushed to a specific predevined server this can be unnecessary. | | allowExportName | boolean | false | If user can add an export name. This helps the user to identify a specific request, if many requests were send. It is also a necessary parameter for some predefined server uploads. | | dataProjection | ProjectionOptions | null | The projection of the data in the data base. If not provided, the default projection of the VC Map is used, which is in most cases the correct one (take care when loading multiple modules). In the rare case the dataProjection still needs to be changed, make sure to pass both, epsg code AND proj4 string in the following format: {"epsg": "EPSG:25832", "proj4": "+proj=utm +zone=32 +ellps=GRS80 +towgs84=0,0,0,0,0,0,0 +units=m +no_defs +type=crs"} | | exportScene | boolean | true | If the entire scene should be exported when using area selection. | | fmeServerUrl | string | null | The FME server URL. Is required. | | fmeSecurityToken | string | null | The FME security token for the given server. Is required. |

ProjectionOptions

| key | type | description | | ----- | -------------------- | -------------------------------------------------------------------------------------------------- | | epsg | string | number | EPSG of the projection, for example: "EPSG:3587". If not specified, uses the framework projection. | | proj4 | string | definition of the projection. See for example: http://spatialreference.org/ref/epsg/3587/proj4/ |

Oblique

With this data source type high resolution oblique images can be downloaded. It is possible to either download the currently visible image when being in oblique view or oblique tiles that are in a specific area using the area selection mode.

Note: The Firefox browser (<= v108.0.1) has a canvas size limit of 124,992,400 pixels. If this number is exceeded by the oblique image, the download will fail.

GeoJSON

This data source type makes it possible to provide any possible data to the user through the export plugin. For this, a GeoJSON file is needed, where each feature has a "url" property, which provides a link to the data source. The features mark the extend of the data source in the map and are fetched by the area selection mode.

Appendix

Supported City Model export formats

  • '2D Shape'
  • '3D Shape - PolygonZ'
  • '3D Shape - Multipatch'
  • 'ESRI FGDB'
  • KMZ
  • CityGML
  • CityJSON
  • DXF
  • DWG
  • '3DS'
  • SketchUp
  • OBJ
  • VRML
  • COLLADA
  • GLTF
  • '3DPDF'
  • FMEAR
  • STL
  • STEP
  • GEOPACKAGE
  • FBX

Supported thematic classes

  • 4: 'LandUse',
  • 5: 'GenericCityObject',
  • 7: 'SolitaryVegetationObjects',
  • 8: 'Plant Cover',
  • 9: 'WaterBody',
  • 14: 'ReliefFeature',
  • 21: 'CityFurniture',
  • 26: 'Building',
  • 43: 'Track',
  • 44: 'Railway',
  • 45: 'Road',
  • 46: 'Square',
  • 64: 'Bridge',
  • 85: 'Tunnel',