Print

Print


Commit in GeomConverter/src/org/lcsim/geometry/compact/converter/lcdd on MAIN
EcalBarrel.java+9-61.12 -> 1.13
SiTrackerBarrel.java+57-481.2 -> 1.3
+66-54
2 modified files


GeomConverter/src/org/lcsim/geometry/compact/converter/lcdd
EcalBarrel.java 1.12 -> 1.13
diff -u -r1.12 -r1.13
--- EcalBarrel.java	17 Oct 2006 22:14:52 -0000	1.12
+++ EcalBarrel.java	18 Oct 2006 20:38:41 -0000	1.13
@@ -35,7 +35,7 @@
  * that is similar to the "ecal02" subdetector in the Mokka database.
  * 
  * @author Jeremy McCormick <[log in to unmask]>
- * @version $Id: EcalBarrel.java,v 1.12 2006/10/17 22:14:52 jeremy Exp $
+ * @version $Id: EcalBarrel.java,v 1.13 2006/10/18 20:38:41 jeremy Exp $
  */
 public class EcalBarrel extends LCDDSubdetector
 {
@@ -220,6 +220,9 @@
 			phi += dphi;			
 		}
 		
+        // Set region, limitset, and vis.
+        setVisAttributes(lcdd, node, envelopeVolume);
+        
 		lcdd.getStructure().addVolume(envelopeVolume);
 	}
 
@@ -379,13 +382,8 @@
 						slice_volume.setSensitiveDetector(sensitiveDetector);
 					}				
 					
-					// Slice region.
 					subdetector.setRegion(lcdd, slice_element, slice_volume);
-
-					// Slice limits.
 					subdetector.setLimitSet(lcdd, slice_element, slice_volume);
-
-					// Slice vis.
 					setVisAttributes(lcdd, node, slice_volume);
 					
 					// Add slice volume to LCDD.
@@ -405,6 +403,11 @@
 					++slice_number;
 				}
 				
+                // Set region, limitset, and vis.
+                setRegion(lcdd, layer_element, layer_volume);
+                setLimitSet(lcdd, layer_element, layer_volume);
+                setVisAttributes(lcdd, node, layer_volume);
+                
 				lcdd.add(layer_volume);
 				
 				// Place the layer.

GeomConverter/src/org/lcsim/geometry/compact/converter/lcdd
SiTrackerBarrel.java 1.2 -> 1.3
diff -u -r1.2 -r1.3
--- SiTrackerBarrel.java	11 Oct 2006 00:16:22 -0000	1.2
+++ SiTrackerBarrel.java	18 Oct 2006 20:38:42 -0000	1.3
@@ -61,7 +61,7 @@
 		Structure structure = lcdd.getStructure();
 
 		// Pick the mother volume (tracking volume).
-		Volume tracking_logvol = lcdd.pickMotherVolume(this);
+		Volume tracking_volume = lcdd.pickMotherVolume(this);
 
 		// Loop over the modules and put them into a map for lookup later.
 		for (Iterator i = node.getChildren("module").iterator(); i.hasNext();)
@@ -85,16 +85,16 @@
 		for (Iterator i = node.getChildren("layer").iterator(); i.hasNext(); nlayer++)
 		{
 			// Get the next layer element.
-			Element layer = (Element) i.next();
+			Element layer_element = (Element) i.next();
 
 			// Get the reference to the module from the layer.
-			String module_name = layer.getAttributeValue("module");
+			String module_name = layer_element.getAttributeValue("module");
 
 			// Get the logical volume for the module.
 			Volume module_envelope = modules.get(module_name);
 
 			// Get the barrel_envelope for this layer.
-			Element barrel_envelope = layer.getChild("barrel_envelope");
+			Element barrel_envelope = layer_element.getChild("barrel_envelope");
 
 			// Inner radius of layer.
 			double ir = barrel_envelope.getAttribute("inner_r").getDoubleValue();
@@ -118,12 +118,12 @@
 			solids.addContent(layer_tube);
 
 			// Create the layer envelope volume.
-			Volume layer_envelope_logvol = new Volume(layer_name);
-			layer_envelope_logvol.setMaterial(air);
-			layer_envelope_logvol.setSolid(layer_tube);
+			Volume layer_volume = new Volume(layer_name);
+			layer_volume.setMaterial(air);
+			layer_volume.setSolid(layer_tube);
 
 			// Get the rphi_layout element.
-			Element rphi_layout = layer.getChild("rphi_layout");
+			Element rphi_layout = layer_element.getChild("rphi_layout");
 
 			// Starting phi of first module.
 			double phi0 = rphi_layout.getAttribute("phi0").getDoubleValue();
@@ -153,7 +153,7 @@
 			phic += phi0;
 
 			// Get the <z_layout> element.
-			Element z_layout = layer.getChild("z_layout");
+			Element z_layout = layer_element.getChild("z_layout");
 
 			// Z position of first module in phi.
 			double z0 = z_layout.getAttribute("z0").getDoubleValue();
@@ -247,7 +247,7 @@
 					module_physvol.setRotation(module_rotation);
 					module_physvol.addPhysVolID("phi", ii);
 					module_physvol.addPhysVolID("z", j);
-					layer_envelope_logvol.addPhysVol(module_physvol);
+					layer_volume.addPhysVol(module_physvol);
 
 					// Adjust the x and y coordinates of the module.
 					x += dx;
@@ -276,17 +276,20 @@
 				module_z = -z0;
 			}
 
