X-Git-Url: http://git.kpe.io/?p=ctsim.git;a=blobdiff_plain;f=libctsim%2Fphantom.cpp;h=9d9a537acadf1c43f22622a6c42179e0705f02e4;hp=8d02d1115865e206c90e49e28f58f4ab8d518b33;hb=40ef0ef58e4d5617d7ddb7b1d145e8981b61215f;hpb=23ea03c25eb95a915f6ece3f6912eb95beb40882 diff --git a/libctsim/phantom.cpp b/libctsim/phantom.cpp index 8d02d11..9d9a537 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: phantom.cpp,v 1.33 2003/03/15 14:52:36 kevin Exp $ ** ** 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 @@ -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; }