[root] / trunk / geom / geom / src / TGeoTorus.cxx Repository:
ViewVC logotype

Log of /trunk/geom/geom/src/TGeoTorus.cxx

Parent Directory Parent Directory


Links to HEAD: (view) (download) (as text) (annotate)
Sticky Revision:

Revision 48928 - (view) (download) (as text) (annotate) - [select for diffs]
Modified Mon Mar 25 15:45:11 2013 UTC (22 months ago) by agheata
File length: 42052 byte(s)
Diff to previous 44507
Large scale cleanup in shapes navigation interfaces adding const modifier for point and direction parameters passed as input arguments.

Revision 44507 - (view) (download) (as text) (annotate) - [select for diffs]
Modified Mon Jun 4 12:30:41 2012 UTC (2 years, 7 months ago) by axel
File length: 41956 byte(s)
Diff to previous 39203
Remove
  using namespace std;
from Riostream.h, which has huge consequences for all of ROOT.
Riostream.h is now a simple wrapper for fstream, iostream, iomanip for backward compatibility; Riosfwd.h simply wraps iosfwd.

Because of templates and their inline functions, Riostream.h needed to be included in headers, too (e.g. TParameter.h), which violated the assumption that Riostream.h is not exposing its using namespace std to headers.
ROOT now requires R__ANSISTREAM, R__SSTREAM, which does not change the set of supported compilers.