+            setRegion(lcdd, layer_element, layer_volume);
+            setLimitSet(lcdd, layer_element, layer_volume);
+            
 			// Set the layer envelope to invisible to help Geant4 visualization.
 			if (lcdd.getVisAttributes("InvisibleWithDaughters") != null)
 			{
-				layer_envelope_logvol.setVisAttributes(lcdd.getVisAttributes("InvisibleWithDaughters"));
+				layer_volume.setVisAttributes(lcdd.getVisAttributes("InvisibleWithDaughters"));
 			}
-
+            
 			// Add the layer volume to LCDD.
-			structure.addVolume(layer_envelope_logvol);
+			structure.addVolume(layer_volume);
 
 			// Create the PhysicalVolume for the layer.
-			PhysVol layer_envelope_physvol = new PhysVol(layer_envelope_logvol);
+			PhysVol layer_envelope_physvol = new PhysVol(layer_volume);
 
 			// Set the subdetector system ID.
 			layer_envelope_physvol.addPhysVolID("system", id);
@@ -298,7 +301,7 @@
 			layer_envelope_physvol.addPhysVolID("layer", nlayer);
 
 			// Put the layer into the mother volume.
-			tracking_logvol.addPhysVol(layer_envelope_physvol);
+			tracking_volume.addPhysVol(layer_envelope_physvol);
 		}
 	}
 
