source: trunk/source/geometry/solids/Boolean/History @ 1348

Last change on this file since 1348 was 1347, checked in by garnier, 14 years ago

geant4 tag 9.4

File size: 16.2 KB
Line 
1
2$Id: History,v 1.67 2010/10/20 07:31:58 gcosmo Exp $
3-------------------------------------------------------------------
4
5     =========================================================
6     Geant4 - an Object-Oriented Toolkit for Simulation in HEP
7     =========================================================
8
9                      Category History file
10                      ---------------------
11This file should be used by G4 developers and category coordinators
12to briefly summarize all major modifications introduced in the code
13and keep track of all category-tags.
14It DOES NOT substitute the  CVS log-message one should put at every
15committal in the CVS repository !
16
17   Please keep a summary of these message in geometry/History!
18
19     ----------------------------------------------------------
20     * Reverse chronological order (last date on top), please *
21     ----------------------------------------------------------
22
23 October 19, 2010  G.Cosmo                geom-bool-V09-03-03
24  - Implemented Clone() virtual method for all solids, returning a pointer
25    to a dynamically allocated copy of the solid. To be used by Geant4-MT.
26
27 September 22, 2010  G.Cosmo              geom-bool-V09-03-02
28  - Implemented copy-constructor and assignment operator for concrete
29    solids classes to facilitate conversion to Geant4-MT.
30
31 July 7, 2010  G.Cosmo                    geom-bool-V09-03-01
32  - Simplified logic in G4UnionSolid::Inside() to exclude obvious
33    conditional cases.
34
35 May 11, 2010  J.Allison                  geom-bool-V09-03-00
36  - Introduced recursive algorithm in CreatePolyhedron(): it uses
37    HepPolyhedronProcessor from 'graphics_reps', which tries small shifts
38    in an attempt to avoid numerical problems in the calculation of the
39    polyhedron in BooleanProcessor. Recursion allows HepPolyhedronProcessor
40    to try all permutations, also for Booleans of Booleans.
41    Helps in reducing the number of cases of "Error in Boolean processor" for
42    visualization, but still some stubborn cases are left.
43
44 Oct 24, 2007  V.Grichine                 geom-bool-V09-00-00
45  - Improved response of Inside() for G4SubtractionSolid and G4UnionSolid
46    according to suggestion in problem report #979.
47
48 May 18, 2007  G.Cosmo                    geom-bool-V08-03-00
49  - Use kAngTolerance and kRadTolerance from G4GeometryTolerance class.
50  - Updated unit tests.
51  - Coworks with tag "global-V08-03-03".
52
53 Nov 08, 2006  G.Cosmo                    geom-bool-V08-01-02
54  - Fixed compilation problems on SUN-CC for changes in the last tag.
55    Added inclusion of <sstream> header in G4IntersectionSolid.cc and
56    G4UnionSolid.cc.
57
58 Nov 06, 2006  J.Allison                  geom-bool-V08-01-01
59  - G4IntersectionSolid, G4SubtractionSolid, G4UnionSolid:
60    fixed CreatePolyhedron() for case of component that does
61    not have a G4Polyhedron representation.
62  - Added checks for point on boolean surface to unit tests
63    testG4DisplacedSolid and testG4SubtractionSolid (V.Grichine).
64
65 Oct 19, 2006  G.Cosmo                    geom-bool-V08-01-00
66  - Added GetSurfaceArea() method, accessors and modifiers to base class
67    G4BooleanSolid, implementing the caching mechanism as for volumes.
68
69 May 03, 2006  V.Grichine                 geom-bool-V08-00-00
70  - Fix in G4IntersectionSolid::CalculateExtent() for the correctly handling
71    extent computation for nested intersections and always respect the rule
72    pMax > pMin.
73
74 Nov 09, 2005  G.Cosmo                    geom-bool-V07-01-01
75  - Added fake default constructor for concrete solids types and relevant
76    utility classes, for usage of direct object persistency.
77
78 Sep 15, 2005  V.Grichine                 geom-bool-V07-01-00
79  - Added concrete implementation for GetPointOnSurface() to
80    G4BooleanSolid and G4DisplacedSolid.
81  - Updated unit tests testG4DisplacedSolid and testG4IntersectionSolid.
82
83 May 04, 2005  V.Grichine                 geom-bool-V07-00-03
84  - Make the new implementation of Inside() with surface-normal for
85    edges/vertices the deafult one.
86    Removed G4NEW_SURF_NORMAL compilation flag.
87
88 Mar 23, 2005  J.Allison                  geom-bool-V07-00-02
89  - Added test for Number-Of-Rotation-Steps in GetPolyhedron()
90    for G4DisplacedSolid and G4BooleanSolid. Requires tag "greps-V07-00-02".
91
92 Mar 10, 2005  V.Grichine                 geom-bool-V07-00-01
93  - Modified Inside(p) G4SubtractionSolid and G4UnionSolid, to fix
94    inconsistency for non-zero sum of surface-normals.
95    Available only through activation of G4NEW_SURF_NORMAL compilation flag.
96  - Updated unit tests.
97
98 Mar 03, 2005  J.Allison
99  - Changed AddThis() to AddSolid() in the concrete implementations of
100    DescribeYourselfTo(G4VGraphicsScene&) for all solids. Use the
101    newly available CreatePolyhedron() for components of Boolean
102    solids, instead of GetPolyhedron().
103
104 Feb 22, 2005  V.Grichine                 geom-bool-V07-00-00
105  - Fix in G4IntersectionSolid::DistanceToIn(p,v) to allow for correct
106    simmetrical treatment of the solids' intersection. Algorithm reviewed
107    as proposed by D.Bazzacco in problem report #723.
108  - New unit test testBoolSurfaceInOut.cc for checking dIn-dOut and AB,
109    BA booleans on surface.
110
111 Oct 10, 2004  J.Allison                  geom-bool-V06-02-01
112  - Added GetPolyhedron, a smart access function that creates a G4Polyhedron
113    on request and stores for future access.  A null pointer means "not
114    available".
115
116 Sep 22, 2004   V.Grichine                geom-bool-V06-02-00
117  - Added specific implementation for G4BooleanSolid::GetCubicVolume()
118    to cache the computed value.
119  - Moved inline methods for G4BooleanSolid to .icc file.
120
121 May 07, 2004   G.Cosmo                   geom-bool-V06-01-00
122  - Moved G4ReflectedSolid class to "management" module.
123  - Moved G4ReflectionFactory class to "volumes" module.
124  - Moved unit test for reflection to "volumes" module.
125  - Coworks with tags: geommng-V06-01-00, geomvol-V06-01-00 and
126                       geomdiv-V06-01-00.
127
128 Feb 27, 2004   V.Grichine                geom-bool-V06-00-00
129  - G4UnionSolid.cc, G4SubtractionSolid.cc: fix in debug printout for
130    SurfaceNomal().
131
132 Dec 01, 2003   G.Cosmo                   geom-bool-V05-02-04
133  - G4ReflectedSolid.cc: fixed trivial leak in constructor.
134
135 Nov 03, 2003   G.Cosmo                   geom-bool-V05-02-03
136  - Code cleanup and headers inclusion review
137    (replaced by forward declarations where necessary).
138
139 Oct 28, 2003   G.Cosmo                   geom-bool-V05-02-02
140  - Migration to new G4Exception scheme.
141
142 Oct 28, 2003   J.Apostolakis
143  - Modified test/GNUmakefile to delete un-necessary directories.
144    It no longer refers to navigator (old volumes), but includes
145    intercoms (for G4VVisManager).
146
147 Oct  9, 2003   V.Grichine                geom-bool-V05-02-01
148  - Fixes to default safety to zero in DistIn/Out(p) methods.
149    Note: Using previous test GNUmakefile (to be corrected).
150
151 Sep 30, 2003   G.Cosmo                   geom-bool-V05-02-00
152  - Updated GNUmakefile for unit tests, according to new structure
153    introduced in "geometry-V05-02-00".
154
155 Jun 12, 2003   G.Cosmo                   geom-bool-V05-01-02
156  - G4ReflectionFactory:
157    o Made public accessors: GetConstituentLV(), GetReflectedLV(),
158      IsConstituent() and IsReflected().
159    o Added accessor GetReflectedVolumesMap() to access list of
160      reflected volumes.
161
162 May 22, 2003   G.Cosmo                   geom-bool-V05-01-01
163  - Implementations for Set/GetScalePrecision() in G4ReflectionFactory
164    missing! Now fixed.
165
166 May 12, 2003   G.Cosmo                   geom-bool-V05-01-00
167  - Added set/get methods for scale precision in G4ReflectionFactory.
168
169 Mar 25, 2003   G.Cosmo                   geom-bool-V05-00-01
170  - Fixed trivial strict pedantic warnings in G4ReflectedSolid.cc and
171    G4ReflectionFactory.cc.
172  - Minor fixes to unit tests.
173
174 Jan 27, 2003   G.Cosmo                   geom-bool-V05-00-00
175  - G4ReflectionFactory[.hh.cc] (courtesy of I.Hrivnacova):
176    o Added set/get functions Set/GetVolumesNameExtension() for volume-name
177      extension. By default now the factory assigns "_refl" postfix to name
178      of reflected volumes.
179    o Assumed less strict condition in the CheckScale() method, to avoid
180      precision problems with imported rotation matrices.
181
182 Oct 29  2002  Gabriele Cosmo       geom-bool-V04-01-01
183  - Added method CleanTransformations() to G4DisplacedSolid and corrected
184    implementation in destructor of G4BooleanSolid to not call for deletion
185    of G4VSolid in the case where displacement is used.
186    This fixes a problem noticed on Linux-g++ at application closeout for
187    double deletion of a solid in such special case.
188
189 Oct 28  2002  Gabriele Cosmo       geom-bool-V04-01-00
190  - Added implementation of StreamInfo() to comply with new interface for
191    G4VSolid in "geommng-V04-01-03".
192  - Some cosmetic changes to code formatting.
193  - Extended unit tests to include new user test-cases (V.Grichine).
194
195 May 11  2002  Vladimir Grichine    geom-bool-V04-00-05
196  - G4ReflectedSolid.cc: bounding-box like algorithm for CalculateExtent().
197
198 Apr 16  2002  Vladimir Grichine    geom-bool-V04-00-04
199  - G4ReflectedSolid.cc: enhanced algorithm for CalculateExtent(), now
200    passing all basic unit tests.
201  - Updated unit test for G4ReflectedSolid, testG4ReflectedSolid.cc
202
203 Mar 26  2002  Vladimir Grichine    geom-bool-V04-00-03
204  - G4ReflectedSolid.cc: modified implementation of CalculateExtent() to
205    properly consider transformation of reflected extent.
206
207 Feb 15  2002  Vladimir Grichine    geom-bool-V04-00-02
208  - G4ReflectedSolid[.hh.cc]:
209    o Defined new methods Set/GetTransform3D() and Set/GetDirectTransform3D()
210      for defining/accessing the real reflected transformation
211    o Moved methods for G4AffineTransform to protected.
212
213 Feb 07  2002  Gabriele Cosmo       geom-bool-V04-00-01
214  - G4ReflectionFactory.cc: fixed bug causing repetition of daughter volumes.
215
216 Jan 10  2002  Gabriele Cosmo       geom-solid-bool-V04-00-00
217  - Moved all verbosity mode warnings to G4BOOLDEBUG and commented exceptions.
218  - Activated G4BOOLDEBUG mechanism in GNUmakefile.
219  - Fixed unit tests.
220
221 Nov 08  2001  Gabriele Cosmo       geom-solid-bool-V03-02-02
222  - Fix for verbosity in G4ReflectionFactory.cc. Reduced of one level.
223
224 Oct 18  2001  Gabriele Cosmo       geom-solid-bool-V03-02-01
225  - Introduced first implementation of classes G4ReflectedSolid and
226    G4ReflectionFactory for reflections of positioned volumes
227    (courtesy of V.Grichine and I.Hrivnacova).
228  - Fixed bug in G4ReflectedSolid::CreatePolyhedron().
229
230 Aug 13  2001  Vladimir Grichine    geom-solid-bool-V03-02-00
231  - Introduced G4BOOLDEBUG flag and replaced G4Exception statements with
232    simple warnings to G4cerr for rare occurences of anomalous conditions.
233
234 May 30  2001  Vladimir Grichine    geom-solid-bool-V03-01-00
235  - G4IntersectionSolid: fix in DistanceToIn(p,v) resolving bug observed
236    in problem report #153.
237
238 Mar 19  2001  Gabriele Cosmo       geom-solid-bool-V03-00-03
239
240  - G4IntersectionSolid:
241    o fix in CalculateExtent() for computation of pMin and pMax, to avoid
242      assignment in case CalculateExtent() of one component solid fails.
243    o fix in Inside() to return kOutside in case first component solid's
244      Inside() returns kOutside.
245  - G4UnionSolid:
246    o fix in CalculateExtent() for computation of pMin and pMax: initialised
247      local variables.
248
249 Jan 31  2001  Gabriele Cosmo       geom-solid-bool-V03-00-02
250
251  - Fix in G4UnionSolid::DistanceToOut(p,v,...) for assignment of
252    argument *n. Previous fix was incomplete!
253
254 Jan 23  2001  Gabriele Cosmo       geom-solid-bool-V03-00-01
255 
256  - Fixed wrong labels for G4Exception calls in G4UnionSolid.cc and
257    G4SubtractionSolid.cc to identify the correct class.
258    Fixes bug report #200.
259
260 Jan 08  2001  Vladimir Grichine    geom-solid-bool-V03-00-00
261
262  - Fix in G4UnionSolid::DistanceToOut(p,v,...) for assignment of
263    argument *n to happen only if calcNorm is false.
264    (courtesy of D.Williams)
265  - Updated unit tests testG4IntersectionSolid.cc, testG4SubtractionSolid.cc
266    and test/testG4UnionSolid.cc.
267
268 Nov 22  2000  Vladimir Grichine    geom-solid-bool-V02-00-03
269
270  - Added new set methods for matrix/vectors to G4DisplacedSolid:
271      SetTransform(G4AffineTransform&),
272      SetDirectTransform(G4AffineTransform&),
273      SetFrameRotation(const G4RotationMatrix&),
274      SetFrameTranslation(const G4ThreeVector&),
275      SetObjectRotation(const G4RotationMatrix&),
276      SetObjectTranslation(const G4ThreeVector&).
277
278 Nov 20  2000  Gabriele Cosmo       geom-solid-bool-V02-00-02
279
280  - Fixes to remove warnings from "-Wall -ansi -pedantic" g++ compiler options:
281    o commented out variables declared and not used.
282    o fixed declaration of variables used before being initialised.
283    o fixed order of initialisation of member data in constructors.
284    o fixed usage of unsigned-int (size_t) for array indeces.
285
286 Nov 2   2000  Gabriele Cosmo       geom-solid-bool-V02-00-01
287
288  - QA code revision and cleanup (+fixes from CodeWizard filtering):
289    o Added (private) declarations of copy constructor and assignment
290      operator where needed.
291    o Changed virtual functions to non-inline wherever's the case.
292
293 Sep 13  2000  Vladimir Grichine    geom-solid-bool-V02-00-00
294
295  - G4SubtractionSolid.cc: relaxed behavior in SurfaceNormal(p), where
296    it is allowed for a point to be inside the solid. A message is thrown
297    to cerr instead of a G4Exception.
298
299 Jun 26  2000  Vladimir Grichine    geom-solid-bool-V01-01-03
300
301  - Fixed bug in G4SubtractionSolid::DistanceToOut(p,v,...). validNorm
302    flag was uncorrectly set to true. Fixes report #102.
303
304 Jun 6   2000  John Apostolakis     geom-solid-bool-V01-01-02
305
306  - Protecting the use of pointers validNorm and n, if calcNorm is false
307
308 Jun 6   2000  John Allison         geom-solid-bool-V01-01-01
309
310  - Re-enabled CreatePolyhedron() method from G4UnionSolid, G4IntersectionSolid
311    and G4SubtractionSolid.  Coworks with greps-V01-01-04.
312
313 May 26  2000  John Allison         geom-solid-bool-V01-01-00
314
315  - Disabled CreatePolyhedron() method from G4UnionSolid, G4IntersectionSolid
316    and G4SubtractionSolid. It now temporarly returns a NULL pointer.
317    Visualisation of Boolean solids is therefore temporarly disabled, pending
318    a definitive fix in graphics_reps.
319    Files G4UnionSolid.cc, G4SubtractionSolid.cc and G4IntersectionSolid.cc
320    are included in the branch-tag "boolean_nopoly_branch".
321
322 Apr 27  2000  Gabriele Cosmo
323
324  - Reorganised comments for the Software Reference Manual.
325  - Added CVS headers and standard G4 header where missing.
326
327 Apr 11  2000  John Allison
328
329  - CreatePolyhedron implemented for BooleanSolids.
330  - G4DisplacedSolid: reversed implementation of GetFrameRotation and
331    GetObjectRotation, removing inappropriate invertion.
332  - G4DisplacedSolid::GetConstituentMovedSolid() made const.
333
334 Jan 19  2000   Gabriele Cosmo      geom-solid-bool-V01-00-00
335
336  - Syncronized file versions with HEAD (essentially CVS headers changes)
337  - Fixed cases of G4std::min which were not migrated on the HEAD in files:
338    G4UnionSolid.cc and G4IntersectionSolid.cc
339
340 Nov 24  1999                       geom-solid-bool-V00-01-05
341
342  - Small fix in src/G4DisplacedSolid.cc to the return type
343         (const G4AffineTransform --> G4AffineTransform)
344    to conform with the specification of the class.
345
346 Nov 19  1999                       geom-solid-bool-V00-01-04
347
348  -  Fixes from Vladimir, and additional tests
349
350 Nov 10  1999                       geom-solid-bool-V00-01-03b
351
352  - Renamed  GetConstituentSolid to GetConstituentMovedSolid in G4DisplacedSolid
353     to avoid clashing with method that gets the contituents of a G4BooleanSolid.
354
355 Nov 10  1999                       geom-solid-bool-V00-01-03a
356
357  - Tag with additional methods for Persistency
358
359 Nov 10  1999                       geom-solid-bool-V00-01-03-cand
360
361  New method: Get Object Rotation/Translation methods in Displaced Solid
362
363 Nov  9  1999                       geom-solid-bool-V00-01-02-cand
364 
365  - Tag with additional methods for Visualisation
366
367   G4DisplacedSolid,  G4BooleanSolid
368
369      Added methods to access data members:
370          Get Constituent Solid  (int) for Boolean   Solid
371          Get Constituent Solid        for Displaced Solid
372          Get Frame Rotation/Translation methods in Displaced Solid
373
374
375
376  Dec  1  1998   John Apostolakis   geom-boolean-4-ja
377
378    Code portability changes.
379
380  Nov 27  1998   J.Apostolakis & V.Grichine   geom-boolean-3-vg
381
382    Fixes agreed in code review were implemented.
Note: See TracBrowser for help on using the repository browser.