Without "using namespace std", several identifiers are now prefixed by std::; e.g. roofit/* source files now have a using namespace std to keep their coding style.
TFile::MakeProject() now generates "using namespace std" to convert the CINT-style class names into C++ ones.

Revision 39203 - (view) (download) (as text) (annotate) - [select for diffs]
Modified Mon May 16 14:20:43 2011 UTC (3 years, 8 months ago) by agheata
File length: 41916 byte(s)
Diff to previous 39111
tolerance relaxed

Revision 39111 - (view) (download) (as text) (annotate) - [select for diffs]
Modified Thu May 5 13:10:07 2011 UTC (3 years, 8 months ago) by agheata
File length: 41915 byte(s)
Diff to previous 39099
Fix in DistFromOutside

Revision 39099 - (view) (download) (as text) (annotate) - [select for diffs]
Modified Wed May 4 15:01:53 2011 UTC (3 years, 8 months ago) by agheata
File length: 41776 byte(s)
Diff to previous 32395
Improvement for the TGeoTorus::DistFromInside/Outside for points on the boundary

Revision 32395 - (view) (download) (as text) (annotate) - [select for diffs]
Modified Wed Feb 24 11:58:25 2010 UTC (4 years, 10 months ago) by brun
File length: 41013 byte(s)
Diff to previous 28009
From Andrei:
Fix for :  <http://savannah.cern.ch/bugs/?63425>


Array xx in function  TGeoTorus::SolveQuartic(..) on line 954 in
TGeoTorus.cxx has wrong length and in debug mode stack corruption is reported
by VC9.

Revision 28009 - (view) (download) (as text) (annotate) - [select for diffs]
Modified Tue Mar 31 15:46:05 2009 UTC (5 years, 9 months ago) by brun
File length: 41013 byte(s)
Diff to previous 27770
From Andrei:
solves the problem of an infinite loop observed by Chiara in simulation when using my latest precision fix in TGeoTorus.

Revision 27770 - (view) (download) (as text) (annotate) - [select for diffs]
Modified Fri Mar 13 17:02:53 2009 UTC (5 years, 10 months ago) by brun
File length: 40960 byte(s)
Diff to previous 27731
From Andrei:
- The patch highly improves the numerical precision in solving the quartic equation for computing the distance to boundaries. The errors of the distance computation typically peaked at 1E-6 with the old algorithm, but in certain conditions could be as high as 1E-1 to 1E0. The new algorithm makes the precision better than 1E-9 in all cases (typical for most shapes)

Revision 27731 - (view) (download) (as text) (annotate) - [select for diffs]
Modified Mon Mar 9 17:40:56 2009 UTC (5 years, 10 months ago) by brun
File length: 40095 byte(s)
Diff to previous 27624
From Andrei:
- Removed casting away constness in headers, and removed == and != between doubles in all geom code (Philippe's suggestion)
- Info messages suppressed now by the static TGeoManager::SetVerboseLevel(0). We should probably call this at the beginning of stressGeometry.cxx
- Fine tune in TGeoIntersection::DistFromInside() that solves inner boundary crossings in case the starting point is very close to boundary
- TGeoManager::FindInCluster() gives now priority (when selecting between MANY candidates) to the node that was proposed by FindNextBoundary()

Revision 27624 - (view) (download) (as text) (annotate) - [select for diffs]
Modified Thu Feb 26 14:03:09 2009 UTC (5 years, 10 months ago) by brun
File length: 39833 byte(s)
Diff to previous 27611
From Andrei:
fix for a rare crash due to voxelization.
a fine tune in the TGeoTorus::DistFromOutside

Revision 27611 - (view) (download) (as text) (annotate) - [select for diffs]
Modified Wed Feb 25 17:52:37 2009 UTC (5 years, 10 months ago) by brun
File length: 39833 byte(s)
Diff to previous 23478
From Andrei:
fixes a problem in TGeoTorus::DistFromOutside(). 
protection in TGeoCone::DistFromOutsideS()

Revision 23478 - (view) (download) (as text) (annotate) - [select for diffs]
Modified Wed Apr 23 14:36:55 2008 UTC (6 years, 9 months ago) by brun
File length: 39707 byte(s)
Diff to previous 22923
From Andrei:
Fix many shadowed variables.

Revision 22923 - (view) (download) (as text) (annotate) - [select for diffs]
Modified Tue Apr 1 12:34:14 2008 UTC (6 years, 9 months ago) by rdm
File length: 39713 byte(s)
Diff to previous 20882
move geom, geombuilder, geompainter and gdml to geom meta directory.

Revision 20882 - (view) (download) (as text) (annotate) - [select for diffs]
Modified Mon Nov 19 11:31:26 2007 UTC (7 years, 2 months ago) by rdm
Original Path: trunk/geom/src/TGeoTorus.cxx
File length: 39713 byte(s)
Diff to previous 19826
Set property svn:eol-style LF on all source and Makefiles. This should avoid
problems with Win32 line endings ending up in the repository. All MS tools
support LF eols fine.

Revision 19826 - (view) (download) (as text) (annotate) - [select for diffs]
Modified Wed Sep 19 19:56:11 2007 UTC (7 years, 4 months ago) by rdm
Original Path: trunk/geom/src/TGeoTorus.cxx
File length: 39713 byte(s)
Diff to previous 19825
imported svn:keywords Id property

Revision 19825 - (view) (download) (as text) (annotate) - [select for diffs]
Modified Wed Sep 19 19:49:10 2007 UTC (7 years, 4 months ago) by rdm
Original Path: trunk/geom/src/TGeoTorus.cxx
File length: 39765 byte(s)
Diff to previous 19617
remove :$ from tag line

Revision 19617 - (view) (download) (as text) (annotate) - [select for diffs]
Modified Mon Aug 13 16:00:32 2007 UTC (7 years, 5 months ago) by brun
Original Path: trunk/geom/src/TGeoTorus.cxx
File length: 39775 byte(s)
Diff to previous 18553
From Andrei:
Patch for several complex shapes where it is faster to check first if the bounding box is crossed when coming from outside.

Revision 18553 - (view) (download) (as text) (annotate) - [select for diffs]
Modified Mon Apr 23 08:58:53 2007 UTC (7 years, 9 months ago) by brun
Original Path: trunk/geom/src/TGeoTorus.cxx
File length: 39569 byte(s)
Diff to previous 17356
From Andrei:
- new method  TGeoShape::GetMeshNumbers() that allows getting the number of points, segments and polygons in the mesh of any shape - to be used by an upgrade of the overlap checker
- addition in the overlap checker to use the above info
- modifications in TGeoManager for improving performance for tracking geantinos with G4root interface

Revision 17356 - (view) (download) (as text) (annotate) - [select for diffs]
Modified Tue Jan 16 09:04:50 2007 UTC (8 years ago) by brun
Original Path: trunk/geom/src/TGeoTorus.cxx
File length: 38902 byte(s)
Diff to previous 17306
Remove dependencies on TROOT.h

Revision 17306 - (view) (download) (as text) (annotate) - [select for diffs]
Modified Fri Jan 12 16:03:17 2007 UTC (8 years ago) by brun
Original Path: trunk/geom/src/TGeoTorus.cxx
File length: 38921 byte(s)
Diff to previous 16091
   TMath::Abs, TMath::Min, TMath::Max, TMath::Sign, TMath::Range
These functions are unfortunately not defined in a standard way in std::

This include is referenced by a new version of TMath.h.
As a result, TMath.h is back compatible with the previous version.

TMathBase.h is used in place of TMath.h in all the classes
that will go into the future miniCore library.
TMath.h and the TMath implementation will go into a new math sub-directory.

TString.h uses TMathBase.h instead of TMath.h.
As a result, it was necessary to include "TMath.h" in some classes
assuming that TMath was included via TString and using other functions
than the ones defined in TMathBase.h
 ----------------------------------------------------------------------

Revision 16091 - (view) (download) (as text) (annotate) - [select for diffs]
Modified Wed Aug 23 14:48:05 2006 UTC (8 years, 5 months ago) by brun
Original Path: trunk/geom/src/TGeoTorus.cxx
File length: 38902 byte(s)
Diff to previous 15672
From Andrei:
 Fixed incorrect TGeoTorus::GetNmeshVertices().

Revision 15672 - (view) (download) (as text) (annotate) - [select for diffs]
Modified Mon Jul 3 16:10:46 2006 UTC (8 years, 6 months ago) by brun
Original Path: trunk/geom/src/TGeoTorus.cxx
File length: 38720 byte(s)
Diff to previous 14163
from Axel:
Change the signature of SavePrimitive from

  void SavePrimitive(ofstream &out, Option_t *option);
to
  void SavePrimitive(ostream &out, Option_t *option = "");

With this change one can do, eg
   myhist.SavePrimitive(std::cout);

WARNING: do rm -f tree/src/*.o

Revision 14163 - (view) (download) (as text) (annotate) - [select for diffs]
Modified Fri Mar 3 14:26:15 2006 UTC (8 years, 10 months ago) by brun
Original Path: trunk/geom/src/TGeoTorus.cxx
File length: 38712 byte(s)
Diff to previous 14042
From Andrei:
a fix in TGeoTorus::DistFromOutside(). Affected cases: toruses with
Dphi=360 for starting points between Rmin and Rmax.

Revision 14042 - (view) (download) (as text) (annotate) - [select for diffs]
Modified Mon Feb 13 12:12:32 2006 UTC (8 years, 11 months ago) by brun
Original Path: trunk/geom/src/TGeoTorus.cxx
File length: 38597 byte(s)
Diff to previous 13282
From Andrei:
Fix a wrong comment in TGeoTorus::SolveQuartic

Revision 13282 - (view) (download) (as text) (annotate) - [select for diffs]
Modified Fri Nov 18 16:07:59 2005 UTC (9 years, 2 months ago) by brun
Original Path: trunk/geom/src/TGeoTorus.cxx
File length: 38597 byte(s)
Diff to previous 13271
From Andrei:
a patch fixing RS2 and RS4 coding conventions violations..

Revision 13271 - (view) (download) (as text) (annotate) - [select for diffs]
Modified Thu Nov 17 13:17:55 2005 UTC (9 years, 2 months ago) by brun
Original Path: trunk/geom/src/TGeoTorus.cxx
File length: 38431 byte(s)
Diff to previous 12629
From Andrei & Mihaela:
a diff containing the implementation of TGeoShape::Capacity. There are also
few other fixes (see below):

Mihaela:

New method:
  Double_t TGeoShape::Capacity() const;
implemented for all supported shapes. The algorithms provide analytical computation of
shape capacity in [cm^3]. All algorithms are accurate with 2 exceptions:
- TGeoCtub : the formula is just an approximation due to the difficulties to integrate
over the phi angle in the general case.
- TGeoCompositeShape: the computation of the capacity is done by sampling, with an
accuracy of 1%.

Based on this method I extended the implementation of TGeoVolume::Weight(Double_t
precision, Option_t *option). The default value of option is now "va" meaning: verbose
+ analytical. Removing "a" from the default option performs computation of volume
weight using the old algorithm of sampling. I have checked the 2 ways of computing the
weight one against the other and they are consistent.

Andrei:

- fixed a memory leak related to TGeoShapeAssembly ownership
- fixed some tracking problems for assemblies (when the top volume was an assembly)

Revision 12629 - (view) (download) (as text) (annotate) - [select for diffs]
Modified Sun Sep 4 15:16:12 2005 UTC (9 years, 4 months ago) by brun
Original Path: trunk/geom/src/TGeoTorus.cxx
File length: 38152 byte(s)
Diff to previous 12560
Fix coding conventions violations.

Revision 12560 - (view) (download) (as text) (annotate) - [select for diffs]
Modified Tue Aug 30 09:58:41 2005 UTC (9 years, 4 months ago) by brun
Original Path: trunk/geom/src/TGeoTorus.cxx
File length: 38131 byte(s)
Diff to previous 12075
Changes to make the rulechecker happy in directory geom and geompainter.

Revision 12075 - (view) (download) (as text) (annotate) - [select for diffs]
Modified Fri Jun 17 20:31:52 2005 UTC (9 years, 7 months ago) by brun
Original Path: trunk/geom/src/TGeoTorus.cxx
File length: 38131 byte(s)
Diff to previous 11785
Fix a typo in comments of TGeoTorus::SolveQuartic

Revision 11785 - (view) (download) (as text) (annotate) - [select for diffs]
Modified Fri May 13 16:20:38 2005 UTC (9 years, 8 months ago) by brun
Original Path: trunk/geom/src/TGeoTorus.cxx
File length: 38123 byte(s)
Diff to previous 11272
From Mihaela Gheata:
a patch with some fixes in SavePrimitive:

- shapes have now unique pointer names
- matrices used in composite shapes get registered to TGeoManager
- fix in TGeoCompositeShape::SavePrimitive, added
TGeoBoolNode::SavePrimitive

Revision 11272 - (view) (download) (as text) (annotate) - [select for diffs]
Modified Wed Mar 9 18:19:27 2005 UTC (9 years, 10 months ago) by brun
Original Path: trunk/geom/src/TGeoTorus.cxx
File length: 38092 byte(s)
Diff to previous 11204
From Richard Maunder:

Changes to viewer infrastructure (TBuffer3D,TVirtualViewer3D) to
support:

i) Proper shape specific (sphere, tube, etc) descriptions in TBuffer3D
derived classes - c.f. abuse of raw tesselation blocks before.
ii) On demand filling of buffer sections as required by viewer.
iii) Support for local/master frame shapes descriptions & child object
rejection.
iv) Template/placed shapes ids - enabling viewer to detect/receive
common shapes once and just obtain the new position and id of the
duplicate.

Cleans up all producer (g3d/geom) code so no longer has an viewer
specific knowledge - Paint() methods replaced with
GetBuffer3D/FillBuffer3D methods which complete requested sections of
the buffer.

All viewer specific code now sits on the viewer implementation side of
TVirtualViewer3D. Added a TViewer3DPad class for performing the 3D draws
into pad. In future this should be merged with TView/TView3D possibly.

TBuffer3D is now stripped of functional code (aside from memory
management) and various viewer passback options there previously.
Enforced one way passing a const & to viewer.

Buffers (various types) are held as single static inside producer
function e.g. TGeoShape::GetBuffer3D (c.f. single generic buffer type
fetched from pad previously).

For g3d and geom shapes the top level geometry painter (TNode /
TGeoPainter) controlls painting process, requesting shapes to fill
buffer and passing to 3D viewer.

Exceptions are g3d's TPolyLine3D, TPolyMarker3D & TMarker3DBox. These
are 'standalone' shapes - no controlling 'painter' object. They still
implement Paint(), fill buffer and add to viewer directly.

3D viewer still held / created by pad - and pad has it's own viewer
object (TViewer3DPad).

NOTE:

1. Current scheme supports one 3D viewer only - pad, x3d or OpenGL. This
means that pad goes blank when x3d/OGL is spawned, and is updated again
when it is closed. To be revisited - need to support multiple viewers,
of multiple types - which implies explicit naming or pad controlling
enumeration.

2. OGL viewer now responds correct to modifications in pad, without
having to be reinvoked (as previously). x3d is still decoupled (as
previously) so does not rebuild - too difficult to get working.

Revision 11204 - (view) (download) (as text) (annotate) - [select for diffs]
Modified Mon Feb 28 20:52:43 2005 UTC (9 years, 10 months ago) by brun
Original Path: trunk/geom/src/TGeoTorus.cxx
File length: 38049 byte(s)
Diff to previous 11031
In calls to SavePrimitive replace comments in arguments such as
   */*option*/