@@ -313,24 +316,24 @@
 	Volume buildModule(Element detector, String name, LCDD lcdd, SensitiveDetector sens) throws Exception
 	{
 		String detector_name = detector.getAttributeValue("name");
-		Volume module_logvol = null;
+		Volume module_volume = null;
 
 		int sensor_number = 0;
 
 		for (Iterator i = detector.getChildren("module").iterator(); i.hasNext();)
 		{
-			Element module = (Element) i.next();
+			Element module_element = (Element) i.next();
 
-			if (module.getAttributeValue("name").compareTo(name) == 0)
+			if (module_element.getAttributeValue("name").compareTo(name) == 0)
 			{
-				Element module_envelope = module.getChild("module_envelope");
+				Element module_envelope_element = module_element.getChild("module_envelope");
 
-				String module_name = detector_name + "_" + module.getAttributeValue("name");
+				String module_name = detector_name + "_" + module_element.getAttributeValue("name");
 
 				// Create the module box.
-				double module_length = module_envelope.getAttribute("length").getDoubleValue();
-				double module_width = module_envelope.getAttribute("width").getDoubleValue();
-				double module_thickness = module_envelope.getAttribute("thickness").getDoubleValue();
+				double module_length = module_envelope_element.getAttribute("length").getDoubleValue();
+				double module_width = module_envelope_element.getAttribute("width").getDoubleValue();
+				double module_thickness = module_envelope_element.getAttribute("thickness").getDoubleValue();
 				Box module_box = new Box(module_name + "_box");
 				module_box.setX(module_width);
 				module_box.setY(module_length);
@@ -338,17 +341,17 @@
 				lcdd.getSolids().addSolid(module_box);
 
 				// Create the module logical volume.
-				module_logvol = new Volume(module_name);
-				module_logvol.setMaterial(lcdd.getMaterial("Air"));
-				module_logvol.setSolid(module_box);
+				module_volume = new Volume(module_name);
+				module_volume.setMaterial(lcdd.getMaterial("Air"));
+				module_volume.setSolid(module_box);
 
 				// Build module components.
 				int ncomponents = 0;
-				for (Iterator j = module.getChildren("module_component").iterator(); j.hasNext(); ++ncomponents)
+				for (Iterator j = module_element.getChildren("module_component").iterator(); j.hasNext(); ++ncomponents)
 				{
-					Element component = (Element) j.next();
+					Element component_element = (Element) j.next();
 
-					boolean sensitive = ((component.getAttribute("sensitive") == null) ? false : component.getAttribute("sensitive").getBooleanValue());
+					boolean sensitive = ((component_element.getAttribute("sensitive") == null) ? false : component_element.getAttribute("sensitive").getBooleanValue());
 
 					String component_name = module_name + "_component" + ncomponents;
 
@@ -358,9 +361,9 @@
 					//
 
 					// Create the box solid for the module component.
-					double component_length = component.getAttribute("length").getDoubleValue();
-					double component_width = component.getAttribute("width").getDoubleValue();
-					double component_thickness = component.getAttribute("thickness").getDoubleValue();
+					double component_length = component_element.getAttribute("length").getDoubleValue();
+					double component_width = component_element.getAttribute("width").getDoubleValue();
+					double component_thickness = component_element.getAttribute("thickness").getDoubleValue();
 					Box component_box = new Box(component_name + "_box");
 					component_box.setX(component_width);
 					component_box.setY(component_length);
@@ -368,19 +371,19 @@
 					lcdd.getSolids().addSolid(component_box);
 
 					// Create the volume for the module component.
-					Volume component_logvol = new Volume(component_name);
-					Material component_material = lcdd.getMaterial(component.getAttributeValue("material"));
-					component_logvol.setMaterial(component_material);
-					component_logvol.setSolid(component_box);
-					lcdd.getStructure().addVolume(component_logvol);
-
-					PhysVol component_physvol = new PhysVol(component_logvol);
+					Volume component_volume = new Volume(component_name);
+					Material component_material = lcdd.getMaterial(component_element.getAttributeValue("material"));
+					component_volume.setMaterial(component_material);
+					component_volume.setSolid(component_box);
+					lcdd.getStructure().addVolume(component_volume);                    
+                    
+					PhysVol component_physvol = new PhysVol(component_volume);
 
 					// Set component position.
 					// FIXME: Processing of positions should be generalized in compact description.					
-					if (component.getChild("position") != null)
+					if (component_element.getChild("position") != null)
 					{
-						Element pos_elem = component.getChild("position");
+						Element pos_elem = component_element.getChild("position");
 
 						Position component_position = new Position(component_name + "_position");
 
@@ -405,9 +408,9 @@
 
 					// Set component rotation.
 					// FIXME: Processing of rotations should be generalized in compact description.
-					if (component.getChild("rotation") != null)
+					if (component_element.getChild("rotation") != null)
 					{
-						Element rot_elem = component.getChild("rotation");
+						Element rot_elem = component_element.getChild("rotation");
 
 						Rotation component_rotation = new Rotation(component_name + "_rotation");
 
@@ -433,27 +436,33 @@
 
 					if (sensitive)
 					{
-						component_logvol.setSensitiveDetector(sens);
+						component_volume.setSensitiveDetector(sens);
 						component_physvol.addPhysVolID("sensor", sensor_number);
 						++sensor_number;
 					}
+                    
+                    setRegion(lcdd, component_element, component_volume);
+                    setLimitSet(lcdd, component_element, component_volume);
+                    setVisAttributes(lcdd, this.node, component_volume);
 
-					module_logvol.addPhysVol(component_physvol);
+					module_volume.addPhysVol(component_physvol);
 				}
 
 				break;
 			}
 		}
 
-		if (module_logvol == null)
+		if (module_volume == null)
 		{
 			throw new RuntimeException("Failed to find module " + name);
 		}
+        
+        setVisAttributes(lcdd, this.node, module_volume);
 
 		// Add module logical volume to LCDD.
-		lcdd.getStructure().addVolume(module_logvol);
+		lcdd.getStructure().addVolume(module_volume);
 
-		return module_logvol;
+		return module_volume;
 	}
 
 	public boolean isTracker()
CVSspam 0.2.8