/* * Copyright (C) 2014 Zijia Guo * CONRAD is developed as an Open Source project under the GNU General Public License (GPL). */ package edu.stanford.rsl.conrad.phantom; import edu.stanford.rsl.conrad.geometry.shapes.simple.Cone; import edu.stanford.rsl.conrad.geometry.transforms.Translation; import edu.stanford.rsl.conrad.physics.PhysicalObject; import edu.stanford.rsl.conrad.physics.materials.database.MaterialsDB; import edu.stanford.rsl.conrad.utils.CONRAD; /** * Phantom to test forward and back projection. * * Creates a simple cone with a tip at the origin. * The material is set to Plexiglass (density of 1.95). * * */ public class ConePhantom extends AnalyticPhantom { /** * */ private static final long serialVersionUID = -6698697230296518461L; @Override public String getBibtexCitation() { return CONRAD.CONRADBibtex; } @Override public String getMedlineCitation() { return CONRAD.CONRADMedline; } @Override public String getName() { return "Cone Phantom"; } public ConePhantom() { // Body of the phantom. Cone theCone = new Cone(120, 120, 120); Translation zTranslation = new Translation(0, 0, 40); theCone.applyTransform(zTranslation); PhysicalObject po = new PhysicalObject(); po.setMaterial(MaterialsDB.getMaterialWithName("Plexiglass")); // D = 1.95 po.setShape(theCone); add(po); updateSceneLimits(); } }