@rcsb/rcsb-saguaro
Version:
RCSB 1D Feature Viewer
33 lines (32 loc) • 1.26 kB
JavaScript
import { select } from "d3-selection";
import { RcsbD3Constants } from "../RcsbD3Constants";
export class RcsbD3VlineManager {
constructor() {
this.lineElements = select(RcsbD3Constants.EMPTY);
}
plot(config) {
this.lineElements = config.elements.select(RcsbD3Constants.LINE);
this.lineElements.attr(RcsbD3Constants.X1, (d) => {
var _a;
return (_a = config.xScale(d.begin)) !== null && _a !== void 0 ? _a : 0;
})
.attr(RcsbD3Constants.X2, (d) => {
var _a;
return (_a = config.xScale(d.begin)) !== null && _a !== void 0 ? _a : 0;
})
.attr(RcsbD3Constants.Y1, 0)
.attr(RcsbD3Constants.Y2, config.height)
.style(RcsbD3Constants.STROKE, config.color != undefined ? config.color : "#DDDDDD")
.style(RcsbD3Constants.STROKE_WIDTH, 4);
}
move(config) {
this.lineElements.attr(RcsbD3Constants.X1, (d) => {
var _a;
return (_a = config.xScale(d.begin)) !== null && _a !== void 0 ? _a : 0;
})
.attr(RcsbD3Constants.X2, (d) => {
var _a;
return (_a = config.xScale(d.begin)) !== null && _a !== void 0 ? _a : 0;
});
}
}