in DICOM-WSI/src/components/dicompathviewer.js [21:88]
function init() {
console.log(" initializing client");
/******************************************************
* WORKING - PUB SERVER
******************************************************/
const url = "https://server.dcmjs.org/dcm4chee-arc/aets/DCM4CHEE/rs";
const client = new DICOMwebClient.api.DICOMwebClient({ url });
const studyInstanceUID = STUDY_ID;
const seriesInstanceUID = SERIES_ID;
const searchInstanceOptions = {
studyInstanceUID,
seriesInstanceUID,
};
/******************************************************
* Searching for instances
******************************************************/
client
.searchForInstances(searchInstanceOptions)
.then((instances) => {
const promises = [];
for (let i = 0; i < instances.length; i++) {
const seriesInstanceUID = instances[i]["0020000E"]["Value"][0];
const sopInstanceUID = instances[i]["00080018"]["Value"][0];
const retrieveInstanceOptions = {
studyInstanceUID,
seriesInstanceUID,
sopInstanceUID,
};
const promise = client
.retrieveInstanceMetadata(retrieveInstanceOptions)
.then((metadata) => {
const image = DICOMMicroscopyViewer.metadata.formatMetadata(
metadata[0]
);
if (image.ImageType[2] === "VOLUME") {
return metadata[0];
}
});
promises.push(promise);
}
return Promise.all(promises);
})
.then((metadata) => {
let controls = ["fullscreen","zoom","overview"]
const viewer =
new DICOMMicroscopyViewer.api.VLWholeSlideMicroscopyImageViewer({
client,
metadata,
controls,
retrieveRendered: true,
});
const container = document.getElementById("dicomImage");
viewer.render({ container });
viewer.activateDrawInteraction({ geometryType: "polygon" });
viewer.activateSelectInteraction();
window.viewer = viewer;
});
}