X-Git-Url: http://git.kpe.io/?p=ctsim.git;a=blobdiff_plain;f=libctsim%2Fphantom.cpp;h=1a8c6b174aab01003667fd01e187a8a7a81fd752;hp=8d02d1115865e206c90e49e28f58f4ab8d518b33;hb=8a7697ce57b56cdc43698cd1241ad98d49f9b5ac;hpb=c0f892798de8f89715266150f7d8e413f2cf29fe diff --git a/libctsim/phantom.cpp b/libctsim/phantom.cpp index 8d02d11..1a8c6b1 100644 --- a/libctsim/phantom.cpp +++ b/libctsim/phantom.cpp @@ -9,7 +9,7 @@ ** This is part of the CTSim program ** Copyright (c) 1983-2001 Kevin Rosenberg ** -** $Id: phantom.cpp,v 1.32 2002/05/28 18:43:16 kevin Exp $ +** $Id$ ** ** This program is free software; you can redistribute it and/or modify ** it under the terms of the GNU General Public License (version 2) as @@ -38,16 +38,16 @@ const int Phantom::PHM_UNITPULSE = 2; const char* Phantom::s_aszPhantomName[] = { - {"herman"}, - {"shepp-logan"}, - {"unit-pulse"}, + "herman", + "shepp-logan", + "unit-pulse", }; const char* Phantom::s_aszPhantomTitle[] = { - {"Herman Head"}, - {"Shepp-Logan"}, - {"Unit Pulse"}, + "Herman Head", + "Shepp-Logan", + "Unit Pulse", }; const int Phantom::s_iPhantomCount = sizeof(s_aszPhantomName) / sizeof(const char*); @@ -239,8 +239,13 @@ Phantom::fileWrite (const char* const fname) void Phantom::addPElem (const char *type, const double cx, const double cy, const double u, const double v, const double rot, const double atten) { - PhantomElement *pelem = new PhantomElement (type, cx, cy, u, v, rot, atten); + PhmElemType pe_type = PhantomElement::convertNameToType (type); + if (pe_type == PELEM_INVALID) { + sys_error (ERR_WARNING, "Unknown PhantomElement type %s [PhantomElement::PhantomElement]", type); + return; + } + PhantomElement *pelem = new PhantomElement (type, cx, cy, u, v, rot, atten); m_listPElem.push_front (pelem); // update phantom limits @@ -599,8 +604,6 @@ PhantomElement::convertNameToType (const char* const typeName) type = PELEM_SECTOR; else if (strcasecmp (typeName, "segment") == 0) type = PELEM_SEGMENT; - else - sys_error (ERR_WARNING, "Unknown PhantomElement type %s [PhantomElement::PhantomElement]", type); return (type); } @@ -732,7 +735,7 @@ PhantomElement::makeVectorOutline () m_yOutline[cpts] = 0.0; break; default: - sys_error(ERR_WARNING, "illegal pelem type %d [makeVectorOutline]", m_type); + sys_error(ERR_WARNING, "Illegal phantom element type %d [makeVectorOutline]", m_type); return; }