Mercurial > hg > ugly-duckling
diff src/app/visualisations/waves-base.component.ts @ 473:de23ea6bcd0d
Add vertical binned scale for matrix shapes. Requires waves-ui-piper
update
author | Chris Cannam <cannam@all-day-breakfast.com> |
---|---|
date | Fri, 30 Jun 2017 12:08:50 +0100 |
parents | 89674c064cda |
children | 64ed45a0bad3 |
line wrap: on
line diff
--- a/src/app/visualisations/waves-base.component.ts Fri Jun 30 09:07:12 2017 +0100 +++ b/src/app/visualisations/waves-base.component.ts Fri Jun 30 12:08:50 2017 +0100 @@ -19,6 +19,14 @@ abstract renderScale(range: [number, number]): void; } +export abstract class VerticallyBinned { + abstract get binNames(): string[]; +} + +export abstract class VerticalBinNameRenderer extends VerticallyBinned { + abstract renderNames(binNames: string[]): void; +} + export abstract class VerticalValueInspectorRenderer extends VerticalScaleRenderer { // TODO how do I know these layers are actually 'describable'? @@ -212,6 +220,21 @@ } } +export abstract class VerticallyBinnedWavesComponent +<T extends ShapedFeatureData> extends WavesComponent<T> + implements VerticalBinNameRenderer { + abstract binNames: string[]; + + renderNames(binNames: string[]): void { + this.addLayer(new Waves.helpers.DiscreteScaleLayer({ + tickColor: this.colour, + textColor: this.colour, + height: this.height, + binNames + })); + } +} + export abstract class InspectableVerticallyBoundedComponent <T extends ShapedFeatureData> extends VerticallyBoundedWavesComponent<T> implements VerticalValueInspectorRenderer {