Skip to content
Snippets Groups Projects

feat(map_nodelink)

Merged Vink, S.A. (Sjoerd) requested to merge feat/map_nodelink into main
3 files
+ 1
46
Compare changes
  • Side-by-side
  • Inline
Files
3
import React from 'react';
import { CompositeLayer } from 'deck.gl';
import { ArcLayer, GeoJsonLayer, ScatterplotLayer } from '@deck.gl/layers';
import ChoroplethOptions from './ChoroplethOptions';
import { europeData, usaData, worldData, netherlands } from '../../../../../../mock-data/geo-json';
import { Edge, Node, LayerProps } from '../../../mapvis.types';
import { europeData, usaData, worldData, netherlands } from '../../../../../mock-data/geo-json';
import { Edge, Node, LayerProps } from '../../mapvis.types';
import { RGBColor, color, geoBounds, geoCentroid, geoContains, interpolateYlGnBu, scaleSequential } from 'd3';
export const circumferencesMap = {
@@ -72,14 +71,9 @@ export const ChoroplethConfig = {
export class ChoroplethLayer extends CompositeLayer<LayerProps> {
static type = 'Choropleth';
static layerOptions = ChoroplethConfig;
static generateLayerOptions(layer: any, updatedLayer: void, graphInfo: { [key: string]: any }, deleteLayer: void) {
return <ChoroplethOptions layer={layer} updatedLayer={updatedLayer} graphInfo={graphInfo} deleteLayer={deleteLayer} />;
}
shouldUpdateState({ props, oldProps, context, changeFlags }: { props: any; oldProps: any; context: any; changeFlags: any }) {
return changeFlags.dataChanged || changeFlags.propsChanged;
shouldUpdateState({ changeFlags }: { changeFlags: any }) {
return changeFlags.propsOrDataChanged || changeFlags.somethingChanged;
}
updateState({ props, oldProps, context, changeFlags }: { props: any; oldProps: any; context: any; changeFlags: any }) {
@@ -177,12 +171,10 @@ export class ChoroplethLayer extends CompositeLayer<LayerProps> {
}
renderLayers() {
const { graph, config, visible, hoverObject, isSelecting } = this.props;
const { graph, config, hoverObject, isSelecting, getNodeLocation } = this.props;
const { data, selected } = this.state;
const layers: any = [];
// if (!visible) return;
if (isSelecting) {
const nodes = (selected as any).flatMap((feature: any) => feature.properties.nodes ?? []);
@@ -199,8 +191,8 @@ export class ChoroplethLayer extends CompositeLayer<LayerProps> {
data: filteredEdges,
pickable: true,
getWidth: (d: any) => 0.5,
getSourcePosition: (d: any) => graph.getNodeLocation(d.from),
getTargetPosition: (d: any) => graph.getNodeLocation(d.to),
getSourcePosition: (d: any) => getNodeLocation(d.from),
getTargetPosition: (d: any) => getNodeLocation(d.to),
getSourceColor: (d: any) => [220, 220, 220],
getTargetColor: (d: any) => [220, 220, 220],
}),
Loading