[root] / trunk / graf3d / eve / src / TEveLine.cxx Repository:
ViewVC logotype

Log of /trunk/graf3d/eve/src/TEveLine.cxx

Parent Directory Parent Directory


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

Revision 44873 - (view) (download) (as text) (annotate) - [select for diffs]
Modified Tue Jul 3 22:28:20 2012 UTC (2 years, 6 months ago) by matevz
File length: 10860 byte(s)
Diff to previous 44507
Implement somewhat continuous energy loss along track propagation.
Needed for following CMS ID tracks reconstructed with the new generation
tracking software that can reconstruct low-pT looping tracks.

* TEveLine:
  Add function:
    Float_t CalculateLineLength() const;

* TEveTrackPropagator:
  Add functions:
    Int_t    GetCurrentPoint() const;
    Double_t GetTrackLength(Int_t start_point=0, Int_t end_point=-1) const;
  to give more info to propagation steering code.
  Consistent white-space.

* TEveTrack:
  Add option to set energy loss over track length. This is applied at
  points where path-marks are set.

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: 10401 byte(s)
Diff to previous 43201
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 43201 - (view) (download) (as text) (annotate) - [select for diffs]
Modified Fri Mar 2 03:28:49 2012 UTC (2 years, 10 months ago) by matevz
File length: 10396 byte(s)
Diff to previous 33955
Typo in comment.

Revision 33955 - (view) (download) (as text) (annotate) - [select for diffs]
Modified Thu Jun 17 11:33:13 2010 UTC (4 years, 7 months ago) by matevz
File length: 10400 byte(s)
Diff to previous 32528
Merge the following revisions from the fireworks branch:
33909, 33913, 33914, 33916, 33922, 33924, 33925, 33932


33909
=====

Author: matevz
Date: Tue Jun 15 13:05:07 2010
New Revision: 33909

URL: http://root.cern.ch/viewvc?rev=33909&root=root&view=rev
Log:
Add option to switch from scene-centric to viewer-centric controls.
To switch from default, put this into ~/.rootrc:

OpenGL.EventHandler.ViewerCentricControls: 1

Modified:
    branches/dev/fireworks/graf3d/gl/inc/TGLEventHandler.h
    branches/dev/fireworks/graf3d/gl/src/TGLEventHandler.cxx


33913
=====

Author: matevz
Date: Tue Jun 15 15:41:44 2010
New Revision: 33913

URL: http://root.cern.ch/viewvc?rev=33913&root=root&view=rev
Log:
Add help about viewer-centric controls.

Modified:
    branches/dev/fireworks/graf3d/gl/src/TGLSAViewer.cxx


33914
=====

Author: matevz
Date: Tue Jun 15 15:44:08 2010
New Revision: 33914

URL: http://root.cern.ch/viewvc?rev=33914&root=root&view=rev
Log:
Fix help text line endings.

Modified:
    branches/dev/fireworks/graf3d/gl/src/TGLSAViewer.cxx


33916
=====

Author: matevz
Date: Tue Jun 15 16:24:37 2010
New Revision: 33916

URL: http://root.cern.ch/viewvc?rev=33916&root=root&view=rev
Log:
* TEveLineGL
  Do not disable blending if it was enabled form outside, only enforce
  it if smooth line-drawing is requested.

* TGLUtil
  Add helper class TGLCapabilityEnabler -- it makes sure certain
  capability is enabled if the required state is true.

Modified:
    branches/dev/fireworks/graf3d/eve/src/TEveLineGL.cxx
    branches/dev/fireworks/graf3d/gl/inc/TGLUtil.h
    branches/dev/fireworks/graf3d/gl/src/TGLUtil.cxx


33922
=====

Author: matevz
Date: Tue Jun 15 17:14:26 2010
New Revision: 33922

URL: http://root.cern.ch/viewvc?rev=33922&root=root&view=rev
Log:
In SetProjection() use CopyVizParams() to propagate visual parameters to projected replicas -- where it makes sense (everywhere but TEvePolgonSetProjected).

Modified:
    branches/dev/fireworks/graf3d/eve/src/TEveGeoShape.cxx
    branches/dev/fireworks/graf3d/eve/src/TEveLine.cxx
    branches/dev/fireworks/graf3d/eve/src/TEvePointSet.cxx
    branches/dev/fireworks/graf3d/eve/src/TEveStraightLineSet.cxx
    branches/dev/fireworks/graf3d/eve/src/TEveTrack.cxx
    branches/dev/fireworks/graf3d/eve/src/TEveTrackProjected.cxx


