1.1.21 • Published 8 months ago
kml-utils v1.1.21
Introduction
This lib is modified from @mapbox/togeojson and @mapbox/tokml, enhanced with folder capability
Install
npm i --save kml-utils
Parse Usage
const { parse, parseFolder, parseGeoJSON, parseDescription } = require('kml-utils')
const fs = require('fs-extra')
const DOMParser = require('xmldom').DOMParser
const kmlDom = new DOMParser().parseFromString(fs.readFileSync('demo.kml', 'utf8'))
/**
* returns folder tree and feature collection
* return { folder: [], geoJSON: [] }
*/
parse(kmlDom)
parse(kmlDom, {
// parse style
style: true,
// parse elements to folder tree
folderElements: ['Document', 'Folder'],
propertyCallbacks:{
description(){
// return a value to replace the property's value
// return '123'
// return an object to replace the property
// return { newName:123 }
// parse html-type-description
return parseDescription(data)
}
},
coordCallback(point, attributes){
// point transform
return point.map(a => a+1000 )
}
})
/**
* returns feature collection
* This function is ported from @mapbox/togeojson, `tj.kml(kmlDom)`
*
* feature.properties.folder = <folderKey>
*/
parseGeoJSON(kmlDom)
/**
* returns folder tree
* folder: [{ key: <folderKey>, parent: <parentFolderKey>, name: <folderName>, children: [] }]
*/
parseFolder(kmlDom)
You can convert to arcgis graphic json object:
const { parseGeoJSON, arcgisConvertor } = require('kml-utils')
const _ = require('lodash')
const graphicJSONs = _.flatten(parseGeoJSON(kmlDom).features.map(arcgisConvertor.graphicJSON))
Kmlify Usage
const { parse, kmlify } = require('kml-utils')
const { geoJSON, folders } = parse(kmlDom)
const kmlString = kmlify(geoJSON, folders)
1.1.21
8 months ago
1.1.19
1 year ago
1.1.18
1 year ago
1.1.20
1 year ago
1.1.12
2 years ago
1.1.11
2 years ago
1.1.16
2 years ago
1.1.15
2 years ago
1.1.14
2 years ago
1.1.13
2 years ago
1.1.17
2 years ago
1.1.9
3 years ago
1.1.8
3 years ago
1.1.7
3 years ago
1.1.10
3 years ago
1.1.6
3 years ago
1.1.5
3 years ago
1.1.4
3 years ago
1.1.1
3 years ago
1.1.0
3 years ago
1.1.3
3 years ago
1.1.2
3 years ago
1.0.9
4 years ago
1.0.8
4 years ago
1.0.7
4 years ago
1.0.6
4 years ago
1.0.5
4 years ago
1.0.4
4 years ago
1.0.3
4 years ago
1.0.2
4 years ago
1.0.1
6 years ago
1.0.0
6 years ago
0.0.18
6 years ago
0.0.17
6 years ago
0.0.16
6 years ago
0.0.15
6 years ago
0.0.14
6 years ago
0.0.13
6 years ago
0.0.12
6 years ago
0.0.11
6 years ago
0.0.9
6 years ago
0.0.8
6 years ago
0.0.7
6 years ago
0.0.6
6 years ago
0.0.5
6 years ago
0.0.4
6 years ago
0.0.3
6 years ago