by
   * /*option*/

Revision 11031 - (view) (download) (as text) (annotate) - [select for diffs]
Modified Thu Feb 3 16:58:57 2005 UTC (9 years, 11 months ago) by brun
Original Path: trunk/geom/src/TGeoTorus.cxx
File length: 38048 byte(s)
Diff to previous 11028
Fix from Andrei to fix a compilation problem on Solaris.

Revision 11028 - (view) (download) (as text) (annotate) - [select for diffs]
Modified Thu Feb 3 11:40:39 2005 UTC (9 years, 11 months ago) by brun
Original Path: trunk/geom/src/TGeoTorus.cxx
File length: 38040 byte(s)
Diff to previous 11002
From Andrei Gheata:
The diffs for the changes from Mihaela. They implement the SavePrimitive method for:
- all shapes
- materials, mixtures and media
- matrices
- TGeoVolume - just a first version

What is missing:
Divisions + manager metod to save:
- all geometry
- just the branch corresponding to one volume

The differences compared to g2root are that:
- when saving just a a branch just materials/media/matrices for that branch are created (module encapsulation)
- instead of creating objects with numerical arguments, the coresponding variables are defined and used.
 e.g. instead of :
   new TGeoBBox("name", 10.,20.,30); the generated code is:

   dx = 10.;
   dy = 20.;
   dz = 30.;
   pShape = new TGeoBBox("name", dx,dy,dz);