33924
=====

Author: matevz
Date: Tue Jun 15 17:27:52 2010
New Revision: 33924

URL: http://root.cern.ch/viewvc?rev=33924&root=root&view=rev
Log:
Remove unnecessary function in TGLCapabilityEnabler.

Modified:
    branches/dev/fireworks/graf3d/gl/inc/TGLUtil.h
    branches/dev/fireworks/graf3d/gl/src/TGLUtil.cxx


33925
=====

Author: matevz
Date: Tue Jun 15 17:28:28 2010
New Revision: 33925

URL: http://root.cern.ch/viewvc?rev=33925&root=root&view=rev
Log:
Fix overriding of smoothness (as in TEveLineGL before).

Modified:
    branches/dev/fireworks/graf3d/eve/src/TEveTrackProjectedGL.cxx


33932
=====

Author: alja
Date: Tue Jun 15 20:17:06 2010
New Revision: 33932

URL: http://root.cern.ch/viewvc?rev=33932&root=root&view=rev
Log:
Add transparency parameter to slice info.

Modified:
    branches/dev/fireworks/graf3d/eve/inc/TEveCaloData.h
    branches/dev/fireworks/graf3d/eve/inc/TEveCaloVizEditor.h
    branches/dev/fireworks/graf3d/eve/src/TEveCalo.cxx
    branches/dev/fireworks/graf3d/eve/src/TEveCalo2DGL.cxx
    branches/dev/fireworks/graf3d/eve/src/TEveCalo3DGL.cxx
    branches/dev/fireworks/graf3d/eve/src/TEveCaloData.cxx
    branches/dev/fireworks/graf3d/eve/src/TEveCaloLegoGL.cxx
    branches/dev/fireworks/graf3d/eve/src/TEveCaloVizEditor.cxx

Revision 32528 - (view) (download) (as text) (annotate) - [select for diffs]
Modified Wed Mar 10 17:02:54 2010 UTC (4 years, 10 months ago) by matevz
File length: 10483 byte(s)
Diff to previous 32430
Add support for projections of elements with non-trivial transformation
matrix. This works for TEvePointSet, TEveLine, TEveTrack and TEveBox.
It was already working for TEveGeoShape before.

Add class TEveBoxProjected and its GL-rendering class.

Add class TEvePoint -- 2D float point.

Implement 2D convex-hull search in static method
  TEveShape::FindConvexHull().

Use ClassDefNV for TEveVector, TEvePoint and TEvePathMark classes.

Consistently include "Riostream.h".

Revision 32430 - (view) (download) (as text) (annotate) - [select for diffs]
Modified Mon Mar 1 19:36:24 2010 UTC (4 years, 10 months ago) by matevz
File length: 10468 byte(s)
Diff to previous 32138
Fix issues reported by Alex Finch.

1. When elements having children were added to the list-tree, the children were
   not added into the list tree and the '+' sign did not appear.

2. Icon used for TEveLine is inhereted from TEvePointSet and causes confusion.
   TEveLine has it's own icon now.

Revision 32138 - (view) (download) (as text) (annotate) - [select for diffs]
Modified Thu Jan 28 15:16:30 2010 UTC (4 years, 11 months ago) by matevz
File length: 10257 byte(s)
Diff to previous 31429
Move definitions of static member-functions to cxx files.

Revision 31429 - (view) (download) (as text) (annotate) - [select for diffs]
Modified Wed Nov 25 18:29:42 2009 UTC (5 years, 1 month ago) by matevz
File length: 9699 byte(s)
Diff to previous 31234
Always propagate marker / line parameters to projected elements,
do not rely on users calling it.

Revision 31234 - (view) (download) (as text) (annotate) - [select for diffs]
Modified Tue Nov 17 14:57:10 2009 UTC (5 years, 2 months ago) by matevz
File length: 8661 byte(s)
Diff to previous 30840
In WriteVizParams(), when outputing a bool to ostream, it happened
that '^@' or '^A' were printed out. To bypass that and properly output
"kTRUE" or "kFALSE" a new protected static function:
  const char* TEveElement::ToString(Bool_t b)
has been introduced.

This is then used wherever appropriate.

Revision 30840 - (view) (download) (as text) (annotate) - [select for diffs]
Modified Fri Oct 23 09:03:14 2009 UTC (5 years, 3 months ago) by matevz
File length: 8631 byte(s)
Diff to previous 29764
Add support for 3D -> 3D projections. This also allows for
scaling (compression/extension) of certain space region as required by
NA62 to show the 200m long detector in a meaningful way.

