@wootapa/polygraph-ol
Version:
Extension of @wootapa/polygraph for OpenLayers 7+.
115 lines (114 loc) • 3.69 kB
TypeScript
import { ProjectionLike } from 'ol/proj';
import { ClassDict } from '../core/contracts';
import { PolygraphBase } from '../core/polygraph';
import { FeatureThing, IPolygraphOlOpts, IFilterOpts, ICqlFilterOpts } from './contracts';
import { IOlOperators } from './ol';
export declare class PolygraphOl extends PolygraphBase<PolygraphOl> implements IOlOperators {
private _opts;
protected _getConfiguration(): IPolygraphOlOpts;
protected _setConfiguration(config: IPolygraphOlOpts): void;
protected _getPolygraph(): PolygraphOl;
protected _getClassDict(): ClassDict;
/**
* Sets default projection for all Polygraphs.
* Default `EPSG:3857` (Web Mercator)
*
* @remarks Projection must be known.
*
* @param projection - Projection instance or code
*/
static defaultProjection(projection: ProjectionLike): void;
/**
* Sets projection for all child spatial operators.
*
* @remarks Projection must be known.
*
* @param projection - Projection instance or code
*
* @returns Polygraph
*/
projection(projection: ProjectionLike): PolygraphOl;
/**
* Evaluates featurething.
*
* @param obj - The featurething to evaluate
*
* @returns True if object passed all child operators
*/
evaluate(obj: FeatureThing): boolean;
/**
* Returns true when object intersects value.
*
* @param value - The featurething to compare
*
* @returns Polygraph
*/
intersects(value: FeatureThing): PolygraphOl;
/**
* Returns true when object do not intersects value.
*
* @param value - The featurething to compare
*
* @returns Polygraph
*/
disjoint(value: FeatureThing): PolygraphOl;
/**
* Returns true when object completely contains value.
*
* @param value - The featurething to compare
*
* @returns Polygraph
*/
contains(value: FeatureThing): PolygraphOl;
/**
* Returns true when object is completely within value.
*
* @param value - The featurething to compare
*
* @returns Polygraph
*/
within(value: FeatureThing): PolygraphOl;
/**
* Returns true when object is no more than specified distance from value.
*
* @remarks Requires a correct projection.
*
* @param value - The featurething to compare
* @param distance - Distance in meters
* @param greatCircle - Optional. Calculate using great-circle distance.
*
* @returns Polygraph
*/
distanceWithin(value: FeatureThing, distance: number, greatCircle?: boolean): PolygraphOl;
/**
* Returns true when object is more than specified distance from value.
*
* @remarks Requires a correct projection.
*
* @param value - The featurething to compare
* @param distance - Distance in meters
* @param greatCircle - Optional. Calculate using great-circle distance.
*
* @returns Polygraph
*/
distanceBeyond(value: FeatureThing, distance: number, greatCircle?: boolean): PolygraphOl;
/**
* Returns operators as an OGC CQL query.
*
* @param opts - Optional serializer settings.
*
* @returns OGC CQL query
*/
asOgcCql(opts?: ICqlFilterOpts): string;
/**
* Returns operators as an OGC XML query.
*
* @remarks
* Wrap in encodeURI to avoid encoding issues
*
* @param opts - Optional serializer settings.
*
* @returns OGC XML query
*/
asOgcXml(opts?: IFilterOpts): string;
}