[1347] | 1 | $Id: History,v 1.79 2010/11/23 15:15:11 gcosmo Exp $ |
---|
[831] | 2 | ---------------------------------------------------------------------------- |
---|
| 3 | |
---|
| 4 | ========================================================= |
---|
| 5 | Geant4 - an Object-Oriented Toolkit for Simulation in HEP |
---|
| 6 | ========================================================= |
---|
| 7 | |
---|
| 8 | History file for geometry/solids/BREPS |
---|
| 9 | -------------------------------------- |
---|
| 10 | This file should be used by G4 developers and category coordinators |
---|
| 11 | to briefly summarize all major modifications introduced in the code |
---|
| 12 | and keep track of all category-tags. |
---|
| 13 | It DOES NOT substitute the CVS log-message one should put at every |
---|
| 14 | committal in the CVS repository ! |
---|
| 15 | |
---|
| 16 | ---------------------------------------------------------- |
---|
| 17 | * Reverse chronological order (last date on top), please * |
---|
| 18 | ---------------------------------------------------------- |
---|
| 19 | |
---|
[1347] | 20 | 23/11/2010 : G.Cosmo breps-V09-03-07 and V09-03-06 |
---|
| 21 | - Fixed remaining cases of pointer handling in experimental G4BezierSurface |
---|
| 22 | code. |
---|
| 23 | |
---|
| 24 | 01/11/2010 : G.Cosmo breps-V09-03-05 |
---|
| 25 | - Fixed cases of null pointer forward in G4BREPSolid, G4BREPSolidPolyhedra |
---|
| 26 | and G4BezierSurface classes. |
---|
| 27 | |
---|
| 28 | 20/10/2010 : G.Cosmo breps-V09-03-04 |
---|
| 29 | - Implemented Clone() virtual method for all solids, returning a pointer |
---|
| 30 | to a dynamically allocated copy of the solid. To be used by Geant4-MT. |
---|
| 31 | |
---|
| 32 | 22/09/2010 : G. Cosmo breps-V09-03-03 |
---|
| 33 | - Implemented copy-constructor and assignment operator for solids classes |
---|
| 34 | to facilitate conversion to Geant4-MT. |
---|
| 35 | |
---|
| 36 | 06/09/2010 : G. Cosmo breps-V09-03-02 |
---|
| 37 | - Fixed possible leak in G4BREPSolid::IsConvex() method. |
---|
| 38 | - Corrected possible dereferencing of null pointer in method |
---|
| 39 | G4BREPSolidSphere::DistanceToOut(). |
---|
| 40 | - Corrected deletion of internal data in G4BSplineCurve::Project() method. |
---|
| 41 | - Fixed possible leak in G4BezierSurface::ClipSurface() method, and fixed |
---|
| 42 | case of dereferenciation of null pointer. |
---|
| 43 | - Fixed leak in destructor of G4ToroidalSurface. |
---|
| 44 | - Added dummy initialisation of static data in G4BoundingBox3D, |
---|
| 45 | G4ProjectedSurface and G4Surface. |
---|
| 46 | |
---|
| 47 | 13/07/2010 : G. Cosmo breps-V09-03-01 |
---|
| 48 | - Fixed compilation warning on Linux for G4Surface... |
---|
| 49 | |
---|
| 50 | 05/07/2010 : G. Cosmo breps-V09-03-00 |
---|
| 51 | - G4Hyperbola: corrected signature to internal Init() function to avoid |
---|
| 52 | parameter passed by value. |
---|
| 53 | - G4Assembly: corrected case of invalid iterator in destructor. |
---|
| 54 | - G4BREPSolid: corrected logic in IsConvex(), avoiding explicit memory leak. |
---|
| 55 | - G4BSplineCurve: corrected initialization of null pointer in Project(); |
---|
| 56 | removed useless typedef. |
---|
| 57 | - G4CompositeCurve, G4SurfaceBoundary: corrected cases of invalid iterator. |
---|
| 58 | - G4OsloMatrix: fixed leak in construction of G4PointMatrix. |
---|
| 59 | - Added fake initializations to constructors in G4BREPSolid, G4Assembly, |
---|
| 60 | G4BREPSolidPCone, G4BREPSolidPolyhedra, G4BSplineSurface, G4BezierSurface, |
---|
| 61 | G4BoundingBox3D, G4CircularCurve, G4Curve, G4CurvePoint, G4Ellipse, |
---|
| 62 | G4FCylindricalSurface, G4FPlane, G4Hyperbola, G4KnotVector, G4OsloMatrix, |
---|
| 63 | G4Parabola, G4ProjectedSurface, G4Ray, G4RectangularTrimmedSurface, |
---|
| 64 | G4Surface, G4ToroidalSurface. |
---|
| 65 | - Code cleanup in G4ConicalSurface, GCylindricalSurface and G4SpericalSurface. |
---|
| 66 | |
---|
[850] | 67 | 08/07/2008 : G. Cosmo breps-V09-01-02 |
---|
| 68 | - Replaced exit() statement with G4Exception in G4Ray. |
---|
[831] | 69 | |
---|
| 70 | 13/03/2008 : G. Cosmo breps-V09-01-01 |
---|
| 71 | - Cleared compilation warnings on gcc-4.3.0 for ambiguous use of parentheses |
---|
| 72 | in condition statements, if-else constructs and empty for-loops. |
---|
| 73 | |
---|
| 74 | 22/01/2008 : T. Nikitina breps-V09-01-00 |
---|
| 75 | - Fixed bug in G4BREPSolidPolyhedra::DistanceToOut() for cases of particle |
---|
| 76 | passing the border of two touching surfaces. |
---|
| 77 | - G4BREPSolidBox: fixed problem in the constructor in definition of the |
---|
| 78 | side for the normal to surface. |
---|
| 79 | |
---|
| 80 | 16/07/2007 : G. Cosmo breps-V09-00-00 |
---|
| 81 | - Added missing initialisations of kCarTolerance in alternative constructors |
---|
| 82 | for G4BoundingBox3D, G4Curve, G4CurveRayIntersection, G4KnotVector. |
---|
| 83 | Addressing problem report #959. |
---|
| 84 | |
---|
| 85 | 18/05/2007 : G. Cosmo breps-V08-03-01 |
---|
| 86 | - Use kAngTolerance and kRadTolerance from G4GeometryTolerance class. |
---|
| 87 | - Coworks with tag "global-V08-03-03". |
---|
| 88 | |
---|
| 89 | 11/05/2007 : G. Cosmo breps-V08-03-00 |
---|
| 90 | - Use call to G4GeometryTolerance instead of kCarTolerance where needed. |
---|
| 91 | - Requires tag "global-V08-03-00" and related tag set. |
---|
| 92 | |
---|
| 93 | 19/10/2006 : G. Cosmo breps-V08-01-00 |
---|
| 94 | - Added GetSurfaceArea() method, accessors and modifiers to base class |
---|
| 95 | G4BREPSolid, implementing the caching mechanism as for volumes. |
---|
| 96 | |
---|
| 97 | 21/12/2005 : G. Cosmo breps-V08-00-00 |
---|
| 98 | - Use explicit 'HepGeom' namespace for 'Identity', to allow for porting |
---|
| 99 | on Windows/VC++ when using CLHEP-2.0.X. |
---|
| 100 | |
---|
| 101 | 09/11/2005 : G. Cosmo breps-V07-01-01 |
---|
| 102 | - Added fake default constructor for concrete solids and G4BREPSolid, |
---|
| 103 | for usage of direct object persistency. |
---|
| 104 | - Implemented changes to support CLHEP-2.0.X for explicit usage of the |
---|
| 105 | CLHEP/HepGeom namespaces for CLHEP types. |
---|
| 106 | - Implemented migration to <sstream> for affected classes: |
---|
| 107 | G4BREPSolidPCone and G4BREPSolidPolyhedra. |
---|
| 108 | |
---|
| 109 | 02/08/2005 : O. Link breps-V07-01-00 |
---|
| 110 | - Fixed problem of double-deletion in G4BREPSolidPolyhedra and |
---|
| 111 | G4BREPSolidPCone destructors. |
---|
| 112 | |
---|
| 113 | 23/03/2005 : J. Allison breps-V07-00-01 |
---|
| 114 | - Added test for Number-Of-Rotation-Steps in G4BREPSolid::GetPolyhedron(). |
---|
| 115 | Requires tag "greps-V07-00-02". |
---|
| 116 | |
---|
| 117 | 03/03/2005 : J. Allison breps-V07-00-00 |
---|
| 118 | - Changed AddThis() with AddSolid() for all solids in DescribeYourselfTo() |
---|
| 119 | implementation for G4BREPSolid and G4BREPSolidOpenPCone. |
---|
| 120 | |
---|
| 121 | 10/10/2004 : J. Allison breps-V06-02-02 |
---|
| 122 | - Added GetPolyhedron, a smart access function that creates a G4Polyhedron |
---|
| 123 | on request and stores for future access. A null pointer means "not |
---|
| 124 | available". |
---|
| 125 | |
---|
| 126 | 22/09/2004 : V. Grichine breps-V06-02-01 |
---|
| 127 | - G4BREPSolid[.hh.icc.cc]: added specific implementation for GetCubicVolume() |
---|
| 128 | to cache the computed value. |
---|
| 129 | |
---|
| 130 | 02/07/2004 : G. Cosmo breps-V06-02-00 |
---|
| 131 | - G4BREPSolidPolyhedra.cc, G4BREPSolidPCone.cc: |
---|
| 132 | o Use squared-half-tolerance for handling with surface distances instead |
---|
| 133 | of 0.5*kCarTolerance, in Inside(p), SurfaceNormal(p), DistanceToIn(p,v), |
---|
| 134 | DistanceToOut(p,v,...). |
---|
| 135 | o Implemented SurfaceNormal(p) to follow specifications for G4VSolid, |
---|
| 136 | i.e. return the normal to the closest surface if the point is not on |
---|
| 137 | boundary. |
---|
| 138 | o Some code cleanup ... |
---|
| 139 | - G4BREPSolid.cc: |
---|
| 140 | o Use squared-half-tolerance for handling with surface distances instead |
---|
| 141 | of 0.5*kCarTolerance, in Inside(p), SurfaceNormal(p), DistanceToIn(p,v), |
---|
| 142 | DistanceToOut(p,v,...), Intersert(r), FinalEvaluation(r,i). |
---|
| 143 | o Some code cleanup ... |
---|
| 144 | |
---|
| 145 | 28/10/2003 : G. Cosmo breps-V05-02-01 |
---|
| 146 | - Migrated to use new G4Exception scheme. |
---|
| 147 | |
---|
| 148 | 30/09/2003 : G. Cosmo breps-V05-02-00 |
---|
| 149 | - Archived unit tests for STEP. |
---|
| 150 | |
---|
| 151 | 04/06/2003 : G. Cosmo breps-V05-01-01 |
---|
| 152 | - Fixes for inclusion of <strstream> in G4BREPSolidPCone.cc in view |
---|
| 153 | of the g4std wrappers migration. |
---|
| 154 | |
---|
| 155 | 21/05/2003 : G. Cosmo breps-V05-01-00 |
---|
| 156 | - G4BREPSolidPCone.cc: commented out verbose-mode in SurfaceNormal(). |
---|
| 157 | Temporary solution to problem reports #425, #431 and #474. |
---|
| 158 | |
---|
| 159 | 28/03/2003 : G. Cosmo breps-V05-00-00 |
---|
| 160 | - Fixed strict pedantic warnings and updated unit tests. |
---|
| 161 | |
---|
| 162 | 03/12/2002 : G. Cosmo breps-V04-01-04 |
---|
| 163 | - Fix to concrete BREPS for porting code on Windows: explicitely name the |
---|
| 164 | internal struct type holding the solid parameters. |
---|
| 165 | |
---|
| 166 | 21/11/2002 : G. Cosmo breps-V04-01-03 |
---|
| 167 | - G4Ray[.hh.icc.cc], G4Surface[.hh.icc.cc]: made static inline methods not |
---|
| 168 | inlined to allow porting on Windows DLLs. |
---|
| 169 | |
---|
| 170 | 07/11/2002 : R. Chytracek breps-V04-01-02 |
---|
| 171 | - All BREP solids + G4PlacedSolids now implement virtual StreamInfo(...) method |
---|
| 172 | end properly expose their construction parameters via this interface to an |
---|
| 173 | std::ostream instance. |
---|
| 174 | |
---|
| 175 | 28/10/2002 : G. Cosmo breps-V04-01-01 |
---|
| 176 | - G4BREPSolid[.hh.cc]: added implementation of StreamInfo() to comply with ne interface |
---|
| 177 | for G4VSolid in "geommng-V04-01-03". |
---|
| 178 | |
---|
| 179 | 16/10/2002 : R. Chytracek breps-V04-01-00 |
---|
| 180 | - G4BREPSolidPCone.cc: fixed creation of begin & end planar surfaces in the case where |
---|
| 181 | [RMIN[0] == 0.0 && RMAX[0] > 0.0] and/or [RMIN[sections] == 0.0 && RMAX[sections] > 0.0]. |
---|
| 182 | Fixes problem report #419. |
---|
| 183 | |
---|
| 184 | 19/04/2002 : R. Chytracek breps-V04-00-05 |
---|
| 185 | - G4BREPSolidPCone.cc: added sanity check of delta phi section value and |
---|
| 186 | exception is thrown saying about this unsupported feature if delta phi |
---|
| 187 | is less than 2*PI. |
---|
| 188 | |
---|
| 189 | 26/02/2002 : G. Cosmo breps-V04-00-04 |
---|
| 190 | - G4ConvexHull.hh: moved initialisation of 'next' to constructor's body. |
---|
| 191 | |
---|
| 192 | 14/02/2002 : R. Chytracek breps-V04-00-03 |
---|
| 193 | - G4BREPSolidPolyhedra.cc: final commit after series of bug fixes and enhancements: |
---|
| 194 | o Added more preconditions checks |
---|
| 195 | o Added code forbidding "teeth" in polyhedra as it brings |
---|
| 196 | high complexity into its implementation |
---|
| 197 | o Fixing comments, removal of debug print-outs |
---|
| 198 | |
---|
| 199 | 13/02/2002 : R. Chytracek breps-V04-00-02 |
---|
| 200 | - Bug fix #354, G4BREPSolidPolyhedra: |
---|
| 201 | o Added new private method for creation of planar surfaces gained |
---|
| 202 | after code refactoring in constructor. |
---|
| 203 | o Fixed bug for problem report #354 by adding the code handling the cases |
---|
| 204 | where user supplies for the same z-section different RMIN or RMAX values. |
---|
| 205 | o This is temporary commit as there is still the problem when user asks for |
---|
| 206 | polyhedra phi segment and z[a] > z[a+1]. This leads to a wrong surface. |
---|
| 207 | |
---|
| 208 | 12/02/2002 : R. Chytracek |
---|
| 209 | - Bug fixes of G4BREPSolidPolyhedra: |
---|
| 210 | o Added enhancement allowing to define RMIN and RMAX to be zero with the |
---|
| 211 | exception of forbidden two consecutive zero RMAX values. |
---|
| 212 | o Refactoring in constructor gained two new private methods for creation of |
---|
| 213 | trapezoidal and triangular side planes of G4BREPSolidPolyhedra. |
---|
| 214 | o Rewritten code for delta phi >= 2*PI case with full classification of |
---|
| 215 | possible cases. |
---|
| 216 | o Fixed sense of end planes. |
---|
| 217 | o Fixed delta phi < 2*PI case where some old code remained after bug fix #266. |
---|
| 218 | |
---|
| 219 | 28/01/2002 : R. Chytracek breps-V04-00-01 |
---|
| 220 | - G4BREPSolidPCone::Inside() method restored back due to the fixes |
---|
| 221 | in G4FPlane + fixes in constructor and ComputePlanarSurface helper |
---|
| 222 | method. |
---|
| 223 | - Fixed first constructor of G4FPlane which now takes another argument |
---|
| 224 | for setting explicitly the sense of a surface if required. |
---|
| 225 | - Fixed G4FPlane::Intersect() method which incorrectly ignored a special |
---|
| 226 | case of a hit on surface point with ray direction opposite to surface |
---|
| 227 | normal. |
---|
| 228 | |
---|
| 229 | 22/01/2002 : R. Chytracek |
---|
| 230 | - Temporary fix of Inside() method in BREPSolidPCone. |
---|
| 231 | - Updated BREPSolidPCone unit test. |
---|
| 232 | |
---|
| 233 | 16/01/2001 : R. Chytracek breps-V04-00-00 |
---|
| 234 | - G4BREPSolidPCone: bugfix for problem report #320. |
---|
| 235 | o Fixed missing use-case in constructor when RMAX and RMIN have been |
---|
| 236 | changed for 2 consecutive equal z-values. Now it creates correctly |
---|
| 237 | 2 planar surfaces as expected. |
---|
| 238 | o Along with that added private method ComputePlanarSurface() gained |
---|
| 239 | by refactoring of some part of the code in the constructor. |
---|
| 240 | o Added useful comments analysing problems with planar surfaces and |
---|
| 241 | showing possible use-cases + some cosmetics. |
---|
| 242 | |
---|
| 243 | 01/08/2001 : R. Chytracek breps-V03-02-03 |
---|
| 244 | - G4BREPSolidPolyhedra.cc: fixed situation when phi1 = 0 dphi1 = 2*pi and |
---|
| 245 | all RMINs = 0.0. In this case the inner planes are not created. |
---|
| 246 | More than 2 z-planes and inner planes are not created whenever two |
---|
| 247 | consecutive RMINs are = 0.0. |
---|
| 248 | Fixes problem report #266. |
---|
| 249 | |
---|
| 250 | 20/07/2001 : G. Cosmo breps-V03-02-02 |
---|
| 251 | - Still fixed for ambiguous use of casts for G4Point3D, G4ThreeVector |
---|
| 252 | and G4Vector3D types. Fixed compilation warnings detected with gcc-2.95-3. |
---|
| 253 | Modified files: G4Axis2Placement3D.icc, G4BREPSolid.cc, G4BREPSolidBox.cc, |
---|
| 254 | G4BREPSolidPCone.cc, G4BREPSolidPolyhedra.cc |
---|
| 255 | |
---|
| 256 | 17/07/2001 : G. Cosmo breps-V03-02-01 |
---|
| 257 | - Fix in G4BSplineCurve::Init() for initialisation of point vector. Replaced |
---|
| 258 | usage of 'reserve' with explicit initialisation of components in collection. |
---|
| 259 | |
---|
| 260 | 11/07/2001 : G. Cosmo breps-V03-02-00 |
---|
| 261 | - Fixes for overloading ambiguity on SUN-CC with new CLHEP-1.7, files: |
---|
| 262 | G4BREPSolidPolyhedra.cc, G4BREPSolidPCone.cc, G4BREPSolidCylinder.cc |
---|
| 263 | and G4BREPSolidCone.cc. |
---|
| 264 | - Synchronized with HEAD. |
---|
| 265 | |
---|
| 266 | 15/06/2001 : G. Cosmo breps-V03-01-02 |
---|
| 267 | - Fixes to allow -ansi compilation on Linux-g++, gcc-2.95-2 compiler: |
---|
| 268 | o G4Ray.cc: changed usage of hypot(x,y) to sqrt(x*x+y*y). |
---|
| 269 | o G4Hyperbola[.icc.cc]: changed usage of atanh(x) to 0.5*log((1+x)/(1-x)). |
---|
| 270 | - G4ProjectedSurface.cc: corrected initialisation of temporary G4Point3D |
---|
| 271 | objects, to use the correct CLHEP constructor. |
---|
| 272 | |
---|
| 273 | 27/04/2001 : G. Cosmo breps-V03-01-01 |
---|
| 274 | - G4BSplineCurve.cc: fixed compilation warnings on HP-UX, concerning |
---|
| 275 | potential uninitialised vector elements. |
---|
| 276 | |
---|
| 277 | 20/04/2001 : G. Cosmo breps-V03-01-00 |
---|
| 278 | - Migration to STL vector: |
---|
| 279 | o G4Assembly: migrated G4PlacedVector typedef. |
---|
| 280 | o G4PlacementVector: migrated G4PlacementVector typedef. |
---|
| 281 | o G4Point3DVector: migrated G4Point3DVector typedef. |
---|
| 282 | o G4CurveVector: migrated G4CurveVector typedef. |
---|
| 283 | o G4BSplineCurve: migrated G4doubleVector typedef and removed |
---|
| 284 | redefinition of G4Point3DVector. |
---|
| 285 | |
---|
| 286 | 05/01/2001 : G. Cosmo breps-V03-00-00 |
---|
| 287 | - Removed useless inclusion of G4OrderedTable.hh from G4Assembly.hh and |
---|
| 288 | G4STEPEntity.hh. |
---|
| 289 | |
---|
| 290 | 20/11/2000 : G. Cosmo breps-V02-00-03 |
---|
| 291 | - Fixes to remove warnings from "-Wall -ansi -pedantic" g++ compiler options: |
---|
| 292 | o commented out variables declared and not used. |
---|
| 293 | o fixed declaration of variables used before being initialised. |
---|
| 294 | o fixed order of initialisation of member data in constructors. |
---|
| 295 | o fixed usage of unsigned-int (size_t) for array indeces. |
---|
| 296 | |
---|
| 297 | 10/11/2000 : G. Cosmo breps-V02-00-02 |
---|
| 298 | - Still minor QA fixes in G4Axis2Placement3D, G4BREPSolid, G4FConicalSurface. |
---|
| 299 | - Fix in G4Ellipse::Project() for computation of u as function of atan2(). |
---|
| 300 | - Fix unit test STEPTest.cc. |
---|
| 301 | |
---|
| 302 | 09/11/2000 : G. Cosmo breps-V02-00-01 |
---|
| 303 | - QA code revision and cleanup (+fixes from CodeWizard filtering): |
---|
| 304 | o Added (private) declarations of copy constructor and assignment operator |
---|
| 305 | where needed: all surfaces, BREP solids, G4CompositeCurve G4OsloMatrix, |
---|
| 306 | G4PlacedSolid, G4SurfaceList. |
---|
| 307 | o Defined/fixed copy contructor and assignment operator to curves/conics, |
---|
| 308 | G4Axis2Placement3D. Added equality check on operator= where needed. |
---|
| 309 | o Added "const" qualifier to accessor methods, wherever needed. |
---|
| 310 | o Made destructor "virtual" wherever missing and added empty destructor |
---|
| 311 | to all BREP solids. |
---|
| 312 | o Changed virtual functions to non-inline wherever's the case. |
---|
| 313 | o Moved "public" data members to protected or private and defined |
---|
| 314 | accessors methods for them: G4BREPSolid, G4BezierSurface, G4ConvexHull, |
---|
| 315 | G4OsloMatrix, G4Surface, G4SurfaceBoundary, G4SurfaceList, G4UVHit. |
---|
| 316 | Changed classes involved to invoke accessors. |
---|
| 317 | o Changed return value to be "const" pointer to functions: |
---|
| 318 | - G4BREPSolid::GetPlace() |
---|
| 319 | - G4BREPSolid::GetBBox() |
---|
| 320 | o G4Assembly: fix in destructor, added call to clearAndDestroy(). |
---|
| 321 | o G4BREPSolid: changed method NumberOfFaces() to GetNumberOfFaces(). |
---|
| 322 | o G4Curve: fixed obsolete workaround for XlC compiler. |
---|
| 323 | o G4OsloMatrix: changed internal class "Matrix" to "G4PointMatrix" and |
---|
| 324 | updated classes making use of it. |
---|
| 325 | o G4ThreeMat: removed unused overloaded operators =, +, -, +=, -=, *. |
---|
| 326 | o Added "inline" qualifier to methods' declarations where missing. |
---|
| 327 | o Added more description to BREP solid classes for the Software Reference |
---|
| 328 | Manual. |
---|
| 329 | |
---|
| 330 | 28/08/2000 : G. Cosmo breps-V02-00-00 |
---|
| 331 | - General reorganisation and code cleanup. No functional changes. |
---|
| 332 | Created .icc files and moved inline methods implementation therein. |
---|
| 333 | - Added comments to headers for the Software Reference Manual. |
---|
| 334 | - Fixes for virtual destructors, inline virtual functions and operators, |
---|
| 335 | const methods and arguments. |
---|
| 336 | - Updated reference outputs for unit tests (tests run on DEC-cxx with |
---|
| 337 | ObjectSpace STL). Random generation changed since release 2.0. |
---|
| 338 | |
---|
| 339 | 13/05/2000 : G. Cosmo breps-V01-01-00 |
---|
| 340 | - Added protection to arguments fed to atan2(x,y) in G4Ellipse::Project(). |
---|
| 341 | |
---|
| 342 | 11/04/2000 : J. Allison |
---|
| 343 | - Removed implementations of G4VisExtent GetExtent() in most sub-classes |
---|
| 344 | of G4VSolid (a default implementation exists in G4VSolid). |
---|
| 345 | Files changed: G4BREPSolid[.hh.cc]. |
---|
| 346 | - All implementations of DescribeYourselfTo (G4VGraphicsScene& scene) const |
---|
| 347 | now correctly written: scene.AddThis(*this). |
---|
| 348 | Files changed: G4BREPSolidOpenPCone.cc. |
---|
| 349 | |
---|
| 350 | 25/02/2000 : G. Cosmo breps-V01-00-02 |
---|
| 351 | G4BSplineSurface[.hh.cc] |
---|
| 352 | - fixed dynamic memory allocation problem with creation of temporary |
---|
| 353 | hits and manipulation of knots. |
---|
| 354 | - rationalized dependencies over G4UVHit, G4ControlPoints and |
---|
| 355 | G4BoundingBox3D classes. |
---|
| 356 | - added initialization of pointers in constructor where missing. |
---|
| 357 | G4BSplineSurfaceWithKnots[.hh.cc] |
---|
| 358 | - created dummy classes. |
---|
| 359 | G4ConicalSurface.cc |
---|
| 360 | - Modified diagnostic message. |
---|
| 361 | G4PointRat.hh |
---|
| 362 | - Removed useless inclusion of G4UVHit.hh. |
---|
| 363 | G4UVHit.hh |
---|
| 364 | - Added missing initialization of data-members where needed. |
---|
| 365 | - Initialized 'next' pointer to zero in costructor. |
---|
| 366 | test/stepfiles |
---|
| 367 | - G4msgc_barrel_solid.stp was corrupted. Fixed. |
---|
| 368 | - Enhanced PERL script correct.pl to parse more complex STEP files. |
---|
| 369 | |
---|
| 370 | 14/02/2000 : G. Cosmo breps-V01-00-01 |
---|
| 371 | G4BSplineSurface.cc - fixed warnings on HP-aCC |
---|
| 372 | - removed cast of G4Surface* to G4SurfaceList* (!) in function |
---|
| 373 | FinalIntersection(). |
---|
| 374 | - replaced wherever needed explicit cast to G4PointRat from G4Point3D |
---|
| 375 | and viceversa, by using appropriate access functions instead. |
---|
| 376 | G4SurfaceList.cc |
---|
| 377 | - initialised 'next' and 'temp' pointers in default constructor. |
---|
| 378 | Changed 'char*' to 'const char*' as return-type for methods returning the |
---|
| 379 | concrete type name; removed temporary cast to char*. Updated files: |
---|
| 380 | - G4ThreeMat.hh, G4Surface.hh, G4SphericalSurface.hh, |
---|
| 381 | G4RectangularTrimmedSurface.hh, G4FPlane.hh, G4FCylindricalSurface.hh, |
---|
| 382 | G4FConicalSurface.hh, G4CylindricalSurface.hh, G4ConicalSurface.hh, |
---|
| 383 | G4Curve.hh, G4BSplineSurface[.hh.cc]. |
---|
| 384 | |
---|
| 385 | 21/01/2000 : G. Cosmo breps-V01-00-00 |
---|
| 386 | Decoupling from NIST STEP reader completed: |
---|
| 387 | - G4RectangularTrimmedSurface.cc: removed inclusion of |
---|
| 388 | SdaiCONFIG_CONTROL_DESIGN.h |
---|
| 389 | - G4PointRat[.hh.cc]: removed unused function |
---|
| 390 | CopyRationalValue(const RealNode&). |
---|
| 391 | - G4Conic[.hh.cc]: removed constructor G4Conic(STEPentity&). |
---|
| 392 | - G4BREPSolid[.hh.cc]: removed unused function CreateSTEPData() and |
---|
| 393 | any references to STEP/instmgr.h. |
---|
| 394 | - G4Parabola.hh: removed declared and NOT defined constructors |
---|
| 395 | G4Parabola(STEPentity&) and G4Parabola(STEPentity&, InstMgr&). |
---|
| 396 | - G4Hyperbola.hh: removed declared and NOT defined constructors |
---|
| 397 | G4Hyperbola(STEPentity&) and G4Hyperbola(STEPentity&, InstMgr&). |
---|
| 398 | - G4Ellipse.hh: removed declared and NOT defined constructors |
---|
| 399 | G4Ellipse(STEPentity&) and G4Ellipse(STEPentity&, InstMgr&). |
---|
| 400 | - G4ControlPoints.hh: removed declared and NOT defined constructor |
---|
| 401 | G4ControlPoints(STEaggregate&, const int). |
---|
| 402 | Temporary fixes for porting on SUN-CC 5.0 compiler. Casts to char*: |
---|
| 403 | - G4ThreeMat.hh, G4Surface.hh, G4SphericalSurface.hh, |
---|
| 404 | G4RectangularTrimmedSurface.hh, G4FPlane.hh, G4FCylindricalSurface.hh, |
---|
| 405 | G4FConicalSurface.hh, G4CylindricalSurface.hh, G4ConicalSurface.hh. |
---|
| 406 | |
---|
| 407 | 08/11/1999 : G. Cosmo breps-V00-01-00 |
---|
| 408 | First step for decoupling BREPS from NIST STEP reader: |
---|
| 409 | - Moved G4NISTStepReader[.hh.cc] and G4StepFileReader[.hh] to |
---|
| 410 | STEPinterface. |
---|
| 411 | - Removed unused references to STEP in G4KnotVector and G4PointRat. |
---|
| 412 | >> Still remaining: reference to STEPaggregate in G4PointRat; |
---|
| 413 | reference to instMgr in G4BREPSolid.cc. |
---|
| 414 | |
---|
| 415 | 10/06/1999 : J. Apostolakis breps-01-00-04 |
---|
| 416 | |
---|
| 417 | G4FPlane.cc: |
---|
| 418 | Rays and planes are now considered parallel if dot product with plane's |
---|
| 419 | normal less than perMillion rather than perThousand (in the Intersect method). |
---|
| 420 | |
---|
| 421 | 28/05/1999 : J. Apostolakis breps-01-00-03a |
---|
| 422 | Tagged. |
---|
| 423 | |
---|
| 424 | |
---|
| 425 | 28/05/1999 : S. Giani |
---|
| 426 | G4BREPSolidPolyhedra.cc |
---|
| 427 | DistanceToOut: Introduced treatment for ray leaving from a boundary. |
---|
| 428 | |
---|
| 429 | |
---|
| 430 | 27/05/1999 : J. Apostolakis breps-01-00-03 |
---|
| 431 | Cosmetic change to G4FCylindricalSurface.cc |
---|
| 432 | |
---|
| 433 | |
---|
| 434 | 25/05/1999 : S. Giani |
---|
| 435 | G4BREPSolidPolyhedra.cc(1.8) |
---|
| 436 | Modified comparison of square distance to use the squared tolerance |
---|
| 437 | (rather than the tolerance). And used <=, instead of <. |
---|
| 438 | G4FPlane.cc(1.5): |
---|
| 439 | Corrected the use of the tolerance in the intersect function |
---|
| 440 | G4SurfaceBoundary.cc(1.4): Return 1 by convention if on surface. |
---|
| 441 | |
---|
| 442 | |
---|
| 443 | 25/05/1999 : S. Magni |
---|
| 444 | G4BREPSolidPCone.cc v1.12: |
---|
| 445 | New version of Inside function, |
---|
| 446 | that uses first intersection & dot prod with normal |
---|
| 447 | (instead of counting the number of distinct intersections) |
---|
| 448 | |
---|
| 449 | |
---|
| 450 | 21/05/1999 : J. Apostolakis breps-01-00-02 |
---|
| 451 | Tagged. |
---|
| 452 | |
---|
| 453 | |
---|
| 454 | 21/05/1999 : S. Magni |
---|
| 455 | G4BREPSolidPCone: Further minor corrections several methods |
---|
| 456 | - protecting HowNear with fabs when cheching against tolearance .. |
---|
| 457 | |
---|
| 458 | |
---|
| 459 | 21/05/1999 : J. Apostolakis |
---|
| 460 | G4BSplineSurface.hh, |
---|
| 461 | G4PointRat.hh, |
---|
| 462 | G4BREPSolid.cc, |
---|
| 463 | G4ProjectedSurface.cc |
---|
| 464 | G4Surface.cc |
---|
| 465 | G4BREPSolid.cc |
---|
| 466 | - changed INFINITY to kInfinity |
---|
| 467 | |
---|
| 468 | |
---|
| 469 | 20/05/1999 : S. Giani |
---|
| 470 | G4Line.cc: |
---|
| 471 | - A preliminary fix to avoid 0-lenght segments has been introduced. |
---|
| 472 | |
---|
| 473 | |
---|
| 474 | 19/05/1999 : S. Magni |
---|
| 475 | G4BREPSolidPCone: Corrected several methods |
---|
| 476 | - constructor to take into account the changed G4FPlane |
---|
| 477 | |
---|
| 478 | - Inside |
---|
| 479 | - SurfaceNormal |
---|
| 480 | - DistanceToIn( p, v) |
---|
| 481 | - DistanceToOut( p, v) |
---|
| 482 | for |
---|
| 483 | corrected behaviour of HowNear, which is for finite surfaces. |
---|
| 484 | ... |
---|
| 485 | G4FCylindricalSurface, |
---|
| 486 | G4FConicalSurface.cc: |
---|
| 487 | Corrected the following methods: |
---|
| 488 | - Intersect |
---|
| 489 | - HowNear |
---|
| 490 | |
---|
| 491 | |
---|
| 492 | 12/05/1999 : S.Giani |
---|
| 493 | G4BREPSolidPolyhedra Corrections by S.Giani: |
---|
| 494 | - Xaxis now corresponds to phi=0 |
---|
| 495 | - partial angle = phiTotal / Nsides |
---|
| 496 | - end planes exact boundary calculation for phiTotal < 2pi |
---|
| 497 | (also including case with RMIN=RMAX) |
---|
| 498 | - Xaxis now properly rotated to compute correct scope of vertixes |
---|
| 499 | - corrected surface orientation for outer faces parallel to Z |
---|
| 500 | - completed explicit setting of the orientation for all faces |
---|
| 501 | - some comparison between doubles avoided by using tolerances. |
---|
| 502 | |
---|
| 503 | G4FPlane corrections |
---|
| 504 | - The constructor using iVec now properly stores both the internal |
---|
| 505 | and external boundaries in the bounds vector. |
---|
| 506 | - Proper initialization of sameSense in both the constructors. |
---|
| 507 | - Addition of third argument (sense) in the second constructor |
---|
| 508 | to ensure consistent setting of the normal in all the client code. |
---|
| 509 | |
---|
| 510 | |
---|
| 511 | |
---|
| 512 | 27/01/1999 : L. Broglia ( new tag : breps-01-00-01 ) |
---|
| 513 | - functions Inside, DistanceToIn and DistanceToOut |
---|
| 514 | are re-written to satisfy requirements |
---|
| 515 | |
---|
| 516 | - these functions are identical into G4BREPSolid |
---|
| 517 | and into G4BREPSolidPCone & Polyhedra because |
---|
| 518 | there are general (see ToDo.txt) |
---|
| 519 | |
---|
| 520 | - corrections of G4BREPSolid::CalculExtent by |
---|
| 521 | Stefano Magni |
---|
| 522 | |
---|
| 523 | |
---|
| 524 | |
---|
| 525 | 14/01/1999 : L. Broglia |
---|
| 526 | - modification of the IntersectRay2D function |
---|
| 527 | |
---|
| 528 | before : void IntersectRay2D(const G4Ray& ray, |
---|
| 529 | G4CurveRayIntersection& is) |
---|
| 530 | |
---|
| 531 | now : G4int IntersectRay2D(const G4Ray& ray) |
---|
| 532 | |
---|
| 533 | return the number of intersections into the curve boundaries, |
---|
| 534 | |
---|
| 535 | ------------------------------------------------------ |
---|
| 536 | |
---|
| 537 | December, 1998 : L. Broglia |
---|
| 538 | |
---|
| 539 | - bugs fixed in order to run correctly test05 |
---|
| 540 | for the first product version |
---|
| 541 | |
---|
| 542 | ------------------------------------------------------ |
---|
| 543 | |
---|
| 544 | November 11, 1998 : L. Broglia |
---|
| 545 | |
---|
| 546 | - correct Inside function for G4SphericalSurface |
---|
| 547 | - create (but now is empty) Inside function for |
---|
| 548 | G4CylindricalSurface |
---|
| 549 | - new implementation into G4CylindricalSurface::Intersect |
---|
| 550 | |
---|
| 551 | |
---|
| 552 | November 04, 1998 L. Broglia geometry-00-03-04 |
---|
| 553 | |
---|
| 554 | - Cleaned up trivial errors on DEC (undefined loop variables). |
---|
| 555 | - Removed old CurveTest, now separate in G4BREPSolidxxxTest files |
---|
| 556 | - Changing the name of the output files. All the tests run correctly with |
---|
| 557 | Linux, Sun, HP and DEC compilers |
---|
| 558 | |
---|
| 559 | ------------------------------------------------------------------------------ |
---|
| 560 | |
---|
| 561 | date: 1998/10/30 22:20:16; author: japost; state: Exp; lines: +11 -5 |
---|
| 562 | Changed |
---|
| 563 | |
---|
| 564 | < HitDistance = closest_point.distance2(RayStart); |
---|
| 565 | |
---|
| 566 | to |
---|
| 567 | > HitDistance = closest_point.distance2((G4Point3D &)RayStart); |
---|
| 568 | |
---|
| 569 | because |
---|
| 570 | distance2( HepPoint3D &p ) |
---|
| 571 | in CLHEP/Point3D |
---|
| 572 | should be |
---|
| 573 | distance2( const HepPoint3D &p ) |
---|
| 574 | as it is const! |
---|
| 575 | |
---|
| 576 | |
---|
| 577 | October 29, 1998 L. Broglia |
---|
| 578 | |
---|
| 579 | - Changed all the occurences of G4Placement into G4Axis2Placement3D. |
---|
| 580 | - Modified G4FPlane - new implementation, inheriting from G4Axis2Placement3D |
---|
| 581 | - Create in G4PointRat INFINITY which is a double and PINFINITY which is a |
---|
| 582 | HepVector3D |
---|
| 583 | - Corrected a bug into G4BREPSolidCylinder |
---|
| 584 | - Created a test for the curves |
---|
| 585 | - Created tests for all BREP solids. |
---|
| 586 | For the moment, only test for the sphere and test for the torus |
---|
| 587 | run correctly |
---|
| 588 | - Created a test which read a STEP file and created the BREP solid |
---|
| 589 | |
---|
| 590 | |
---|
| 591 | |
---|
| 592 | |
---|
| 593 | October 20, 1998 L. Broglia Breps-lionel-tag1-point3D |
---|
| 594 | |
---|
| 595 | - Changed all the occurences of G4Point3d, G4Point2d into G4Point3D, which |
---|
| 596 | is a HepPoint3D. |
---|
| 597 | - Modified G4PointRat - new implementation, inheriting from G4Point3D. |
---|
| 598 | - Changed ThreeVec into Vector3D or Point3D, depending on its use. |
---|
| 599 | |
---|
| 600 | ------------------------------------------------------------------------------ |
---|
| 601 | |
---|
| 602 | October 13, 1998 J. Apostolakis geometry-00-03-01 |
---|
| 603 | |
---|
| 604 | - Tag created. |
---|
| 605 | |
---|
| 606 | October 12, 1998 J. Apostolakis geometry-00-03-01 |
---|
| 607 | |
---|
| 608 | - Small (cosmetic) changes to aid in compilation on Sun, HP. |
---|
| 609 | Renamed local variables, whose name was the same as a class variable or method. |
---|
| 610 | |
---|
| 611 | July 9, 1998: J. Apostolakis breps-00-01-02 |
---|
| 612 | |
---|
| 613 | - Fixes to G4Assembly, to aid STEPinterface. (Jari). |
---|
| 614 | - Fix to G4Placement equality operator. (J.A.) |
---|
| 615 | Compiles on AIX. |
---|
| 616 | |
---|
| 617 | |
---|
| 618 | July 8, 1998: J. Apostolakis breps-00-01-01 |
---|
| 619 | |
---|
| 620 | - Tagged. |
---|
| 621 | |
---|
| 622 | |
---|
| 623 | July 5, 1998: P. Urban |
---|
| 624 | |
---|
| 625 | - Fixes to compile on AIX-AFS. |
---|
| 626 | |
---|
| 627 | |
---|
| 628 | July 2, 1998: J. Apostolakis (for P. Urban) |
---|
| 629 | |
---|
| 630 | - All of Peter Urban's development of Curves is added from |
---|
| 631 | the head of the alpha repository. |
---|
| 632 | |
---|
| 633 | |
---|
| 634 | July 1, 1998: J. Apostolakis (pre-beta01-01) |
---|
| 635 | |
---|
| 636 | - Geant4beta created from alpha07 tag (which was on a branch). |
---|
| 637 | |
---|
| 638 | |
---|
| 639 | ----------------------------------------------------------------- |
---|
| 640 | These fixes were added to alpha07 - which was on a branch from |
---|
| 641 | the head |
---|
| 642 | |
---|
| 643 | June 12, 1998: J. Apostolakis (for J. Sulkimo) |
---|
| 644 | |
---|
| 645 | - Correction to constructor of BREPSolidPCone. |
---|
| 646 | (An out-of-date version was mistakenly included in fix to |
---|
| 647 | Conical Surface). |
---|
| 648 | |
---|
| 649 | June 10, 1998: J. Apostolakis (for J. Sulkimo) |
---|
| 650 | |
---|
| 651 | - Bug fixes to Conical Surface (FConical and Conical) to get |
---|
| 652 | PCone to work. |
---|
| 653 | |
---|
| 654 | ------------------------------------------------------------------ |
---|
| 655 | |
---|
| 656 | June 8, 1998: J. Apostolakis breps-00-06-01 |
---|
| 657 | |
---|
| 658 | - Tagged what seems to be the last version before the merge |
---|
| 659 | of Peter Urban's code. Found this by using day before merge, |
---|
| 660 | May 27th. |
---|
| 661 | |
---|
| 662 | April 28, 1998: G. Cosmo, breps-00-05-07 |
---|
| 663 | |
---|
| 664 | - Cleaned up trivial warnings on DEC (Extraneous semicolons). |
---|
| 665 | - Removed -cfront option from GNUmakefile for DEC. -cfront |
---|
| 666 | overrides ANSI standard rules in cxx-6.0. |
---|
| 667 | |
---|
| 668 | April 24, 1998: J. Sulkimo, breps-00-05-06 |
---|
| 669 | |
---|
| 670 | - fixed scope bugs in for loops |
---|
| 671 | |
---|
| 672 | April 24, 1998: J. Sulkimo, breps-00-05-05-assembly |
---|
| 673 | |
---|
| 674 | - G4Assembly.cc bug fixes in STEP file interaction & placed solids |
---|
| 675 | creation. Heavy changes in method G4Assembly::CopySTEPData |
---|
| 676 | |
---|
| 677 | April 24, 1998: J. Sulkimo, breps-00-05-05-point3d |
---|
| 678 | |
---|
| 679 | - rerenamed G4Point3d.hh to G4Point3d.h to avoid file name conflict on |
---|
| 680 | NT |
---|
| 681 | |
---|
| 682 | April 23, 1998: G. Cosmo |
---|
| 683 | - Added missing canonical implementation of operator== in G4PlacedSolid.hh |
---|
| 684 | |
---|
| 685 | |
---|
| 686 | April 22, 1998: J. Sulkimo, breps-00-05-03-assembly (recorded by J.Apostolakis) |
---|
| 687 | |
---|
| 688 | - Bug Fixes to G4Assembly, requiring changes to the files: |
---|
| 689 | |
---|
| 690 | include/G4Assembly.hh |
---|
| 691 | include/G4PlacedSolid.hh |
---|
| 692 | include/G4StepFileReader.hh |
---|
| 693 | src/G4Assembly.cc |
---|
| 694 | src/G4BREPSolid.cc |
---|
| 695 | src/G4CurveBoundary.cc |
---|
| 696 | src/G4PlacedSolid.cc |
---|
| 697 | src/G4Surface.cc |
---|
| 698 | |
---|
| 699 | |
---|
| 700 | March 18, 1998: P. Urban, breps-00-05-02 |
---|
| 701 | |
---|
| 702 | - Names of lots of member functions changed: |
---|
| 703 | |
---|
| 704 | BoxOrNo to IsBox |
---|
| 705 | ConvexOrConcave to IsConvex |
---|
| 706 | + removing _ and capitalization. |
---|
| 707 | |
---|
| 708 | Cleanup of the code will continue later. |
---|
| 709 | |
---|
| 710 | |
---|
| 711 | March 18, 1998: P. Urban, breps-00-05-01d |
---|
| 712 | |
---|
| 713 | - Some member functions were removed. Renamed G4B_SplineCurve. |
---|
| 714 | |
---|
| 715 | March 18, 1998: P. Urban, breps-00-05-01c |
---|
| 716 | |
---|
| 717 | - the following classes have been renamed: |
---|
| 718 | |
---|
| 719 | from to |
---|
| 720 | |
---|
| 721 | G4B_SplineCurve G4BSplineCurve |
---|
| 722 | G4B_SplineCurve_With_Knots G4BSplineCurveWithKnots |
---|
| 723 | G4B_SplineSurface G4BSplineSurface |
---|
| 724 | G4Conic G4ConicalSurface |
---|
| 725 | G4Cylinder G4CylindricalSurface |
---|
| 726 | G4EllipticCurve G4Ellipse |
---|
| 727 | G4FConic G4FConicalSurface |
---|
| 728 | G4FCylinder G4FCylindricalSurface |
---|
| 729 | G4HyperbolicCurve G4Hyperbola |
---|
| 730 | G4ParabolicCurve G4Parabola |
---|
| 731 | G4PlaneSurface G4FPlane |
---|
| 732 | G4Rational_B_SplineCurve G4RationalBSplineCurve |
---|
| 733 | G4SpheShell G4SphericalSurface |
---|
| 734 | plane G4Plane |
---|
| 735 | uv_hit G4UVHit |
---|
| 736 | |
---|
| 737 | March 18, 1998: P. Urban, breps-00-05-01b |
---|
| 738 | |
---|
| 739 | - some class names will be changed; renaming the files (but not the classes!) |
---|
| 740 | was done. |
---|
| 741 | |
---|
| 742 | March 18, 1998: P. Urban, breps-00-05-01a |
---|
| 743 | |
---|
| 744 | - *.h files renamed to *.hh. |
---|
| 745 | |
---|
| 746 | March 18, 1998: P. Urban, breps-00-05-01 |
---|
| 747 | |
---|
| 748 | - Modifications made before alpha05 which are not part of alpha05 |
---|
| 749 | for some reason. |
---|
| 750 | |
---|
| 751 | |
---|
| 752 | |
---|
| 753 | |
---|
| 754 | |
---|
| 755 | |
---|
| 756 | |
---|
| 757 | |
---|
| 758 | |
---|
| 759 | |
---|
| 760 | |
---|