The diffs contain also 2 shapes with boundary-safe algorithms: TGeoPara and TGeoTrap

Revision 11002 - (view) (download) (as text) (annotate) - [select for diffs]
Modified Fri Jan 28 10:01:04 2005 UTC (9 years, 11 months ago) by brun
Original Path: trunk/geom/src/TGeoTorus.cxx
File length: 37295 byte(s)
Diff to previous 10699
From Andrei:
I attached the first big chunk of changes.
The methods changed are mostly the implementations of  TGeoShape::DistFromInside/DistFromOutside for some specific shapes. The new algorithms are boundary error tolerant, giving the correct distance even if the point is on the wrong side of the boundary. The calling sequence remains un-changed. The affected shapes for now are: box, trd1, trd2, tube, tube seg, cone, cone seg, pcon, pgon. I will complete few remaining for the full description of ALICE next week (para + arb8 family: trap,gtra).

Revision 10699 - (view) (download) (as text) (annotate) - [select for diffs]
Modified Tue Dec 7 14:24:57 2004 UTC (10 years, 1 month ago) by brun
Original Path: trunk/geom/src/TGeoTorus.cxx
File length: 37228 byte(s)
Diff to previous 10621
From Andrei Gheata:
I attached some diffs as proposed by Matevz and Alja which made their
own GL-based TGeo viewer in GLED. The changes are just structural:

 - lines/polygons filling splitted out from TGeoShape::Paint() as
