@equinor/videx-wellog
Version:
Visualisation components for wellbore log data
36 lines (35 loc) • 1.1 kB
TypeScript
import { ZoomTransform } from 'd3-zoom';
import { Scale, Range, Domain } from '../common/interfaces';
import { ScaleHandlerTicks, ScaleHandler } from './interfaces';
/**
* Class that controls reference scaling in the WellogComponent.
* The scale handler is an abstraction to allow adding custom
* scaling behaviour, such as mapping data between domains.
*/
export default class BasicScaleHandler implements ScaleHandler {
scale: Scale;
protected _baseDomain: Domain;
constructor(baseDomain?: Domain);
/**
* Update scale according to transform
*/
rescale(transform: ZoomTransform, axis?: string): ScaleHandler;
/**
* Return ticks based on scale's current domain and range
*/
ticks(): ScaleHandlerTicks;
/**
* set or get base domain
*/
baseDomain(): Domain;
baseDomain(newDomain: Domain): ScaleHandler;
/**
* set or get scale's range
*/
range(): Range;
range(newRange: Range): ScaleHandler;
/**
* Getter for the scale exposed to the wellog component's tracks
*/
get dataScale(): Scale;
}