亚洲欧美第一页_禁久久精品乱码_粉嫩av一区二区三区免费野_久草精品视频

? 歡迎來到蟲蟲下載站! | ?? 資源下載 ?? 資源專輯 ?? 關(guān)于我們
? 蟲蟲下載站

?? ximagedcm.cpp

?? dicom 與 圖像文件互相轉(zhuǎn)化
?? CPP
字號:
// xImageDCM.cpp: implementation of the CxImageDCM class.
//
//////////////////////////////////////////////////////////////////////
#include "StdAfx.h"
#include "DCMConverter.h"
#include "xImageDCM.h"


#include "osconfig.h"    /* make sure OS specific configuration is included first */


#ifdef HAVE_GUSI_H
#include <GUSI.h>
#endif

#include "dctk.h"          /* for various dcmdata headers */
#include "dcdebug.h"       /* for SetDebugLevel */
#include "cmdlnarg.h"      /* for prepareCmdLineArgs */
#include "dcuid.h"         /* for dcmtk version name */
#include "dcrledrg.h"      /* for DcmRLEDecoderRegistration */

#include "dcmimage.h"      /* for DicomImage */
#include "digsdfn.h"       /* for DiGSDFunction */
#include "diciefn.h"       /* for DiCIELABFunction */

#include "ofconapp.h"      /* for OFConsoleApplication */
#include "ofcmdln.h"       /* for OFCommandLine */

#include "diregist.h"      /* include to support color images */
#include "ofstd.h"         /* for OFStandard */

#include "djdecode.h"     /* for dcmjpeg decoders */
#include "dipijpeg.h"     /* for dcmimage JPEG plugin */
#include "dipitiff.h"     /* for dcmimage TIFF plugin */
#include "dipipng.h"      /* for dcmimage PNG plugin */
#include "zlib.h"         /* for zlibVersion() */

#include "ofstream.h"


#ifdef _DEBUG
#undef THIS_FILE
static char THIS_FILE[]=__FILE__;
#define new DEBUG_NEW
#endif




//////////////////////////////////////////////////////////////////////
// Construction/Destruction
//////////////////////////////////////////////////////////////////////

CxImageDCM::CxImageDCM()
{
	//init pointers
	pDib = pSelection = pAlpha = NULL;
	pLayers = NULL;
	//init structures
	memset(&head,0,sizeof(BITMAPINFOHEADER));
	memset(&info,0,sizeof(CXIMAGEINFO));
	//init default attributes
    info.dwType = 0;
	info.nQuality = 90;
	info.nAlphaMax = 255;
	info.nBkgndIndex = -1;
	info.bEnabled = true;
	SetXDPI(96);
	SetYDPI(96);
}

CxImageDCM::~CxImageDCM()
{ 

}

bool CxImageDCM::SaveAsBMP(const TCHAR *fileName)
{//please refer to the implementation of dcmj2pnm
	return false;
}

bool CxImageDCM::SaveAsJPG(const TCHAR* fileName)
{//you may also use DCMTK's JPG encoding plug-in
	return CxImage::Save(fileName,CXIMAGE_FORMAT_JPG);
}

bool CxImageDCM::LoadDCM(const TCHAR* filename)
{  
	DcmFileFormat *dfile = new DcmFileFormat();
    OFCondition cond = dfile->loadFile(filename, EXS_Unknown,
		EGL_withoutGL,DCM_MaxReadLength,OFFalse);
	
	if (cond.bad()) {
		AfxMessageBox(cond.text());
    }
	
	E_TransferSyntax xfer = dfile->getDataset()->getOriginalXfer();
    DicomImage *di = new DicomImage(dfile, xfer, 
		CIF_AcrNemaCompatibility ,
		0, 1);
	
	if (di->getStatus() != EIS_Normal)
        AfxMessageBox(DicomImage::getString(di->getStatus()));
	
	di->writeBMP("c:\\from_dicom.bmp",24);
	
	return CxImage::Load("c:\\from_dicom.bmp",CXIMAGE_FORMAT_BMP);
	
}

