@rcsb/rcsb-saguaro
Version:
RCSB 1D Feature Viewer
37 lines (36 loc) • 1.63 kB
JavaScript
;
Object.defineProperty(exports, "__esModule", { value: true });
exports.RcsbD3VlineManager = void 0;
const d3_selection_1 = require("d3-selection");
const RcsbD3Constants_1 = require("../RcsbD3Constants");
class RcsbD3VlineManager {
constructor() {
this.lineElements = (0, d3_selection_1.select)(RcsbD3Constants_1.RcsbD3Constants.EMPTY);
}
plot(config) {
this.lineElements = config.elements.select(RcsbD3Constants_1.RcsbD3Constants.LINE);
this.lineElements.attr(RcsbD3Constants_1.RcsbD3Constants.X1, (d) => {
var _a;
return (_a = config.xScale(d.begin)) !== null && _a !== void 0 ? _a : 0;
})
.attr(RcsbD3Constants_1.RcsbD3Constants.X2, (d) => {
var _a;
return (_a = config.xScale(d.begin)) !== null && _a !== void 0 ? _a : 0;
})
.attr(RcsbD3Constants_1.RcsbD3Constants.Y1, 0)
.attr(RcsbD3Constants_1.RcsbD3Constants.Y2, config.height)
.style(RcsbD3Constants_1.RcsbD3Constants.STROKE, config.color != undefined ? config.color : "#DDDDDD")
.style(RcsbD3Constants_1.RcsbD3Constants.STROKE_WIDTH, 4);
}
move(config) {
this.lineElements.attr(RcsbD3Constants_1.RcsbD3Constants.X1, (d) => {
var _a;
return (_a = config.xScale(d.begin)) !== null && _a !== void 0 ? _a : 0;
})
.attr(RcsbD3Constants_1.RcsbD3Constants.X2, (d) => {
var _a;
return (_a = config.xScale(d.begin)) !== null && _a !== void 0 ? _a : 0;
});
}
}
exports.RcsbD3VlineManager = RcsbD3VlineManager;