TGeoShape::SetLinesAndPols(TBuffer3D *buff).
 - Shapes can create and fill a new TBuffer3D with the new method:
TGeoShape::Make3DBuffer() in the local frame

They need this since they have their own geometry tree parsing algorithm
(not the same as in TGeoPainter::PaintNode()) with another
structure/matrix handling system. Basically they just need one buffer
per volume, reusing them since they attach them to TGeoVolume as user
data. Not quite bad idea: they create only once a limited number of
buffers that they re-use without re-filling...

Revision 10621 - (view) (download) (as text) (annotate) - [select for diffs]
Modified Thu Nov 25 12:10:01 2004 UTC (10 years, 2 months ago) by brun
Original Path: trunk/geom/src/TGeoTorus.cxx
File length: 35861 byte(s)
Diff to previous 10498
From Andrei and Mihaela Gheata:
New shape TGeoHype from Mihaela.
This patch contains all modifications in TGeo, additions in
g2root to adjust format of MakeHype(...) and a fix in TBuffer3D.cxx
(Paint("SAME")). Also Mihaela modified geodemo.C

 The modifications (made by Timur probably) TGeoTube::Paint() for making
GL-like tubes are wrong so I temporary disabled them. The global matrix
filled to GL is wrongly retreived (+ it may come from other sources in
case of overlap drawing).

