@nativescript-community/ui-carto
Version:
NativeScript plugin for CARTO Mobile SDK
49 lines • 1.78 kB
JavaScript
import { DataSource } from '.';
import { fromNativeMapBounds } from '../core';
import { featureCollectionFromArgs, styleFromArgs } from '..';
export class VectorDataSource extends DataSource {
}
export class LocalVectorDataSource extends VectorDataSource {
createNative(options) {
return new com.carto.datasources.LocalVectorDataSource(options.projection.getNative());
}
add(element) {
// a native element could have been passed
const nativeObj = element.getNative ? element.getNative() : element;
if (nativeObj instanceof com.carto.vectorelements.VectorElementVector) {
this.getNative().addAll(nativeObj);
}
else {
this.getNative().add(nativeObj);
}
}
remove(element) {
// a native element could have been passed
const nativeObj = element.getNative ? element.getNative() : element;
if (nativeObj instanceof com.carto.vectorelements.VectorElementVector) {
this.getNative().removeAll(nativeObj);
}
else {
this.getNative().remove(nativeObj);
}
}
addAll(elements) {
this.getNative().addAll(elements.getNative());
}
removeAll(elements) {
this.getNative().removeAll(elements.getNative());
}
setGeometrySimplifier(simplifier) {
this.getNative().setGeometrySimplifier(simplifier.getNative());
}
clear() {
this.getNative().clear();
}
addFeatureCollection(featureCollection, style) {
this.getNative().addFeatureCollection(featureCollectionFromArgs(featureCollection), styleFromArgs(style));
}
getDataExtent() {
return fromNativeMapBounds(this.getNative().getDataExtent());
}
}
//# sourceMappingURL=vector.android.js.map