Several generalizations of the projection infrastructure were
required:

1. TEveProjectable::ProjectedClass() takes an argument:
     virtual TClass* ProjectedClass(const TEveProjection* p) const = 0;
   thus allowing different projected classes for different projections.

2. All TEveProjection::ProjectPoint/Vector(...) functions have an
   additional "depth" argument thus allowing the projected classes to
   skip explicit setting of depth after the point has been projected
   -- this could damage the 3rd component.

   Pre-scaling now supports 3 dimensions.

3. Abstract TEveProjected::SetDepth() has been split into two parts:
   a) It has been implemented in the base class where it checks for
      the projection type (2d) before calling the local function;
   b) Abstract SetDepthLocal() has been added to provide the same
      functionality.
   This allows for the 2d/3d check to be done in place only.

4. New projection class has been introduced: TEve3DProjection.
   It performs pre-scaling and offsets the center.

5. To simplify the projection of lists TEveElementList has been made
   projectable and corresponding TEveElementListProjected class
   introduced. This also fixed the problem with render-state not being
   propagated to projected classes.
   The check whether to project a sub-tree of elements is still performed.

6. TEveGeoShapeProjected has been introduced to represent the 3D
   projection of a TEveGeoShape (2D projection is handled by
   TEvePolygonSetProjected).

   Points, lines and tracks use the same projected class for both 2D
   and 3D projections.

An example showing this functionality has been added as a new tab in
tutorials/eve/projection_prescale.C.

Revision 29764 - (view) (download) (as text) (annotate) - [select for diffs]
Modified Wed Aug 12 11:27:40 2009 UTC (5 years, 5 months ago) by matevz
File length: 8629 byte(s)
Diff to previous 27157
Add functions:
   TEveVector GetLineStart() const;
   TEveVector GetLineEnd()   const;
This makes it easier to join tracks propagated with different propagators.

Revision 27157 - (view) (download) (as text) (annotate) - [select for diffs]
Modified Thu Jan 15 14:05:12 2009 UTC (6 years ago) by brun
File length: 7971 byte(s)
Diff to previous 25422
From Axel:
Replace all references to Text_t by char, still keeping the definition in Rtypes.h

Revision 25422 - (view) (download) (as text) (annotate) - [select for diffs]
Modified Tue Sep 16 20:50:49 2008 UTC (6 years, 4 months ago) by matevz
File length: 7973 byte(s)
Diff to previous 25245
TEveProjections
---------------
Add 'Float_t fMaxTrackStep' to allow control over maximum segment
lenght in projected tracks.

TEveProjectionManagerEditor
---------------------------
Add number entry for setting max projected track-step.

TEveTrackProjected
------------------
Move control for breaking projected tracks to TEveTrack.
In UpdateProjection() call TEveLine::ReduceSegmentLengths() so that
the tracks with high pt (or in low field) do not deviate significantly
from their true path.

TEveTrack
---------
Add controls for breaking of projected tracks:
a) static 'Bool_t fgDefaultBreakProjectedTracks' (moved from TEveTrackProjected)
b) enum EBreakProjectedTracks_e { kBPTDefault, kBPTAlways, kBPTNever }
   with data member 'UChar_t fBreakProjectedTracks'

TEveLine
--------
New method 'void ReduceSegmentLengths(Float_t max)'.
Propagate marker-color and point/line rendering state to projecteds.


TEveTrackPropagator
TEveLineEditor
-------------------
Whitespace.

Revision 25245 - (view) (download) (as text) (annotate) - [select for diffs]
Modified Mon Aug 25 21:44:09 2008 UTC (6 years, 4 months ago) by matevz
File length: 5007 byte(s)
Diff to previous 24449
Merge changes from the eve-dev branch (-r 25202:HEAD). This makes trunk up to date with all developments in eve/ and gl/. eve-dev branch is now obsolete and will be removed.

Revision 24449 - (view) (download) (as text) (annotate) - [select for diffs]
Modified Fri Jun 20 21:37:48 2008 UTC (6 years, 7 months ago) by matevz
File length: 4955 byte(s)
Diff to previous 24004
Implement saving/loading of VizDB via creation/processing of CINT scripts.