bool CxImageDCM::SaveAsDCM(const TCHAR* filename)
{
	CxImageDCM::IncreaseBpp(24);
	char uid[100]; 
	DcmFileFormat fileformat; 
	DcmDataset *dataset = fileformat.getDataset(); 
	dataset->putAndInsertString(DCM_SOPClassUID, 
		UID_SecondaryCaptureImageStorage); 
	dataset->putAndInsertString(DCM_SOPInstanceUID, 
		dcmGenerateUniqueIdentifier(uid, SITE_INSTANCE_UID_ROOT)); 
	dataset->putAndInsertString(DCM_PatientsName, "Doe^John");
		
//	dataset->putAndInsertUint32(DCM_MetaElementGroupLength,128);
	dataset->putAndInsertUint16(DCM_FileMetaInformationVersion,
		0x0001);
	dataset->putAndInsertString(DCM_MediaStorageSOPClassUID,
		UID_MultiframeTrueColorSecondaryCaptureImageStorage);
	dataset->putAndInsertString(DCM_MediaStorageSOPInstanceUID,
		dcmGenerateUniqueIdentifier(uid,SITE_INSTANCE_UID_ROOT));
	dataset->putAndInsertString(DCM_TransferSyntaxUID,
		UID_LittleEndianExplicitTransferSyntax);
	dataset->putAndInsertString(DCM_ImplementationClassUID,
		dcmGenerateUniqueIdentifier(uid,SITE_INSTANCE_UID_ROOT));
	dataset->putAndInsertString(DCM_ImplementationVersionName,
		"test this version name");

	dataset->putAndInsertString(DCM_UID,
		UID_MultiframeTrueColorSecondaryCaptureImageStorage);
	dataset->putAndInsertString(DCM_PhotometricInterpretation,
		"RGB"); 
	dataset->putAndInsertUint16(DCM_SamplesPerPixel,3);
	dataset->putAndInsertUint16(DCM_BitsAllocated,8);
	dataset->putAndInsertUint16(DCM_BitsStored,8); 
	dataset->putAndInsertUint16(DCM_HighBit,7);
	dataset->putAndInsertUint16(DCM_PixelRepresentation,0);
	dataset->putAndInsertUint16(DCM_PlanarConfiguration,0);
	dataset->putAndInsertUint16(DCM_Rows,GetHeight());
	dataset->putAndInsertUint16(DCM_Columns,GetWidth());
	//add more tags here
	/* ... */ 
	BYTE* pData=new BYTE[GetHeight()*info.dwEffWidth];
	BYTE* pSrc=GetBits(head.biHeight-1);
	BYTE* pDst=pData;
	for(long y=0; y < head.biHeight; y++){
		memcpy(pDst,pSrc,info.dwEffWidth);
		pSrc-=info.dwEffWidth;
		pDst+=info.dwEffWidth;
	}
	dataset->putAndInsertUint8Array(DCM_PixelData, 
		pData, GetHeight()*info.dwEffWidth); 
	delete[] pData;

	OFCondition status = fileformat.saveFile(filename, 
		EXS_LittleEndianImplicit,EET_UndefinedLength,EGL_withoutGL); 
	if (status.bad()) 
		AfxMessageBox("Error: cannot write DICOM file ");

	return true;     
}

?? 快捷鍵說明

