1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
|
<?xml version="1.0"?>
<DDDefinition xmlns="http://www.cern.ch/cms/DDL" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://www.cern.ch/cms/DDL ../../Schema/DDLSchema.xsd">
<SolidSection label="testSolids.xml">
<Assembly name="assembly"/>
<Trapezoid name="trap1" alp1="10*deg" alp2="10*deg" bl1="50*cm" bl2="75*cm" dz="1*m" h1="20*cm" h2="40*cm" phi="30*deg" theta="30*deg" tl1="50*cm" tl2="75*cm"/>
<Trapezoid name="trap2" alp1="10*deg" alp2="10*deg" bl1="50*cm" bl2="75*cm" dz="1*m" h1="20*cm" h2="40*cm" tl1="50*cm" tl2="75*cm"/>
<PseudoTrap name="ptrap1" dx1="10" dx2="3" dy1="30" dy2="10" dz="30" radius="10" atMinusZ="false"/>
<PseudoTrap name="ptrap2" dx1="10" dx2="3" dy1="30" dy2="10" dz="30" radius="10" atMinusZ="true"/>
<Box name="box1" dx="10*cm" dy="10*cm" dz="10*cm"/>
<Cone name="cone1" dz="1*m" rMin1="50*cm" rMax1="100*cm" rMin2="75*cm" rMax2="125*cm" startPhi="0*deg" deltaPhi="360*deg"/>
<Cone name="cone2" dz="1*m" rMin1="50*cm" rMax1="100*cm" rMin2="50*cm" rMax2="100*cm" startPhi="0*deg" deltaPhi="360*deg"/>
<Cone name="cone2hole" dz="20*cm" rMin1="50*cm" rMax1="100*cm" rMin2="50*cm" rMax2="100*cm" startPhi="0*deg" deltaPhi="20*deg"/>
<!-- While using this as a test solid I found that there is a
problem with it. Can a Polycone come to a point "in the real world?" -->
<Polycone name="pczsect" startPhi="0*deg" deltaPhi="360*deg">
<!-- see above comment ZSection z="1*m" rMin="50*cm" rMax="50*cm"/-->
<ZSection z="1*m" rMin="50*cm" rMax="55*cm"/>
<ZSection z="1.5*m" rMin="50*cm" rMax="60*cm"/>
<ZSection z="2*m" rMin="50*cm" rMax="75*cm"/>
</Polycone>
<Polycone name="pcrz" startPhi="0*deg" deltaPhi="360*deg">
<RZPoint r="50*cm" z="1*m"/>
<RZPoint r="60*cm" z="1.5*m"/>
<RZPoint r="75*cm" z="2*m"/>
<RZPoint r="50*cm" z="2*m"/>
</Polycone>
<Polyhedra name="phzsect" numSide="18" startPhi="0*deg" deltaPhi="360*deg">
<ZSection z="1*m" rMin="50*cm" rMax="50*cm"/>
<ZSection z="1.5*m" rMin="50*cm" rMax="60*cm"/>
<ZSection z="2*m" rMin="50*cm" rMax="75*cm"/>
</Polyhedra>
<Polyhedra name="phrz" numSide="18" startPhi="0*deg" deltaPhi="360*deg">
<RZPoint r="50*cm" z="1*m"/>
<RZPoint r="60*cm" z="1.5*m"/>
<RZPoint r="75*cm" z="2*m"/>
<RZPoint r="50*cm" z="2*m"/>
</Polyhedra>
<ExtrudedPolygon name="extrudedpgon">
<XYPoint x="-30*cm" y="-30*cm"/>
<XYPoint x="-30*cm" y=" 30*cm"/>
<XYPoint x=" 30*cm" y=" 30*cm"/>
<XYPoint x=" 30*cm" y="-30*cm"/>
<XYPoint x=" 15*cm" y="-30*cm"/>
<XYPoint x=" 15*cm" y=" 15*cm"/>
<XYPoint x="-15*cm" y=" 15*cm"/>
<XYPoint x="-15*cm" y="-30*cm"/>
<ZXYSection z="-60*cm" x="0*cm" y="30*cm" scale="0.8"/>
<ZXYSection z="-15*cm" x="0*cm" y="-30*cm" scale="1."/>
<ZXYSection z="10*cm" x="0*cm" y="0*cm" scale="0.6"/>
<ZXYSection z="60*cm" x="0*cm" y="30*cm" scale="1.2"/>
</ExtrudedPolygon>
<Trd1 name="trd1" dx1="1*m" dx2="1.3*m" dz="3*m" dy1="30*cm"/>
<Trd1 name="trd2" dx1="1*m" dx2="1.3*m" dz="3*m" dy1="30*cm" dy2="50*cm"/>
<Tube name="tube1" rMin="1*m" rMax="1.5*m" dz="1*m"/>
<Tubs name="tube2" rMin="1*m" rMax="2*m" dz="1*m" startPhi="30*deg" deltaPhi="150*deg"/>
<CutTubs name="cuttubs" rMin="1*m" rMax="2*m" dz="1*m" startPhi="30*deg" deltaPhi="150*deg" lx="0" ly="-0.7" lz="-0.71" tx="0.7" ty="0" tz="0.71"/>
<TruncTubs name="trunctubs1" zHalf="50*cm" rMin="20*cm" rMax="40*cm" startPhi="0*deg" deltaPhi="90*deg" cutAtStart="25*cm" cutAtDelta="35*cm" cutInside="true"/>
<ShapelessSolid name="momma"/>
<Box name="MotherOfAllBoxes" dx="10*m" dy="10*m" dz="10*m"/>
<Torus name="torus" innerRadius="7.5*cm" outerRadius="10*cm" torusRadius="30*cm" startPhi="0*deg" deltaPhi="360*deg"/>
<ReflectionSolid name="trd2mirror">
<rSolid name="trd2"/>
</ReflectionSolid>
<SubtractionSolid name="subsolid" firstSolid="cone2" secondSolid="cone2hole"/>
<SubtractionSolid name="subsolidOLD">
<rSolid name="cone2"/>
<rSolid name="cone2hole"/>
<rRotation name="testRotations:x90y45"/>
</SubtractionSolid>
<UnionSolid name="unionsolid" firstSolid="pcrz" secondSolid="cone1">
<Translation x="0" y="0" z="-1.0*m"/>
</UnionSolid>
<MultiUnionSolid name="multiunionsolid">
<rSolid name="pcrz"/>
<rSolid name="cone1"/>
<Translation x="0" y="0" z="-1.0*m"/>
</MultiUnionSolid>
<IntersectionSolid name="intsolid" firstSolid="cone1" secondSolid="cone2">
<RotationByAxis axis="y" angle="90*deg"/>
<Translation x="0" y="0" z="50*cm"/>
</IntersectionSolid>
<Sphere name="asphere" innerRadius="1.*cm" outerRadius="1.1*cm" startPhi="0*deg" deltaPhi="180*deg" startTheta="15*deg" deltaTheta="90*deg"/>
<Orb name="anorb" radius="1.*cm"/>
<EllipticalTube name="etube" xSemiAxis=".5*cm" ySemiAxis="1.*cm" zHeight="3.*cm"/>
<Parallelepiped name="para" xHalf="5.*cm" yHalf="6.*cm" zHalf="7.*cm" alpha="15*deg" theta="30*deg" phi="45*deg"/>
</SolidSection>
</DDDefinition>
|