TEveManager
-----------
1. Implement Load/SaveVizDB()
2. Add bool members controlling behaviour of VizDB during loading, in
particular whether to replace existing entries and update connected clients.

TEveElement
-----------
1. Implement top-level SaveVizParams() and virtual WriteVizParams()
that is called throughout the element class-hierarchy.
2. Add the following methods that can be called from the context menu:
   - void VizDB_Apply(const char* tag);
   - void VizDB_Reapply();
   - void VizDB_UpdateModel(Bool_t update=kTRUE);
   - void VizDB_Insert(const char* tag, Bool_t replace=kTRUE, Bool_t update=kTRUE);

Other
-----
Virtual WriteVizParams() implemented for the following classes:
TEvePointSet, TEveLine, TEveTrack, TEveTrackList and
TEveStraightLineSet.

Revision 24004 - (view) (download) (as text) (annotate) - [select for diffs]
Modified Sat May 24 20:08:56 2008 UTC (6 years, 8 months ago) by matevz
File length: 4476 byte(s)
Diff to previous 23441
Implement virtual method TEveElement::CopyVizParams(element) for the
following classes: TEvePointSet, TEveLine, TEveTrack, TEveTrackList
and TEveStraightLineSet.

Implemented TEveProjectable::PropagateVizParams().

In TEveGedEditor::Update() call PropagateVizParamsToProjecteds() so
that all representation of given element receive the potential
updates.

Revision 23441 - (view) (download) (as text) (annotate) - [select for diffs]
Modified Wed Apr 23 10:58:08 2008 UTC (6 years, 9 months ago) by brun
File length: 4041 byte(s)
Diff to previous 23140
Fix shadowed variables.

Revision 23140 - (view) (download) (as text) (annotate) - [select for diffs]
Modified Fri Apr 11 11:01:39 2008 UTC (6 years, 9 months ago) by rdm
File length: 4038 byte(s)
Diff to previous 22539
move the following directories to "graf2d":

asimage, freetype, gpad, graf, postscript, qt, win32gdk, x11, x11ttf

move the following directories to "graf3d":

eve, ftgl, g3d, gl, x3d

Revision 22539 - (view) (download) (as text) (annotate) - [select for diffs]
Modified Sat Mar 8 14:36:37 2008 UTC (6 years, 10 months ago) by rdm
Original Path: trunk/eve/src/TEveLine.cxx
File length: 4038 byte(s)
Diff to previous 21198
From Alja, Bertrand & Matevz: merged branches/dev/fireworks 21757:22514.

This includes:

- development for event-displays of ALICE and CMS since 5.18 in eve/,
  gl/ and gui/;

- many new tutorials and demos for eve/;

- fix in TQObject to support class-signals from all base-classes.

Revision 21198 - (view) (download) (as text) (annotate) - [select for diffs]
Modified Wed Dec 5 02:31:27 2007 UTC (7 years, 1 month ago) by matevz
Original Path: trunk/eve/src/TEveLine.cxx
File length: 1395 byte(s)
Diff to previous 21168
Prefix enum types with 'E'.

Fix fix member names to begin with f[A-Z].

Fix function member names to begin with a capital letter.

Add some docs.

Revision 21168 - (view) (download) (as text) (annotate) - [select for diffs]
Modified Tue Dec 4 02:40:22 2007 UTC (7 years, 1 month ago) by matevz
Original Path: trunk/eve/src/TEveLine.cxx
File length: 1393 byte(s)
Diff to previous 21054
Rename structures to end with '_t'.

Revision 21054 - (view) (download) (as text) (annotate) - [select for diffs]
Modified Mon Nov 26 18:00:41 2007 UTC (7 years, 1 month ago) by matevz
Original Path: trunk/eve/src/TEveLine.cxx
File length: 1460 byte(s)
Diff to previous 21044
When including ROOT header files use "" instead of <>.

Replace NULL with 0 in TEveGLText.

TEveTrackPropagator: make public data-members protected and provide
get/set methods. Second attempt at fixing Solaris cc errors: make
Helix and Vertex4d struct declarations public.

Revision 21044 - (view) (download) (as text) (annotate) - [select for diffs]
Added Mon Nov 26 14:31:05 2007 UTC (7 years, 1 month ago) by rdm
Original Path: trunk/eve/src/TEveLine.cxx
File length: 1460 byte(s)
from Matevz:
add the TEve classes to the svn trunk. Code compiles without warnings on
MacOS X, Linux and Windows XP. Tutorials still don't work, as init code
is still missing (coming later today).

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