復(fù)制代碼 Ctrl + C
搜索代碼 Ctrl + F
全屏模式 F11
切換主題 Ctrl + Shift + D
顯示快捷鍵 ?
增大字號 Ctrl + =
減小字號 Ctrl + -
亚洲欧美第一页_禁久久精品乱码_粉嫩av一区二区三区免费野_久草精品视频
国内不卡的二区三区中文字幕| 亚洲mv大片欧洲mv大片精品| 在线观看成人小视频| 国产精品资源网站| 亚洲成a人v欧美综合天堂| 国产精品美女久久久久久2018| 在线播放国产精品二区一二区四区 | 91麻豆国产在线观看| 成人成人成人在线视频| 国产乱对白刺激视频不卡| 日韩va亚洲va欧美va久久| 亚洲国产成人av网| 亚洲国产一二三| 亚洲综合视频网| 一区二区国产视频| 一区二区三区不卡视频在线观看| 国产精品国产三级国产aⅴ原创| 国产日韩精品一区二区浪潮av| 精品少妇一区二区三区视频免付费 | 久久伊99综合婷婷久久伊| 国产精品久久三区| 久久综合狠狠综合久久激情 | 欧美成人性福生活免费看| 欧美亚洲综合在线| 欧美色精品天天在线观看视频| 在线观看一区二区视频| 欧美伊人久久久久久午夜久久久久| 欧美午夜视频网站| 欧美一区二区三区视频在线 | 日韩精品一区二区三区在线观看| 欧美一区二区在线免费播放| 精品噜噜噜噜久久久久久久久试看| 欧美不卡视频一区| 中文字幕视频一区| 亚洲bdsm女犯bdsm网站| 麻豆精品一区二区av白丝在线| 国产精品一卡二卡在线观看| 99久久精品国产一区| 欧美女孩性生活视频| 久久亚洲精品小早川怜子| 亚洲欧洲三级电影| 99久久99久久精品免费观看| 91麻豆精品秘密| 欧美成人激情免费网| 亚洲特黄一级片| 丝袜亚洲另类欧美| 成人性色生活片免费看爆迷你毛片| 一本到不卡精品视频在线观看 | 国产精品中文字幕日韩精品 | 国产91精品一区二区麻豆网站| 在线中文字幕一区| 中国色在线观看另类| 免费精品视频最新在线| 色哟哟欧美精品| 国产色产综合色产在线视频| 亚洲精品国产高清久久伦理二区 | 无码av免费一区二区三区试看| 国模无码大尺度一区二区三区| 欧美在线观看你懂的| 亚洲欧美日韩人成在线播放| 国产一区二区三区国产| 欧美大白屁股肥臀xxxxxx| 亚洲免费三区一区二区| 欧美三级电影网站| 亚洲视频在线一区二区| 岛国一区二区在线观看| 欧美成人欧美edvon| 日韩激情视频网站| 8x8x8国产精品| 午夜精品爽啪视频| 日韩视频在线永久播放| 亚洲chinese男男1069| 欧美色图12p| 亚洲成人一区二区在线观看| 欧美日韩综合一区| 视频在线观看一区二区三区| 欧美日产国产精品| 日韩成人精品在线观看| 3d动漫精品啪啪1区2区免费| 中文字幕日韩欧美一区二区三区| 99久久免费精品| 午夜欧美在线一二页| 日韩欧美国产不卡| av成人免费在线观看| 亚洲欧美日韩电影| 亚洲精品一区二区三区福利| 高清国产一区二区三区| 亚洲国产精品麻豆| 26uuu亚洲综合色欧美| 欧美三日本三级三级在线播放| 天堂一区二区在线| 国产欧美日韩中文久久| 欧美喷潮久久久xxxxx| 国产大片一区二区| 日日夜夜免费精品| 国产精品久久久久精k8 | 精品视频一区 二区 三区| 国产精品资源在线| 蜜臀精品一区二区三区在线观看| 国产精品久久毛片av大全日韩| 日韩一区二区三区观看| 色综合久久中文综合久久97| 国产成人综合在线| 麻豆精品国产91久久久久久| 亚洲一级电影视频| 成人免费在线视频| 国产女人aaa级久久久级| 欧美一级搡bbbb搡bbbb| 欧洲精品中文字幕| 日本韩国精品在线| 一本到不卡精品视频在线观看| 不卡的av网站| www.亚洲国产| 91丨九色丨黑人外教| 欧美男同性恋视频网站| 国产aⅴ综合色| 国产成人av一区二区| 国产福利一区二区三区视频 | 日韩免费高清av| 欧美三级视频在线播放| 日本大香伊一区二区三区| 欧洲一区二区av| 欧美伊人久久久久久久久影院 | 日本不卡视频在线观看| 日本伊人午夜精品| 国产一区二区三区蝌蚪| 国产成人av一区二区三区在线 | 日韩一区二区三区免费观看| 欧美大胆一级视频| 国产精品美女久久福利网站| 国产精品免费aⅴ片在线观看| 中文字幕一区av| 激情六月婷婷久久| av在线不卡观看免费观看| 在线这里只有精品| 日韩精品一区二区在线观看| 国产精品色婷婷| 日韩va欧美va亚洲va久久| 国产一区高清在线| 欧美午夜精品理论片a级按摩| 欧美成人猛片aaaaaaa| 亚洲女同女同女同女同女同69| 日日夜夜精品视频免费| 国产二区国产一区在线观看| 欧美日韩久久久久久| 久久精品亚洲乱码伦伦中文| 五月婷婷综合网| 色综合久久久久综合体| 久久久久国产精品麻豆ai换脸 | 成人app下载| 久久一日本道色综合| 婷婷一区二区三区| 一本到三区不卡视频| 国产女主播在线一区二区| 蜜臀久久久99精品久久久久久| 91黄色免费观看| 国产精品久久久久久亚洲毛片 | 亚洲人吸女人奶水| 国产一区二区在线观看视频| 5858s免费视频成人| 亚洲国产成人va在线观看天堂| 欧美日韩中文国产| 亚洲日本在线观看| 成人免费高清在线观看| 久久婷婷国产综合精品青草| 日本不卡123| 宅男在线国产精品| 亚洲成a人片综合在线| 欧美日韩免费电影| 亚洲风情在线资源站| 欧美性受极品xxxx喷水| 亚洲综合在线免费观看| 色婷婷久久综合| 亚洲成人自拍一区| 欧美精品第一页| 热久久免费视频| 欧美r级电影在线观看| 国产激情偷乱视频一区二区三区| 国产人成亚洲第一网站在线播放| 国产精品资源在线观看| 中文字幕不卡在线| 99精品国产99久久久久久白柏| 亚洲欧美另类在线| 91精品国产一区二区三区蜜臀| 美女网站一区二区| 久久久久国产免费免费| 一本大道av伊人久久综合| 亚洲最大成人综合| 欧美成人一区二区| 99国产麻豆精品| 日韩电影在线免费| 中文字幕制服丝袜成人av| 欧美精品亚洲一区二区在线播放| 国产精品夜夜爽| 一区二区三区四区五区视频在线观看 | 美女视频黄免费的久久| ●精品国产综合乱码久久久久| 欧美日韩美女一区二区| 国产成人精品一区二区三区四区| 亚洲精品老司机|