mirror of https://gitee.com/antv-l7/antv-l7
feat(draw): draw circle add change event
This commit is contained in:
parent
a6e0b7f9a8
commit
d62de543d4
|
@ -88,13 +88,26 @@ export default class DrawCircle extends DrawFeature {
|
||||||
lat: newStartPoint[1],
|
lat: newStartPoint[1],
|
||||||
lng: newStartPoint[0],
|
lng: newStartPoint[0],
|
||||||
};
|
};
|
||||||
|
const newEndPoint = movePoint(
|
||||||
|
[this.endPoint.lng, this.endPoint.lat],
|
||||||
|
delta,
|
||||||
|
);
|
||||||
|
const endPointObj = {
|
||||||
|
lat: newEndPoint[1],
|
||||||
|
lng: newEndPoint[0],
|
||||||
|
};
|
||||||
newFeature[0].properties = {
|
newFeature[0].properties = {
|
||||||
...newFeature[0].properties,
|
...newFeature[0].properties,
|
||||||
startPoint: this.startPoint,
|
startPoint: this.startPoint,
|
||||||
|
endPoint: endPointObj,
|
||||||
pointFeatures: newPointFeture,
|
pointFeatures: newPointFeture,
|
||||||
};
|
};
|
||||||
this.centerLayer.setData([this.startPoint]);
|
this.centerLayer.setData([this.startPoint]);
|
||||||
this.setCurrentFeature(newFeature[0]);
|
this.setCurrentFeature(newFeature[0]);
|
||||||
|
const changeFeature = {
|
||||||
|
...newFeature[0],
|
||||||
|
};
|
||||||
|
this.emit(DrawEvent.CHANGE, changeFeature);
|
||||||
}
|
}
|
||||||
|
|
||||||
protected createFeature(id: string = '0'): Feature {
|
protected createFeature(id: string = '0'): Feature {
|
||||||
|
@ -121,6 +134,7 @@ export default class DrawCircle extends DrawFeature {
|
||||||
this.drawVertexLayer.updateData(
|
this.drawVertexLayer.updateData(
|
||||||
featureCollection(properties.pointFeatures),
|
featureCollection(properties.pointFeatures),
|
||||||
);
|
);
|
||||||
|
this.emit(DrawEvent.CHANGE, featureCollection([newFeature]).features[0]);
|
||||||
}
|
}
|
||||||
|
|
||||||
protected showOtherLayer() {
|
protected showOtherLayer() {
|
||||||
|
|
|
@ -4,6 +4,7 @@ export enum DrawEvent {
|
||||||
Move = 'draw.move',
|
Move = 'draw.move',
|
||||||
Edit = 'draw.edit',
|
Edit = 'draw.edit',
|
||||||
UPDATE = 'draw.update',
|
UPDATE = 'draw.update',
|
||||||
|
CHANGE = 'draw.change',
|
||||||
SELECTION_CHANGE = 'draw.selectionchange',
|
SELECTION_CHANGE = 'draw.selectionchange',
|
||||||
MODE_CHANGE = 'draw.modechange',
|
MODE_CHANGE = 'draw.modechange',
|
||||||
ACTIONABLE = 'draw.actionable',
|
ACTIONABLE = 'draw.actionable',
|
||||||
|
|
|
@ -41,7 +41,6 @@ function _pointsGridHash(dataArray: any[], size: number) {
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
const centerLat = (latMin + latMax) / 2;
|
const centerLat = (latMin + latMax) / 2;
|
||||||
// const centerLat = 34.54083;
|
|
||||||
const gridOffset = _calculateGridLatLonOffset(size, centerLat);
|
const gridOffset = _calculateGridLatLonOffset(size, centerLat);
|
||||||
if (gridOffset.xOffset <= 0 || gridOffset.yOffset <= 0) {
|
if (gridOffset.xOffset <= 0 || gridOffset.yOffset <= 0) {
|
||||||
return { gridHash: {}, gridOffset };
|
return { gridHash: {}, gridOffset };
|
||||||
|
|
|
@ -32,7 +32,6 @@ export default class HexagonLayerDemo extends React.Component {
|
||||||
)
|
)
|
||||||
.then((res) => res.json())
|
.then((res) => res.json())
|
||||||
.then((data) => {
|
.then((data) => {
|
||||||
console.log(data);
|
|
||||||
const layer = new HeatmapLayer({})
|
const layer = new HeatmapLayer({})
|
||||||
.source(data, {
|
.source(data, {
|
||||||
transforms: [
|
transforms: [
|
||||||
|
|
|
@ -65,11 +65,10 @@ export default class HexagonLayerDemo extends React.Component {
|
||||||
].reverse(),
|
].reverse(),
|
||||||
)
|
)
|
||||||
.style({
|
.style({
|
||||||
coverage: 0.9,
|
coverage: 1,
|
||||||
angle: 0,
|
angle: 0,
|
||||||
});
|
});
|
||||||
scene.addLayer(pointLayer);
|
scene.addLayer(pointLayer);
|
||||||
console.log(pointLayer.getSource());
|
|
||||||
this.scene = scene;
|
this.scene = scene;
|
||||||
});
|
});
|
||||||
});
|
});
|
||||||
|
|
Loading…
Reference in New Issue