Geant4 Cross Reference |
1 # Category geom-specific History << 1 ------------------------------------------------------------------- 2 2 3 See `CONTRIBUTING.rst` for details of **requir << 3 ========================================================= 4 which **must** added in reverse chronological << 4 Geant4 - an Object-Oriented Toolkit for Simulation in HEP 5 It must **not** be used as a substitute for wr << 5 ========================================================= 6 << 6 7 ---------------------------------------------- << 7 Sub-Category History file 8 << 8 ------------------------- 9 ## 2024-10-01 Evgueni Tcherniaev (geom-specifi << 9 This file should be used by G4 developers and category coordinators 10 - G4GenericTrap: Fixed minor defect reported b << 10 to briefly summarize all major modifications introduced in the code 11 << 11 and keep track of all directory-tags. 12 ## 2024-07-18 Alvaro Tolosa-Delgado (geom-spec << 12 It DOES NOT substitute the log-message one should put at every 13 - Remove internal state of G4TwistedTubs and G << 13 committal in the source repository ! 14 << 14 15 ## 2024-07-10 Evgueni Tcherniaev (geom-specifi << 15 ---------------------------------------------------------- 16 - G4ExtrudedSolid: Fixed defects reported by C << 16 * Reverse chronological order (last date on top), please * 17 << 17 ---------------------------------------------------------- 18 ## 2024-07-08 Gabriele Cosmo (geom-specific-V1 << 19 - Fixed reported Coverity defect; in G4Voxeliz << 20 plain vector copy in methods BuildReduceVoxe << 21 BuildBoundaries() and CreateMiniVoxels(..). << 22 << 23 ## 2024-05-29 Evgueni Tcherniaev (geom-specifi << 24 - Added new methods GetNumOfConstituents() and << 25 << 26 ## 2024-05-27 Evgueni Tcherniaev (geom-specifi << 27 - Completely revised G4GeneriTrap, it addresse << 28 << 29 ## 2024-05-26 Evgueni Tcherniaev (geom-specifi << 30 - New testG4GenericTrap.cc << 31 << 32 ## 2024-04-02 Gabriele Cosmo (geom-specific-V1 << 33 - Applied trivial clang-tidy fixes to classes, << 34 'default' keywords. << 35 << 36 ## 2024-02-01 Gabriele Cosmo (geom-specific-V1 << 37 - Use std::size_t for array sizes in G4Polyhed << 38 << 39 ## 2023-07-10 Evgueni Tcherniaev (geom-specifi << 40 - Fixed bounding box calculation in G4VTwisted << 41 << 42 ## 2023-06-16 Stephan Hageboeck (geom-specific << 43 - Fix an uninitialised value in G4VCSGfaceted: << 44 << 45 ## 2023-06-12 Gabriele Cosmo (geom-specific-V1 << 46 - Use const iterator in G4Voxelizer::GetPointV << 47 - Fixed use of index in G4Tet::GetPointOnSurfa << 48 << 49 ## 2023-05-10 Gabriele Cosmo (geom-specific-V1 << 50 - Applied clang-tidy fixes (readability, moder << 51 << 52 ## 2023-03-20 Gabriele Cosmo (geom-specific-V1 << 53 - Fixed more potential uninitialised values in << 54 G4SolidExtentList and G4VTwistSurface. << 55 << 56 ## 2023-03-13 Gabriele Cosmo (geom-specific-V1 << 57 - Fixed potential uninitialised value for boun << 58 G4VTwistSurface::GetBoundaryAtPZ(). << 59 << 60 ## 2023-01-02 Evgueni Tcherniaev (geom-specifi << 61 - G4QuadrangularFacet: Fixed warning message << 62 << 63 ## 2022-11-10 Gabriele Cosmo (geom-specific-V1 << 64 - Fixed compilation warnings for implicit type << 65 << 66 ## 2022-10-05 Gabriele Cosmo (geom-specific-V1 << 67 - Fixed compilation warnings in Intel/icx comp << 68 but never used. << 69 << 70 ## 2022-04-03 Evgueni Tcherniaev (geom-specifi << 71 - G4GenericTrap.cc, G4UGenericTrap.cc, G4UExtr << 72 G4TessellatedSolid.cc, G4TessellatedSolid.cc << 73 revision of CreatePolyhedron() << 74 << 75 ## 2022-02-04 Evgueni Tcherniaev (geom-specifi << 76 - G4VTwistedFaceted: used numerical evaluation << 77 integral to calculate lateral face surface a << 78 << 79 ## 2022-02-01 Evgueni Tcherniaev (geom-specifi << 80 - G4ExtrudedSolid, G4UExtrudedSolid: added def << 81 parameters in the constructor with two z-sec << 82 - G4ExtrudedSolid::ZSection, G4UExtrudedSolid: << 83 added default constructor << 84 << 85 ## 2022-01-26 Evgueni Tcherniaev (geom-specifi << 86 - G4GenericTrap::GetCubicVolume(): calculation << 87 using analytical expression; removed private << 88 GetFaceCubicVolume(); << 89 - G4GenericTrap::GetSurfaceArea(): improved ca << 90 of the area of lateral faces; private functi << 91 GetFaceSurfaceArea(), GetTwistedFaceSurfaceA << 92 replaced with private function GetLateralFac << 93 << 94 ## 2022-01-21 Evgueni Tcherniaev (geom-specifi << 95 - G4Ellipsoid::LateralSurfaceArea(): Enhanced << 96 the lateral surface area << 97 << 98 ## 2022-01-11 Evgueni Tcherniaev (geom-specifi << 99 - G4VTwistedFaceted: fCubicVolume, fSurfaceAre << 100 GetCubicVolume(), GetSurfaceArea() moved to << 101 - G4VTwistedFaceted, G4TwistedBox, G4TwistedTr << 102 calculation of volume and surface area << 103 << 104 ## 2022-01-06 Evgueni Tcherniaev (geom-specifi << 105 - G4TwistedTubs: Implemented GetSurfaceArea() << 106 analytical expressions; added private functi << 107 GetLateralArea() and GetPhiCutArea() << 108 << 109 ## 2021-12-19 Evgueni Tcherniaev (geom-specifi << 110 - G4Hype: Used analytical expression in GetCub << 111 and GetSurfaceArea() << 112 << 113 ## 2021-12-10 Ben Morgan (geom-specific-V11-00 << 114 - Change to new Markdown History format << 115 << 116 --- << 117 << 118 # History entries prior to 11.0 << 119 << 120 03-December-2021 E.Tcherniaev (geom-speci << 121 - G4TwistedTubs: Accurate calculation of the b << 122 BoundingLimits() and GetExtent(), fixing mea << 123 penalty. Addressing problem report #2450. << 124 - G4TwistedTubs, G4VTwistedFaceted: Fixed GetC << 125 << 126 15-October-2021 E.Tcherniaev (geom-speci << 127 - G4Tet, G4UTet: Added SetBoundingLimits() << 128 << 129 06-October-2021 E.Tcherniaev (geom-speci << 130 - G4Tet: some changes in calculation of boundi << 131 - G4UTet: added CheckDegeneracy() and SetVerti << 132 << 133 27-September-2021 E.Tcherniaev (geom-speci << 134 - Added degeneracyFlag to the list of paramete << 135 it addresses first part of the problem repor << 136 << 137 24-September-2021 E.Tcherniaev (geom-speci << 138 - Implemented G4TesselatedSolid::GetFacetIndex << 139 << 140 10-September-2021 E.Tcherniaev (geom-speci << 141 - Implemented G4TesselatedSolid::CheckStructur << 142 - Optimisation in G4TessellatedSolid::SetExtre << 143 shuffle of vertices and checking of six extr << 144 << 145 21-July-2021 E.Tcherniaev (geom-speci << 146 - More accurate calculation of distance from p << 147 in G4TriangularFacet, it addresses problem r << 148 << 149 25-June-2021 G.Cosmo (geom-speci << 150 - Added missing accessor in G4UTet. << 151 << 152 12-May-2021 E.Tcherniaev (geom-speci << 153 - Reimplemented CreatePolyhedron() in << 154 G4Polyhedra, G4Polycone, G4GenericPolycone, << 155 G4UPolyhedra, G4UPolycone, G4UGenericPolycon << 156 << 157 30-April-2021 G.Cosmo (geom-speci << 158 - Fixed use of conversion factor in G4UPolyhed << 159 polyhedra constructs. << 160 << 161 19-April-2021 E.Tcherniaev (geom-speci << 162 - G4Polyhedra, G4Polycone: Fix calculation of << 163 of negative phiStart, it addresses also prob << 164 << 165 30-March-2021 B.Morgan (geom-speci << 166 - Migrate sources.cmake to modular build API << 167 << 168 18-March-2021 E.Tcherniaev (geom-speci << 169 - Fix calculation of bounding box position in << 170 it addresses problem report #2301 << 171 << 172 13-January-2021 G.Cosmo (geom-speci << 173 - Reduce cases of bad speculation in G4Polyhed << 174 G4PolyPhiFace::InsideEdges(), based on repor << 175 by G.Amadio. << 176 << 177 30-October-2020 E.Tcherniaev (geom-speci << 178 - G4Polycone: Revised GetPointOnSurface(); << 179 Added protected auxiliary method SetSurfaceE << 180 Removed GetPointOnCone(), GetPointOnTubs(), << 181 - G4GenericPolycone: Revised GetPointOnSurface << 182 Added protected auxiliary method SetSurfaceE << 183 - G4Polyhedra: Revised GetPointOnSurface(); << 184 Added protected auxiliary method SetSurfaceE << 185 Removed GetPointOnPlane(), GetPointOnTriangl << 186 << 187 01-October-2020 E.Tcherniaev (geom-speci << 188 - G4Polycone, G4GenericPolycone, G4Polyhedra: << 189 implemented GetSurfaceArea(), GetCubicVolume << 190 << 191 May 21, 2020 Guilherme Lima (geom-speci << 192 ---------------------------- << 193 - Fix constructor signatures in G4UExtrudedSol << 194 There were missing const and reference quali << 195 << 196 30-April-2020 G.Cosmo (geom-speci << 197 - Adopt new convention for location of headers << 198 18 199 09-April-2020 E.Tcherniaev (geom-speci << 19 21-May-2020 G.Lima (geom-specific-V10-05-23) 200 - Added G4GenericTrap::GetTwistedFaceSurfaceAr << 20 - Fix constructor signatures in G4UExtrudedSolid wrapper. 201 - testG4GenericTrap.cc: fixed test for calcula << 21 There were missing const and reference qualifiers in non-POD parameters. 202 - testG4ExtrudedSolid.cc: fixed assert stateme << 203 point flys along the surface (DistanceToIn() << 204 22 205 17-January-2020 E.Tcherniaev (geom-speci << 23 17-January-2020 E.Tcherniaev (geom-specific-V10-05-22) 206 - Implemented G4Tet::SetVertices(), it address 24 - Implemented G4Tet::SetVertices(), it addresses request made 207 at Geant4 Technical Forum. 25 at Geant4 Technical Forum. 208 26 209 14-January-2020 Gabriele Cosmo (geom-speci << 27 14-January-2020 G.Cosmo 210 - Added protection in G4VFacet header for doub 28 - Added protection in G4VFacet header for double definition of global 211 symbols from Windows Kits code. 29 symbols from Windows Kits code. 212 30 213 08-January-2020 E.Tcherniaev (geom-speci << 31 08-January-2020 E.Tcherniaev 214 - Complete revision of G4Tet, speed up, new te 32 - Complete revision of G4Tet, speed up, new testG4Tet.cc. 215 It also fixes issues spotted by new unit tes 33 It also fixes issues spotted by new unit test. 216 34 217 16-December-2019 E.Tcherniaev (geom-speci << 35 16-December-2019 E.Tcherniaev 218 - Complete revision of G4Ellipsoid, it fixes i 36 - Complete revision of G4Ellipsoid, it fixes issues with former 219 implementation, in particular it addresses p 37 implementation, in particular it addresses problem report #2206. 220 30%-70% speed-up in all main methods. << 38 30%-70% speed-up in all main methods 221 << 222 11-December-2019 B.Morgan (geom-speci << 223 - Cleanup CMake build, removing obsolete granu << 224 explicit include_directories. << 225 39 226 10-December-2019 G.Cosmo (geom-speci << 40 10-December-2019 G.Cosmo 227 - Re-established parameterisation mechanism fo 41 - Re-established parameterisation mechanism for G4Tet and G4UTet which was 228 removed by mistake. Addressing problem repor 42 removed by mistake. Addressing problem report #2209. 229 43 230 26-November-2019 G.Cosmo (geom-speci 44 26-November-2019 G.Cosmo (geom-specific-V10-05-21) 231 - Fixed cases of implicit type conversions fro 45 - Fixed cases of implicit type conversions from size_t to G4int. 232 46 233 05-November-2019 E.Tcherniaev (geom-speci 47 05-November-2019 E.Tcherniaev (geom-specific-V10-05-20) 234 - G4TesselatedSolid.cc: fixed minor Coverity d 48 - G4TesselatedSolid.cc: fixed minor Coverity defect (uninitialized array) 235 49 236 07-October-2019 E.Tcherniaev (geom-speci 50 07-October-2019 E.Tcherniaev (geom-specific-V10-05-19) 237 - G4TesselatedSolid.cc: fixed minor Coverity d 51 - G4TesselatedSolid.cc: fixed minor Coverity defect 238 52 239 16-September-2019 G.Cosmo (geom-speci 53 16-September-2019 G.Cosmo (geom-specific-V10-05-18) 240 - Rationalise header inclusions for faceted so 54 - Rationalise header inclusions for faceted solids. 241 55 242 06-September-2019 G.Cosmo (geom-speci 56 06-September-2019 G.Cosmo (geom-specific-V10-05-17) 243 - Removed unnecessary forward declaration in G 57 - Removed unnecessary forward declaration in G4VFacet header. 244 58 245 29-August-2019 G.Cosmo (geom-speci 59 29-August-2019 G.Cosmo (geom-specific-V10-05-16) 246 - Minor c++11 revision and headers cleanup. Co 60 - Minor c++11 revision and headers cleanup. Code formatting. 247 - Use pre-increment wherever possible. 61 - Use pre-increment wherever possible. 248 62 249 19-August-2019 G.Lima (geom-speci 63 19-August-2019 G.Lima (geom-specific-V10-05-15) 250 - G4ExtrudedSolid: fixed a bug in DistanceToOu 64 - G4ExtrudedSolid: fixed a bug in DistanceToOut(), affecting extruded solids 251 defined off-center along the z-axis. 65 defined off-center along the z-axis. 252 66 253 19-August-2019 G.Cosmo (geom-speci 67 19-August-2019 G.Cosmo (geom-specific-V10-05-14) 254 - G4GenericTrap: fixed compilation warnings fo 68 - G4GenericTrap: fixed compilation warnings for variable shadowing on clang-8. 255 69 256 13-August-2019 G.Cosmo (geom-speci 70 13-August-2019 G.Cosmo (geom-specific-V10-05-13) 257 - Enabled wrappers for VecGeom implementation 71 - Enabled wrappers for VecGeom implementation of G4EllipticalTube, 258 G4EllipticalCone and G4Ellipsoid. 72 G4EllipticalCone and G4Ellipsoid. 259 73 260 10-July-2019 E.Tcherniaev (geom-speci 74 10-July-2019 E.Tcherniaev (geom-specific-V10-05-12) 261 - Fixed G4UExtrudedSolid::CreatePolyhedron(). 75 - Fixed G4UExtrudedSolid::CreatePolyhedron(). 262 Addressing visualization part of the problem 76 Addressing visualization part of the problem report #2171. 263 77 264 04-July-2019 G.Cosmo (geom-speci 78 04-July-2019 G.Cosmo (geom-specific-V10-05-11) 265 - Avoid defining kCarTolerance as 'static cons 79 - Avoid defining kCarTolerance as 'static const' in G4VFacet. 266 Addressing problem report #2172. 80 Addressing problem report #2172. 267 81 268 11-June-2019 E.Tcherniaev (geom-speci 82 11-June-2019 E.Tcherniaev (geom-specific-V10-05-10) 269 - Use GetVertices() instead of GetParametersLi 83 - Use GetVertices() instead of GetParametersList() in the wrapper G4UTet. 270 84 271 29-May-2019 G.Cosmo (geom-speci 85 29-May-2019 G.Cosmo (geom-specific-V10-05-09) 272 - Fixed minor Coverity defects. 86 - Fixed minor Coverity defects. 273 87 274 20-May-2019 G.Cosmo (geom-speci 88 20-May-2019 G.Cosmo (geom-specific-V10-05-08) 275 - Defined move constructor and move assignment 89 - Defined move constructor and move assignment operator for G4TriangularFacet. 276 90 277 14-May-2019 B.Morgan (geom-speci 91 14-May-2019 B.Morgan (geom-specific-V10-05-07) 278 - Add inclusion of new G4GeomTypes.hh header t 92 - Add inclusion of new G4GeomTypes.hh header to those headers allowing 279 VecGeom replacement. 93 VecGeom replacement. 280 - See also geommng-10-05-05 94 - See also geommng-10-05-05 281 95 282 23-April-2019 G.Cosmo (geom-speci 96 23-April-2019 G.Cosmo (geom-specific-V10-05-06) 283 - Modified G4PolyconeSide and G4PolyhedraSide 97 - Modified G4PolyconeSide and G4PolyhedraSide to use only trivial types for 284 MT splitted data in G4PlSideData and G4PhSid 98 MT splitted data in G4PlSideData and G4PhSideData respectively. 285 99 286 16-April-2019 G.Cosmo (geom-speci 100 16-April-2019 G.Cosmo (geom-specific-V10-05-05) 287 - Protected check in G4TwistTubsSide::Distance 101 - Protected check in G4TwistTubsSide::DistanceToPlane() withing debug flag. 288 102 289 4-April-2019 G.Cosmo (geom-speci 103 4-April-2019 G.Cosmo (geom-specific-V10-05-04) 290 - Enabled wrapper for VecGeom implementation o 104 - Enabled wrapper for VecGeom implementation of G4GenericPolycone. 291 105 292 15-February-2019 E.Tcherniaev (geom-speci 106 15-February-2019 E.Tcherniaev (geom-specific-V10-05-03) 293 - Accurate calculation of radical in G4Interse 107 - Accurate calculation of radical in G4IntersectingCone. 294 It addresses the problem report #2111. 108 It addresses the problem report #2111. 295 109 296 4-February-2019 G.Cosmo (geom-speci 110 4-February-2019 G.Cosmo (geom-specific-V10-05-02) 297 - Fix in G4EllipticalTube::CheckParameters() f 111 - Fix in G4EllipticalTube::CheckParameters() for typo in condition. 298 112 299 30-January-2019 G.Cosmo (geom-speci 113 30-January-2019 G.Cosmo (geom-specific-V10-05-01) 300 - Disabled precise computation of extent and u 114 - Disabled precise computation of extent and use simple bounding-box 301 in CalculateExtent() for G4Tet and G4Tessell 115 in CalculateExtent() for G4Tet and G4TessellatedSolid, to speed up 302 intialisation in setups with relatively comp 116 intialisation in setups with relatively complex meshes. 303 - Apply bounding-box calculation for extent al 117 - Apply bounding-box calculation for extent also for corresponding 304 VecGeom wrappers. 118 VecGeom wrappers. 305 119 306 24-January-2019 E.Tcherniaev (geom-speci 120 24-January-2019 E.Tcherniaev (geom-specific-V10-05-00) 307 - Completely revised, more robust and performa 121 - Completely revised, more robust and performant G4EllipticalTube; 308 new exhaustive test/testEllipticalTube.cc ba 122 new exhaustive test/testEllipticalTube.cc based on Shape Conventions. 309 123 310 20-September-2018 G.Cosmo (geom-speci 124 20-September-2018 G.Cosmo (geom-specific-V10-04-15) 311 - Make G4UPolycone wrapper inheriting from vec 125 - Make G4UPolycone wrapper inheriting from vecgeom::GenericUnplacedPolycone, 312 following the latest changes in VecGeom. 126 following the latest changes in VecGeom. 313 127 314 13-September-2018 G.Cosmo (geom-speci 128 13-September-2018 G.Cosmo (geom-specific-V10-04-14) 315 - G4UTessellatedSolid, G4UExtrudedSolid: remov 129 - G4UTessellatedSolid, G4UExtrudedSolid: removed leftover use of 316 UVector3 and replaced with U3Vector. 130 UVector3 and replaced with U3Vector. 317 131 318 23-August-2018 G.Cosmo (geom-speci 132 23-August-2018 G.Cosmo (geom-specific-V10-04-13) 319 - Enabled VecGeom wrapper for G4Tet. 133 - Enabled VecGeom wrapper for G4Tet. 320 134 321 10-August-2018 A.Gheata (geom-speci 135 10-August-2018 A.Gheata (geom-specific-V10-04-12) 322 - Make G4UHype wrapper inheriting from vecgeom 136 - Make G4UHype wrapper inheriting from vecgeom::GenericUnplacedHype, 323 following the latest changes in VecGeom. 137 following the latest changes in VecGeom. 324 138 325 12-July-2018 G.Cosmo (geom-speci 139 12-July-2018 G.Cosmo (geom-specific-V10-04-11) 326 - Removed G4SolidsWorkspacePool class. Adapted 140 - Removed G4SolidsWorkspacePool class. Adapted G4SolidsWorkspace to 327 use templated class G4TWorkspacePool. 141 use templated class G4TWorkspacePool. 328 - Coworks with tags in geometry/volumes, run a 142 - Coworks with tags in geometry/volumes, run and visualization/management. 329 143 330 25-Jun-2018 G.Cosmo (geom-speci 144 25-Jun-2018 G.Cosmo (geom-specific-V10-04-10) 331 - Use dynamic_cast to attempt fix for spurious 145 - Use dynamic_cast to attempt fix for spurious compilation warnings on 332 CentOS7/gcc-5.3 on G4UTessellatedSolid wrapp 146 CentOS7/gcc-5.3 on G4UTessellatedSolid wrapper. 333 147 334 17-May-2018 J.Madsen (geom-speci 148 17-May-2018 J.Madsen (geom-specific-V10-04-09) 335 - Updated "thread-local-static-var" model to 149 - Updated "thread-local-static-var" model to 336 "function-returning-thread-local-static-refe 150 "function-returning-thread-local-static-reference" model 337 which fixes Windows DLL + MT 151 which fixes Windows DLL + MT 338 152 339 11-April-2018 G.Cosmo (geom-speci 153 11-April-2018 G.Cosmo (geom-specific-V10-04-08) 340 - Replaced USOLIDS_LIBRARIES with VECGEOM_LIBR 154 - Replaced USOLIDS_LIBRARIES with VECGEOM_LIBRARIES in sources.cmake. 341 155 342 13-February-2018 E.Tcherniaev (geom-speci 156 13-February-2018 E.Tcherniaev (geom-specific-V10-04-07) 343 - Corrected conversion of input parameters to 157 - Corrected conversion of input parameters to internal structure (used for 344 caching for adoption in GDML persistency) in 158 caching for adoption in GDML persistency) in G4UPolycone and G4UPolyhedra 345 wrappers. 159 wrappers. 346 160 347 9-February-2018 G.Cosmo (geom-speci 161 9-February-2018 G.Cosmo (geom-specific-V10-04-06) 348 - Caching facets and vertices in G4UTessellate 162 - Caching facets and vertices in G4UTessellatedSolid wrapper for properly 349 treating indexing in facets. 163 treating indexing in facets. 350 164 351 31-January-2018 G.Cosmo (geom-speci 165 31-January-2018 G.Cosmo (geom-specific-V10-04-05) 352 - Corrected use of facets indeces in G4UTessel 166 - Corrected use of facets indeces in G4UTessellatedSolid for visualization. 353 - Minor cleanup in G4TessellatedSolid::CreateP 167 - Minor cleanup in G4TessellatedSolid::CreatePolyhedron(), no functional 354 changes. 168 changes. 355 169 356 15-January-2018 G.Cosmo (geom-speci 170 15-January-2018 G.Cosmo (geom-specific-V10-04-04) 357 - Added validity checks in G4UTessellatedSolid 171 - Added validity checks in G4UTessellatedSolid::AddFacet(). 358 172 359 11-January-2018 G.Cosmo (geom-speci 173 11-January-2018 G.Cosmo (geom-specific-V10-04-03) 360 - Added and enabled VecGeom wrapper for G4Tess 174 - Added and enabled VecGeom wrapper for G4TessellatedSolid. 361 Requires tags cmake-V10-04-01 and config-V10 175 Requires tags cmake-V10-04-01 and config-V10-04-00. 362 176 363 20-December-2017 G.Cosmo (geom-speci 177 20-December-2017 G.Cosmo (geom-specific-V10-04-02) 364 - Enabled VecGeom wrappers for G4ExtrudedSolid 178 - Enabled VecGeom wrappers for G4ExtrudedSolid and G4Hype. 365 179 366 13-December-2017 E.Tcherniaev (geom-speci 180 13-December-2017 E.Tcherniaev (geom-specific-V10-04-01) 367 - Removed redundant data initialistion in G4Ex << 181 - Removed redundant data initialistion in G4ExtrudedSolid constructors. 368 182 369 11-December-2017 E.Tcherniaev (geom-speci 183 11-December-2017 E.Tcherniaev (geom-specific-V10-04-00) 370 - Added missing initialisation of two data-mem 184 - Added missing initialisation of two data-members in copy-ctor and 371 assignment operator of G4ExtrudedSolid. Addr 185 assignment operator of G4ExtrudedSolid. Addressing problem report #2016. 372 186 373 22-November-2017 G.Cosmo (geom-specif 187 22-November-2017 G.Cosmo (geom-specific-V10-03-25) 374 - Fix in SurfaceNormal() for G4ExtrudedSolid t 188 - Fix in SurfaceNormal() for G4ExtrudedSolid to assure explicit 375 counting of the surfaces where the point is 189 counting of the surfaces where the point is placed on edg 376 190 377 2-November-2017 G.Cosmo (geom-specif 191 2-November-2017 G.Cosmo (geom-specific-V10-03-24) 378 - Fixed compilation warning introduced with la 192 - Fixed compilation warning introduced with last tag. 379 193 380 31-October-2017 E.Tcherniaev (geom-specif 194 31-October-2017 E.Tcherniaev (geom-specific-V10-03-23) 381 - Added specialised implementation for constru 195 - Added specialised implementation for constructs defining a non-convex right 382 prism in G4ExtrudedSolid. 196 prism in G4ExtrudedSolid. 383 197 384 20-October-2017 G.Cosmo (geom-specif 198 20-October-2017 G.Cosmo (geom-specific-V10-03-22) 385 - G4TessellatedSolid: print also solid's name 199 - G4TessellatedSolid: print also solid's name in StreamInfo(). 386 200 387 17-October-2017 G.Cosmo (geom-specif 201 17-October-2017 G.Cosmo (geom-specific-V10-03-21) 388 - Added VecGeom wrapper G4UHype for G4Hype, no 202 - Added VecGeom wrapper G4UHype for G4Hype, not yet activated, pending 389 fixes in VecGeom. 203 fixes in VecGeom. 390 204 391 16-October-2017 G.Cosmo (geom-specif 205 16-October-2017 G.Cosmo (geom-specific-V10-03-20) 392 - Temporarly disabled wrappers for G4Tet and G 206 - Temporarly disabled wrappers for G4Tet and G4GenericPolycone, pending 393 their corresponding implementation in VecGeo 207 their corresponding implementation in VecGeom. 394 208 395 28-September-2017 G.Cosmo (geom-specif 209 28-September-2017 G.Cosmo (geom-specific-V10-03-19) 396 - Corrected initialisation of polyhedra by ver 210 - Corrected initialisation of polyhedra by vertices in G4UPolyhdra wrapper 397 following the changes in VecGeom. 211 following the changes in VecGeom. 398 212 399 15-September-2017 G.Cosmo (geom-specif 213 15-September-2017 G.Cosmo (geom-specific-V10-03-18) 400 - G4SolidsWorkspacePool: use DLL export flag f 214 - G4SolidsWorkspacePool: use DLL export flag for static thread-local 401 symbol of the workspace. 215 symbol of the workspace. 402 216 403 12-September-2017 G.Cosmo (geom-specif 217 12-September-2017 G.Cosmo (geom-specific-V10-03-17) 404 - G4Voxelizer: directly set components for bou 218 - G4Voxelizer: directly set components for bounding-box instead of 405 recreating it in BuildBoundingBox(..). 219 recreating it in BuildBoundingBox(..). 406 220 407 8-September-2017 E.Tcherniaev (geom-specif 221 8-September-2017 E.Tcherniaev (geom-specific-V10-03-16) 408 - Added specialised implementation for constru 222 - Added specialised implementation for constructs defining a convex right 409 prism in G4ExtrudedSolid. 223 prism in G4ExtrudedSolid. 410 224 411 4-September-2017 G.Cosmo (geom-specif 225 4-September-2017 G.Cosmo (geom-specific-V10-03-15, 14) 412 - Temporarly disabled wrapper for extruded-sol 226 - Temporarly disabled wrapper for extruded-solid, pending implementation 413 of extruded-solid in VecGeom. 227 of extruded-solid in VecGeom. 414 228 415 16-August-2017 J.Allison (geom-specif 229 16-August-2017 J.Allison (geom-specific-V10-03-13) 416 - Twisted solids: Fixed bug in drawing polyhed 230 - Twisted solids: Fixed bug in drawing polyhedra with negative twist angle. 417 Addressing problem report #1995. 231 Addressing problem report #1995. 418 232 419 27-July-2017 E.Tcherniaev (geom-specif 233 27-July-2017 E.Tcherniaev (geom-specific-V10-03-12) 420 - G4EllipticalCone: corrected samping of rando 234 - G4EllipticalCone: corrected samping of random points on lateral surface in 421 function GetPointOnSurface(). 235 function GetPointOnSurface(). 422 236 423 24-July-2017 E.Tcherniaev (geom-specif 237 24-July-2017 E.Tcherniaev (geom-specific-V10-03-11) 424 - G4EllipticalCone: improved GetPointOnSurface 238 - G4EllipticalCone: improved GetPointOnSurface() to have uniform sampling of 425 points, using function G4RandomPointOnEllips 239 points, using function G4RandomPointOnEllipse(). 426 240 427 20-July-2017 E.Tcherniaev (geom-specif 241 20-July-2017 E.Tcherniaev (geom-specific-V10-03-10, 09) 428 - G4EllipticalCone: reviewed implementation of 242 - G4EllipticalCone: reviewed implementation of Inside(), DistanceToIn/Out(p), 429 SurfaceNormal() and GetPointOnSurface(); mad 243 SurfaceNormal() and GetPointOnSurface(); made more compact and performant. 430 Addressing problem report #1974. 244 Addressing problem report #1974. 431 245 432 15-June-2017 G.Cosmo (geom-specif 246 15-June-2017 G.Cosmo (geom-specific-V10-03-08) 433 - Enabled adapter also in G4UPolycone wrapper. 247 - Enabled adapter also in G4UPolycone wrapper. 434 - Added check on open solid for G4UPolyhedra w 248 - Added check on open solid for G4UPolyhedra wrapper. 435 249 436 6-June-2017 G.Cosmo (geom-specif 250 6-June-2017 G.Cosmo (geom-specific-V10-03-07) 437 - Enable adapter for VecGeom shapes in G4U* wr 251 - Enable adapter for VecGeom shapes in G4U* wrappers for: paraboloid, 438 polyhedra and GenericTrap. From now on, wrap 252 polyhedra and GenericTrap. From now on, wrappers depends directly on 439 VecGeom shapes implementation. USolids API i 253 VecGeom shapes implementation. USolids API is deprecated and no longer 440 supported. 254 supported. 441 255 442 24-May-2017 G.Cosmo (geom-specif 256 24-May-2017 G.Cosmo (geom-specific-V10-03-06) 443 - Renamed ambiguous name Extent() in all solid 257 - Renamed ambiguous name Extent() in all solids and G4U* wrappers to 444 BoundingLimits(). Change required in order t 258 BoundingLimits(). Change required in order to avoid signature conflict 445 with VecGeom in G4U* wrappers. 259 with VecGeom in G4U* wrappers. 446 Requires tag geommng-V10-03-16. 260 Requires tag geommng-V10-03-16. 447 261 448 11-May-2017 G.Cosmo (geom-specif 262 11-May-2017 G.Cosmo (geom-specific-V10-03-05) 449 - Removed potential race condition in G4VTwist 263 - Removed potential race condition in G4VTwistSurface::AmIOnLeftSide(). 450 Addressing problem report #1972. 264 Addressing problem report #1972. 451 265 452 7-April-2017 G.Cosmo (geom-specif 266 7-April-2017 G.Cosmo (geom-specific-V10-03-04) 453 - Renamed G4SurfaceVoxelizer to G4Voxelizer an 267 - Renamed G4SurfaceVoxelizer to G4Voxelizer and extended to support 454 voxelisation of shapes in 3D space. Adapted 268 voxelisation of shapes in 3D space. Adapted G4TessellatedSolid accordingly. 455 269 456 13-March-2017 G.Cosmo (geom-specif 270 13-March-2017 G.Cosmo (geom-specific-V10-03-03) 457 - G4SolidsWorkspacePool: implemented CleanUpAn 271 - G4SolidsWorkspacePool: implemented CleanUpAndDestroyAllWorkspaces(), 458 to be called by worker threads. Removed decl 272 to be called by worker threads. Removed declaration (i.e. not implemented) 459 of protected method ReleaseAndDestroyWorkspa 273 of protected method ReleaseAndDestroyWorkspace(). 460 274 461 2-March-2017 E.Tcherniaev (geom-specif 275 2-March-2017 E.Tcherniaev (geom-specific-V10-03-02) 462 - Fixed possible rounding off error in calcula 276 - Fixed possible rounding off error in calculation of 'astep' (max angle 463 for one step) in CalculateExtent() for G4Pol 277 for one step) in CalculateExtent() for G4Polycone, G4GenericPolycone 464 and related USolids wrappers. 278 and related USolids wrappers. 465 279 466 27-February-2017 E.Tcherniaev (geom-specif 280 27-February-2017 E.Tcherniaev (geom-specific-V10-03-01) 467 - Revised implementation of GetCubicVolume() a 281 - Revised implementation of GetCubicVolume() and GetSurfaceArea() for 468 G4EllipticalTube, to return exact values. 282 G4EllipticalTube, to return exact values. 469 - Revised implementation of GetSurfaceArea() f 283 - Revised implementation of GetSurfaceArea() for G4EllipticalCone, to 470 return exact value; moved both GetCubicVolum 284 return exact value; moved both GetCubicVolume() and GetSurfaceArea() to 471 be not inline. 285 be not inline. 472 286 473 13-December-2016 G.Cosmo (geom-specif 287 13-December-2016 G.Cosmo (geom-specific-V10-03-00) 474 - Correction in G4UExtrudedSolid to signature 288 - Correction in G4UExtrudedSolid to signature for CalculateExtent(). 475 Fixes issue of undefined symbol if extruded- 289 Fixes issue of undefined symbol if extruded-solid not included in the 476 list of VecGeom wrappers to activate. 290 list of VecGeom wrappers to activate. 477 291 478 30-November-2016 E.Tcherniaev (geom-specif 292 30-November-2016 E.Tcherniaev (geom-specific-V10-02-25) 479 - Call RemoveRedundantVertices() from G4GeomTo 293 - Call RemoveRedundantVertices() from G4GeomTools in CalculateExtent() 480 for G4Polycone, G4Polyhedra and related USol 294 for G4Polycone, G4Polyhedra and related USolids wrappers. 481 - Fix in G4Parabolid and G4UParaboloid for cor 295 - Fix in G4Parabolid and G4UParaboloid for correct computation of extent. 482 296 483 18-November-2016 E.Tcherniaev (geom-specif 297 18-November-2016 E.Tcherniaev (geom-specific-V10-02-24) 484 - Added consistency checks for extent computat 298 - Added consistency checks for extent computation in USolids wrappers. 485 - Fix in cached parameters in G4UPolyhedra. 299 - Fix in cached parameters in G4UPolyhedra. 486 300 487 10-November-2016 G.Cosmo (geom-specif 301 10-November-2016 G.Cosmo (geom-specific-V10-02-23) 488 - G4UPolyhedra re-introduced new implementatio 302 - G4UPolyhedra re-introduced new implementation of CalculateExtent() using 489 G4BoundingEnvelope and extended wrapper to c 303 G4BoundingEnvelope and extended wrapper to cache corners and start/end 490 Phi parameters, to overcome issues in VecGeo 304 Phi parameters, to overcome issues in VecGeom on treatment of angles. 491 305 492 10-November-2016 E.Tcherniaev (geom-specif 306 10-November-2016 E.Tcherniaev (geom-specific-V10-02-22) 493 - Added caching of corners and implementation 307 - Added caching of corners and implementation of GetCorner() in G4UPolycone 494 in order to assure correct translation. 308 in order to assure correct translation. 495 - Withdrawn changes in G4UPolyhedra introduced 309 - Withdrawn changes in G4UPolyhedra introduced in tag geom-specific-V10-02-16 496 until understood proper conversion from VecG 310 until understood proper conversion from VecGeom. 497 311 498 7-November-2016 E.Tcherniaev (geom-specifi 312 7-November-2016 E.Tcherniaev (geom-specific-V10-02-21) 499 - Correction in G4EllipticalCone::DistanceToOu 313 - Correction in G4EllipticalCone::DistanceToOut(p) to make it more accurate. 500 - Added optional debug flag G4BBOX_EXTENT in G 314 - Added optional debug flag G4BBOX_EXTENT in GNUMake build to compare 501 extent calculation by simply using bounding- 315 extent calculation by simply using bounding-box. 502 316 503 3-November-2016 G.Cosmo (geom-specifi 317 3-November-2016 G.Cosmo (geom-specific-V10-02-20, 19) 504 - Fix in G4PolyPhiFace for potential unitialis 318 - Fix in G4PolyPhiFace for potential unitialised data in Inside(). 505 319 506 31-October-2016 E.Tcherniaev (geom-specifi 320 31-October-2016 E.Tcherniaev (geom-specific-V10-02-18) 507 - Re-implemented CalculateExtent() to make use 321 - Re-implemented CalculateExtent() to make use of G4BoundingEnvelope and 508 removed no-longer used method CreateRotatedV 322 removed no-longer used method CreateRotatedVertices() in G4Polyhedra, 509 G4EllipticalCone, G4Polycone, G4Paraboloid, 323 G4EllipticalCone, G4Polycone, G4Paraboloid, G4ExtrudedSolid, G4Hype, 510 G4GenericPolycone, G4TessellatedSolid, G4Twi 324 G4GenericPolycone, G4TessellatedSolid, G4TwistedTubs and related USolids 511 wrappers. 325 wrappers. 512 - Use G4RandFlat instead of RandFlat. 326 - Use G4RandFlat instead of RandFlat. 513 327 514 21-October-2016 G.Cosmo (geom-specifi 328 21-October-2016 G.Cosmo (geom-specific-V10-02-17) 515 - Moved initialisation of G4GeomSplitter threa 329 - Moved initialisation of G4GeomSplitter thread-local data to be inline 516 along with generic template type. 330 along with generic template type. 517 Fixing compilation/linking errors on clang-3 331 Fixing compilation/linking errors on clang-3.9 and XCode-8 on MacOS. 518 332 519 19-October-2016 E.Tcherniaev (geom-speci 333 19-October-2016 E.Tcherniaev (geom-specific-V10-02-16) 520 - Reimplemented CalculateExtent() in G4Polycon 334 - Reimplemented CalculateExtent() in G4Polycone, G4Polyhedra, G4GenericPolycone 521 and associated USolids wrappers, to make use 335 and associated USolids wrappers, to make use of G4BoundingEnvelope. 522 336 523 5-October-2016 E.Tcherniaev (geom-speci 337 5-October-2016 E.Tcherniaev (geom-specific-V10-02-15, 14) 524 - Reimplemented CalculateExtent() in G4Tet, G4 338 - Reimplemented CalculateExtent() in G4Tet, G4UTet, G4GenericTrap, 525 G4UGenericTrap, G4EllipticalTube and G4VTwis 339 G4UGenericTrap, G4EllipticalTube and G4VTwistedFaceted, to make use 526 of G4BoundingEnvelope; removed no-longer use 340 of G4BoundingEnvelope; removed no-longer used method CreateRotatedVertices(). 527 341 528 20-September-2016 G.Cosmo (geom-speci 342 20-September-2016 G.Cosmo (geom-specific-V10-02-13) 529 - Moved accessors/modifiers for splitter data 343 - Moved accessors/modifiers for splitter data to non-inline in 530 G4PolyhedraSide and G4PolyconeSide. 344 G4PolyhedraSide and G4PolyconeSide. 531 Explicitly initialise G4GeomSplitter data in 345 Explicitly initialise G4GeomSplitter data in G4SolidsWorkspace 532 translation unit. 346 translation unit. 533 Fixing compilation/linking errors on clang-3 347 Fixing compilation/linking errors on clang-3.9 and XCode-8 on MacOS. 534 348 535 06-July-2016 E.Tcherniaev (geom-speci 349 06-July-2016 E.Tcherniaev (geom-specific-V10-02-12) 536 - Fixed monir typo in function Create() for G4 350 - Fixed monir typo in function Create() for G4Polycone, G4Polyhedra and 537 G4GenericPolycone. 351 G4GenericPolycone. 538 Fixed minor typos in G4GenericTrap::SurfaceN 352 Fixed minor typos in G4GenericTrap::SurfaceNormal() and 539 G4VTwistSurface::CurrentStatus::ResetfDone() 353 G4VTwistSurface::CurrentStatus::ResetfDone(). 540 Issues detected by PVS-Studio static code an 354 Issues detected by PVS-Studio static code analyzer. 541 Addressing problem report #1876. 355 Addressing problem report #1876. 542 356 543 24-May-2016 G.Cosmo (geom-speci 357 24-May-2016 G.Cosmo (geom-specific-V10-02-11) 544 - Correction in G4UExtrudedSolid for definitio 358 - Correction in G4UExtrudedSolid for definition of CreatePolyhedron(). 545 359 546 20-May-2016 G.Cosmo (geom-speci 360 20-May-2016 G.Cosmo (geom-specific-V10-02-10) 547 - Moved accessors and modifiers in USolids wra 361 - Moved accessors and modifiers in USolids wrappers to be not inlined. 548 Required modification in order to allow corr 362 Required modification in order to allow correct dispatching to VecGeom 549 types. 363 types. 550 364 551 15-Apr-2016 G.Cosmo (geom-speci 365 15-Apr-2016 G.Cosmo (geom-specific-V10-02-09) 552 - Added flag in USolids wrappers for partial u 366 - Added flag in USolids wrappers for partial use of USolids/VecGeom types. 553 367 554 31-Mar-2016 G.Cosmo (geom-speci 368 31-Mar-2016 G.Cosmo (geom-specific-V10-02-08, 07) 555 - Added overloaded CreatePolyhedron() method t 369 - Added overloaded CreatePolyhedron() method to USolids wrappers. 556 It is now possible to visualize supported Ve 370 It is now possible to visualize supported VecGeom shapes. 557 - Added implementation of CreatePolyhedron() i 371 - Added implementation of CreatePolyhedron() in UExtrudedSolid wrapper. 558 372 559 10-Mar-2016 G.Cosmo (geom-speci 373 10-Mar-2016 G.Cosmo (geom-specific-V10-02-06) 560 - Added overloaded GetEntityType() method to U 374 - Added overloaded GetEntityType() method to USolids wrappers. 561 375 562 07-Mar-2016 E.Tcherniaev (geom-speci 376 07-Mar-2016 E.Tcherniaev (geom-specific-V10-02-05) 563 - Fix in G4IntersectingCone for smaller precis 377 - Fix in G4IntersectingCone for smaller precision constant in LineHitsCone1() 564 and LineHitsCone2(). Fixes issue observed in 378 and LineHitsCone2(). Fixes issue observed in G4GenericPolycone. 565 Addressing problem report #1794. 379 Addressing problem report #1794. 566 380 567 03-Mar-2016 G.Cosmo (geom-speci 381 03-Mar-2016 G.Cosmo (geom-specific-V10-02-04) 568 - Fixed compilation warnings for potential uni 382 - Fixed compilation warnings for potential uninitialised values in 569 G4ExtrudedSolid::CheckPolygon() function int 383 G4ExtrudedSolid::CheckPolygon() function introduced in previous tag. 570 384 571 03-Mar-2016 E.Tcherniaev (geom-speci 385 03-Mar-2016 E.Tcherniaev (geom-specific-V10-02-03) 572 - Added 'const' qualifier for methods in G4Ext 386 - Added 'const' qualifier for methods in G4ExtrudedSolid. 573 Added CheckPolygon() to remove collinear and 387 Added CheckPolygon() to remove collinear and coincident points from polygons. 574 - G4QuadrangularFacet: added exhaustive tests 388 - G4QuadrangularFacet: added exhaustive tests in constructor to catch potential 575 problems with a quadrangular facet: collinea 389 problems with a quadrangular facet: collinear vertices, non planar surface, 576 degenerate, concave or self intersecting qua 390 degenerate, concave or self intersecting quadrilateral. 577 - G4TriangularFacet: Improved test in construc 391 - G4TriangularFacet: Improved test in constructor to detect degenerate (too 578 small or too narrow) triangles. 392 small or too narrow) triangles. 579 393 580 25-Feb-2016 E.Tcherniaev (geom-speci 394 25-Feb-2016 E.Tcherniaev (geom-specific-V10-02-02) 581 - Correction in G4ExtrudedSolid::AddGeneralPol 395 - Correction in G4ExtrudedSolid::AddGeneralPolygonFacets() for precision 582 treatment in construction of tessels to avoi 396 treatment in construction of tessels to avoid cases of collinear points 583 and consequent degenerating triangles. 397 and consequent degenerating triangles. 584 Address problem report #1777. 398 Address problem report #1777. 585 - Use pre-computed kCarToleranceHalf constant 399 - Use pre-computed kCarToleranceHalf constant in G4ExtrudedSolid, now 586 protected in G4TessellatedSolid. 400 protected in G4TessellatedSolid. 587 - Improved algorithms for computation of area 401 - Improved algorithms for computation of area in G4TriangularFacet and 588 G4QuadrangularFacet. Added post-const qualif 402 G4QuadrangularFacet. Added post-const qualifier to GetArea(). 589 403 590 16-Feb-2016 G.Cosmo (geom-speci 404 16-Feb-2016 G.Cosmo (geom-specific-V10-02-01) 591 - Revised implementation for GetSurfaceArea() 405 - Revised implementation for GetSurfaceArea() and GetCubicVolume() in 592 G4GenericTrap (E.Tcherniaev). 406 G4GenericTrap (E.Tcherniaev). 593 - Protected debug warning in G4GenericTrap::Su 407 - Protected debug warning in G4GenericTrap::SurfaceNormal() within G4SPECSDEBUG. 594 408 595 02-Feb-2016 E.Tcherniaev (geom-speci 409 02-Feb-2016 E.Tcherniaev (geom-specific-V10-02-00) 596 - Fix in G4GenericTrap for compuation of exten 410 - Fix in G4GenericTrap for compuation of extent. 597 Addressing problem report #1809. 411 Addressing problem report #1809. 598 - Use dot() in formula for computation of GetC 412 - Use dot() in formula for computation of GetCubicVolume() in 599 G4TessellatedSolid. 413 G4TessellatedSolid. 600 414 601 18-Nov-2015 G.Cosmo (geom-speci 415 18-Nov-2015 G.Cosmo (geom-specific-V10-01-15) 602 - Added specialised implementation for GetCubi 416 - Added specialised implementation for GetCubicVolume() in 603 G4TessellatedSolid (J.Allison). 417 G4TessellatedSolid (J.Allison). 604 418 605 29-Oct-2015 G.Cosmo (geom-speci 419 29-Oct-2015 G.Cosmo (geom-specific-V10-01-14) 606 - Added debug printouts within G4SPECSDEBUG in 420 - Added debug printouts within G4SPECSDEBUG in G4TessellatedSolid for 607 DistanceToIn/Out(p,v) to identify potential 421 DistanceToIn/Out(p,v) to identify potential wrong responses. 608 422 609 26-Oct-2015 G.Cosmo (geom-speci 423 26-Oct-2015 G.Cosmo (geom-specific-V10-01-13) 610 - Removed redundant condition in G4Polyhedra a 424 - Removed redundant condition in G4Polyhedra and G4polycone 611 SetOriginalParameters() method. 425 SetOriginalParameters() method. 612 426 613 23-Oct-2015 G.Cosmo (geom-speci 427 23-Oct-2015 G.Cosmo (geom-specific-V10-01-12) 614 - G4PolyhedraSide: moved internal struct defin 428 - G4PolyhedraSide: moved internal struct definitions to public section 615 to overcome deficiencies in object-persisten 429 to overcome deficiencies in object-persistency class parsing. 616 430 617 07-Oct-2015 G.Cosmo (geom-speci 431 07-Oct-2015 G.Cosmo (geom-specific-V10-01-11) 618 - Protected compilation of USolid wrappers wit 432 - Protected compilation of USolid wrappers with G4GEOM_USE_USOLIDS flag. 619 433 620 01-Sep-2015 G.Cosmo (geom-speci 434 01-Sep-2015 G.Cosmo (geom-specific-V10-01-10) 621 - Corrected conditional compilation flag in G4 435 - Corrected conditional compilation flag in G4UParaboloid.cc. 622 436 623 31-Aug-2015 G.Cosmo (geom-speci 437 31-Aug-2015 G.Cosmo (geom-specific-V10-01-09) 624 - Added USolids/VecGeom wrapper for G4Parabolo 438 - Added USolids/VecGeom wrapper for G4Paraboloid (G.Lima/FNAL). 625 Activated only for external USolids/VecGeom 439 Activated only for external USolids/VecGeom installation. 626 440 627 13-Aug-2015 G.Cosmo (geom-speci 441 13-Aug-2015 G.Cosmo (geom-specific-V10-01-08) 628 - Checked for potential never-ending loops. 442 - Checked for potential never-ending loops. 629 No issues found, only added annotations. 443 No issues found, only added annotations. 630 444 631 05-Aug-2015 G.Cosmo (geom-speci 445 05-Aug-2015 G.Cosmo (geom-specific-V10-01-07) 632 - Minor code cleanup in G4SurfaceVoxelizer. 446 - Minor code cleanup in G4SurfaceVoxelizer. 633 447 634 03-Mar-2015 G.Cosmo (geom-speci 448 03-Mar-2015 G.Cosmo (geom-specific-V10-01-06) 635 - Use accessors x(), y() and z() from UVector3 449 - Use accessors x(), y() and z() from UVector3, instead of directly accessing 636 its data-members. Co-work with tag "geom-uso 450 its data-members. Co-work with tag "geom-usolids-V10-01-09". 637 451 638 23-Feb-2015 T.Nikitina (geom-speci 452 23-Feb-2015 T.Nikitina (geom-specific-V10-01-05) 639 - Fix in SetOriginalParameters() for G4Polycon 453 - Fix in SetOriginalParameters() for G4Polycone and G4Polyhedra, in case 640 of presence of 'rings' structures. Addressin 454 of presence of 'rings' structures. Addressing problem report #1705. 641 455 642 26-Jan-2015 G.Cosmo (geom-speci 456 26-Jan-2015 G.Cosmo (geom-specific-V10-01-04) 643 - Renamed DistanceAwayForInside() to DistanceA 457 - Renamed DistanceAwayForInside() to DistanceAway() and use polymorphism. 644 458 645 26-Jan-2015 T.Nikitina (geom-speci 459 26-Jan-2015 T.Nikitina (geom-specific-V10-01-03, 02) 646 - Added special method for Inside 'DistanceAwa << 460 - Added special method for Inside 'DistanceAwayForInside()' in order to fix 647 precision problem of calculation of Distance << 461 precision problem of calculation of DistanceToSide() in G4PolyconeSide. 648 462 649 21-Jan-2015 T.Nikitina (geom-speci 463 21-Jan-2015 T.Nikitina (geom-specific-V10-01-01) 650 - Fixed triangularisation method AddGeneralPOl 464 - Fixed triangularisation method AddGeneralPOlygoneFacets() in 651 G4ExtrudedSolid by avoiding flat triangles. 465 G4ExtrudedSolid by avoiding flat triangles. 652 - Added warning message to G4TriangularFacet c 466 - Added warning message to G4TriangularFacet constructor if Area is 0; 653 i.e., case of flat triangle. 467 i.e., case of flat triangle. 654 - Addressing problem report #1703. 468 - Addressing problem report #1703. 655 469 656 12-Dec-2014 G.Cosmo (geom-speci 470 12-Dec-2014 G.Cosmo (geom-specific-V10-01-00) 657 - Use canonical form for operator=() in G4Poly 471 - Use canonical form for operator=() in G4PolyconeHistorical and 658 G4PolyhedraHistorical. 472 G4PolyhedraHistorical. 659 473 660 17-Sep-2014 G.Cosmo (geom-speci 474 17-Sep-2014 G.Cosmo (geom-specific-V10-00-11) 661 - Added wrappers for UExtrudedSolid and UGener 475 - Added wrappers for UExtrudedSolid and UGenericTrap; adapted switches to 662 original G4 types accordingly. Requires tag 476 original G4 types accordingly. Requires tag "geom-usolids-V10-00-16". 663 477 664 01-Sep-2014 G.Cosmo (geom-speci 478 01-Sep-2014 G.Cosmo (geom-specific-V10-00-10) 665 - Fixed use of polyhedron pointer, to avoid ra 479 - Fixed use of polyhedron pointer, to avoid race condition in MT 666 when parameterised volumes are visualised. 480 when parameterised volumes are visualised. 667 481 668 22-May-2014 G.Cosmo (geom-speci 482 22-May-2014 G.Cosmo (geom-specific-V10-00-09) 669 - Added protection in generic constructor of G 483 - Added protection in generic constructor of G4Polyhedra for the case when 670 improper number of sides is given as input. 484 improper number of sides is given as input. 671 485 672 10-Apr-2014 G.Cosmo (geom-speci 486 10-Apr-2014 G.Cosmo (geom-specific-V10-00-08) 673 - Get rid of deprecated 'register' storage cla 487 - Get rid of deprecated 'register' storage class specifier in source files. 674 488 675 31-Mar-2014 G.Cosmo (geom-speci 489 31-Mar-2014 G.Cosmo (geom-specific-V10-00-07) 676 - Fixed signature of assignment operator to G4 490 - Fixed signature of assignment operator to G4VCSGfaceted. 677 491 678 31-Mar-2014 G.Cosmo (geom-speci 492 31-Mar-2014 G.Cosmo (geom-specific-V10-00-06) 679 - Fixed signature of assignment operator to G4 493 - Fixed signature of assignment operator to G4Polycone, G4Polyhedra and 680 and G4GenericPolycone. 494 and G4GenericPolycone. 681 495 682 05-Mar-2014 G.Cosmo (geom-speci 496 05-Mar-2014 G.Cosmo (geom-specific-V10-00-05) 683 - Fixed proper handling of polyhedron pointer 497 - Fixed proper handling of polyhedron pointer in solids, to avoid memory 684 leak for visualization of parameterised volu 498 leak for visualization of parameterised volumes. 685 499 686 12-Feb-2014 G.Cosmo (geom-speci 500 12-Feb-2014 G.Cosmo (geom-specific-V10-00-04) 687 - Simply reset polyhedron pointer to zero for 501 - Simply reset polyhedron pointer to zero for modifiers of G4U* wrappers 688 in parameterisation. Resolves crash in MT vi << 502 in parameterisation. Resolves crash in MT visualization when using USolids. 689 503 690 12-Feb-2014 G.Cosmo (geom-speci 504 12-Feb-2014 G.Cosmo (geom-specific-V10-00-03 [and -02]) 691 - Added correct cloning mechanism in G4U* wrap 505 - Added correct cloning mechanism in G4U* wrappers. 692 Addressing problem report #1553. 506 Addressing problem report #1553. 693 507 694 18-Dec-2013 T.Nikitina (geom-speci 508 18-Dec-2013 T.Nikitina (geom-specific-V10-00-01) 695 - Fix in G4GenericTrap::InsidePolygone() to ch 509 - Fix in G4GenericTrap::InsidePolygone() to check if p lies between the two 696 extremes of the segment. Addressing problem 510 extremes of the segment. Addressing problem report #1541. 697 511 698 17-Dec-2013 G.Cosmo (geom-speci 512 17-Dec-2013 G.Cosmo (geom-specific-V10-00-00) 699 - Corrected left-over debug printout in G4Poly 513 - Corrected left-over debug printout in G4Polycone::SetOriginalParameters(). 700 514 701 04-Dec-2013 G.Cosmo (geom-speci 515 04-Dec-2013 G.Cosmo (geom-specific-V09-06-36) 702 - Corrected left-over debug printout in G4Poly 516 - Corrected left-over debug printout in G4Polyhedra::SetOriginalParameters(). 703 517 704 22-Nov-2013 G.Cosmo (geom-speci 518 22-Nov-2013 G.Cosmo (geom-specific-V09-06-35) 705 - Correction to USolids wrappers for proper se 519 - Correction to USolids wrappers for proper setting of name to base class. 706 520 707 19-Nov-2013 J.Apostolakis (geom-speci 521 19-Nov-2013 J.Apostolakis (geom-specific-V09-06-34) 708 - Fix for issue identified by Coverity: fixed 522 - Fix for issue identified by Coverity: fixed implementation of 709 G4SolidsWorkspacePool singleton. 523 G4SolidsWorkspacePool singleton. 710 524 711 20-Nov-2013 T.Mikitina (geom-speci 525 20-Nov-2013 T.Mikitina (geom-specific-V09-06-33) 712 - Fixed Coverity defects to USolids wrappers. 526 - Fixed Coverity defects to USolids wrappers. 713 527 714 14-Nov-2013 G.Cosmo (geom-speci 528 14-Nov-2013 G.Cosmo (geom-specific-V09-06-32, 31) 715 - Enabled use of Reset() in G4UPolycone. 529 - Enabled use of Reset() in G4UPolycone. 716 - Corrections to G4UPolycone and G4UPolyhedra 530 - Corrections to G4UPolycone and G4UPolyhedra to allow for visualization 717 of parameterisations on these solids. 531 of parameterisations on these solids. 718 532 719 13-Nov-2013 G.Cosmo (geom-speci 533 13-Nov-2013 G.Cosmo (geom-specific-V09-06-30) 720 - Correction to G4UTet and G4UGenericPolycone 534 - Correction to G4UTet and G4UGenericPolycone to explicitly include 721 symbols re-definitions from G4Tet and G4Gene 535 symbols re-definitions from G4Tet and G4GenericPolycone respectively. 722 536 723 12-Nov-2013 G.Cosmo (geom-speci 537 12-Nov-2013 G.Cosmo (geom-specific-V09-06-29) 724 - Added dummy method G4UPolycone::Reset(). 538 - Added dummy method G4UPolycone::Reset(). 725 NOTE: Required related implementation (curre 539 NOTE: Required related implementation (currently missing!) in UPolycone. 726 540 727 12-Nov-2013 G.Cosmo (geom-speci 541 12-Nov-2013 G.Cosmo (geom-specific-V09-06-28) 728 - Correction to USolids switch mechanism for G 542 - Correction to USolids switch mechanism for G4Polycone. 729 << 543 730 08-Nov-2013 J.Apostolakis (geom-speci 544 08-Nov-2013 J.Apostolakis (geom-specific-V09-06-27) 731 - G4SolidsWorkspace: cleanup of verbosity. 545 - G4SolidsWorkspace: cleanup of verbosity. 732 Reduced verbosity by making it optional. << 546 Reduced verbosity by making it optional. 733 Added Set/Get Verbose methods to toggle and 547 Added Set/Get Verbose methods to toggle and view it. 734 Added parameter to constructor for verbosity 548 Added parameter to constructor for verbosity (default=off). 735 549 736 07-Nov-2013 G.Cosmo (geom-specific-V09-06-26) 550 07-Nov-2013 G.Cosmo (geom-specific-V09-06-26) 737 - Moved wrappers from usolids module. 551 - Moved wrappers from usolids module. 738 Fixed internal dispatcher method for paramet 552 Fixed internal dispatcher method for parameterisation in all wrappers. 739 - Added switching mechanism for G4GenericPolyc 553 - Added switching mechanism for G4GenericPolycone, G4Polycone, G4Polyhedra 740 and G4Tet. 554 and G4Tet. 741 555 742 06-Nov-2013 G.Cosmo (geom-specific-V09-06-25) 556 06-Nov-2013 G.Cosmo (geom-specific-V09-06-25) 743 - Added switch mechanism for USolids (G4Generi 557 - Added switch mechanism for USolids (G4GenericPolycone, G4Polycone, 744 G4Polyhedra, G4Tet). Renamed related G4 type 558 G4Polyhedra, G4Tet). Renamed related G4 types to 'G4O'. 745 - Moved wrappers from USolids module. 559 - Moved wrappers from USolids module. 746 560 747 01-Nov-2013 G.Cosmo (geom-specific-V09-06-24) 561 01-Nov-2013 G.Cosmo (geom-specific-V09-06-24) 748 - Corrected CMake script. 562 - Corrected CMake script. 749 563 750 31-Oct-2013 G.Cosmo (geom-specific-V09-06-23) 564 31-Oct-2013 G.Cosmo (geom-specific-V09-06-23) 751 - Fix for in G4Polyhedra::SetOriginalParameter 565 - Fix for in G4Polyhedra::SetOriginalParameters(). (T.Nikitina) 752 - Moved G4PolyconeHistorical and G4PolyhedraHi 566 - Moved G4PolyconeHistorical and G4PolyhedraHistorical in separate 753 translation units. 567 translation units. 754 568 755 29-Oct-2013 T.Nikitina (geom-specific-V09-06- 569 29-Oct-2013 T.Nikitina (geom-specific-V09-06-22) 756 - Split G4Polycone for polycones with decreasi 570 - Split G4Polycone for polycones with decreasing Z-sections. 757 Introduced new class G4GenericPolycone. 571 Introduced new class G4GenericPolycone. 758 - Fixed conversion of generic construct for G4 572 - Fixed conversion of generic construct for G4Polyhedra. 759 573 760 17-Oct-2013 J.Apostolakis/A.Dotti (geom-speci 574 17-Oct-2013 J.Apostolakis/A.Dotti (geom-specific-V09-06-21) 761 - Cleanup of code for workspace. 575 - Cleanup of code for workspace. 762 576 763 16-Oct-2013 J.Apostolakis/A.Dotti (geom-speci 577 16-Oct-2013 J.Apostolakis/A.Dotti (geom-specific-V09-06-20) 764 - Created G4SolidsWorkspacePool class, to mana 578 - Created G4SolidsWorkspacePool class, to manage Workspaces 765 Fixed Singleton G4SolidsWorkspacePool for th << 579 Fixed Singleton G4SolidsWorkspacePool for thread safe creation of object. 766 580 767 04-Oct-2013 J.Apostolakis (geom-specific-V09- 581 04-Oct-2013 J.Apostolakis (geom-specific-V09-06-19) 768 - Retagged. 582 - Retagged. 769 NOTE: requires tag "geommng-V09-06-12" and c 583 NOTE: requires tag "geommng-V09-06-12" and co-works with "geomvol-V09-06-13". 770 584 771 04-Oct-2013 J.Apostolakis (geom-specific-V09- 585 04-Oct-2013 J.Apostolakis (geom-specific-V09-06-18) 772 - Created G4SolidsWorkspace class, to create, 586 - Created G4SolidsWorkspace class, to create, initialize and destroy 773 per-thread state of PolyCone Sides and PolyH 587 per-thread state of PolyCone Sides and PolyHedra Sides. 774 588 775 27-Aug-2013 G.Cosmo (geom-specific-V09-06-17) 589 27-Aug-2013 G.Cosmo (geom-specific-V09-06-17) 776 - Enabled G4Ellipsoid for parameterisation. 590 - Enabled G4Ellipsoid for parameterisation. 777 591 778 14-Aug-2013 G.Cosmo (geom-specific-V09-06-16) 592 14-Aug-2013 G.Cosmo (geom-specific-V09-06-16) 779 - Move function-scoped 'static const' values f 593 - Move function-scoped 'static const' values for half-tolerances to private 780 data members of classes, to overcome false-p 594 data members of classes, to overcome false-positive race-conditions defects 781 reported by Valgrind in MT mode. 595 reported by Valgrind in MT mode. 782 - Fix in G4TessellatedSolid::DistanceToIn(p,v) 596 - Fix in G4TessellatedSolid::DistanceToIn(p,v) for specific cases where points 783 are located near surface (T.Nikitina). 597 are located near surface (T.Nikitina). 784 598 785 16-Jul-2013 M.Gayer (geom-specific-V09-06-15) 599 16-Jul-2013 M.Gayer (geom-specific-V09-06-15) 786 - Fix in G4SurfaceVoxelizer affecting tessella 600 - Fix in G4SurfaceVoxelizer affecting tessellated-solid (and extruded-solid) 787 for wrong computation of DistanceToIn(p,v) f 601 for wrong computation of DistanceToIn(p,v) for points outside, when 788 optimisation is active. 602 optimisation is active. 789 603 790 11-Jul-2013 G.Cosmo (geom-specific-V09-06-14) 604 11-Jul-2013 G.Cosmo (geom-specific-V09-06-14) 791 - Fixed compilation warning in G4Polycone on M 605 - Fixed compilation warning in G4Polycone on MacOS/clang. 792 606 793 09-Jul-2013 T.Nikitina (geom-specific-V09-06- 607 09-Jul-2013 T.Nikitina (geom-specific-V09-06-13) 794 - Extended method SetOriginalParameters() in G 608 - Extended method SetOriginalParameters() in G4Polycone in order to handle 795 all possible cases of conversion of generic 609 all possible cases of conversion of generic polycone to polycone with 796 (Rmin,Rmaz,Z) parameters. 610 (Rmin,Rmaz,Z) parameters. 797 Addressing problem report #1462. 611 Addressing problem report #1462. 798 612 799 03-Jun-2013 G.Cosmo (geom-specific-V09-06-12) 613 03-Jun-2013 G.Cosmo (geom-specific-V09-06-12) 800 - Fixed minor Coverity defect in G4PolyhedraSi 614 - Fixed minor Coverity defect in G4PolyhedraSide and G4PolyconeSide. 801 615 802 22-Apr-2013 J.Apostolakis (geom-specific-V09- 616 22-Apr-2013 J.Apostolakis (geom-specific-V09-06-11) 803 - Revised G4ExtrudedSolid::IsSameLine to use t 617 - Revised G4ExtrudedSolid::IsSameLine to use the perpendicular 804 distance to a line when deciding - not the y 618 distance to a line when deciding - not the y-intercept difference. 805 ( Issue responsible for a problem in Subtrac << 619 ( Issue responsible for a problem in Subtraction Solid in Atlas. 806 Tatiana & Ivana contributed to debugging. 620 Tatiana & Ivana contributed to debugging. ) 807 - Changed GNUmakefile in test directory to wor << 621 - Changed GNUmakefile in test directory to work with Cmake and granular 808 builds. 622 builds. 809 623 810 16-Apr-2013 T.Nikitina (geom-specific-V09-06- 624 16-Apr-2013 T.Nikitina (geom-specific-V09-06-10) 811 - Fix in calculation of normal in G4Tet::Dista 625 - Fix in calculation of normal in G4Tet::DistanceToOut(p,v,..) and 812 SurfaceNormal(p). 626 SurfaceNormal(p). 813 - Fix in G4Polycone::GetPointOnCone() for case 627 - Fix in G4Polycone::GetPointOnCone() for cases of shape with decreasing Z. 814 Fixes cases of false report for overlaps det 628 Fixes cases of false report for overlaps detection. Problem report #1462. 815 Added check with exception in constructor fo 629 Added check with exception in constructor for polycone with rInner > rOuter 816 for the same Z. 630 for the same Z. 817 631 818 18-Mar-2013 G.Cosmo (geom-specific-V09-06-09) 632 18-Mar-2013 G.Cosmo (geom-specific-V09-06-09) 819 - G4TessellatedSolid: fixed problem with navig 633 - G4TessellatedSolid: fixed problem with navigation in tessellated solids 820 with concave surfaces. Addresses problem rep 634 with concave surfaces. Addresses problem report #1456. 821 - More cleanup from MT changes in G4VTwistSurf 635 - More cleanup from MT changes in G4VTwistSurface and G4Tet. 822 636 823 12-Mar-2013 G.Cosmo (geom-specific-V09-06-08) 637 12-Mar-2013 G.Cosmo (geom-specific-V09-06-08) 824 - Added public accessors for MT data to G4Poly 638 - Added public accessors for MT data to G4PolyconeSide and G4PolyhedraSide. 825 639 826 11-Mar-2013 G.Cosmo (geom-specific-V09-06-07) 640 11-Mar-2013 G.Cosmo (geom-specific-V09-06-07) 827 - Redefined G4DLL_API to G4GEOM_DLL to avoid c 641 - Redefined G4DLL_API to G4GEOM_DLL to avoid cases of macro redefinition. 828 642 829 08-Mar-2013 G.Cosmo (geom-specific-V09-06-06) 643 08-Mar-2013 G.Cosmo (geom-specific-V09-06-06) 830 - Renamed G4MT macros to safer ID in G4Polycon 644 - Renamed G4MT macros to safer ID in G4PolyconeSide and G4PolyhedraSide. 831 645 832 07-Mar-2013 G.Cosmo (geom-specific-V09-06-05) 646 07-Mar-2013 G.Cosmo (geom-specific-V09-06-05) 833 - Adopt G4GeomSplitter instead of G4MTTransito 647 - Adopt G4GeomSplitter instead of G4MTTransitory in G4PolyconeSide and 834 G4PolyhedraSide. Fixed import/export of stat 648 G4PolyhedraSide. Fixed import/export of static symbols for WIN32 DLLs build. 835 649 836 22-Feb-2013 G.Cosmo (geom-specific-V09-06-04) 650 22-Feb-2013 G.Cosmo (geom-specific-V09-06-04) 837 - Cleanup changes for multi-threading in G4Tet 651 - Cleanup changes for multi-threading in G4Tet, G4VTwistSurface, 838 G4PolyconeSide and G4PolyhedraSide. 652 G4PolyconeSide and G4PolyhedraSide. 839 - Removed unused private data member in G4Twis 653 - Removed unused private data member in G4TwistTrapParallelSide. 840 654 841 07-Mar-2013 G.Cosmo (geom-specific-V09-06-05) 655 07-Mar-2013 G.Cosmo (geom-specific-V09-06-05) 842 - Adopt G4GeomSplitter instead of G4MTTransito 656 - Adopt G4GeomSplitter instead of G4MTTransitory in G4PolyconeSide and 843 G4PolyhedraSide. Fixed import/export of stat 657 G4PolyhedraSide. Fixed import/export of static symbols for WIN32 DLLs build. 844 658 845 22-Feb-2013 G.Cosmo (geom-specific-V09-06-04) 659 22-Feb-2013 G.Cosmo (geom-specific-V09-06-04) 846 - Cleanup changes for multi-threading in G4Tet 660 - Cleanup changes for multi-threading in G4Tet, G4VTwistSurface, 847 G4PolyconeSide and G4PolyhedraSide. 661 G4PolyconeSide and G4PolyhedraSide. 848 - Removed unused private data member in G4Twis 662 - Removed unused private data member in G4TwistTrapParallelSide. 849 663 850 11-Jan-2013 G.Cosmo (geom-specific-V09-06-03) 664 11-Jan-2013 G.Cosmo (geom-specific-V09-06-03) 851 - Fixed condition in G4VTwistSurface::GetBound 665 - Fixed condition in G4VTwistSurface::GetBoundaryLimit() for logical error. 852 Addressing problem report #1420. 666 Addressing problem report #1420. 853 667 854 20-Dec-2012 M.Gayer (geom-specific-V09-06-02) 668 20-Dec-2012 M.Gayer (geom-specific-V09-06-02) 855 - Fixed cases of hang-ups in G4ExtrudedSolid o 669 - Fixed cases of hang-ups in G4ExtrudedSolid on 32-bits platforms, due to 856 G4TessellatedSolid and G4SurfVoxelizer, caus 670 G4TessellatedSolid and G4SurfVoxelizer, caused by accessing bitmask arrays 857 with negative indexes. The problem was relat 671 with negative indexes. The problem was related to floating-point rounding, 858 which can be different even on same platform 672 which can be different even on same platform with debug/release version. 859 Assure same number of computed voxels on 32- 673 Assure same number of computed voxels on 32-bit/64-bit platforms. 860 Fixed error in SetVertexIndex() method, whic 674 Fixed error in SetVertexIndex() method, which might cause problems on 861 certain configurations even for 64-bit syste 675 certain configurations even for 64-bit systems. Fixed minor memory leaks. 862 - Code cleanup for use of G4endl and tabs... 676 - Code cleanup for use of G4endl and tabs... 863 677 864 14-Dec-2012 G.Cosmo (geom-specific-V09-06-01) 678 14-Dec-2012 G.Cosmo (geom-specific-V09-06-01) 865 - Restored SVN id headers. 679 - Restored SVN id headers. 866 680 867 02-Dec-2012 J.Allison (geom-specific-V09-06-0 681 02-Dec-2012 J.Allison (geom-specific-V09-06-00) 868 - Removed NURBS. 682 - Removed NURBS. 869 683 870 29-Nov-2012 G.Cosmo (geom-specific-V09-05-24) 684 29-Nov-2012 G.Cosmo (geom-specific-V09-05-24) 871 - Remove inclusion of G4PhysicalConstants.hh f 685 - Remove inclusion of G4PhysicalConstants.hh from G4SurfaceVoxelizer.hh. 872 - Fixed unit test for compilation errors. 686 - Fixed unit test for compilation errors. 873 687 874 28-Nov-2012 G.Cosmo (geom-specific-V09-05-23) 688 28-Nov-2012 G.Cosmo (geom-specific-V09-05-23) 875 - Fixed more cases of inclusion of constants h 689 - Fixed more cases of inclusion of constants header. 876 690 877 23-Nov-2012 G.Cosmo (geom-specific-V09-05-22) 691 23-Nov-2012 G.Cosmo (geom-specific-V09-05-22) 878 - Added 'const' qualifiers to signature in G4V 692 - Added 'const' qualifiers to signature in G4VoxelComparator::operator() 879 for porting on AIX-xlC compiler. 693 for porting on AIX-xlC compiler. 880 694 881 14-Nov-2012 P.Mato (geom-specific-V09-05-21) 695 14-Nov-2012 P.Mato (geom-specific-V09-05-21) 882 - Added #undef NDEBUG in unit tests to ensure 696 - Added #undef NDEBUG in unit tests to ensure assert works also in 883 full optimised mode. 697 full optimised mode. 884 698 885 14-Nov-2012 P. Mato (geom-specific-V09-05-20) 699 14-Nov-2012 P. Mato (geom-specific-V09-05-20) 886 - Added #undef NDEBUG in unit tests to ensure 700 - Added #undef NDEBUG in unit tests to ensure that assert always works 887 701 888 13-Nov-2012 M.Gayer (geom-specific-V09-05-19) 702 13-Nov-2012 M.Gayer (geom-specific-V09-05-19) 889 - More fixes for out-of-bound array accesses i 703 - More fixes for out-of-bound array accesses in G4SurfaceVoxelizer. 890 704 891 12-Nov-2012 M.Gayer (geom-specific-V09-05-18) 705 12-Nov-2012 M.Gayer (geom-specific-V09-05-18) 892 - Fixed out-of-bound array access in BuildRedu 706 - Fixed out-of-bound array access in BuildReduceVoxels2(). 893 707 894 06-Nov-2012 G.Cosmo (geom-specific-V09-05-17) 708 06-Nov-2012 G.Cosmo (geom-specific-V09-05-17) 895 - Correction in sources.cmake script for missi 709 - Correction in sources.cmake script for missing .icc file. 896 710 897 06-Nov-2012 G.Cosmo (geom-specific-V09-05-16) 711 06-Nov-2012 G.Cosmo (geom-specific-V09-05-16) 898 - Fixed Coverity defects in new code (M.Gayer) 712 - Fixed Coverity defects in new code (M.Gayer). 899 - Minor fixes for porting on AIX. 713 - Minor fixes for porting on AIX. 900 714 901 01-Nov-2012 G.Cosmo (geom-specific-V09-05-15) 715 01-Nov-2012 G.Cosmo (geom-specific-V09-05-15) 902 - Fixed compilation of debug code under G4SPEC 716 - Fixed compilation of debug code under G4SPECSDEBUG. 903 717 904 01-Nov-2012 M.Gayer (geom-specific-V09-05-14) 718 01-Nov-2012 M.Gayer (geom-specific-V09-05-14) 905 - Corrected signature for voxels count methods 719 - Corrected signature for voxels count methods in G4SurfaceVoxelizer. 906 720 907 31-Oct-2012 M.Gayer (geom-specific-V09-05-13) 721 31-Oct-2012 M.Gayer (geom-specific-V09-05-13) 908 - Added set/get methods for voxels count in G4 722 - Added set/get methods for voxels count in G4SurfaceVoxelizer. 909 723 910 30-Oct-2012 M.Gayer (geom-specific-V09-05-12) 724 30-Oct-2012 M.Gayer (geom-specific-V09-05-12) 911 - Fixed indexing of vertices in facets for tes 725 - Fixed indexing of vertices in facets for tessellated-solid and some cleanup. 912 726 913 27-Oct-2012 G.Cosmo (geom-specific-V09-05-11) 727 27-Oct-2012 G.Cosmo (geom-specific-V09-05-11) 914 - Fixed initialization of data in G4SurfaceVox 728 - Fixed initialization of data in G4SurfaceVoxelizer (M.Gayer). 915 - Added post-const qualifier to G4VertextCompa 729 - Added post-const qualifier to G4VertextComparator::operator() in 916 G4TessellatedSolid. 730 G4TessellatedSolid. 917 - Fixed more compilation warnings on unused va 731 - Fixed more compilation warnings on unused variable. 918 732 919 26-Oct-2012 G.Cosmo (geom-specific-V09-05-10) 733 26-Oct-2012 G.Cosmo (geom-specific-V09-05-10) 920 - Corrected compilation problem on G4SurfBits 734 - Corrected compilation problem on G4SurfBits for use of fprint(). 921 - Polished comments in disclaimer in new updat 735 - Polished comments in disclaimer in new updated classes. 922 736 923 25-Oct-2012 G.Cosmo (geom-specific-V09-05-09) 737 25-Oct-2012 G.Cosmo (geom-specific-V09-05-09) 924 - Corrected compilation warnings on Linux and 738 - Corrected compilation warnings on Linux and fixed use of memset/memcpy. 925 739 926 25-Oct-2012 G.Cosmo (geom-specific-V09-05-08) 740 25-Oct-2012 G.Cosmo (geom-specific-V09-05-08) 927 - Correction to sources.cmake. 741 - Correction to sources.cmake. 928 742 929 19-Oct-2012 M.Gayer (geom-specific-V09-05-07) 743 19-Oct-2012 M.Gayer (geom-specific-V09-05-07) 930 - Complete rewrite of G4TessellatedSolid resul 744 - Complete rewrite of G4TessellatedSolid resulting in reduced memory 931 requirements by 50%, and factor of tens or m 745 requirements by 50%, and factor of tens or more speedup for number of facets 932 of the order of thousands, thanks to ad-hoc 746 of the order of thousands, thanks to ad-hoc voxelization of the surface. 933 Factor of thousands speedup when number of f 747 Factor of thousands speedup when number of facets of the order of hundreds 934 thousand. New classes introduced, G4SurfBits 748 thousand. New classes introduced, G4SurfBits and G4SurfaceVoxelizer. 935 749 936 12-Jun-2012 G.Cosmo (geom-specific-V09-05-06) 750 12-Jun-2012 G.Cosmo (geom-specific-V09-05-06) 937 - Explicitly use inclusion of headers for syst 751 - Explicitly use inclusion of headers for system of units and physical 938 constants, in plan to remove implicit inclus 752 constants, in plan to remove implicit inclusion from globals.hh. 939 753 940 14-May-2012 G.Cosmo (geom-specific-V09-05-05) 754 14-May-2012 G.Cosmo (geom-specific-V09-05-05) 941 - Fixed spurious cases of hidden variable visi 755 - Fixed spurious cases of hidden variable visibility, detected with 942 '-Wshadow' compilation option on gcc compile 756 '-Wshadow' compilation option on gcc compiler. 943 757 944 06-Apr-2012 M.Kelsey (geom-specific-V09-05-04 758 06-Apr-2012 M.Kelsey (geom-specific-V09-05-04) 945 - Modified GetPointOnSurface() to throw sqrt(r 759 - Modified GetPointOnSurface() to throw sqrt(r) uniformly for disk surfaces, 946 in G4Paraboloid, G4Polycone and G4TwistedTub 760 in G4Paraboloid, G4Polycone and G4TwistedTubs. 947 761 948 13-Dec-2011 G.Cosmo (geom-specific-V09-05-03, 762 13-Dec-2011 G.Cosmo (geom-specific-V09-05-03, 02, 01) 949 - Fixed trivial Coverity defects in G4TwistedT 763 - Fixed trivial Coverity defects in G4TwistedTubs and G4VTwisteFaceted for 950 missing protection against self-assignment. 764 missing protection against self-assignment. 951 765 952 09-Dec-2011 T.Nikitina (geom-specific-V09-05- 766 09-Dec-2011 T.Nikitina (geom-specific-V09-05-00) 953 - Fix in G4EllipticalCone in DistanceToIn(p,v) 767 - Fix in G4EllipticalCone in DistanceToIn(p,v) to exclude imaginary solution 954 (virtual cone) when distance is calculated. 768 (virtual cone) when distance is calculated. 955 769 956 10-Nov-2011 G.Cosmo (geom-specific-V09-04-09) 770 10-Nov-2011 G.Cosmo (geom-specific-V09-04-09) 957 - Fixed trivial Coverity defects on assignment 771 - Fixed trivial Coverity defects on assignment operators... 958 772 959 25-Oct-2011 G.Cosmo (geom-specific-V09-04-08) 773 25-Oct-2011 G.Cosmo (geom-specific-V09-04-08) 960 - Fixed logic in G4VTwistSurface::GetEdgeVisib 774 - Fixed logic in G4VTwistSurface::GetEdgeVisibility() in treatment of corners. 961 775 962 16-Sep-2011 G.Cosmo (geom-specific-V09-04-07) 776 16-Sep-2011 G.Cosmo (geom-specific-V09-04-07) 963 - Fix compilation error in code within G4SPECS 777 - Fix compilation error in code within G4SPECSDEBUG. No functional changes. 964 778 965 13-Sep-2011 I.Hrivnacova (geom-specific-V09-0 779 13-Sep-2011 I.Hrivnacova (geom-specific-V09-04-06) 966 - G4TriangularFacet: fixed tests where square 780 - G4TriangularFacet: fixed tests where square root was compared to 967 half Cartesian tolerance; now compared to kC 781 half Cartesian tolerance; now compared to kCarTolerance. 968 Addressing problem report #1242. 782 Addressing problem report #1242. 969 783 970 25-Aug-2011 G.Cosmo 784 25-Aug-2011 G.Cosmo 971 - Migrated to new G4Exception scheme for warni 785 - Migrated to new G4Exception scheme for warnings and errors. 972 - Defined scheme for warnings/errors coding: 786 - Defined scheme for warnings/errors coding: 973 + 1xxx for warnings, 0xxx for errors. 787 + 1xxx for warnings, 0xxx for errors. 974 Code numbering: 788 Code numbering: 975 + 0001: not supported or implemented feature 789 + 0001: not supported or implemented features; 976 + 0002: invalid setup/construct; 790 + 0002: invalid setup/construct; 977 + 0003: invalid run condition; 791 + 0003: invalid run condition; 978 + 1001: incorrect setup; automatically adapt 792 + 1001: incorrect setup; automatically adapted. 979 + 1002: notification. 793 + 1002: notification. 980 - Added unit test for G4ExtrudedSolid (J.Apost 794 - Added unit test for G4ExtrudedSolid (J.Apostolakis). 981 795 982 22-Aug-2011 I.Hrivnacova (geom-specific-V09-0 796 22-Aug-2011 I.Hrivnacova (geom-specific-V09-04-05) 983 - Fix in G4TriangularFacet::Intersect() to tak 797 - Fix in G4TriangularFacet::Intersect() to take into account geometrical 984 tolerance and cases of zero distance from su 798 tolerance and cases of zero distance from surface's facet. 985 - Fix in G4TessellatedSolid::DistanceToOut(p) 799 - Fix in G4TessellatedSolid::DistanceToOut(p) and DistanceToIn(p) to exactly 986 compute distance from facet avoiding use of 800 compute distance from facet avoiding use of 'outgoing' flag shortcut variant. 987 - Addressing problem report #1242. 801 - Addressing problem report #1242. 988 802 989 17-Aug-2011 T.Nikitina (geom-specific-V09-04- 803 17-Aug-2011 T.Nikitina (geom-specific-V09-04-04) 990 - Fix in G4Paraboloid::DistanceToIn(p,v) and D 804 - Fix in G4Paraboloid::DistanceToIn(p,v) and DistanceToIn(p) to properly 991 take into account tolerance and provide bett 805 take into account tolerance and provide better estimation of distance 992 respectively. Addresses problem report #1234 806 respectively. Addresses problem report #1234. 993 807 994 04-Aug-2011 T.Nikitina (geom-specific-V09-04- 808 04-Aug-2011 T.Nikitina (geom-specific-V09-04-03) 995 - Added SetReferences() and InvertFacets() to 809 - Added SetReferences() and InvertFacets() to G4GenericTrap::CreatePolyhedron() 996 for proper visualisation of Boolean composit 810 for proper visualisation of Boolean compositions with G4GenericTrap. 997 - Added SetReferences() to G4TessellatedSolid: 811 - Added SetReferences() to G4TessellatedSolid::CreatePolyhedron() 998 for proper visualisation of Boolean composit 812 for proper visualisation of Boolean compositions with G4TessellatedSolid. 999 - Requires tag "greps-V09-04-04", for addressi 813 - Requires tag "greps-V09-04-04", for addressing problem report #1235. 1000 814 1001 17-May-2011 I.Hrivnacova (geom-specific-V09- 815 17-May-2011 I.Hrivnacova (geom-specific-V09-04-02) 1002 - G4ExtrudedSolid: fix in Inside(p) for false 816 - G4ExtrudedSolid: fix in Inside(p) for false overlap reporting. 1003 Addressing problem report #1211. 817 Addressing problem report #1211. 1004 818 1005 12-May-2011 G.Cosmo (geom-specific-V09-04-01 819 12-May-2011 G.Cosmo (geom-specific-V09-04-01) 1006 - Fixed compilation warnings from gcc-4.6.0 f 820 - Fixed compilation warnings from gcc-4.6.0 for variables set but not used. 1007 821 1008 06-May-2011 G.Cosmo (geom-specific-V09-04-00 822 06-May-2011 G.Cosmo (geom-specific-V09-04-00) 1009 - Use G4 typedef for CLHEP types. 823 - Use G4 typedef for CLHEP types. 1010 824 1011 26-Nov-2010 T.Nikitina (geom-specific-V09-03 825 26-Nov-2010 T.Nikitina (geom-specific-V09-03-20) 1012 - Fixes in G4GenericTrap reported by SBT unit 826 - Fixes in G4GenericTrap reported by SBT unit test in SurfaceNormal(), 1013 DistanceToPlane() and VisExtent(). 827 DistanceToPlane() and VisExtent(). 1014 828 1015 16-Nov-2010 T.Nikitina (geom-specific-V09-03 829 16-Nov-2010 T.Nikitina (geom-specific-V09-03-19) 1016 - G4EllipticalCone: fixes in DistanceToIn(p,v 830 - G4EllipticalCone: fixes in DistanceToIn(p,v) and DistanceToOut(p,v) for 1017 correct handling of point on the surface. 831 correct handling of point on the surface. 1018 Corrected formula for SurfaceNormal(p). 832 Corrected formula for SurfaceNormal(p). 1019 833 1020 10-Nov-2010 T.Nikitina (geom-specific-V09-03 834 10-Nov-2010 T.Nikitina (geom-specific-V09-03-18) 1021 - Added checks on crossing of vertices and to 835 - Added checks on crossing of vertices and too big twisted angle in 1022 G4GenericTrap. 836 G4GenericTrap. 1023 - Fixed case of division by zero in G4Twisted 837 - Fixed case of division by zero in G4TwistedTubs. 1024 - Added unit test for G4Polyhedra. 838 - Added unit test for G4Polyhedra. 1025 839 1026 02-Nov-2010 G.Cosmo (geom-specific-V09-03-17 840 02-Nov-2010 G.Cosmo (geom-specific-V09-03-17) 1027 - More fixes on Coverity reports for G4Tessel 841 - More fixes on Coverity reports for G4TessellatedSolid and G4ReduciblePolygon. 1028 842 1029 20-Oct-2010 G.Cosmo (geom-specific-V09-03-16 843 20-Oct-2010 G.Cosmo (geom-specific-V09-03-16) 1030 - Implemented Clone() virtual method for all 844 - Implemented Clone() virtual method for all solids, returning a pointer 1031 to a dynamically allocated copy of the soli 845 to a dynamically allocated copy of the solid. To be used by Geant4-MT. 1032 846 1033 23-Sep-2010 G.Cosmo (geom-specific-V09-03-15 847 23-Sep-2010 G.Cosmo (geom-specific-V09-03-15) 1034 - Initialize fpPolyhedron to zero in copy-cto 848 - Initialize fpPolyhedron to zero in copy-ctor and operator=(). 1035 - Completed implementation of copy-ctor and o 849 - Completed implementation of copy-ctor and operator=() for facets. 1036 850 1037 20-Sep-2010 G.Cosmo (geom-specific-V09-03-14 851 20-Sep-2010 G.Cosmo (geom-specific-V09-03-14) 1038 - Implemented copy-constructor and assignment 852 - Implemented copy-constructor and assignment operator for all solids 1039 to facilitate conversion to Geant4-MT. 853 to facilitate conversion to Geant4-MT. 1040 854 1041 08-Sep-2010 G.Cosmo (geom-specific-V09-03-13 855 08-Sep-2010 G.Cosmo (geom-specific-V09-03-13) 1042 - Correction to previous fix in G4ReduciblePo 856 - Correction to previous fix in G4ReduciblePolygon to avoid deleting current 1043 'vertexHead' pointer. 857 'vertexHead' pointer. 1044 858 1045 07-Sep-2010 G.Cosmo (geom-specific-V09-03-12 859 07-Sep-2010 G.Cosmo (geom-specific-V09-03-12) 1046 - Fix within G4CSGDEBUG code for restoring co 860 - Fix within G4CSGDEBUG code for restoring cout precision. 1047 - Fix in G4ReduciblePolygon::RemoveRedundantV 861 - Fix in G4ReduciblePolygon::RemoveRedundantVertices() to avoid potential 1048 case of dereferencing freed pointer. 862 case of dereferencing freed pointer. 1049 863 1050 19-Aug-2010 T.Nikitina (geom-specific-V09-03 864 19-Aug-2010 T.Nikitina (geom-specific-V09-03-11) 1051 - G4EllipticalTube: extended implementation o 865 - G4EllipticalTube: extended implementation of SurfaceNormal(p) in agreement 1052 with canonical form. Added unit test testG4 866 with canonical form. Added unit test testG4EllipticalTube.cc. 1053 867 1054 16-Jul-2010 G.Cosmo (geom-specific-V09-03-10 868 16-Jul-2010 G.Cosmo (geom-specific-V09-03-10) 1055 - Fixed cases of division by zero in G4VTwist 869 - Fixed cases of division by zero in G4VTwistSurface and G4TwistBoxSide. 1056 - Use INT_MAX as initialisation for max limit 870 - Use INT_MAX as initialisation for max limits in G4SolidExtentList. 1057 871 1058 12-Jul-2010 G.Cosmo (geom-specific-V09-03-09 872 12-Jul-2010 G.Cosmo (geom-specific-V09-03-09) 1059 - Added dummy initialization to members in st << 873 - Added dummy initialization to members in struct 1060 G4PolyPhiFace::G4PolyPhiFaceEdge, struct G4 874 G4PolyPhiFace::G4PolyPhiFaceEdge, struct G4ReduciblePolygon::ABVertex. 1061 G4Ellipsoid, G4EllipticalTube, G4EnclosingC 875 G4Ellipsoid, G4EllipticalTube, G4EnclosingCylinder, G4ExtrudedSolid, G4Hype, 1062 G4IntersectingCone, G4Paraboloid, G4PolyPhi 876 G4IntersectingCone, G4Paraboloid, G4PolyPhiFace, G4Polycone, G4PolyconeSide, 1063 G4Polyhedra, G4PolyhedraSide, G4Quadrangula 877 G4Polyhedra, G4PolyhedraSide, G4QuadrangularFacet, G4ReduciblePolygon, 1064 G4TessellatedSolid, G4TriangularFacet, G4Tw 878 G4TessellatedSolid, G4TriangularFacet, G4TwistBoxSide, G4TwistTrapAlphaSide, 1065 G4TwistTrapFlatSide, G4TwistTrapParallelSid 879 G4TwistTrapFlatSide, G4TwistTrapParallelSide, G4TwistTubsFlatSide, 1066 G4TwistTubsHypeSide, G4TwistTubsSide, G4Twi 880 G4TwistTubsHypeSide, G4TwistTubsSide, G4TwistedTubs, G4VCSGfaceted, G4VFacet, 1067 G4VTwistSurface, G4VTwistedFaceted. 881 G4VTwistSurface, G4VTwistedFaceted. 1068 - Fixed case of dereferencing null pointer in 882 - Fixed case of dereferencing null pointer in methods 1069 G4EllipticalTube::DistanceToOut(p,v), G4VCS 883 G4EllipticalTube::DistanceToOut(p,v), G4VCSGfaceted::DistanceToIn(p,v) 1070 and G4VCSGfaceted::DistanceToOut(p,v). 884 and G4VCSGfaceted::DistanceToOut(p,v). 1071 - Fixed unecessary object copy as argument in 885 - Fixed unecessary object copy as argument in method 1072 G4PolyhedraSide::IntersectSidePlane(). 886 G4PolyhedraSide::IntersectSidePlane(). 1073 - Avoid possible case of derefencing null poi 887 - Avoid possible case of derefencing null pointer in G4ReduciblePolygon 1074 RemoveDuplicateVertices() and RemoveRedunda 888 RemoveDuplicateVertices() and RemoveRedundantVertices() methods. 1075 - Replaced calls to std::abs() with std::fabs 889 - Replaced calls to std::abs() with std::fabs() where suitable. 1076 890 1077 16-Jun-2010 G.Cosmo (geom-specific-V09-03-08 891 16-Jun-2010 G.Cosmo (geom-specific-V09-03-08) 1078 - Fixed deletion of internal arrays in Create 892 - Fixed deletion of internal arrays in CreatePolyhedron() for G4Polycone 1079 and G4Polyhedra. 893 and G4Polyhedra. 1080 894 1081 11-Jun-2010 T.Nikitina (geom-specific-V09-03 895 11-Jun-2010 T.Nikitina (geom-specific-V09-03-07) 1082 - G4GenericTrap: fixed cases of zero dToIn/sT 896 - G4GenericTrap: fixed cases of zero dToIn/sToOut when vertices are collapsed 1083 to triangle, line or point. Added new metho 897 to triangle, line or point. Added new methods handling those specific cases. 1084 - Added unit test for G4GenericTrap. 898 - Added unit test for G4GenericTrap. 1085 899 1086 10-Jun-2010 I.Hrivnacova 900 10-Jun-2010 I.Hrivnacova 1087 - G4GenericTrap: fixed parameter names in Cal 901 - G4GenericTrap: fixed parameter names in CalculateExtent() for the test 1088 case construction through tessellated facet 902 case construction through tessellated facets. 1089 903 1090 09-Jun-2010 G.Cosmo 904 09-Jun-2010 G.Cosmo 1091 - G4GenericTrap: moved internal methods to pr 905 - G4GenericTrap: moved internal methods to private section and reordered 1092 in source file. Added missing implementatio 906 in source file. Added missing implementation for IsTwisted() method. 1093 907 1094 03-Jun-2010 T.Nikitina, G.Cosmo (geom-specif 908 03-Jun-2010 T.Nikitina, G.Cosmo (geom-specific-V09-03-06) 1095 - G4GenericTrap: 909 - G4GenericTrap: 1096 o Fixed initialization of fSurfaceArea and 910 o Fixed initialization of fSurfaceArea and fCubicVolume and 1097 calculation of surface area. 911 calculation of surface area. 1098 o Fixed error in Inside(p) function, and co 912 o Fixed error in Inside(p) function, and corrected use std::fabs() instead 1099 of std::abs() for floating point values. 913 of std::abs() for floating point values. 1100 o Added missing initialisation of fpPolyhed 914 o Added missing initialisation of fpPolyhedron pointer. 1101 o More corrected signatures for use of non- 915 o More corrected signatures for use of non-const references for vectors 1102 passed as arguments to functions. 916 passed as arguments to functions. 1103 917 1104 02-Jun-2010 G.Cosmo (geom-specific-V09-03-05 918 02-Jun-2010 G.Cosmo (geom-specific-V09-03-05) 1105 - G4GenericTrap: use const reference for vect 919 - G4GenericTrap: use const reference for vector of vertices passed as argument 1106 in constructor and accessor. 920 in constructor and accessor. 1107 921 1108 27-May-2010 T.Nikitina (geom-specific-V09-03 922 27-May-2010 T.Nikitina (geom-specific-V09-03-04) 1109 - First implementation of G4GenericTrap shape 923 - First implementation of G4GenericTrap shape, a new solid representing an 1110 arbitrary trapezoid with up to 8 vertices s 924 arbitrary trapezoid with up to 8 vertices standing on two parallel planes 1111 perpendicular to the Z axis. 925 perpendicular to the Z axis. 1112 926 1113 28-Apr-2010 P.R.Truscott (geom-specific-V09- 927 28-Apr-2010 P.R.Truscott (geom-specific-V09-03-03) 1114 - Fix in G4TriangularFacet and G4TessellatedS 928 - Fix in G4TriangularFacet and G4TessellatedSolid to correct treatment of 1115 optical photon transport related to interna 929 optical photon transport related to internal reflection at surface. 1116 Addresses problem report #1103. 930 Addresses problem report #1103. 1117 931 1118 15-Apr-2010 I.Hrivnacova (geom-specific-V09- 932 15-Apr-2010 I.Hrivnacova (geom-specific-V09-03-02) 1119 - G4ExtrudedSolid: eliminated requirement for 933 - G4ExtrudedSolid: eliminated requirement for clockwise ordering of polygon 1120 vertices. Added a check for vertices orderi 934 vertices. Added a check for vertices ordering; if vertices are defined 1121 anti-clockwise their ordering is reverted. 935 anti-clockwise their ordering is reverted. 1122 Fix in polygon facet triangularization for 936 Fix in polygon facet triangularization for consequent concave vertices. 1123 937 1124 24-Feb-2010 G.Cosmo (geom-specific-V09-03-01 938 24-Feb-2010 G.Cosmo (geom-specific-V09-03-01) 1125 - Adopt caching of Phi in G4PolyconeSide and 939 - Adopt caching of Phi in G4PolyconeSide and G4PolyhedraSide to avoid 1126 unnecessary consecutive computations on the 940 unnecessary consecutive computations on the same point. 1127 941 1128 10-Feb-2010 G.Cosmo (geom-specific-V09-03-00 942 10-Feb-2010 G.Cosmo (geom-specific-V09-03-00) 1129 - Use kInfinity for initialising minimum and 943 - Use kInfinity for initialising minimum and maximum allowed extent for 1130 G4SolidExtentList of faceted solids. 944 G4SolidExtentList of faceted solids. 1131 945 1132 11-Nov-2009 G.Cosmo (geom-specific-V09-02-08 946 11-Nov-2009 G.Cosmo (geom-specific-V09-02-08) 1133 - Avoid fake (and redundant) assignment of va 947 - Avoid fake (and redundant) assignment of value to 3-vector in 1134 G4PolyconeSide and G4TwistTubsSide. 948 G4PolyconeSide and G4TwistTubsSide. 1135 949 1136 24-Sep-2009 T.Nikitina (geom-specific-V09-02 950 24-Sep-2009 T.Nikitina (geom-specific-V09-02-07) 1137 - G4Ellipsoid: refined fix in DistanceToIn(p, 951 - G4Ellipsoid: refined fix in DistanceToIn(p,v) for points located on the 1138 curved surface, and correct treatment of ge 952 curved surface, and correct treatment of geometrical tolerance. 1139 953 1140 09-Sep-2009 G.Cosmo (geom-specific-V09-02-06 954 09-Sep-2009 G.Cosmo (geom-specific-V09-02-06) 1141 - G4Ellipsoid: fixed usage of half-tolerances 955 - G4Ellipsoid: fixed usage of half-tolerances (radial and Cartesian) in 1142 DistanceToIn(p,v), based on incorrect assum 956 DistanceToIn(p,v), based on incorrect assumptions introduced in tag 1143 "geom-specific-V09-02-04", responsible for 957 "geom-specific-V09-02-04", responsible for zero steps on configurations 1144 with cut in Z. Addresses problem report #10 958 with cut in Z. Addresses problem report #1076. 1145 959 1146 04-Aug-2009 T.Nikitina (geom-specific-V09-02 960 04-Aug-2009 T.Nikitina (geom-specific-V09-02-05) 1147 - G4Ellipsoid: 961 - G4Ellipsoid: 1148 o Fixes in Inside(p) and in DistanceToIn(p, 962 o Fixes in Inside(p) and in DistanceToIn(p,v) for points 1149 located on the curved surface within tole 963 located on the curved surface within tolerance. Final fix for issue 1150 reported in problem report #1050 and conc 964 reported in problem report #1050 and concerning warnings reported by 1151 grid_test. 965 grid_test. 1152 o Adopt pre-computed half-tolerance values 966 o Adopt pre-computed half-tolerance values for optimisation. 1153 967 1154 23-Jul-2009 T.Nikitina (geom-specific-V09-02 968 23-Jul-2009 T.Nikitina (geom-specific-V09-02-04) 1155 - G4Ellipsoid: fix to DistanceToIn(p,v) in th 969 - G4Ellipsoid: fix to DistanceToIn(p,v) in the calculation of the roots of 1156 the quadratic equation and in DistanceToOut 970 the quadratic equation and in DistanceToOut(p,v) in the calculation of the 1157 normal on cut surfaces. Final fix for probl 971 normal on cut surfaces. Final fix for problem report #1022 and #1050. 1158 - G4PolyconeSide: added protection in method 972 - G4PolyconeSide: added protection in method Normal(), addressing problem 1159 report #1073. 973 report #1073. 1160 974 1161 30-Jun-2009 T.Nikitina (geom-specific-V09-02 975 30-Jun-2009 T.Nikitina (geom-specific-V09-02-03) 1162 - G4Ellipsoid: introduced to DistanceToIn(p,v 976 - G4Ellipsoid: introduced to DistanceToIn(p,v) splitting of the distance for 1163 point very far from intersection area and b 977 point very far from intersection area and big difference between solid 1164 dimensions and distance to it; resolves iss 978 dimensions and distance to it; resolves issue observed on 64 bits problem. 1165 Also addressing problem report #1022. 979 Also addressing problem report #1022. 1166 980 1167 08-May-2009, G.Cosmo (geom-specific-V09-02-02 981 08-May-2009, G.Cosmo (geom-specific-V09-02-02) 1168 - Corrected typo in base implementation of G4 982 - Corrected typo in base implementation of G4VCSGfaceted::GetSurfaceArea(), 1169 which was erroneously returning cubic volum 983 which was erroneously returning cubic volume estimation. 1170 Addresses problem report #1062. 984 Addresses problem report #1062. 1171 985 1172 27-Apr-2009, G.Cosmo (geom-specific-V09-02-01 986 27-Apr-2009, G.Cosmo (geom-specific-V09-02-01) 1173 - Relaxed error condition in G4TessellatedSol 987 - Relaxed error condition in G4TessellatedSolid::Inside(p) to warning, for 1174 excess of max trials and anomalous conditio 988 excess of max trials and anomalous conditions in distance calculation. 1175 Added more printout information when error 989 Added more printout information when error condition is detected. 1176 990 1177 27-Feb-2009, T.Nikitina (geom-specific-V09-02 991 27-Feb-2009, T.Nikitina (geom-specific-V09-02-00) 1178 - Fix in G4Paraboloid::DistanceToOut(p,v,..) 992 - Fix in G4Paraboloid::DistanceToOut(p,v,..) for the computation of normal 1179 to surface; added missing normalisation to 993 to surface; added missing normalisation to unit, following remark in the 1180 Geometry Forum Hypernews posting #953. 994 Geometry Forum Hypernews posting #953. 1181 995 1182 21-Nov-2008, G.Cosmo (geom-specific-V09-01-19 996 21-Nov-2008, G.Cosmo (geom-specific-V09-01-19) 1183 - Added missing accessors to G4EllipticalCone 997 - Added missing accessors to G4EllipticalCone, required for detector 1184 persistency. 998 persistency. 1185 999 1186 13-Nov-2008, G.Cosmo (geom-specific-V09-01-18 1000 13-Nov-2008, G.Cosmo (geom-specific-V09-01-18) 1187 - Corrected initialisation of algorithm in G4 1001 - Corrected initialisation of algorithm in G4TriangularFacet constructor. 1188 1002 1189 30-Oct-2008, I.Hrivnacova (geom-specific-V09- 1003 30-Oct-2008, I.Hrivnacova (geom-specific-V09-01-17) 1190 - G4ExtrudedSolid: fixed bug in the decomposi 1004 - G4ExtrudedSolid: fixed bug in the decomposition of polygonal sides for 1191 quadrangular facets in MakeFacets(). Addres 1005 quadrangular facets in MakeFacets(). Addresses problem report #1029. 1192 1006 1193 23-Sep-2008, T.Nikitina (geom-specific-V09-01 1007 23-Sep-2008, T.Nikitina (geom-specific-V09-01-16) 1194 - Corrected algorithm in G4TriangularFacet::G 1008 - Corrected algorithm in G4TriangularFacet::GetPointOnFace() according to 1195 suggestion advanced in problem report #1025 1009 suggestion advanced in problem report #1025. Fixes a problem of false 1196 overlaps detection related to G4ExtrudedSol 1010 overlaps detection related to G4ExtrudedSolid and G4TessellatedSolid. 1197 1011 1198 12-Sep-2008, G.Cosmo (geom-specific-V09-01-15 1012 12-Sep-2008, G.Cosmo (geom-specific-V09-01-15) 1199 - G4VFacet: corrected increment of indeces in 1013 - G4VFacet: corrected increment of indeces in operator==(), following 1200 problem report #1024. 1014 problem report #1024. 1201 1015 1202 25-Jul-2008, I.Hrivnacova (geom-specific-V09- 1016 25-Jul-2008, I.Hrivnacova (geom-specific-V09-01-14) 1203 - G4ExtrudedSolid: fix in polygon decompositi 1017 - G4ExtrudedSolid: fix in polygon decomposition; systematically use 1204 half kCarTolerance instead of kCarTolerance 1018 half kCarTolerance instead of kCarTolerance; added solid name in the 1205 error messages coming from fatal exceptions 1019 error messages coming from fatal exceptions. 1206 1020 1207 16-Jul-2008, T.Nikitina (geom-specific-V09-01 1021 16-Jul-2008, T.Nikitina (geom-specific-V09-01-13) 1208 - G4Paraboloid: revised DistanceToOut(p,v,... 1022 - G4Paraboloid: revised DistanceToOut(p,v,...) in answer to problem report 1209 #1015. Fixed precision problem when solving 1023 #1015. Fixed precision problem when solving quadratic equation; apply 1210 comparison with kCarTolerance and not with 1024 comparison with kCarTolerance and not with zero; fixed logic problem in 1211 algoritm for points on surface and directio 1025 algoritm for points on surface and direction inside, relative to directions 1212 along Z, (0,0,Vz). 1026 along Z, (0,0,Vz). 1213 1027 1214 22-May-2008, G.Cosmo (geom-specific-V09-01-12 1028 22-May-2008, G.Cosmo (geom-specific-V09-01-12) 1215 - Removed left-over debug printout in G4VCSGF 1029 - Removed left-over debug printout in G4VCSGFaceted::DistanceToIn(). 1216 1030 1217 15-May-2008, T.Nikitina (geom-specific-V09-01 1031 15-May-2008, T.Nikitina (geom-specific-V09-01-11) 1218 - Enhanced GetPointOnSurface() for generic G4 1032 - Enhanced GetPointOnSurface() for generic G4Polycone and G4Polyhedra 1219 constructs; the method uses new triangulati 1033 constructs; the method uses new triangulation algorithm for G4PolyPhiFace. 1220 - G4ExtrudedSolid: added missing 'std' namesp 1034 - G4ExtrudedSolid: added missing 'std' namespace to standard mathematical 1221 function calls. 1035 function calls. 1222 1036 1223 28-Apr-2008, T.Nikitina (geom-specific-V09-01 1037 28-Apr-2008, T.Nikitina (geom-specific-V09-01-10) 1224 - Added kCarTolerance in definition of "low" 1038 - Added kCarTolerance in definition of "low" and "high" cone limits in R 1225 and in Z in order to protect against numeri 1039 and in Z in order to protect against numerical errors. This fixes cases of 1226 DistanceToIn(p,v) returning 'kInfinity' whe 1040 DistanceToIn(p,v) returning 'kInfinity' when p+t*v cross intersection 1227 between two cones. 1041 between two cones. 1228 1042 1229 25-Apr-2008, T.Nikitina (geom-specific-V09-01 1043 25-Apr-2008, T.Nikitina (geom-specific-V09-01-09) 1230 - Added protection against NaN in G4Intersect 1044 - Added protection against NaN in G4IntersectingCone::LineHitsCone1() in 1231 case of configuration where a conic section 1045 case of configuration where a conic section becomes a tube. 1232 - G4EllipticalCone: removed some debug printo 1046 - G4EllipticalCone: removed some debug printouts. 1233 1047 1234 14-Apr-2008, T.Nikitina (geom-specific-V09-01 1048 14-Apr-2008, T.Nikitina (geom-specific-V09-01-08) 1235 - G4Hype: refined polyhedron representation f 1049 - G4Hype: refined polyhedron representation for correct visualization of 1236 the shape. Coworks with tag "greps-V09-01-0 1050 the shape. Coworks with tag "greps-V09-01-04". 1237 1051 1238 13-Mar-2008, G.Cosmo (geom-specific-V09-01-07 1052 13-Mar-2008, G.Cosmo (geom-specific-V09-01-07) 1239 - Cleared compilation warnings in G4Paraboloi 1053 - Cleared compilation warnings in G4Paraboloid and G4TessellatedSolid 1240 on gcc-4.3.0 for ambiguous use of parenthes 1054 on gcc-4.3.0 for ambiguous use of parentheses in condition statements. 1241 1055 1242 28-Feb-2008, I.Hrivnacova (geom-specific-V09- 1056 28-Feb-2008, I.Hrivnacova (geom-specific-V09-01-06) 1243 - Correction to previous fix in G4ExtrudedSol 1057 - Correction to previous fix in G4ExtrudedSolid: testing on the edges has 1244 to be limited to the line segment, for this 1058 to be limited to the line segment, for this purpose a new internal method 1245 IsSameLineSegment() has been introduced for 1059 IsSameLineSegment() has been introduced for use instead of IsSameLine(). 1246 - Updated and extended unit test testG4Extrud 1060 - Updated and extended unit test testG4ExtrudedSolid.cc. 1247 1061 1248 27-Feb-2008, I.Hrivnacova (geom-specific-V09- 1062 27-Feb-2008, I.Hrivnacova (geom-specific-V09-01-05) 1249 - Fix in G4TessellatedSolid::DistanceToOut(p, 1063 - Fix in G4TessellatedSolid::DistanceToOut(p,v,..) to compute normal only 1250 if specified by flag in input. 1064 if specified by flag in input. 1251 - Fix in G4ExtrudedSolid::Inside(p) for corre 1065 - Fix in G4ExtrudedSolid::Inside(p) for correctly handling the case of 1252 points located on the edges of triangles wh 1066 points located on the edges of triangles which are not the outline edges 1253 of the polygon. 1067 of the polygon. 1254 1068 1255 21-Feb-2008, T.Nikitina (geom-specific-V09-01 1069 21-Feb-2008, T.Nikitina (geom-specific-V09-01-04) 1256 - G4Polyhedra: fixed problem of out-of-bound 1070 - G4Polyhedra: fixed problem of out-of-bound access to vectors in 1257 GetPointOnSurface(). 1071 GetPointOnSurface(). 1258 1072 1259 20-Feb-2008, I.Hrivnacova (geom-specific-V09- 1073 20-Feb-2008, I.Hrivnacova (geom-specific-V09-01-03) 1260 - G4TessellatedSolid: fixed bug in copy-const 1074 - G4TessellatedSolid: fixed bug in copy-constructor and internal method 1261 CopyObjects() for cloning of facets. 1075 CopyObjects() for cloning of facets. 1262 1076 1263 05-Feb-2008, I.Hrivnacova (geom-specific-V09- 1077 05-Feb-2008, I.Hrivnacova (geom-specific-V09-01-02) 1264 - G4ExtrudedSolid: bug fix in MakeFacets() to 1078 - G4ExtrudedSolid: bug fix in MakeFacets() to fill 'fTriangles' also in case 1265 of polygon with 3 or 4 vertices, as they ar 1079 of polygon with 3 or 4 vertices, as they are needed for Inside(p). 1266 1080 1267 02-Feb-2008, I.Hrivnacova (geom-specific-V09- 1081 02-Feb-2008, I.Hrivnacova (geom-specific-V09-01-01) 1268 - Corrected triangularization of polygon, now 1082 - Corrected triangularization of polygon, now correctly handling case 1269 of concave shapes. 1083 of concave shapes. 1270 - Corrected order of arguments in G4Paraboloi << 1084 - Corrected order of arguments in G4Paraboloid constructor. 1271 1085 1272 16-Jan-2008, I.Hrivnacova (geom-specific-V09- 1086 16-Jan-2008, I.Hrivnacova (geom-specific-V09-01-00) 1273 - In G4ExtrudedSolid::MakeFacets(), now addin 1087 - In G4ExtrudedSolid::MakeFacets(), now adding triangular facets before quadrangular 1274 ones, following logic behind G4TessellatedS 1088 ones, following logic behind G4TessellatedSolid. 1275 1089 1276 12-Dec-2007, G.Cosmo (geom-specific-V09-00-08 1090 12-Dec-2007, G.Cosmo (geom-specific-V09-00-08a) 1277 - Remove use of global static constant from s 1091 - Remove use of global static constant from singleton initialisation in 1278 G4TessellatedGeometryAlgorithms class. Use 1092 G4TessellatedGeometryAlgorithms class. Use 'sqrEpsilon' as local value. 1279 1093 1280 15-Nov-2007, P.Truscott (geom-specific-V09-00 1094 15-Nov-2007, P.Truscott (geom-specific-V09-00-08) 1281 - Reviewed implementation of G4TessellatedSol 1095 - Reviewed implementation of G4TessellatedSolid::CalculateExtent() to 1282 make it more robust and precise, following 1096 make it more robust and precise, following suggestion by S.Seibert 1283 addressed in problem report #983, now fixed 1097 addressed in problem report #983, now fixed. 1284 1098 1285 12-Oct-2007, G.Cosmo (geom-specific-V09-00-07 1099 12-Oct-2007, G.Cosmo (geom-specific-V09-00-07) 1286 - Corrected wrong boolean condition in method 1100 - Corrected wrong boolean condition in method IntersectLineAndTriangle2D() 1287 of G4TessellatedGeometryAlgorithms causing 1101 of G4TessellatedGeometryAlgorithms causing compilation error on VC++8. 1288 1102 1289 09-Oct-2007, G.Cosmo (geom-specific-V09-00-06 1103 09-Oct-2007, G.Cosmo (geom-specific-V09-00-06) 1290 - Reviewed G4TessellatedSolid classes in orde 1104 - Reviewed G4TessellatedSolid classes in order not to make use of random 1291 numbers for selection of direction (by P.Tr 1105 numbers for selection of direction (by P.Truscott). 1292 1106 1293 02-Oct-2007, G.Cosmo 1107 02-Oct-2007, G.Cosmo 1294 - Removed debug printout in G4Polycone::GetPo 1108 - Removed debug printout in G4Polycone::GetPointOnCone(). 1295 1109 1296 23-Aug-2007, G.Cosmo (geom-specific-V09-00-05 1110 23-Aug-2007, G.Cosmo (geom-specific-V09-00-05) 1297 - Revision of G4TessellatedSolid classes: 1111 - Revision of G4TessellatedSolid classes: 1298 o Fixed problem report #931 by P.Truscott, 1112 o Fixed problem report #931 by P.Truscott, based on suggestion of 1299 R.Holmberg. Modified classes G4Tessellate 1113 R.Holmberg. Modified classes G4TessellatedSolid and G4TriangularFacet. 1300 o Modified data and accessor 'centroid' and 1114 o Modified data and accessor 'centroid' and 'GetCentroid()' for G4VFacet; 1301 replaced by 'circumcentre' and 'GetCircum 1115 replaced by 'circumcentre' and 'GetCircumcentre()' respectively. 1302 o Added utility class G4TessellatedGeometry 1116 o Added utility class G4TessellatedGeometryAlgorithms. 1303 - Added formulas for calculating SemiAxis and 1117 - Added formulas for calculating SemiAxis and Zheight in G4EllipticalCone 1304 (by T.Nikitina). 1118 (by T.Nikitina). 1305 1119 1306 20-Aug-2007, T.Nikitina & L.Lindroos (geom-sp 1120 20-Aug-2007, T.Nikitina & L.Lindroos (geom-specific-V09-00-04) 1307 - Revision of G4EllipticalCone: 1121 - Revision of G4EllipticalCone: 1308 o DistanceToIn(p): corrected answer for p.z 1122 o DistanceToIn(p): corrected answer for p.z()<-zTopCut and for the point 1309 p on the surface. 1123 p on the surface. 1310 o DistanceToOut(p,v): now returning positiv 1124 o DistanceToOut(p,v): now returning positive solution or zero when crossing 1311 the elliptical surface. 1125 the elliptical surface. 1312 o Fix in DistanceToOut(p) which was giving << 1126 o Fix in DistanceToOut(p) which was giving always zero. 1313 o Corrected visualisation error of solid in 1127 o Corrected visualisation error of solid in graphics_reps. 1314 o Added some formulas on how to pre-calcula 1128 o Added some formulas on how to pre-calculate 'SemiAxis' and 'zheight'. 1315 o Added checkDistanceToOut() method to unit 1129 o Added checkDistanceToOut() method to unit test. 1316 - Corrections to G4Paraboloid: 1130 - Corrections to G4Paraboloid: 1317 o Fixed bug in CalculateSurfaceArea() metho 1131 o Fixed bug in CalculateSurfaceArea() method 1318 o Added correct initialisation of 'fPolyhed 1132 o Added correct initialisation of 'fPolyhedron' in constructor. 1319 o Added unit test testG4Paraboloid. 1133 o Added unit test testG4Paraboloid. 1320 1134 1321 13-Aug-2007, W.Pokorski (geom-specific-V09-00 1135 13-Aug-2007, W.Pokorski (geom-specific-V09-00-03) 1322 - G4PolyconeSide: added workaround to initial 1136 - G4PolyconeSide: added workaround to initialisation of 'corners' vector, 1323 to allow for object persistency with Root-I 1137 to allow for object persistency with Root-I/O (W.Pokorski). 1324 1138 1325 18-Jul-2007, G.Cosmo (geom-specific-V09-00-02 1139 18-Jul-2007, G.Cosmo (geom-specific-V09-00-02) 1326 - New specific G4Paraboloid with cuts along t 1140 - New specific G4Paraboloid with cuts along the Z axis (by L.Lindroos). 1327 - Fixed dummy constructors of G4Polycone and 1141 - Fixed dummy constructors of G4Polycone and G4PolyPhiFace for initialisation 1328 of 'edges' and 'corners'. 1142 of 'edges' and 'corners'. 1329 - Coworks with tag "greps-V09-00-01". 1143 - Coworks with tag "greps-V09-00-01". 1330 1144 1331 12-Jul-2007, T.Nikitina (geom-specific-V09-00 1145 12-Jul-2007, T.Nikitina (geom-specific-V09-00-01) 1332 - Fix in G4Polyhedra::GetPointOnSurface() to 1146 - Fix in G4Polyhedra::GetPointOnSurface() to correctly treat 'totalPhi' instead of 1333 'endPhi' for the case of open shapes and 't 1147 'endPhi' for the case of open shapes and 'twopi' for not open shapes. 1334 1148 1335 05-Jul-2007, T.Nikitina (geom-specific-V09-00 1149 05-Jul-2007, T.Nikitina (geom-specific-V09-00-00) 1336 - Fix in G4Polyhedra::GetPointOnSurface() for 1150 - Fix in G4Polyhedra::GetPointOnSurface() for the case when number of sectors 1337 (numSide) is equal to 1. At the origin of p 1151 (numSide) is equal to 1. At the origin of problems observed when checking 1338 overlaps for polyhedra solids defined as su 1152 overlaps for polyhedra solids defined as such. 1339 1153 1340 31-May-2007, G.Cosmo (geom-specific-V08-03-03 1154 31-May-2007, G.Cosmo (geom-specific-V08-03-03) 1341 - Fixed initialisation of constants in constr 1155 - Fixed initialisation of constants in constructor for - G4VTwistSurface, 1342 G4PolyPhiFace, G4PolyconeSide, G4PolyhedraS 1156 G4PolyPhiFace, G4PolyconeSide, G4PolyhedraSide - following latest changes 1343 for tunable tolerance. 1157 for tunable tolerance. 1344 1158 1345 25-May-2007, G.Cosmo (geom-specific-V08-03-02 1159 25-May-2007, G.Cosmo (geom-specific-V08-03-02) 1346 - Fixed default response of DistToIn/DistToOu 1160 - Fixed default response of DistToIn/DistToOut for twisted solids. 1347 - Use G4TWISTDEBUG instead of G4SPECSDEBUG as 1161 - Use G4TWISTDEBUG instead of G4SPECSDEBUG as debug conditional flag 1348 for twisted solids. 1162 for twisted solids. 1349 - Some cleanup in G4TwistTrapAlphaSide code. 1163 - Some cleanup in G4TwistTrapAlphaSide code. 1350 1164 1351 18-May-2007, G.Cosmo (geom-specific-V08-03-01 1165 18-May-2007, G.Cosmo (geom-specific-V08-03-01) 1352 - Use kAngTolerance and kRadTolerance from G4 1166 - Use kAngTolerance and kRadTolerance from G4GeometryTolerance class. 1353 - Coworks with tag "global-V08-03-03". 1167 - Coworks with tag "global-V08-03-03". 1354 1168 1355 11-May-2007, T.Nikitina (geom-specific-V08-03 1169 11-May-2007, T.Nikitina (geom-specific-V08-03-00) 1356 - Use call to G4GeometryTolerance instead of 1170 - Use call to G4GeometryTolerance instead of kCarTolerance where needed. 1357 - Requires tag "global-V08-03-00" and related 1171 - Requires tag "global-V08-03-00" and related tag set. 1358 1172 1359 26-Apr-2007, T.Nikitina (geom-specific-V08-02 1173 26-Apr-2007, T.Nikitina (geom-specific-V08-02-05) 1360 - Fix in GetPointOnSurface() for G4Polycone t 1174 - Fix in GetPointOnSurface() for G4Polycone to consider also points laying 1361 on rings when consecutive Z-sections are co 1175 on rings when consecutive Z-sections are coincident. 1362 Added method GetPointOnRing(). 1176 Added method GetPointOnRing(). 1363 - Added unit test testPointOnSurfacePoly.cc. 1177 - Added unit test testPointOnSurfacePoly.cc. 1364 1178 1365 27-Feb-2007, I.Hrivnacova (geom-specific-V08- 1179 27-Feb-2007, I.Hrivnacova (geom-specific-V08-02-04) 1366 - Added specialised constructor for handling 1180 - Added specialised constructor for handling Z-sections in G4ExtrudedSolid. 1367 - Cleared unecessary declaration of IsInside( 1181 - Cleared unecessary declaration of IsInside() methods in G4TriangularFacet 1368 and G4QuadrangularFacet. 1182 and G4QuadrangularFacet. 1369 - Updated unit test for G4ExtrudedSolid. 1183 - Updated unit test for G4ExtrudedSolid. 1370 1184 1371 26-Feb-2007, I.Hrivnacova (geom-specific-V08- 1185 26-Feb-2007, I.Hrivnacova (geom-specific-V08-02-04) 1372 - Added specialised constructor for handling 1186 - Added specialised constructor for handling Z-sections in G4ExtrudedSolid. 1373 - Cleared unecessary declaration of IsInside( 1187 - Cleared unecessary declaration of IsInside() methods in G4TriangularFacet 1374 and G4QuadrangularFacet. 1188 and G4QuadrangularFacet. 1375 - Updated unit test for G4ExtrudedSolid. 1189 - Updated unit test for G4ExtrudedSolid. 1376 1190 1377 15-Feb-2007, I.Hrivnacova (geom-specific-V08- 1191 15-Feb-2007, I.Hrivnacova (geom-specific-V08-02-03) 1378 - Corrected caching of values in G4ExtrudedSo 1192 - Corrected caching of values in G4ExtrudedSolid. 1379 - Bug fix in G4TriangularFacet::Intersect() t 1193 - Bug fix in G4TriangularFacet::Intersect() to allow for correct update of 1380 'Distance' in condition. 1194 'Distance' in condition. 1381 - Updated unit test for G4ExtrudedSolid. 1195 - Updated unit test for G4ExtrudedSolid. 1382 1196 1383 09-Feb-2007, G.Cosmo (geom-specific-V08-02-02 1197 09-Feb-2007, G.Cosmo (geom-specific-V08-02-02) 1384 - Introduced new shape G4ExtrudedSolid, a sol 1198 - Introduced new shape G4ExtrudedSolid, a solid representing the extrusion 1385 of an arbitrary polygon with fixed outline 1199 of an arbitrary polygon with fixed outline in the two Z sections. 1386 New files: G4ExtrudedSolid[.hh.icc.cc] and 1200 New files: G4ExtrudedSolid[.hh.icc.cc] and testG4ExtrudedSolid.cc 1387 by I.Hrivnacova. 1201 by I.Hrivnacova. 1388 - G4TessellatedSolid: 1202 - G4TessellatedSolid: 1389 o Made relevant solid's methods virtual, to 1203 o Made relevant solid's methods virtual, to be used as base class. 1390 o Added implementation for GetSurfaceArea() 1204 o Added implementation for GetSurfaceArea() and GetPointOnSurface() methods. 1391 o Added protection in SurfaceNormal() metho 1205 o Added protection in SurfaceNormal() method in case of facet not found. 1392 o Check and return kOutside in Inside() if 1206 o Check and return kOutside in Inside() if point out of solid's extent. 1393 1207 1394 01-Feb-2007, G.Cosmo (geom-specific-V08-02-01 1208 01-Feb-2007, G.Cosmo (geom-specific-V08-02-01) 1395 - Fix in G4PolyconeSide::DistanceAway() for c 1209 - Fix in G4PolyconeSide::DistanceAway() for correct estimation of distance 1396 for the case of Phi sections (T.Nikitina). 1210 for the case of Phi sections (T.Nikitina). 1397 Addresses problem report #598. 1211 Addresses problem report #598. 1398 - Updated unit test for G4Polycone to conside 1212 - Updated unit test for G4Polycone to consider new test case. 1399 1213 1400 22-Jan-2007, G.Cosmo (geom-specific-V08-02-00 1214 22-Jan-2007, G.Cosmo (geom-specific-V08-02-00) 1401 - Do not scale reducible-polygon in G4Polyhed 1215 - Do not scale reducible-polygon in G4Polyhedra::Reset() method. 1402 The 'original_parameters' structure offered 1216 The 'original_parameters' structure offered as input through the accessors 1403 are always assumed to be already scaled by 1217 are always assumed to be already scaled by the 'cos(0.5*phiTotal/theNumSide)' 1404 factor. Addresses problem report #873. 1218 factor. Addresses problem report #873. 1405 - Fixed warning printout in G4Polycone::Reset 1219 - Fixed warning printout in G4Polycone::Reset(). 1406 1220 1407 15-Nov-2006, J.Allison (geom-specific-V08-01- 1221 15-Nov-2006, J.Allison (geom-specific-V08-01-04) 1408 - Fixed typo in G4Polycone::CreatePolyhedron( 1222 - Fixed typo in G4Polycone::CreatePolyhedron() introduced by mistake in 1409 the last cleanup of the source code. 1223 the last cleanup of the source code. 1410 1224 1411 13-Nov-2006, G.Cosmo (geom-specific-V08-01-03 1225 13-Nov-2006, G.Cosmo (geom-specific-V08-01-03) 1412 - Added concrete implementation of GetSurface 1226 - Added concrete implementation of GetSurfaceArea() in G4Tet (M.H.Mendenhall). 1413 1227 1414 08-Nov-2006, G.Cosmo (geom-specific-V08-01-02 1228 08-Nov-2006, G.Cosmo (geom-specific-V08-01-02) 1415 - Cleared compilation warnings on SUN-CC for 1229 - Cleared compilation warnings on SUN-CC for changes in the last tag. 1416 Fixed overloaded class variables in G4Polyh 1230 Fixed overloaded class variables in G4Polyhedra and G4Polycone 1417 implementation of CreatePolyhedron(). 1231 implementation of CreatePolyhedron(). 1418 1232 1419 31-Oct-2006, J.Allison (geom-specific-V08-01- 1233 31-Oct-2006, J.Allison (geom-specific-V08-01-01) 1420 - Implemented CreatePolyhedron() for G4Polyhe 1234 - Implemented CreatePolyhedron() for G4Polyhedra and G4Polycone. 1421 1235 1422 20-Oct-2006, G.Cosmo (geom-specific-V08-01-00 1236 20-Oct-2006, G.Cosmo (geom-specific-V08-01-00) 1423 - Implemented caching mechanism for computati 1237 - Implemented caching mechanism for computation of surface area in 1424 all solids and base classes, as done for th 1238 all solids and base classes, as done for the geometrical volume 1425 computation. 1239 computation. 1426 - Added missing fake constructor for object p 1240 - Added missing fake constructor for object persistency to G4TessellatedSolid. 1427 1241 1428 20-Jun-2006, G.Cosmo (geom-specific-V08-00-10 1242 20-Jun-2006, G.Cosmo (geom-specific-V08-00-10) 1429 - Added accessor method GetVertices() in G4Te 1243 - Added accessor method GetVertices() in G4Tet to return the list of 1430 vertices composing the solid. Required for 1244 vertices composing the solid. Required for GDML persistency. 1431 1245 1432 06-Jun-2006, G.Cosmo (geom-specific-V08-00-09 1246 06-Jun-2006, G.Cosmo (geom-specific-V08-00-09) 1433 - Added protection against NaNs in G4Polycone 1247 - Added protection against NaNs in G4PolyconeSide::Normal() for points at 1434 the origin. 1248 the origin. 1435 1249 1436 19-May-2006, G.Cosmo (geom-specific-V08-00-08 1250 19-May-2006, G.Cosmo (geom-specific-V08-00-08) 1437 - Fix in G4Ellipsoid::SetZCuts() and G4Ellipt 1251 - Fix in G4Ellipsoid::SetZCuts() and G4EllipticalTube::SetZCut() for usage 1438 of uninitialised variables. 1252 of uninitialised variables. 1439 1253 1440 08-May-2006, G.Cosmo (geom-specific-V08-00-07 1254 08-May-2006, G.Cosmo (geom-specific-V08-00-07) 1441 - Cleared compilation warning on SUN-CC in G4 1255 - Cleared compilation warning on SUN-CC in G4TriangularFacet.cc. 1442 1256 1443 04-May-2006, G.Cosmo (geom-specific-V08-00-06 1257 04-May-2006, G.Cosmo (geom-specific-V08-00-06) 1444 - Use different names for unit tests to avoid 1258 - Use different names for unit tests to avoid confusing liblist ... 1445 1259 1446 03-May-2006, G.Cosmo (geom-specific-V08-00-05 1260 03-May-2006, G.Cosmo (geom-specific-V08-00-05) 1447 - Added four unit tests for G4TessellatedSoli 1261 - Added four unit tests for G4TessellatedSolid. 1448 1262 1449 24-Mar-2006, G.Cosmo (geom-specific-V08-00-04 1263 24-Mar-2006, G.Cosmo (geom-specific-V08-00-04) 1450 - G4TwistedTubs: defined exact estimation for 1264 - G4TwistedTubs: defined exact estimation for GetCubicVolume(), 1451 similar to the one adopted for G4Tubs. 1265 similar to the one adopted for G4Tubs. 1452 1266 1453 03-Mar-2006, G.Cosmo (geom-specific-V08-00-03 1267 03-Mar-2006, G.Cosmo (geom-specific-V08-00-03) 1454 - Corrected boolean condition in G4Triangular 1268 - Corrected boolean condition in G4TriangularFacet::Intersect(). 1455 Use '&&' operator in condition. Allows for 1269 Use '&&' operator in condition. Allows for porting on WIN32-VC. 1456 1270 1457 01-Mar-2006, G.Cosmo (geom-specific-V08-00-02 1271 01-Mar-2006, G.Cosmo (geom-specific-V08-00-02) 1458 - Introducing first implementation of a tesse 1272 - Introducing first implementation of a tessellated solid, contribution 1459 of P.R.Truscott (QinetiQ Ltd, UK). 1273 of P.R.Truscott (QinetiQ Ltd, UK). 1460 New classes: G4QuadrangularFacet, G4Tessell 1274 New classes: G4QuadrangularFacet, G4TessellatedSolid, G4TriangularFacet 1461 and G4VFacet. 1275 and G4VFacet. 1462 - Requires tag "greps-V08-00-00". 1276 - Requires tag "greps-V08-00-00". 1463 1277 1464 12-Jan-2006, J.Allison (geom-specific-V08-00- 1278 12-Jan-2006, J.Allison (geom-specific-V08-00-01) 1465 - G4TwistedTubs and G4VTwistedFaceted::Create 1279 - G4TwistedTubs and G4VTwistedFaceted::CreatePolyhedron(): 1466 parameterised polyhedron mesh approximation 1280 parameterised polyhedron mesh approximation in terms of 1467 G4Polyhedron::GetNumberOfRotationSteps(). 1281 G4Polyhedron::GetNumberOfRotationSteps(). 1468 This is (a) more economical and (b) amenabl 1282 This is (a) more economical and (b) amenable to user control. 1469 1283 1470 19-Dec-2005, O.Link (geom-specific-V08-00-00) 1284 19-Dec-2005, O.Link (geom-specific-V08-00-00) 1471 - Fixes in G4EllipticalCone: 1285 - Fixes in G4EllipticalCone: 1472 o Changed GetPointOnSurface(), which was no 1286 o Changed GetPointOnSurface(), which was not uniform in endcaps. 1473 o Bug fix in Inside(), which was not correc 1287 o Bug fix in Inside(), which was not correct for the elliptic mantel. 1474 Made test similar as in G4EllipticTube. 1288 Made test similar as in G4EllipticTube. 1475 o Several fixes in DistanceToIn/Out(): for 1289 o Several fixes in DistanceToIn/Out(): for looping events (shortest 1476 distance was taken, even if 0); now compa 1290 distance was taken, even if 0); now comparing the distance to the endcap 1477 and to the mantel and decide afterwards w 1291 and to the mantel and decide afterwards which distance is shortest; 1478 added check n*v. 1292 added check n*v. 1479 o The code is now "good" at 90%. Still 10% 1293 o The code is now "good" at 90%. Still 10% wrong reconstructed events. 1480 e.g there is a problem is DistanceToOut() 1294 e.g there is a problem is DistanceToOut(): missed the intersection 1481 (reconstruction took the encap instead of 1295 (reconstruction took the encap instead of the mantel). 1482 1296 1483 09-Dec-2005, O.Link 1297 09-Dec-2005, O.Link 1484 - Fixed visibility of soft edges on the twist 1298 - Fixed visibility of soft edges on the twisted solids. 1485 1299 1486 08-Dec-2005, O.Link (geom-specific-V07-01-14) 1300 08-Dec-2005, O.Link (geom-specific-V07-01-14) 1487 - Fixed bug in G4VTwistSurface::ComputeLocalP 1301 - Fixed bug in G4VTwistSurface::ComputeLocalPoint(p) for point coordinate 1488 transformation. The bug affected only G4Twi 1302 transformation. The bug affected only G4TwistTrapFlatSide. 1489 1303 1490 06-Dec-2005, G.Cosmo (geom-specific-V07-01-13 1304 06-Dec-2005, G.Cosmo (geom-specific-V07-01-13) 1491 - Fixed compilation errors on WIN32-VC for la 1305 - Fixed compilation errors on WIN32-VC for last tag changes. 1492 1306 1493 05-Dec-2005, O.Link (geom-specific-V07-01-12) 1307 05-Dec-2005, O.Link (geom-specific-V07-01-12) 1494 - Added polyhedron definition for twisted sol 1308 - Added polyhedron definition for twisted solids (G4TwistedTrap, 1495 G4TwistedTrd, G4TwistedBox, G4TwistedTubs) 1309 G4TwistedTrd, G4TwistedBox, G4TwistedTubs) for visualization. 1496 1310 1497 30-Nov-2005, G.Cosmo (geom-specific-V07-01-11 1311 30-Nov-2005, G.Cosmo (geom-specific-V07-01-11) 1498 - Trivial fixes for porting on CLHEP-2.0.X se 1312 - Trivial fixes for porting on CLHEP-2.0.X series. 1499 1313 1500 18-Nov-2005, O.Link (geom-specific-V07-01-10) 1314 18-Nov-2005, O.Link (geom-specific-V07-01-10) 1501 - Renamed classes for twisted solids set, to 1315 - Renamed classes for twisted solids set, to identify them in the 1502 twisted framework. 1316 twisted framework. 1503 1317 1504 17-Nov-2005, O.Link 1318 17-Nov-2005, O.Link 1505 - G4VTwistedFacted: 1319 - G4VTwistedFacted: 1506 o corrected bug in DistanceToSurface() impl 1320 o corrected bug in DistanceToSurface() implementation 1507 o added GetPointOnSurface() method 1321 o added GetPointOnSurface() method 1508 - G4TwistedTubs: 1322 - G4TwistedTubs: 1509 o added GetPointOnSurface() method 1323 o added GetPointOnSurface() method 1510 - G4Hype: 1324 - G4Hype: 1511 o corrected surface area calculation used i 1325 o corrected surface area calculation used in GetPointOnSurface() 1512 << 1326 1513 17-Nov-2005, G.Cosmo (geom-specific-V07-01-09 1327 17-Nov-2005, G.Cosmo (geom-specific-V07-01-09) 1514 - More fixes required for direct object persi 1328 - More fixes required for direct object persistency to G4Polycone, 1515 G4polyhedra and related utility classes. 1329 G4polyhedra and related utility classes. 1516 1330 1517 10-Nov-2005, J.Allison (geom-specific-V07-01- 1331 10-Nov-2005, J.Allison (geom-specific-V07-01-08) 1518 - G4Tet: 1332 - G4Tet: 1519 o Added implementation for GetPolyhedron() 1333 o Added implementation for GetPolyhedron() and GetCubicVolume(). 1520 o Corrected order of specifying vertices in 1334 o Corrected order of specifying vertices in CreatePolyhedron(). 1521 1335 1522 09-Nov-2005, G.Cosmo (geom-specific-V07-01-07 1336 09-Nov-2005, G.Cosmo (geom-specific-V07-01-07) 1523 - Added fake default constructor for all conc 1337 - Added fake default constructor for all concrete solids and relevant 1524 utility classes, for usage of direct object 1338 utility classes, for usage of direct object persistency. 1525 - Implemented changes to support CLHEP-2.0.X 1339 - Implemented changes to support CLHEP-2.0.X for explicit usage of the 1526 CLHEP/HepGeom namespaces for CLHEP types. 1340 CLHEP/HepGeom namespaces for CLHEP types. 1527 1341 1528 07-Nov-2005, G.Cosmo (geom-specific-V07-01-06 1342 07-Nov-2005, G.Cosmo (geom-specific-V07-01-06) 1529 - G4Ellipsoid: replaced call to hypot(x,y) wi 1343 - G4Ellipsoid: replaced call to hypot(x,y) with std::sqrt(x*x+y*y) 1530 for porting to ISO standard. 1344 for porting to ISO standard. 1531 1345 1532 02-Nov-2005, G.Cosmo (geom-specific-V07-01-05 1346 02-Nov-2005, G.Cosmo (geom-specific-V07-01-05) 1533 - G4Polyhedra, G4Polycone: 1347 - G4Polyhedra, G4Polycone: 1534 o Protected case of generic construct for v 1348 o Protected case of generic construct for visualization. 1535 o Introduced explicit flag and method IsGen 1349 o Introduced explicit flag and method IsGeneric() to identify the kind 1536 of constructor used. 1350 of constructor used. 1537 1351 1538 29-Sep-2005, G.Cosmo (geom-specific-V07-01-04 1352 29-Sep-2005, G.Cosmo (geom-specific-V07-01-04) 1539 - Fix in G4EllipticalCone methods DistanceToI 1353 - Fix in G4EllipticalCone methods DistanceToIn() and DistanceToOut(). 1540 Added unit test for it (by D.Anninos). 1354 Added unit test for it (by D.Anninos). 1541 - Coworks with tag "greps-V07-01-02". 1355 - Coworks with tag "greps-V07-01-02". 1542 1356 1543 10-Aug-2005, G.Cosmo (geom-specific-V07-01-03 1357 10-Aug-2005, G.Cosmo (geom-specific-V07-01-03) 1544 - Introduced new solid G4EllipticalCone, a fu 1358 - Introduced new solid G4EllipticalCone, a full cone with elliptical base 1545 that can be cut in Z (by D.Anninos). 1359 that can be cut in Z (by D.Anninos). 1546 Coworks with tag "greps-V07-01-02". 1360 Coworks with tag "greps-V07-01-02". 1547 1361 1548 08-Aug-2005, D.Anninos (geom-specific-V07-01- 1362 08-Aug-2005, D.Anninos (geom-specific-V07-01-02) 1549 - Added GetPointOnSurface() for all solids ex 1363 - Added GetPointOnSurface() for all solids except twisted ones. 1550 The method returns a random point according 1364 The method returns a random point according to a quasi-uniform 1551 distribution along the surface. 1365 distribution along the surface. 1552 1366 1553 18-Jul-2005, G.Cosmo (geom-specific-V07-01-01 1367 18-Jul-2005, G.Cosmo (geom-specific-V07-01-01) 1554 - Fixed compilation warning on WIN32-VC for G 1368 - Fixed compilation warning on WIN32-VC for G4VSurface.cc. 1555 - Not including G4Tet. 1369 - Not including G4Tet. 1556 1370 1557 06-Jul-2005, G.Cosmo (geom-specific-V07-01-00 1371 06-Jul-2005, G.Cosmo (geom-specific-V07-01-00) 1558 - Added new shape G4Ellipsoid. Coworks with t 1372 - Added new shape G4Ellipsoid. Coworks with tag "greps-V07-01-00". 1559 Contribution of G.Horton-Smith and G.Guerri 1373 Contribution of G.Horton-Smith and G.Guerrieri. 1560 Code cleanup, and added default arguments f 1374 Code cleanup, and added default arguments for cuts, added first 1561 implementation of unit test. 1375 implementation of unit test. 1562 - Corrected unit tests for twisted-box/trap. 1376 - Corrected unit tests for twisted-box/trap. 1563 - Not including G4Tet. 1377 - Not including G4Tet. 1564 1378 1565 15-Jun-2005, J.Apostolakis 1379 15-Jun-2005, J.Apostolakis 1566 - Introduced new solid G4Tet, contribution of 1380 - Introduced new solid G4Tet, contribution of M.H.Mendenhall 1567 and R.A.Weller, Vanderbilt University, USA. 1381 and R.A.Weller, Vanderbilt University, USA. 1568 1382 1569 29-Apr-2005, O.Link (geom-specific-V07-00-04) 1383 29-Apr-2005, O.Link (geom-specific-V07-00-04) 1570 - G4TwistedSurface: fixed bug in GetAreaCode( 1384 - G4TwistedSurface: fixed bug in GetAreaCode() affecting G4TwistedTubs. 1571 1385 1572 04-Apr-2005, G.Cosmo (geom-specific-V07-00-03 1386 04-Apr-2005, G.Cosmo (geom-specific-V07-00-03) 1573 - Added test for Number-Of-Rotation-Steps in 1387 - Added test for Number-Of-Rotation-Steps in GetPolyhedron() for 1574 G4VCSGfaceted, G4Hype and G4EllipticalTube 1388 G4VCSGfaceted, G4Hype and G4EllipticalTube (by J.Allison). 1575 Requires tag "greps-V07-00-02". 1389 Requires tag "greps-V07-00-02". 1576 - Added elementary implementation of CreatePo 1390 - Added elementary implementation of CreatePolyhedron() for G4Hype, 1577 G4TwistedBox, G4TwistedTubs, G4TwistedTrd, 1391 G4TwistedBox, G4TwistedTubs, G4TwistedTrd, G4TwistedTrap. 1578 - Some code cleanup. 1392 - Some code cleanup. 1579 1393 1580 18-Mar-2005, O.Link (geom-specific-V07-00-02) 1394 18-Mar-2005, O.Link (geom-specific-V07-00-02) 1581 - New generic framework for twisted solids G4 1395 - New generic framework for twisted solids G4TwistedBox, G4TwistedTrd and 1582 G4TwistedTrap: inheriting now from the base 1396 G4TwistedTrap: inheriting now from the base class G4VTwistedFaceted. 1583 - Extended G4TwistedTrap to support setups wi 1397 - Extended G4TwistedTrap to support setups with different trapezoidal 1584 endcaps with centres not necessarily on a l 1398 endcaps with centres not necessarily on a line parallel to the z axis. 1585 - Added G4TwistedTrd and general G4TwistedTra 1399 - Added G4TwistedTrd and general G4TwistedTrap as test cases in test. 1586 1400 1587 03-Mar-2005, J.Allison 1401 03-Mar-2005, J.Allison 1588 - Changed AddThis() to AddSolid() for all sol 1402 - Changed AddThis() to AddSolid() for all solids in the implementation 1589 of DescribeYourselfTo(G4VGraphicsScene&). 1403 of DescribeYourselfTo(G4VGraphicsScene&). 1590 1404 1591 01-Mar-2005, O.Link (geom-specific-V07-00-01) 1405 01-Mar-2005, O.Link (geom-specific-V07-00-01) 1592 - Fixed compilation warnings on WIN32-VC for 1406 - Fixed compilation warnings on WIN32-VC for G4VSurface.cc. 1593 1407 1594 14-Feb-2005, O.Link (geom-specific-V07-00-00) 1408 14-Feb-2005, O.Link (geom-specific-V07-00-00) 1595 - Use new polynom approximations based on new 1409 - Use new polynom approximations based on new solver based on Jenkins-Traub 1596 algorithm, for twisted-box and twisted-trap 1410 algorithm, for twisted-box and twisted-trap. 1597 - Fixed bug in the usage of 'fmod' and adopt 1411 - Fixed bug in the usage of 'fmod' and adopt special treatment for 'parallel' 1598 events in G4TwistedBoxSide and G4TwistedTra 1412 events in G4TwistedBoxSide and G4TwistedTrapSide. 1599 - Coworks with tag "global-V07-00-00". 1413 - Coworks with tag "global-V07-00-00". 1600 1414 1601 08-Dec-2004, O.Link (geom-specific-V06-02-07) 1415 08-Dec-2004, O.Link (geom-specific-V06-02-07) 1602 - Extensions to twisted box/trap shapes to co 1416 - Extensions to twisted box/trap shapes to consider all 4 solutions 1603 for determining correct intersections. 1417 for determining correct intersections. 1604 1418 1605 29-Nov-2004, O.Link (geom-specific-V06-02-06) 1419 29-Nov-2004, O.Link (geom-specific-V06-02-06) 1606 - G4TwistedTrapSide, G4TwistedBoxSide: improv 1420 - G4TwistedTrapSide, G4TwistedBoxSide: improved (analytical) version 1607 of GetPhiUAtX() method. 1421 of GetPhiUAtX() method. 1608 1422 1609 24-Nov-2004, O.Link (geom-specific-V06-02-05) 1423 24-Nov-2004, O.Link (geom-specific-V06-02-05) 1610 - Fixed bug in description of twisted trapezo 1424 - Fixed bug in description of twisted trapezoid side. 1611 1425 1612 12-Nov-2004, O.Link (geom-specific-V06-02-04) 1426 12-Nov-2004, O.Link (geom-specific-V06-02-04) 1613 - Added G4TwistedBox - a twisted box with tw 1427 - Added G4TwistedBox - a twisted box with twist angle alpha, 1614 length a/2,b/2,L/2. 1428 length a/2,b/2,L/2. 1615 - Added G4TwistedTrap - a twisted trapezoid ( 1429 - Added G4TwistedTrap - a twisted trapezoid (still in debug state) 1616 - Changed in G4VSurface.icc: << 1430 - Changed in G4VSurface.icc: 1617 - GetNeighbours(): corrected axiscode (wa 1431 - GetNeighbours(): corrected axiscode (was returning the wrong neighbours) 1618 - SetNeighbours(): fixed problem #685 (in 1432 - SetNeighbours(): fixed problem #685 (index out of range) 1619 - Added tests for G4TwistedBox and G4TwistedT 1433 - Added tests for G4TwistedBox and G4TwistedTrap in specific/test. 1620 - Added G4TwistedBox and G4TwistedTrap in sys 1434 - Added G4TwistedBox and G4TwistedTrap in system testing, test10. 1621 1435 1622 22-Oct-2004, D.C.Williams (geom-specific-V06- 1436 22-Oct-2004, D.C.Williams (geom-specific-V06-02-03) 1623 - Fix in G4PolyconeSide::Inside for points at 1437 - Fix in G4PolyconeSide::Inside for points at radius = 0 for phi slides 1624 solids with an inner radius. Addresses prob 1438 solids with an inner radius. Addresses problem report #598. 1625 1439 1626 10-Oct-2004, J.Allison (geom-specific-V06-02- 1440 10-Oct-2004, J.Allison (geom-specific-V06-02-02) 1627 - Added GetPolyhedron, a smart access functio 1441 - Added GetPolyhedron, a smart access function that creates a G4Polyhedron 1628 on request and stores for future access. A 1442 on request and stores for future access. A null pointer means "not 1629 available". 1443 available". 1630 1444 1631 22-Sep-2004, G.Cosmo (geom-specific-V06-02-01 1445 22-Sep-2004, G.Cosmo (geom-specific-V06-02-01) 1632 - Added implementation of GetCubicVolume() wi 1446 - Added implementation of GetCubicVolume() with cashing mechanism for 1633 solids: G4EllipticalTube, G4Hype, G4Polyhed 1447 solids: G4EllipticalTube, G4Hype, G4Polyhedra, G4Polycone, G4TwistedTubs. 1634 1448 1635 01-Sep-2004, D.C.Williams (geom-specific-V06- 1449 01-Sep-2004, D.C.Williams (geom-specific-V06-02-00) 1636 - G4VCSGfaceted: fix for rare anomalous situa 1450 - G4VCSGfaceted: fix for rare anomalous situation in which 1637 DistanceToOut(p,v,..) will report kInfinity 1451 DistanceToOut(p,v,..) will report kInfinity, make an additional check 1638 for the point p on the surface, in which ca 1452 for the point p on the surface, in which case will report zero. 1639 Addresses problem observed in G4Polyhedra a 1453 Addresses problem observed in G4Polyhedra and reported in #650. 1640 1454 1641 07-Jun-2004, G.Cosmo (geom-specific-V06-01-04 1455 07-Jun-2004, G.Cosmo (geom-specific-V06-01-04) 1642 - Fixed compilation problem in G4TwistedSurfa 1456 - Fixed compilation problem in G4TwistedSurface.cc on WIN32-VC. 1643 1457 1644 28-May-2004, G.Cosmo (geom-specific-V06-01-03 1458 28-May-2004, G.Cosmo (geom-specific-V06-01-03) 1645 - Fixed archiving problem on WIN32-VC7: repla 1459 - Fixed archiving problem on WIN32-VC7: replaced structs with classes 1646 in G4VSurface. 1460 in G4VSurface. 1647 - Replaced misleading names for masks in G4VS 1461 - Replaced misleading names for masks in G4VSurface and moved inlined 1648 methods of nested classes to .cc. 1462 methods of nested classes to .cc. 1649 1463 1650 25-May-2004, G.Cosmo (geom-specific-V06-01-02 1464 25-May-2004, G.Cosmo (geom-specific-V06-01-02) 1651 - Fixed compilation problem on SUN-CC. Made E 1465 - Fixed compilation problem on SUN-CC. Made EValidate enum public in 1652 G4VSurface.hh. 1466 G4VSurface.hh. 1653 1467 1654 24-May-2004, G.Cosmo (geom-specific-V06-01-01 1468 24-May-2004, G.Cosmo (geom-specific-V06-01-01) 1655 - Removed compilation warnings and minor clea 1469 - Removed compilation warnings and minor cleanup... 1656 1470 1657 19-May-2004, O.Link (geom-specific-V06-01-00) 1471 19-May-2004, O.Link (geom-specific-V06-01-00) 1658 - First implementation of a framework for twi 1472 - First implementation of a framework for twisted surfaces, integrated from 1659 the original version of Kotoyo Hoshina (hos 1473 the original version of Kotoyo Hoshina (hoshina@hepburn.s.chiba-u.ac.jp) 1660 implemented in the 'Jupiter' application. 1474 implemented in the 'Jupiter' application. 1661 o Includes new specific twisted shape: G4Tw 1475 o Includes new specific twisted shape: G4TwistedTubs. 1662 o New classes: G4VSurface, G4TwistedSurface 1476 o New classes: G4VSurface, G4TwistedSurface, G4HyperbolicSurface, 1663 G4FlatSurface, G4TwistedTubs 1477 G4FlatSurface, G4TwistedTubs. 1664 o Cleanup of original code (debugging messa 1478 o Cleanup of original code (debugging messages, compiler errors, migration 1665 of g4std to new convention...) 1479 of g4std to new convention...) 1666 o New organisation of class G4TwistedTubs: 1480 o New organisation of class G4TwistedTubs: now independent of XXXSurface; 1667 removed backpointer 'fSolid' from XXXSurf 1481 removed backpointer 'fSolid' from XXXSurface to G4TwistedTubs. 1668 o New form of constructors in G4TwistedSurf 1482 o New form of constructors in G4TwistedSurface, G4HyperbolicSurface and 1669 G4FlatSurface. 1483 G4FlatSurface. 1670 o Change in G4TwistedSurface::DistanceToIn( 1484 o Change in G4TwistedSurface::DistanceToIn(p,v,...): roundoff correction. 1671 1485 1672 12-Jan-2004, G.Cosmo (geom-specific-V06-00-00 1486 12-Jan-2004, G.Cosmo (geom-specific-V06-00-00) 1673 - G4PolyhedraSide.cc: fixed bug in which part 1487 - G4PolyhedraSide.cc: fixed bug in which particles could "leak" out the 1674 center of a face if inner radius = 0. 1488 center of a face if inner radius = 0. 1675 Fixes problem report #547. (D.Williams) 1489 Fixes problem report #547. (D.Williams) 1676 1490 1677 22-Nov-2003, G.Cosmo (geom-specific-V05-02-07 1491 22-Nov-2003, G.Cosmo (geom-specific-V05-02-07) 1678 - Fixed upper bound for protection check intr 1492 - Fixed upper bound for protection check introduced in G4Polycone and 1679 G4Polyhedra constructors. 1493 G4Polyhedra constructors. 1680 1494 1681 17-Nov-2003, G.Cosmo (geom-specific-V05-02-06 1495 17-Nov-2003, G.Cosmo (geom-specific-V05-02-06) 1682 - Added protections in G4Polycone and G4Polyh 1496 - Added protections in G4Polycone and G4Polyhedra constructors for 1683 invalid constructs with no contiguous segme 1497 invalid constructs with no contiguous segments in Z planes as input. 1684 1498 1685 04-Nov-2003, G.Cosmo (geom-specific-V05-02-05 1499 04-Nov-2003, G.Cosmo (geom-specific-V05-02-05) 1686 - Added SetOriginalParameters() method to G4P 1500 - Added SetOriginalParameters() method to G4Polycone and G4Polyhedra. 1687 1501 1688 03-Nov-2003, G.Cosmo (geom-specific-V05-02-04 1502 03-Nov-2003, G.Cosmo (geom-specific-V05-02-04) 1689 - Code cleanup and headers inclusion review 1503 - Code cleanup and headers inclusion review 1690 (replaced by forward declarations where nec 1504 (replaced by forward declarations where necessary). 1691 1505 1692 28-Oct-2003, G.Cosmo (geom-specific-V05-02-03 1506 28-Oct-2003, G.Cosmo (geom-specific-V05-02-03) 1693 - Migrated to new G4Exception scheme. 1507 - Migrated to new G4Exception scheme. 1694 1508 1695 20-Oct-2003, G.Cosmo (geom-specific-V05-02-02 1509 20-Oct-2003, G.Cosmo (geom-specific-V05-02-02) 1696 - Added Reset() method in G4Polycone and G4Po 1510 - Added Reset() method in G4Polycone and G4Polyhedra to allow 1697 recalculation and reshape of the solid if n 1511 recalculation and reshape of the solid if new original_parameters 1698 are provided. 1512 are provided. 1699 1513 1700 30-Sep-2003, G.Cosmo (geom-specific-V05-02-01 1514 30-Sep-2003, G.Cosmo (geom-specific-V05-02-01) 1701 - Updated GNUmakefile for unit tests, accordi 1515 - Updated GNUmakefile for unit tests, according to new structure 1702 introduced in "geometry-V05-02-00". 1516 introduced in "geometry-V05-02-00". 1703 1517 1704 16-Jun-2003, G.Cosmo (geom-specific-V05-02-00 1518 16-Jun-2003, G.Cosmo (geom-specific-V05-02-00) 1705 - Added accessors to original_parameters for 1519 - Added accessors to original_parameters for G4Polycone and G4Polyhedra. 1706 Made G4PolyconeHistorical and G4PolyhedraHi 1520 Made G4PolyconeHistorical and G4PolyhedraHistorical classes in global 1707 scope (temporary solution). 1521 scope (temporary solution). 1708 1522 1709 28-Mar-2003, G.Cosmo (geom-specific-V05-00-00 1523 28-Mar-2003, G.Cosmo (geom-specific-V05-00-00) 1710 - Fixed initialisation of base class in copy 1524 - Fixed initialisation of base class in copy contructor for: 1711 G4PolyPhiFace, G4PolyconeSide, G4PolyhedraS 1525 G4PolyPhiFace, G4PolyconeSide, G4PolyhedraSide. 1712 - Fixed trivial pedantic warnings on G4Polyco 1526 - Fixed trivial pedantic warnings on G4Polycone and G4Polyhedra. 1713 1527 1714 30-Oct-2002, G.Cosmo (geom-specific-V04-01-01 1528 30-Oct-2002, G.Cosmo (geom-specific-V04-01-01) 1715 - Fixed un-initialised data members in constr 1529 - Fixed un-initialised data members in constructors of classes: 1716 G4ClippablePolygon, G4EnclosingCylinder, G4 1530 G4ClippablePolygon, G4EnclosingCylinder, G4PolyconeSide, 1717 G4ReduciblePolygon, G4VCSGfaceted. 1531 G4ReduciblePolygon, G4VCSGfaceted. 1718 1532 1719 28-Oct-2002, G.Cosmo (geom-specific-V04-01-00 1533 28-Oct-2002, G.Cosmo (geom-specific-V04-01-00) 1720 - Added implementation of StreamInfo() to com 1534 - Added implementation of StreamInfo() to comply with new interface for 1721 G4VSolid in "geommng-V04-01-03". 1535 G4VSolid in "geommng-V04-01-03". 1722 - Created .icc files for G4EllipticalTube, G4 1536 - Created .icc files for G4EllipticalTube, G4Polyhedra and G4Polycone. 1723 - Some cosmetic changes to code formatting: r 1537 - Some cosmetic changes to code formatting: removed <TAB> characters and adopt 1724 uniform code indentation. 1538 uniform code indentation. 1725 1539 1726 08-May-2002, J.Allison (geom-solids-specific- 1540 08-May-2002, J.Allison (geom-solids-specific-V04-00-01) 1727 - Implemented G4EllipticalTube::CreatePolyhed 1541 - Implemented G4EllipticalTube::CreatePolyhedron. 1728 1542 1729 10-Jan-2002, G.Cosmo (geom-solids-specific-V0 1543 10-Jan-2002, G.Cosmo (geom-solids-specific-V04-00-00) 1730 - Updated unit tests. 1544 - Updated unit tests. 1731 1545 1732 20-Apr-2001, G.Cosmo (geom-solids-specific-V0 1546 20-Apr-2001, G.Cosmo (geom-solids-specific-V03-01-00) 1733 - Migration to STL vector: 1547 - Migration to STL vector: 1734 o In G4ClippablePolygon, migrated G4ThreeVe 1548 o In G4ClippablePolygon, migrated G4ThreeVectorList typedef and 1735 made private to class. 1549 made private to class. 1736 << 1550 1737 03-Apr-2001, D.Williams (geom-solids-specifi 1551 03-Apr-2001, D.Williams (geom-solids-specific-V03-00-01) 1738 ----------------------- 1552 ----------------------- 1739 - G4IntersectingCone.cc: make small adjustmen 1553 - G4IntersectingCone.cc: make small adjustment to help with roundoff error 1740 in LineHitsCone1() and LineHitsCone2(). 1554 in LineHitsCone1() and LineHitsCone2(). 1741 1555 1742 08-Jan-2001, D.Williams (geom-solids-specifi 1556 08-Jan-2001, D.Williams (geom-solids-specific-V03-00-00) 1743 ----------------------- 1557 ----------------------- 1744 - G4Hype.cc: Added protecton against zero v.z 1558 - G4Hype.cc: Added protecton against zero v.z in DistanceToOut. 1745 1559 1746 20-Nov-2000, G.Cosmo (geom-solids-specifi 1560 20-Nov-2000, G.Cosmo (geom-solids-specific-V02-00-04) 1747 --------------------- 1561 --------------------- 1748 - Fixes to remove warnings from "-Wall -ansi 1562 - Fixes to remove warnings from "-Wall -ansi -pedantic" g++ compiler options: 1749 o commented out variables declared and not 1563 o commented out variables declared and not used. 1750 o fixed declaration of variables used befor 1564 o fixed declaration of variables used before being initialised. 1751 o fixed order of initialisation of member d 1565 o fixed order of initialisation of member data in constructors. 1752 o fixed usage of unsigned-int (size_t) for 1566 o fixed usage of unsigned-int (size_t) for array indeces. 1753 1567 1754 13-Nov-2000, G.Cosmo (geom-solids-specifi 1568 13-Nov-2000, G.Cosmo (geom-solids-specific-V02-00-03) 1755 -------------------- 1569 -------------------- 1756 - Added definition of empty constructor for G 1570 - Added definition of empty constructor for G4ClippablePolygon which 1757 went lost by mistake... 1571 went lost by mistake... 1758 1572 1759 02-Nov-2000, G.Cosmo (geom-solids-specifi 1573 02-Nov-2000, G.Cosmo (geom-solids-specific-V02-00-02) 1760 -------------------- 1574 -------------------- 1761 - QA code revision and cleanup (+fixes from C 1575 - QA code revision and cleanup (+fixes from CodeWizard filtering): 1762 o Avoid inline virtual methods. 1576 o Avoid inline virtual methods. 1763 o General cosmetics for Software Reference 1577 o General cosmetics for Software Reference Manual. 1764 1578 1765 23-Oct-2000, D.Williams (geom-solids-specifi 1579 23-Oct-2000, D.Williams (geom-solids-specific-V02-00-01) 1766 ----------------------- 1580 ----------------------- 1767 - G4IntersectingCone.cc: the check for a zero 1581 - G4IntersectingCone.cc: the check for a zero radical has been adjusted to be 1768 less sensitive to round off error in LineHi 1582 less sensitive to round off error in LineHitsCone1(), LineHitsCone2(). 1769 This fixes a problem discovered in BaBar. 1583 This fixes a problem discovered in BaBar. 1770 1584 1771 12-Sep-2000, G.Cosmo (geom-solids-specific-V 1585 12-Sep-2000, G.Cosmo (geom-solids-specific-V02-00-00) 1772 -------------------- 1586 -------------------- 1773 - Organised comments to headers for Software 1587 - Organised comments to headers for Software Reference Manual. 1774 1588 1775 27-Jun-2000, G.Cosmo (geom-solids-specific-V 1589 27-Jun-2000, G.Cosmo (geom-solids-specific-V01-01-02) 1776 -------------------- 1590 -------------------- 1777 - G4Polycone[.hh.cc]: better fix for bug-repo 1591 - G4Polycone[.hh.cc]: better fix for bug-report #110. 1778 Removed struct and replaced with class. 1592 Removed struct and replaced with class. 1779 1593 1780 26-Jun-2000, G.Cosmo (geom-solids-specific-V 1594 26-Jun-2000, G.Cosmo (geom-solids-specific-V01-01-01) 1781 -------------------- 1595 -------------------- 1782 - G4Polycone.cc: fixed memory leak by invokin 1596 - G4Polycone.cc: fixed memory leak by invoking destruction of member 1783 enclosingCylinder, which was not cleaned up 1597 enclosingCylinder, which was not cleaned up in the destructor. 1784 This fixes problem report #107. 1598 This fixes problem report #107. 1785 - G4Polycone.hh: added forward declaration of 1599 - G4Polycone.hh: added forward declaration of struct G4PolyconeHistorical 1786 and made it friend, for porting on KCC --st 1600 and made it friend, for porting on KCC --strict. This fixes report #110. 1787 - G4Polyhedra.hh: fixed typo in method name. 1601 - G4Polyhedra.hh: fixed typo in method name. Changed GetNumSIde() to 1788 GetNumSide(). This fixes problem report #10 1602 GetNumSide(). This fixes problem report #105. 1789 1603 1790 08-Jun-2000, G.Gracia 1604 08-Jun-2000, G.Gracia 1791 --------------------- 1605 --------------------- 1792 - G4VCSGfaceted.cc: fix for Win/NT in functio 1606 - G4VCSGfaceted.cc: fix for Win/NT in function GetExtent(). 1793 1607 1794 27-Apr-2000, G.Cosmo 1608 27-Apr-2000, G.Cosmo 1795 -------------------- 1609 -------------------- 1796 - Removed dependency over the CSG domain in G 1610 - Removed dependency over the CSG domain in GNUmakefile. 1797 1611 1798 18-Apr-2000, D.Williams 1612 18-Apr-2000, D.Williams 1799 ----------------------- 1613 ----------------------- 1800 - Removed meaningless "const" specifiers from 1614 - Removed meaningless "const" specifiers from methods in G4ClippablePolygon, 1801 and G4EllipticalTube. 1615 and G4EllipticalTube. 1802 - G4EllipticalTube, G4Hype and G4VCSGfaceted 1616 - G4EllipticalTube, G4Hype and G4VCSGfaceted now inherit directly 1803 from G4VSolid (before was G4CSGSolid). 1617 from G4VSolid (before was G4CSGSolid). 1804 - Reintroduced GetExtent() in G4EllipticalTub 1618 - Reintroduced GetExtent() in G4EllipticalTube, G4Hype and G4VCSGfaceted 1805 (in principle, not needed). 1619 (in principle, not needed). 1806 - Modified assertations in unit test testG4Hy 1620 - Modified assertations in unit test testG4Hype.cc. 1807 1621 1808 11-Apr-2000, J.Allison 1622 11-Apr-2000, J.Allison 1809 ---------------------- 1623 ---------------------- 1810 - Removed implementations of GetExtent in mos 1624 - Removed implementations of GetExtent in most sub-classes of G4VSolid (a 1811 default implementation exists in G4VSolid). 1625 default implementation exists in G4VSolid). 1812 - All implementations of DescribeYourselfTo ( 1626 - All implementations of DescribeYourselfTo (G4VGraphicsScene& scene) const 1813 now correctly written: scene.AddThis(*this) 1627 now correctly written: scene.AddThis(*this). 1814 1628 1815 05-Apr-2000, G.Cosmo (geom-solids-specific- 1629 05-Apr-2000, G.Cosmo (geom-solids-specific-V01-01-00) 1816 -------------------- 1630 -------------------- 1817 - Restructured solids/CSG domain, by moving t 1631 - Restructured solids/CSG domain, by moving to "specific" the following 1818 classes: G4ClippablePolygon, G4EnclosingCyl 1632 classes: G4ClippablePolygon, G4EnclosingCylinder, G4Hype, G4PolyPhiFace, 1819 G4Polycone, G4PolyconeSide, G4Polyhedra, G4 1633 G4Polycone, G4PolyconeSide, G4Polyhedra, G4PolyhedraSide, G4ReduciblePolygon, 1820 G4IntersectingCone, G4SolidExtentList, G4VC 1634 G4IntersectingCone, G4SolidExtentList, G4VCSGface, G4VCSGfaceted. 1821 The new module's library for "specific" is 1635 The new module's library for "specific" is now called 'G4specsolids'. 1822 - Created specific/test directory and moved t 1636 - Created specific/test directory and moved testG4Hype.cc and testG4Polycone,cc 1823 from CSG/test. 1637 from CSG/test. 1824 - Organised class description comments for th 1638 - Organised class description comments for the Software Reference Manual 1825 and added CVS headers to files. 1639 and added CVS headers to files. 1826 1640 1827 29-Mar-2000, D.Williams 1641 29-Mar-2000, D.Williams 1828 ----------------------- 1642 ----------------------- 1829 - Added first implementation of G4EllipticalT 1643 - Added first implementation of G4EllipticalTube. 1830 It defines a simple elliptical tube, as in 1644 It defines a simple elliptical tube, as in geant3 "ELTU". 1831 Files introduced: G4EllipticalTube[.hh.cc]. 1645 Files introduced: G4EllipticalTube[.hh.cc]. 1832 1646 1833 25-Mar-2000, G.Cosmo 1647 25-Mar-2000, G.Cosmo 1834 -------------------- 1648 -------------------- 1835 - History file created. 1649 - History file created.