2015-01-22 1 views
1

나는 내 질문에 내가 파일에서 DICOM 객체 "org.dcm4che2.data.DicomObject"를 만들려고 아주 기본적인 경우 내가 the javadoc of dcm4che2 apidcm4che - 태그는 "8 바이트 정수"입니까?

용서를 참조 오전 dcm4che 초보자입니다.

DICOM 태그와 함께 작동하는 대부분의 DicomObject의 멤버 함수는 태그 값이 "ggggeeee"로 지정 될 것으로 예상합니다. 여기서 gggg는 4 자리 그룹 ID이고 eeee는 4 자리 요소 ID입니다.

dcm4j 문서는 태그 값을 "tag - (group, element) as 8 byte integer : ggggeeee"로 참조합니다. - 예상 데이터 유형은 int

나는 이것이 단순히

자바 "INT"데이터 형은 4 바이트를 저장할 수 있습니다 (이 일관되게에서 API 문서에 다음에 슬프게하지만) 명칭이 잘못된되지 않은 가정하자 ? 그래서 우리는 8 바이트가 아닌 8 자리 숫자를 제공해야합니다.

예를 들어 DICOM 태그 전송 구문 UID를 지정하는 경우 - 그룹 2 태그 10이면 다음과 같이 값을 전달해야합니다.

int dicomTagXferSyntaxUid=0x00020010; 

dcm4che 문서가 "8 바이트 정수"로 일관되게 표시되는 이유는 무엇인지 궁금합니다. 무엇이 누락 되었습니까? 즉 "8 바이트 정수"는 단지 4 바이트 int 유형의 방법 변수를 설명하는 데 사용되기 때문에

코멘트

인 Yogesh가

답변

3

그것은 오타 있어야하겠습니다.

당신이 말한대로 의도 한 것은 "8 자리 정수"입니다.

+0

Eran, 신속한 응답을 보내 주셔서 감사합니다. 네가 dcm4che의 작동 샘플을 발견 한 적이 있습니까? 당신이 저를 가리킬 수 있다면 그것은 gr8이 될 것입니다. –

+0

@YogeshDevi 아니, 방금 Javadoc을 보았습니다. 시그니처에 int 인수가있는 메소드에는 8 바이트 정수를 전달할 수 없습니다 (아무 것도 없지만 long을 전달할 수 없음). – Eran

+0

DICOM 표준은 태그가 "그룹 번호 뒤에 요소 번호가 오는 16 비트 부호없는 정수의 순서쌍"이라고 말합니다. 따라서 문서가 아마도 8 자리수임을 의미하는지 확인하십시오. – cneller

0

DCM4CHE 설명서의 내용이 정확합니다. 태그 클래스를위한 JavaDoc에서 빠른 눈이 보여줍니다

org.dcm4che2.data 클래스 태그

org.dcm4che2.data.Tag

확장 java.lang.Object 상위
public class Tag 
extends java.lang.Object 

태그 상수를 제공합니다.

필드 개요

static int _3DRenderingType 
     (0072,0520) VR=CS, VM=1-n 3D Rendering Type 
static int AbsoluteChannelDisplayScale 
     (003A,0248) VR=FL, VM=1 Absolute Channel Display Scale 
. 
. 
. 

숫자가 정확하게 DCM4CHE 설명서에 따라, 자바 32 비트 또는 4 바이트 int 형, 명확하게된다. 저는 여러분의 오해가 여러분이 각각의 g와 e를 Tag 표현 (gggg, eeee)으로 가정했다고 생각합니다. 그렇지 않습니다. 오히려 그것은 16 진수이므로 각 쌍은 1 바이트를 나타냅니다.