Revision 10498 - (view) (download) (as text) (annotate) - [select for diffs]
Modified Mon Nov 8 09:56:24 2004 UTC (10 years, 2 months ago) by brun
Original Path: trunk/geom/src/TGeoTorus.cxx
File length: 36139 byte(s)
Diff to previous 10313
From Andrei Gheata:
Change names of TGeo functions with confusing names
DistToIn    ->   DistFromOutside
DistToOut ->   DistFromInside
It should be much less confusing since it specifies where the starting
point is supposed to be.

Revision 10313 - (view) (download) (as text) (annotate) - [select for diffs]
Modified Fri Oct 15 15:30:50 2004 UTC (10 years, 3 months ago) by brun
Original Path: trunk/geom/src/TGeoTorus.cxx
File length: 36071 byte(s)
Diff to previous 10047
From Andrei Gheata;
- cleanup of all obsolete methods related to the old 3D visualization in
TGeoPainter
- fix in color settings for TGeoPhysicalNode - minor, but touches most
shape.cxx files
- improved visible node counting - it is now automatic and verbose. By
default the visible depth is automatized for 10000 nodes (as before) but
calling gGeoManager->SetVisLevel(n) disables this and switches to old
style. It can be turned on to automatic state by calling
gGeoManager->SetMaxVisNodes(n) (which also updates the current view).
Limitation : nodes are not recount after setting volumes or branches
invisible unless a new Draw() is called.

Revision 10047 - (view) (download) (as text) (annotate) - [select for diffs]
Modified Tue Sep 14 15:56:15 2004 UTC (10 years, 4 months ago) by brun
Original Path: trunk/geom/src/TGeoTorus.cxx
File length: 36107 byte(s)
Diff to previous 10043
Minor change in the color algorithm such that the previous behaviour of X3D
is not affected.

Revision 10043 - (view) (download) (as text) (annotate) - [select for diffs]
Modified Tue Sep 14 15:15:46 2004 UTC (10 years, 4 months ago) by brun
Original Path: trunk/geom/src/TGeoTorus.cxx
File length: 36080 byte(s)
Diff to previous 9928
Modify all the 3-d primitives to set the true color in the new data member
of TBuffer3D:;fColor. This color is now used directly by the GL viewer.

Revision 9928 - (view) (download) (as text) (annotate) - [select for diffs]
Modified Mon Sep 6 16:42:33 2004 UTC (10 years, 4 months ago) by brun
Original Path: trunk/geom/src/TGeoTorus.cxx
File length: 36075 byte(s)
Diff to previous 9693
From Andrei
-SetBit(kIsReflection) in TGeoShape::paint when the object has a reflection matrix.
-Exploded view works again.
-Set TGeoVolume instead of TGeoShape when filling TBuffer3D
-Modify rootgeom.C ("R" problem). TGeoArb8 allowing definition of vertices in any order.

