+ :style="`overflow-y: auto;max-height:${showSegmentConfig ? (SegmentHight - 220) : SegmentHight}px;`">
@@ -146,7 +145,7 @@
+ @click.stop="viewBidirectional([item], !item.bidirectionalView)" />
@@ -304,7 +303,7 @@ export default {
}
},
mounted() {
- this.SegmentHight = window.innerHeight * 0.4;
+ this.SegmentHight = window.innerHeight > 900 ? window.innerHeight * 0.5 : window.innerHeight * 0.4;
this.statsKey = getCustomizeStandardsSegmentDicomTools('Labelmap')[0].props.filter(item => item !== 'width' && item !== 'length')
// console.log(segmentation, 'segmentation')
// console.log(annotation, 'annotation')
@@ -465,10 +464,14 @@ export default {
this.showSegmentConfig = !this.showSegmentConfig
}
},
- viewBidirectional(item, view) {
- let bidirectional = annotation.state.getAllAnnotations().find(i => i.metadata.segmentationId === item.segmentationId && i.metadata.segmentIndex === item.segmentIndex && i.metadata.toolName === "SegmentBidirectional");
- annotation.visibility.setAnnotationVisibility(bidirectional.annotationUID, view)
- item.bidirectionalView = view
+ viewBidirectional(arr, view) {
+ for (let j = 0; j < arr.length; j++) {
+ let item = arr[j]
+ let bidirectional = annotation.state.getAllAnnotations().find(i => i.metadata.segmentationId === item.segmentationId && i.metadata.segmentIndex === item.segmentIndex && i.metadata.toolName === "SegmentBidirectional");
+ item.bidirectionalView = view
+ if (!bidirectional) return false
+ annotation.visibility.setAnnotationVisibility(bidirectional.annotationUID, view)
+ }
this.resetViewport()
},
jumpBidirectional(item) {
@@ -496,10 +499,12 @@ export default {
);
})
item.view = view
+
item.segments.forEach(i => {
i.view = view
- this.viewBidirectional(i, view)
+ // this.viewBidirectional(i, view)
})
+ this.viewBidirectional(item.segments, view)
},
viewSegment(item, view) {
this.viewprotIds.forEach(id => {
@@ -509,7 +514,7 @@ export default {
}, item.segmentIndex, view)
})
item.view = view
- this.viewBidirectional(item, view)
+ this.viewBidirectional([item], view)
this.$emit('setToolsPassive')
},
lockSegment(item, lock) {
@@ -531,7 +536,7 @@ export default {
segmentation.activeSegmentation.setActiveSegmentation(id, this.segmentationId)
})
this.selectSegment({ segmentationId: this.segmentationId, segmentIndex: 1 })
- // this.changeSegmentConfig()
+ this.readingSegmentByConfig()
},
async addSegmentGroup() {
let viewprotIds = this.viewprotIds
@@ -738,17 +743,16 @@ export default {
// 切换非当前分组分割标记显示
changeInactiveSegmentShow() {
let segmentList = this.segmentList.filter(item => item.segmentationId !== this.segmentationId)
- segmentList.forEach(segment => {
- this.viewprotIds.forEach(id => {
- segmentation.config.style.setStyle(
- {
- type: csToolsEnums.SegmentationRepresentations.Labelmap,
- segmentationId: segment.segmentationId,
- },
- {
- fillAlpha: Number(this.SegmentConfig.InactiveSegmentations.fillAlpha),
- }
- )
+ this.viewprotIds.forEach(id => {
+ segmentation.config.visibility.setSegmentationRepresentationVisibility(
+ id,
+ {
+ segmentationId: this.segmentationId,
+ type: csToolsEnums.SegmentationRepresentations.Labelmap,
+ },
+ true
+ );
+ segmentList.forEach(segment => {
segmentation.config.visibility.setSegmentationRepresentationVisibility(
id,
{
@@ -757,9 +761,16 @@ export default {
},
this.SegmentConfig.InactiveSegmentations.show
);
+
})
})
+ segmentList.forEach(segment => {
+ this.viewBidirectional(segment.segments, this.SegmentConfig.InactiveSegmentations.show)
+ })
+ let segments = this.segmentList.find(item => item.segmentationId === this.segmentationId).segments
+ this.viewBidirectional(segments, true)
+
},
// 更改分割标记显示模式
changeSegmentConfig(renderOutline, renderFill) {
@@ -970,6 +981,7 @@ export default {
return obj
},
readingSegmentByConfig() {
+ this.changeInactiveSegmentShow()
segmentation.config.style.setStyle(
{
type: csToolsEnums.SegmentationRepresentations.Labelmap,
@@ -981,7 +993,6 @@ export default {
fillAlpha: Number(this.SegmentConfig.fillAlpha),
}
)
- this.changeInactiveSegmentShow()
},
setBrushSize() {
const toolGroupId = this.isMPR ? this.volumeToolGroupId : `${this.viewportKey}-${this.activeViewportIndex}`
@@ -1001,7 +1012,6 @@ export default {
}
)
}
-
segmentation.addSegmentations([
{
segmentationId,
@@ -1624,11 +1634,11 @@ export default {
}
::v-deep .el-slider__input {
- width: 50px;
+ width: 60px;
}
::v-deep .el-slider__runway.show-input {
- margin-right: 60px;
+ margin-right: 70px;
}
}
diff --git a/src/views/trials/trials-panel/reading/dicoms3D/components/customize/QuestionFormItem.vue b/src/views/trials/trials-panel/reading/dicoms3D/components/customize/QuestionFormItem.vue
index 7eea7853..bf7fa69b 100644
--- a/src/views/trials/trials-panel/reading/dicoms3D/components/customize/QuestionFormItem.vue
+++ b/src/views/trials/trials-panel/reading/dicoms3D/components/customize/QuestionFormItem.vue
@@ -188,10 +188,10 @@
v-if="question.ImageMarkTypeEnum === 1">
{ formItemNumberChange(val, question) }"
@input="numberInput(question.Id)"
- @blur="questionsMarkStatus[question.Id] && questionsMarkStatus[question.Id].isMarked ? () => { } : handleMarkedQsBlur(questionForm[question.Id], questionForm, question.Id, question)"
+ @blur="questionsSegmentMarkStatus[question.Id] ? () => { } : handleMarkedQsBlur(questionForm[question.Id], questionForm, question.Id, question)"
v-model="questionForm[question.Id]"
- :title="questionsMarkStatus[question.Id] ? questionsMarkStatus[question.Id].OrderMarkName : question.Remark"
- :disabled="(questionsMarkStatus[question.Id] && questionsMarkStatus[question.Id].isMarked && question.ImageMarkEnum === 2) || question.ImageMarkEnum === 1 || readingTaskState === 2"
+ :title="questionsSegmentMarkStatus[question.Id] ? `${questionsSegmentMarkStatus[question.Id].SegmentationName}_${questionsSegmentMarkStatus[question.Id].SegmentName}` : question.Remark"
+ :disabled="(questionsSegmentMarkStatus[question.Id] && question.ImageMarkEnum === 2) || question.ImageMarkEnum === 1 || readingTaskState === 2"
style="width: 150px;margin-right: 5px;">
{{ question.Unit !== 4 ? $fd('ValueUnit', question.Unit) : question.CustomUnit }}
diff --git a/src/views/trials/trials-panel/reading/dicoms3D/components/customize/QuestionList.vue b/src/views/trials/trials-panel/reading/dicoms3D/components/customize/QuestionList.vue
index 6588e230..fd4174af 100644
--- a/src/views/trials/trials-panel/reading/dicoms3D/components/customize/QuestionList.vue
+++ b/src/views/trials/trials-panel/reading/dicoms3D/components/customize/QuestionList.vue
@@ -577,9 +577,9 @@ export default {
this.questionsSegmentMarkStatus = {}
list.forEach(item => {
if (item.TableQuestionId && item.RowId) {
- this.$set(this.questionsSegmentMarkStatus, `${item.RowId}_${item.TableQuestionId}`, item.SegmentId)
+ this.$set(this.questionsSegmentMarkStatus, `${item.RowId}_${item.TableQuestionId}`, { SegmentId: item.SegmentId, SegmentationName: item.SegmentationName, SegmentName: item.SegmentName, })
} else {
- this.$set(this.questionsSegmentMarkStatus, item.QuestionId, item.SegmentId)
+ this.$set(this.questionsSegmentMarkStatus, item.QuestionId, { SegmentId: item.SegmentId, SegmentationName: item.SegmentationName, SegmentName: item.SegmentName, })
}
})
} catch (err) {
diff --git a/src/views/trials/trials-panel/reading/dicoms3D/components/customize/QuestionTableFormItem.vue b/src/views/trials/trials-panel/reading/dicoms3D/components/customize/QuestionTableFormItem.vue
index c27a7f51..c80fd867 100644
--- a/src/views/trials/trials-panel/reading/dicoms3D/components/customize/QuestionTableFormItem.vue
+++ b/src/views/trials/trials-panel/reading/dicoms3D/components/customize/QuestionTableFormItem.vue
@@ -111,10 +111,10 @@
v-if="question.ImageMarkTypeEnum === 1">
{ formItemNumberChange(val, question) }"
@input="numberInput(question.Id)"
- @blur="questionsMarkStatus[question.Id] && questionsMarkStatus[question.Id].isMarked ? () => { } : handleMarkedQsBlur(questionForm[question.Id], questionForm, question.Id, question)"
+ @blur="questionsSegmentMarkStatus[rowId ? `${rowId}_${question.Id}` : question.Id] ? () => { } : handleMarkedQsBlur(questionForm[question.Id], questionForm, question.Id, question)"
v-model="questionForm[question.Id]"
- :title="questionsMarkStatus[rowId ? `${rowId}_${question.Id}` : question.Id] ? questionsMarkStatus[rowId ? `${rowId}_${question.Id}` : question.Id].OrderMarkName : question.Remark"
- :disabled="(questionsMarkStatus[question.Id] && questionsMarkStatus[question.Id].isMarked && question.ImageMarkEnum === 2) || question.ImageMarkEnum === 1 || question.IsPreinstall"
+ :title="questionsSegmentMarkStatus[rowId ? `${rowId}_${question.Id}` : question.Id] ? `${questionsSegmentMarkStatus[rowId ? `${rowId}_${question.Id}` : question.Id].SegmentationName}_${questionsSegmentMarkStatus[rowId ? `${rowId}_${question.Id}` : question.Id].SegmentName}` : question.Remark"
+ :disabled="(questionsSegmentMarkStatus[rowId ? `${rowId}_${question.Id}` : question.Id] && question.ImageMarkEnum === 2) || question.ImageMarkEnum === 1 || question.IsPreinstall"
style="width: 150px;margin-right: 5px;">
{{ question.Unit !== 4 ? $fd('ValueUnit', question.Unit) : question.CustomUnit }}