1 | $Id: History,v 1.79 2010/11/23 15:15:11 gcosmo Exp $ |
---|
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 | |
---|
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 | |
---|
67 | 08/07/2008 : G. Cosmo breps-V09-01-02 |
---|
68 | - Replaced exit() statement with G4Exception in G4Ray. |
---|
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 | |
---|