Skip to content

Commit

Permalink
Merge pull request #10 from tunglt1810/feature/html-viewer
Browse files Browse the repository at this point in the history
support display Overlay data
  • Loading branch information
triet12369 authored Nov 24, 2020
2 parents 9c08eea + 9715af3 commit 001a331
Show file tree
Hide file tree
Showing 7 changed files with 33 additions and 18 deletions.
6 changes: 6 additions & 0 deletions CHANGELOG.md
Original file line number Diff line number Diff line change
Expand Up @@ -5,6 +5,12 @@ All notable changes to this project will be documented in this file.
The format is based on [Keep a Changelog](http://keepachangelog.com/en/1.0.0/)
and this project adheres to [Semantic Versioning](http://semver.org/spec/v2.0.0.html).

## [1.1.5] - 2020-10-19
### Fixed
- Fixed MetadataProvider for Overlay Plane Module - [@triet12369]
- Remove checks for non-image series in StudyMetadata -[@triet12369]
- Replace BulkDataURI with correct url in Overlay series [@triet12369]

## [1.1.4] - 2020-10-19
### Fixed
- Bind this to cache full callback in StudyPrefetcher - [@triet12369]
Expand Down
2 changes: 1 addition & 1 deletion dist/index.umd.js

Large diffs are not rendered by default.

2 changes: 1 addition & 1 deletion dist/index.umd.js.map

Large diffs are not rendered by default.

2 changes: 1 addition & 1 deletion package.json
Original file line number Diff line number Diff line change
@@ -1,6 +1,6 @@
{
"name": "viewer-core",
"version": "1.1.4",
"version": "1.1.5",
"description": "Generic business logic for web-based medical imaging applications - edited by Tung LT",
"author": "OHIF Core Team",
"editor": "Tung LT",
Expand Down
21 changes: 14 additions & 7 deletions src/classes/MetadataProvider.js
Original file line number Diff line number Diff line change
Expand Up @@ -62,9 +62,11 @@ class MetadataProvider {
Object.assign(instance, naturalizedDataset);

// TODO: comment by TungLT
// if (options.server) {
// await this._checkBulkDataAndInlineBinaries(instance, options.server);
// }
// Mod by Triet
// uncomment to enable image overlay
if (options.server) {
await this._checkBulkDataAndInlineBinaries(instance, options.server);
}

return instance;
}
Expand Down Expand Up @@ -336,8 +338,7 @@ class MetadataProvider {

break;
case WADO_IMAGE_LOADER_TAGS.OVERLAY_PLANE_MODULE:
metadata = {};

const overlays = [];
for (
let overlayGroup = 0x00;
overlayGroup <= 0x1e;
Expand Down Expand Up @@ -367,7 +368,7 @@ class MetadataProvider {
const ROIStandardDeviationTag = `${groupStr}1303`;
const OverlayOrigin = instance[OverlayOriginTag];

metadata.overlay = {
const overlay = {
rows: instance[OverlayRowsTag],
columns: instance[OverlayColumnsTag],
type: instance[OverlayType],
Expand All @@ -378,10 +379,16 @@ class MetadataProvider {
label: instance[OverlayLabelTag],
roiArea: instance[ROIAreaTag],
roiMean: instance[ROIMeanTag],
roiStandardDeviation: instance[ROIStandardDeviationTag]
roiStandardDeviation: instance[ROIStandardDeviationTag],
};

overlays.push(overlay);
}

metadata = {
overlays
};

break;

case WADO_IMAGE_LOADER_TAGS.PATIENT_MODULE:
Expand Down
11 changes: 6 additions & 5 deletions src/classes/metadata/StudyMetadata.js
Original file line number Diff line number Diff line change
Expand Up @@ -151,10 +151,12 @@ export class StudyMetadata extends Metadata {
const stackableInstances = [];
series.forEachInstance((instance) => {
// All imaging modalities must have a valid value for SOPClassUID (x00080016) or Rows (x00280010)
if (!isImage(instance.getTagValue('SOPClassUID')) && !instance.getTagValue('Rows')) {
return;
}

// Mod by Triet
// Disable isImage checking to support showing HTML series
// if (!isImage(instance.getTagValue('SOPClassUID')) && !instance.getTagValue('Rows')) {
// return;
// }

let displaySet;

if (isMultiFrame(instance)) {
Expand Down Expand Up @@ -283,7 +285,6 @@ export class StudyMetadata extends Metadata {

displaySets.push(...displaySetsForSeries);
});

return sortDisplaySetList(displaySets);
}

Expand Down
7 changes: 4 additions & 3 deletions src/utils/metadataProvider/fetchOverlayData.js
Original file line number Diff line number Diff line change
Expand Up @@ -49,8 +49,9 @@ export default async function fetchOverlayData(instance, server) {
async function _getOverlayData(tag, server) {
const {BulkDataURI} = tag;

let uri = BulkDataURI;

let uri = BulkDataURI.slice(BulkDataURI.indexOf('/studies'), BulkDataURI.length);
// replace BulkDataURI with correct host

// TODO: Workaround for dcm4chee behind SSL-terminating proxy returning
// incorrect bulk data URIs
if (server.wadoRoot.indexOf('https') === 0 && !uri.includes('https')) {
Expand All @@ -63,7 +64,7 @@ async function _getOverlayData(tag, server) {
};
const dicomWeb = new api.DICOMwebClient(config);
const options = {
BulkDataURI: uri
BulkDataURI: `${server.wadoRoot}${uri}`
};

return dicomWeb
Expand Down

0 comments on commit 001a331

Please sign in to comment.