Revision 9693 - (view) (download) (as text) (annotate) - [select for diffs]
Modified Mon Aug 9 15:23:40 2004 UTC (10 years, 5 months ago) by brun
Original Path: trunk/geom/src/TGeoTorus.cxx
File length: 36016 byte(s)
Diff to previous 9665
From Timur Pocheptsov
Changes to work with the new 3-D viewers

Revision 9665 - (view) (download) (as text) (annotate) - [select for diffs]
Modified Tue Aug 3 16:01:19 2004 UTC (10 years, 5 months ago) by brun
Original Path: trunk/geom/src/TGeoTorus.cxx
File length: 36028 byte(s)
Diff to previous 9311
From Olivier, Timur Pocheptsov , Andrei Gheata and Rene
Mega patch to introduce the new 3-d interface (to be described later).
The new interface has been tested with both X3D and OpenGL under Linux.
Being tested under Windows.
Note that several changes are expected in these classes (OpenGL in particular)
in the coming days.

Revision 9311 - (view) (download) (as text) (annotate) - [select for diffs]
Modified Fri Jun 25 11:59:56 2004 UTC (10 years, 7 months ago) by brun
Original Path: trunk/geom/src/TGeoTorus.cxx
File length: 28929 byte(s)
Diff to previous 8648
From Andrei Gheata:
- TGeoShape::PaintNext() removed from all shapes (for the new
visualization system to be introduced shortly).
The new mechanism is implemented in
TGeoPainter::PaintShape (uses gGeoManager as we discussed), but it also
affect some shapes (TGeoCompositeShape at least)


- New  files: TGeoElement.h /.cxx representing a chemical element. This
is very helpful for the implementation of TFluka. Materials/mixtures can
be now built also based on this new class. An element table is kept
always transient in memory.

- Mihaela implemented the TGeoParaboloid shape: new files:
TGeoParaboloid.h/cxx.

Revision 8648 - (view) (download) (as text) (annotate) - [select for diffs]
Modified Thu Apr 22 14:07:15 2004 UTC (10 years, 9 months ago) by brun
Original Path: trunk/geom/src/TGeoTorus.cxx
File length: 29358 byte(s)
Diff to previous 8565
From Andrei Gheata:
- TGeoXtru navigation now fully implemented by Mihaela
- Improvements in the ray-tracing algorithm
- Added TGeoShape::GetNmeshVertices() to be used by visualization and by
the overlap checker in case of composite shapes (currently the checker
does not work with composites)
- I have created a new demo macro (see /tutorials/geodemo.C in the
attachment) to replace /tutorials/geoshapes.C. Functionality:

  - all previous functionality of geoshapes.C
  - new shapes examples added: TGeoTorus, TGeoXtru, TGeoCompositeShape
  - can call rootgeom.C
  - ray-tracing can be switched on/off
  - comments can be switched on/off
  - demonstrates alignment

Revision 8565 - (view) (download) (as text) (annotate) - [select for diffs]
Modified Tue Apr 13 07:04:42 2004 UTC (10 years, 9 months ago) by brun
Original Path: trunk/geom/src/TGeoTorus.cxx
File length: 29079 byte(s)
Diff to previous 8402
From Andrei Gheata:

- All shapes.cxx - added shape name in InspectShape() + some corrections
in error messages (Bjorn requirement)
- TGeoAtt.cxx - activity flag added (not yet taken into account by tracking)
- TGeoMaterial/Medium - added Cerenkov properties by Andreas (for FLUKA)
- TGeoVolume.h, TGeoManager.k - added *TOGGLE* 's
- TGeoPhysicalNode - possibility to align a physical node. One can
define a physical node according a path, then change its local
transformation matrix OR shape - the corresponding branch is decoupled
from the logical tree and a new trackable branch is created. A
post-alignment check for overlaps can be perfomed for the aligned node.

