projects/angular-cesium/src/lib/angular-cesium-widgets/services/entity-editors/circles-editor/circles-manager.service.ts
Properties |
|
Methods |
clear |
clear()
|
Returns :
void
|
createEditableCircle | ||||||||||||||||||
createEditableCircle(id: string, editCirclesLayer: AcLayerComponent, editPointsLayer: AcLayerComponent, editArcsLayer: AcLayerComponent, circleOptions: CircleEditOptions)
|
||||||||||||||||||
Parameters :
Returns :
EditableCircle
|
dispose | ||||||
dispose(id: string)
|
||||||
Parameters :
Returns :
void
|
get | ||||||
get(id: string)
|
||||||
Parameters :
Returns :
EditableCircle
|
Private circles |
circles:
|
Default value : new Map<string, EditableCircle>()
|
import { Injectable } from '@angular/core';
import { EditableCircle } from '../../../models/editable-circle';
import { AcLayerComponent } from '../../../../angular-cesium/components/ac-layer/ac-layer.component';
import { CircleEditOptions } from '../../../models/circle-edit-options';
@Injectable()
export class CirclesManagerService {
private circles = new Map<string, EditableCircle>();
createEditableCircle(id: string,
editCirclesLayer: AcLayerComponent,
editPointsLayer: AcLayerComponent,
editArcsLayer: AcLayerComponent,
circleOptions: CircleEditOptions): EditableCircle {
const editableCircle = new EditableCircle(id, editCirclesLayer, editPointsLayer, editArcsLayer, circleOptions);
this.circles.set(id, editableCircle);
return editableCircle;
}
dispose(id: string) {
const circle = this.circles.get(id);
if (circle) {
circle.dispose();
}
this.circles.delete(id);
}
get(id: string): EditableCircle {
return this.circles.get(id);
}
clear() {
this.circles.forEach(circle => circle.dispose());
this.circles.clear();
}
}