isoxml
Version:
JavaScript library to parse and generate ISOXML (ISO11783-10) files
27 lines (26 loc) • 1.34 kB
JavaScript
;
Object.defineProperty(exports, "__esModule", { value: true });
exports.ExtendedLineString = void 0;
const baseEntities_1 = require("../baseEntities");
const constants_1 = require("../baseEntities/constants");
const classRegistry_1 = require("../classRegistry");
class ExtendedLineString extends baseEntities_1.LineString {
constructor(attributes, isoxmlManager) {
super(attributes, isoxmlManager);
this.tag = constants_1.TAGS.LineString;
}
static fromXML(xml, isoxmlManager, internalId) {
return baseEntities_1.LineString.fromXML(xml, isoxmlManager, internalId, ExtendedLineString);
}
toCoordinatesArray() {
return this.attributes.Point.map(point => [point.attributes.PointEast, point.attributes.PointNorth]);
}
static fromGeoJSONCoordinates(coordinates, isoxmlManager, type) {
return new ExtendedLineString({
LineStringType: type,
Point: coordinates.map(c => new baseEntities_1.Point(Object.assign({ PointType: baseEntities_1.PointPointTypeEnum.Other, PointNorth: c[1], PointEast: c[0] }, c[2] != undefined && { PointUp: c[2] / 1000 }), isoxmlManager))
}, isoxmlManager);
}
}
exports.ExtendedLineString = ExtendedLineString;
(0, classRegistry_1.registerEntityClass)('main', constants_1.TAGS.LineString, ExtendedLineString);