Revision 8402 - (view) (download) (as text) (annotate) - [select for diffs]
Modified Mon Mar 15 12:23:17 2004 UTC (10 years, 10 months ago) by brun
Original Path: trunk/geom/src/TGeoTorus.cxx
File length: 29038 byte(s)
Diff to previous 7724
Fixes from wrong protections in tests like;
if (iact<3 && *safe) {
should be
if (iact<3 && safe) {
(thanks to Andreas Zoglauer)

Revision 7724 - (view) (download) (as text) (annotate) - [select for diffs]
Modified Thu Dec 11 10:34:55 2003 UTC (11 years, 1 month ago) by brun
Original Path: trunk/geom/src/TGeoTorus.cxx
File length: 29040 byte(s)
Diff to previous 7671
From Andrei

  kBig removed, accessible via inline : TGeoShape::Big()
  kDegRad, kRadDeg changed everywhere with TMath::RadToDeg(),
TMath::DegToRad()

Revision 7671 - (view) (download) (as text) (annotate) - [select for diffs]
Modified Fri Nov 28 13:52:35 2003 UTC (11 years, 1 month ago) by brun
Original Path: trunk/geom/src/TGeoTorus.cxx
File length: 28540 byte(s)
Diff to previous 7167
From Andrei,

several fixes in safety algorithms

Revision 7167 - (view) (download) (as text) (annotate) - [select for diffs]
Modified Thu Aug 28 12:45:10 2003 UTC (11 years, 4 months ago) by brun
Original Path: trunk/geom/src/TGeoTorus.cxx
File length: 28624 byte(s)
Diff to previous 7123
From Andrei Gheata:

- a couple of fixes in TGeoTrd2::DistToIn() and TGeoTorus::DistToIn()
- computation of normals for composite shapes - these can now be
visualized with raytracing.

Revision 7123 - (view) (download) (as text) (annotate) - [select for diffs]
Modified Thu Aug 21 10:17:16 2003 UTC (11 years, 5 months ago) by brun
Original Path: trunk/geom/src/TGeoTorus.cxx
File length: 28643 byte(s)
Diff to previous 7121
A few fixes by Andrei to solve portability problems, in particular under Windows.

Revision 7121 - (view) (download) (as text) (annotate) - [select for diffs]
Modified Thu Aug 21 08:27:34 2003 UTC (11 years, 5 months ago) by brun
Original Path: trunk/geom/src/TGeoTorus.cxx
File length: 28715 byte(s)
Diff to previous 7023
From Andrei Gheata:
- computation of normals to all primitive shapes, except TGeoCompositeShape
- improved TGeoTorus algorithms
- ray tracing feature : works as TGeoVolume::Draw() except that the
volume is ray-traced according to current visualization settings. All
features from a normal drawing are preserved : picking, zooming,
rotating,... The time for producing the ray-traced image scales with the
surface of the current pad (in pixels) and to the number of visible
nodes on screen. The current image can be clipped with any other shape,
defined in the reference frame of the current drawn volume. It works like:
    TGeoTubeSeg *clip = new TGeoTubeSeg(params...);
    gGeoManager->SetClippingShape(clip);
    someVolume->Raytrace();
    ...
    gGeoManager->SetClipping(kFALSE/kTRUE); to disable/enable clipping.
  If the clipping shape is changed, the old one is automatically deleted.

Revision 7023 - (view) (download) (as text) (annotate) - [select for diffs]
Added Thu Jul 31 20:46:40 2003 UTC (11 years, 5 months ago) by brun
Original Path: trunk/geom/src/TGeoTorus.cxx
File length: 31223 byte(s)
New class TGeoTorus by Andrei

This form allows you to request diffs between any two revisions of this file. For each of the two "sides" of the diff, enter a numeric revision.

  Diffs between and
  Type of Diff should be a

Sort log by:

Subversion Admin
ViewVC Help
Powered by ViewVC 1.0.9