Log of /trunk/graf3d/gl/inc/TGLCamera.h
Parent Directory
Revision
48992 -
(
view)
(
download)
(
as text)
(
annotate)
-
[select for diffs]
Modified
Thu Mar 28 15:26:26 2013 UTC (21 months, 3 weeks ago) by
rdm
File length: 11024 byte(s)
Diff to
previous 46574
From Lifeng Sun:
The attached patchset fixes a bunch of typo in the source:
0001-succes-success.patch
0002-preceed-preced.patch
0003-informations-information.patch
0004-childs-children.patch
0005-avaliable-available.patch
0006-writeable-writable.patch
0007-comand-command.patch
0008-unkown-unknown.patch
0009-wierd-weird.patch
0010-wheter-whether.patch
0011-unecessary-unnecessary.patch
0012-splitted-split.patch
0013-registerd-registered.patch
0014-recieve-receive.patch
0015-processsing-processing.patch
0016-ouput-output.patch
0017-mutiple-multiple.patch
0018-lenght-length.patch
0019-interupted-interrupted.patch
0020-independant-independent.patch
0021-inconsistant-inconsistent.patch
0022-expresion-expression.patch
0023-explicitely-explicitly.patch
0024-enviroment-environment.patch
0025-deafult-default.patch
0026-continous-continuous.patch
0027-completly-completely.patch
0028-commited-committed.patch
0029-choosen-chosen.patch
0030-backgroud-background.patch
0031-auxilliary-auxiliary.patch
0032-authentification-authentication.patch
0033-appropiate-appropriate.patch
0034-an-other-another.patch
0035-environement-environment.patch
0036-targetting-targeting.patch
0037-suppported-supported.patch
0038-paramater-parameter.patch
Revision
46574 -
(
view)
(
download)
(
as text)
(
annotate)
-
[select for diffs]
Modified
Tue Oct 16 17:56:15 2012 UTC (2 years, 3 months ago) by
matevz
File length: 11024 byte(s)
Diff to
previous 44693
Move enums away from global namespace:
- EOverlap is now in namespace Rgl;
- EClipType is now in class TGLClip;
- EPosition and EManipType were not used and have been removed.
EGLCoordType and EGLPlotType are left in top-level. In these two enums all
names begin with kGL so there is less chance for collision.
Revision
44693 -
(
view)
(
download)
(
as text)
(
annotate)
-
[select for diffs]
Modified
Thu Jun 14 18:53:13 2012 UTC (2 years, 7 months ago) by
matevz
File length: 11018 byte(s)
Diff to
previous 34006
Implement arc-ball camera rotation. Use the 'a' key to switch between the
standard (up-direction fixed) and arc-ball rotation modes.
* TGLCamera
Add functions RotateArcBall() and RotateArcBallRad().
Add member 'Bool_t fWasArBalled'. Check its state in standard Rotate
function and fix up direction if needed.
* TGLOrthoCamera, TGLPerspectiveCamera
Use combined view matrix's third vector as the up direction.
* TGLEventHandler
Add arc-ball state variable and key-handling.
Add logic for calling std vs arc-ball camera rotate function.
* TGLSAViewer
Document arc-ball key binding in help text.
Revision
34006 -
(
view)
(
download)
(
as text)
(
annotate)
-
[select for diffs]
Modified
Mon Jun 21 10:36:05 2010 UTC (4 years, 7 months ago) by
matevz
File length: 10787 byte(s)
Diff to
previous 33864
Merge the following revisions from branches/dev/fireworks:
33974, 33980, 33983, 33984, 33994
33974
=====
Author: alja
Date: Thu Jun 17 22:12:00 2010
New Revision: 33974
URL: http://root.cern.ch/viewvc?rev=33974&root=root&view=rev
Log:
TEveCaloLegoGL:
Fix picking of rebinned 3D towers.
TEveCalo3DGL:
Fix highlight rendering.
Modified:
branches/dev/fireworks/graf3d/eve/src/TEveCalo3DGL.cxx
branches/dev/fireworks/graf3d/eve/src/TEveCaloLegoGL.cxx
33980
=====
Author: matevz
Date: Fri Jun 18 18:30:34 2010
New Revision: 33980
URL: http://root.cern.ch/viewvc?rev=33980&root=root&view=rev
Log:
* TGLOverlayElement
Add state enum member to allow:
- hiding of overlay elements;
- preventing overlay events to reach them.
TGLViewerBase::RenderOverlay() not takes bitfield of states that
should be drawn.
* TGLCameraGuide
New overlay element showing axis orientation.
* TGLRnrCtx
Introduce standard functions to setup projection matrix for 2D /
screen based operations and properly applying the selection matrix
when it is active, too:
void ProjectionMatrixPushIdentity();
void ProjectionMatrixPop();
* TGLUtil
Cleanup usage of static float arrays in surroundings of TGLUtil.
Added:
branches/dev/fireworks/graf3d/gl/inc/TGLCameraGuide.h (with props)
branches/dev/fireworks/graf3d/gl/src/TGLCameraGuide.cxx (with props)
Modified:
branches/dev/fireworks/graf3d/gl/inc/LinkDef.h
branches/dev/fireworks/graf3d/gl/inc/TGLCamera.h
branches/dev/fireworks/graf3d/gl/inc/TGLManip.h
branches/dev/fireworks/graf3d/gl/inc/TGLOverlay.h
branches/dev/fireworks/graf3d/gl/inc/TGLRnrCtx.h
branches/dev/fireworks/graf3d/gl/inc/TGLUtil.h
branches/dev/fireworks/graf3d/gl/inc/TGLViewerBase.h
branches/dev/fireworks/graf3d/gl/src/TGLAnnotation.cxx
branches/dev/fireworks/graf3d/gl/src/TGLLightSet.cxx
branches/dev/fireworks/graf3d/gl/src/TGLManip.cxx
branches/dev/fireworks/graf3d/gl/src/TGLRnrCtx.cxx
branches/dev/fireworks/graf3d/gl/src/TGLRotateManip.cxx
branches/dev/fireworks/graf3d/gl/src/TGLScaleManip.cxx
branches/dev/fireworks/graf3d/gl/src/TGLTransManip.cxx
branches/dev/fireworks/graf3d/gl/src/TGLUtil.cxx
branches/dev/fireworks/graf3d/gl/src/TGLViewer.cxx
branches/dev/fireworks/graf3d/gl/src/TGLViewerBase.cxx
Propchange: branches/dev/fireworks/graf3d/gl/inc/TGLCameraGuide.h
('svn:eol-style' added)
Propchange: branches/dev/fireworks/graf3d/gl/inc/TGLCameraGuide.h
('svn:keywords' added)
Propchange: branches/dev/fireworks/graf3d/gl/src/TGLCameraGuide.cxx
('svn:eol-style' added)
Propchange: branches/dev/fireworks/graf3d/gl/src/TGLCameraGuide.cxx
('svn:keywords' added)
33983
=====
Author: matevz
Date: Fri Jun 18 19:19:47 2010
New Revision: 33983
URL: http://root.cern.ch/viewvc?rev=33983&root=root&view=rev
Log:
Add on/off state setter void SetBinaryState(Bool_t).
Modified:
branches/dev/fireworks/graf3d/gl/inc/TGLOverlay.h
33984
=====
Author: matevz
Date: Fri Jun 18 19:35:51 2010
New Revision: 33984
URL: http://root.cern.ch/viewvc?rev=33984&root=root&view=rev
Log:
Replace logical and with binary one.
Modified:
branches/dev/fireworks/graf3d/gl/src/TGLViewerBase.cxx
33994
=====
Author: matevz
Date: Sat Jun 19 14:09:04 2010
New Revision: 33994
URL: http://root.cern.ch/viewvc?rev=33994&root=root&view=rev
Log:
Add 3 new data-members to control mouse/arrow key handling:
Float_t fArrowKeyFactor;
Float_t fMouseDragFactor;
Float_t fMouseWheelFactor;
These are take from rootrc, eg:
OpenGL.EventHandler.ViewerCentricControls: 1
OpenGL.EventHandler.ArrowKeyFactor: -1.0
OpenGL.EventHandler.MouseDragFactor: -1.0
OpenGL.EventHandler.MouseWheelFactor: -1.0
Modified:
branches/dev/fireworks/graf3d/gl/inc/TGLEventHandler.h
branches/dev/fireworks/graf3d/gl/src/TGLEventHandler.cxx
Revision
33864 -
(
view)
(
download)
(
as text)
(
annotate)
-
[select for diffs]
Modified
Mon Jun 14 09:47:19 2010 UTC (4 years, 7 months ago) by
matevz
File length: 10766 byte(s)
Diff to
previous 30366
Merge the following revisions from the fireworks branch:
33631, 33666, 33668, 33690, 33700, 33701, 33702, 33704, 33751, 33753,
33767, 33770, 33774, 33787, 33789, 33790, 33791, 33792, 33796, 33798,
33804, 33817, 33823, 33825
gl/:
----
- extensions for transparency handling in TGLUtil;
- allow disabling of internal viewer selection;
- allow fixing of default camera center;
- fix global light placement -- it was only correct for XoZ floor or
when scene center was at the origin.
eve/:
-----
- propagation of main transparency to projected replicas and to
compound members;
- when projecting TEveStraightLineSet in RhoZ, break lines crossing
the separating plane (required change of internal representation);
- anti-flickering support for TEveBoxSet;
- proper multiple-selection handling in TEveCalo classes;
- small new features, bug fixes in TEveCalo classes.
33631
=====
Author: alja
Date: Fri May 28 12:50:27 2010
New Revision: 33631
URL: http://root.cern.ch/viewvc?rev=33631&root=root&view=rev
Log:
Fix bug in tool tip.
Modified:
branches/dev/fireworks/graf3d/eve/src/TEveCaloData.cxx
33666
=====
Author: matevz
Date: Mon May 31 13:41:54 2010
New Revision: 33666
URL: http://root.cern.ch/viewvc?rev=33666&root=root&view=rev
Log:
Propagate main transparency the same way as main color is propagated:
- from projectables to projecteds;
- in CopyVizParams();
- in TEveCompound to children depending on the following CSC bit settings:
kCSCBApplyMainTransparencyToAllChildren
kCSCBApplyMainTransparencyToMatchingChildren
In TEveElementList add member 'Bool_t fDoTransparency' (analoguous to
fDoColor).
Modified:
branches/dev/fireworks/graf3d/eve/inc/TEveCompound.h
branches/dev/fireworks/graf3d/eve/inc/TEveElement.h
branches/dev/fireworks/graf3d/eve/inc/TEveProjectionBases.h
branches/dev/fireworks/graf3d/eve/src/TEveCompound.cxx
branches/dev/fireworks/graf3d/eve/src/TEveElement.cxx
branches/dev/fireworks/graf3d/eve/src/TEveProjectionBases.cxx
33668
=====
Author: matevz
Date: Mon May 31 15:44:20 2010
New Revision: 33668
URL: http://root.cern.ch/viewvc?rev=33668&root=root&view=rev
Log:
In TEveelement introduce Bool_t members fCanEditMainColor and
fCanEditMainTransparency. The corresponding base-class functions now
return the value of these data members.
In most sub-classes that require editng of main color and transparency
it was now enough to set these data-members to kTRUE in constructors.
Further, this allows per object setting of color / transparency
editability via:
void SetEditMainColor(Bool_t);
void SetEditMainTransparency(Bool_t);
Modified:
branches/dev/fireworks/graf3d/eve/inc/TEveArrow.h
branches/dev/fireworks/graf3d/eve/inc/TEveCalo.h
branches/dev/fireworks/graf3d/eve/inc/TEveDigitSet.h
branches/dev/fireworks/graf3d/eve/inc/TEveElement.h
branches/dev/fireworks/graf3d/eve/inc/TEveGeoShape.h
branches/dev/fireworks/graf3d/eve/inc/TEveShape.h
branches/dev/fireworks/graf3d/eve/inc/TEveText.h
branches/dev/fireworks/graf3d/eve/src/TEveArrow.cxx
branches/dev/fireworks/graf3d/eve/src/TEveCalo.cxx
branches/dev/fireworks/graf3d/eve/src/TEveDigitSet.cxx
branches/dev/fireworks/graf3d/eve/src/TEveElement.cxx
branches/dev/fireworks/graf3d/eve/src/TEveGeoShape.cxx
branches/dev/fireworks/graf3d/eve/src/TEveShape.cxx
branches/dev/fireworks/graf3d/eve/src/TEveText.cxx
33690
=====
Author: matevz
Date: Tue Jun 1 13:07:46 2010
New Revision: 33690
URL: http://root.cern.ch/viewvc?rev=33690&root=root&view=rev
Log:
Add transparency argument to TGLUtil:
RenderPolyMarkers(...)
RenderPolyLine(...)
In eve/ use Char_t for transparency (as it is in gl/).
Until now UChar_t was used in eve/.
Modified:
branches/dev/fireworks/graf3d/eve/inc/TEveCalo.h
branches/dev/fireworks/graf3d/eve/inc/TEveCaloLegoOverlay.h
branches/dev/fireworks/graf3d/eve/inc/TEveCompound.h
branches/dev/fireworks/graf3d/eve/inc/TEveDigitSet.h
branches/dev/fireworks/graf3d/eve/inc/TEveElement.h
branches/dev/fireworks/graf3d/eve/inc/TEveGeoNode.h
branches/dev/fireworks/graf3d/eve/inc/TEveProjectionBases.h
branches/dev/fireworks/graf3d/eve/inc/TEveTriangleSet.h
branches/dev/fireworks/graf3d/eve/inc/TEveUtil.h
branches/dev/fireworks/graf3d/eve/src/TEveCaloLegoEditor.cxx
branches/dev/fireworks/graf3d/eve/src/TEveCaloLegoOverlay.cxx
branches/dev/fireworks/graf3d/eve/src/TEveCaloVizEditor.cxx
branches/dev/fireworks/graf3d/eve/src/TEveCompound.cxx
branches/dev/fireworks/graf3d/eve/src/TEveDigitSet.cxx
branches/dev/fireworks/graf3d/eve/src/TEveElement.cxx
branches/dev/fireworks/graf3d/eve/src/TEveElementEditor.cxx
branches/dev/fireworks/graf3d/eve/src/TEveGeoNode.cxx
branches/dev/fireworks/graf3d/eve/src/TEveLineGL.cxx
branches/dev/fireworks/graf3d/eve/src/TEveProjectionBases.cxx
branches/dev/fireworks/graf3d/eve/src/TEveRGBAPalette.cxx
branches/dev/fireworks/graf3d/eve/src/TEveStraightLineSetGL.cxx
branches/dev/fireworks/graf3d/eve/src/TEveTrackGL.cxx
branches/dev/fireworks/graf3d/eve/src/TEveTrackProjectedGL.cxx
branches/dev/fireworks/graf3d/eve/src/TEveUtil.cxx
branches/dev/fireworks/graf3d/gl/inc/TGLUtil.h
branches/dev/fireworks/graf3d/gl/src/TGLUtil.cxx
branches/dev/fireworks/graf3d/gl/src/TPointSet3DGL.cxx
33700
=====
Author: matevz
Date: Tue Jun 1 18:55:06 2010
New Revision: 33700
URL: http://root.cern.ch/viewvc?rev=33700&root=root&view=rev
Log:
Do not overload TGLUtil::Color() for setting alpha and transparency --
name the functions ColorAlpha() and ColorTransparency().
In TEveStraightLineSetGL pass main-transparency also as transparency
of the marker.
Modified:
branches/dev/fireworks/graf3d/eve/src/TEveStraightLineSetGL.cxx
branches/dev/fireworks/graf3d/gl/inc/TGLUtil.h
branches/dev/fireworks/graf3d/gl/src/TGLPhysicalShape.cxx
branches/dev/fireworks/graf3d/gl/src/TGLUtil.cxx
branches/dev/fireworks/graf3d/gl/src/TGLViewer.cxx
33701
=====
Author: matevz
Date: Tue Jun 1 20:36:47 2010
New Revision: 33701
URL: http://root.cern.ch/viewvc?rev=33701&root=root&view=rev
Log:
TEveProjections:
- Add virtual function
BisectBreakPoint(TEveVector& vL, TEveVector& vR, Float_t eps_sqr=1e-10f);
that find both edges of a segment that is split over two
non-contiguous space-regions.
TEveStraightLineSet:
- Handle breaking of each line segment in a projection and create two
separate parts.
Modified:
branches/dev/fireworks/graf3d/eve/inc/TEveProjections.h
branches/dev/fireworks/graf3d/eve/inc/TEveStraightLineSet.h
branches/dev/fireworks/graf3d/eve/src/TEveProjections.cxx
branches/dev/fireworks/graf3d/eve/src/TEveStraightLineSet.cxx
branches/dev/fireworks/graf3d/eve/src/TEveStraightLineSetGL.cxx
33702
=====
Author: matevz
Date: Tue Jun 1 21:18:54 2010
New Revision: 33702
URL: http://root.cern.ch/viewvc?rev=33702&root=root&view=rev
Log:
Simplify internal representation of marker in a line-set.
Modified:
branches/dev/fireworks/graf3d/eve/inc/TEveStraightLineSet.h
branches/dev/fireworks/graf3d/eve/src/TEveStraightLineSet.cxx
branches/dev/fireworks/graf3d/eve/src/TEveStraightLineSetGL.cxx
33704
=====
Author: matevz
Date: Tue Jun 1 21:28:27 2010
New Revision: 33704
URL: http://root.cern.ch/viewvc?rev=33704&root=root&view=rev
Log:
Remove unused variable.
Modified:
branches/dev/fireworks/graf3d/eve/src/TEveStraightLineSetGL.cxx
33751
=====
Author: matevz
Date: Fri Jun 4 16:14:12 2010
New Revision: 33751
URL: http://root.cern.ch/viewvc?rev=33751&root=root&view=rev
Log:
Small fixes for track rendering.
TEveTrack
- Implement virtual ComputeBBox() to include path-mark positions in
the bounding box calculation.
TEveTrackGL
- Number of visible path-marks was computed wrongly.
TEvePointSet
- Remove virtual ComputeBBox() -- it was just calling the base-class
version.
TPointSet3D
- Simplify ComputeBBox().
Modified:
branches/dev/fireworks/graf3d/eve/inc/TEvePointSet.h
branches/dev/fireworks/graf3d/eve/inc/TEveTrack.h
branches/dev/fireworks/graf3d/eve/src/TEvePointSet.cxx
branches/dev/fireworks/graf3d/eve/src/TEveTrack.cxx
branches/dev/fireworks/graf3d/eve/src/TEveTrackGL.cxx
branches/dev/fireworks/graf3d/g3d/src/TPointSet3D.cxx
33753
=====
Author: matevz
Date: Fri Jun 4 16:45:38 2010
New Revision: 33753
URL: http://root.cern.ch/viewvc?rev=33753&root=root&view=rev
Log:
Move anti-flickering flag from TEveQuadSet to TEveDigitSet.
Implement it in TEveBoxSet-GL rendering, too.
Modified:
branches/dev/fireworks/graf3d/eve/inc/TEveDigitSet.h
branches/dev/fireworks/graf3d/eve/inc/TEveQuadSet.h
branches/dev/fireworks/graf3d/eve/src/TEveBoxSetGL.cxx
branches/dev/fireworks/graf3d/eve/src/TEveDigitSet.cxx
branches/dev/fireworks/graf3d/eve/src/TEveQuadSet.cxx
33767
=====
Author: alja
Date: Mon Jun 7 19:49:03 2010
New Revision: 33767
URL: http://root.cern.ch/viewvc?rev=33767&root=root&view=rev
Log:
In TEveCaloDataVec add interface to add new slice and getters to read slice values and cell geometry.
Modified:
branches/dev/fireworks/graf3d/eve/inc/TEveCaloData.h
branches/dev/fireworks/graf3d/eve/src/TEveCaloData.cxx
33770
=====
Author: matevz
Date: Tue Jun 8 11:54:09 2010
New Revision: 33770
URL: http://root.cern.ch/viewvc?rev=33770&root=root&view=rev
Log:
Take the right fP for point-array when calculating bounding-box.
Modified:
branches/dev/fireworks/graf3d/eve/src/TEveTrack.cxx
33774
=====
Author: alja
Date: Tue Jun 8 13:09:52 2010
New Revision: 33774
URL: http://root.cern.ch/viewvc?rev=33774&root=root&view=rev
Log:
TEveCaloLegoGL:
Fix picking in kValSizeOutline mode.
TEveCaloLegoEditor:
Fix last enum in 2D mode entry.
Modified:
branches/dev/fireworks/graf3d/eve/src/TEveCaloLegoEditor.cxx
branches/dev/fireworks/graf3d/eve/src/TEveCaloLegoGL.cxx
33787
=====
Author: matevz
Date: Tue Jun 8 18:24:27 2010
New Revision: 33787
URL: http://root.cern.ch/viewvc?rev=33787&root=root&view=rev
Log:
Fix invalid iterator access reported by valgrind.
Modified:
branches/dev/fireworks/graf3d/eve/src/TEveCaloLegoGL.cxx
33789
=====
Author: matevz
Date: Tue Jun 8 19:08:23 2010
New Revision: 33789
URL: http://root.cern.ch/viewvc?rev=33789&root=root&view=rev
Log:
Fix another invalid iterator access reported by valgrind.
Modified:
branches/dev/fireworks/graf3d/eve/src/TEveCaloLegoGL.cxx
33790
=====
Author: alja
Date: Tue Jun 8 19:51:15 2010
New Revision: 33790
URL: http://root.cern.ch/viewvc?rev=33790&root=root&view=rev
Log:
Bugfix:: In TEveCaloDataVec::AddSlice initalise vector of tower values.
Modified:
branches/dev/fireworks/graf3d/eve/src/TEveCaloData.cxx
33791
=====
Author: matevz
Date: Tue Jun 8 22:31:00 2010
New Revision: 33791
URL: http://root.cern.ch/viewvc?rev=33791&root=root&view=rev
Log:
Add flag allowing to disable internal GL-viewer selection.
To disable it call:
handler->SetDoInternalSelection(kFALSE);
Modified:
branches/dev/fireworks/graf3d/gl/inc/TGLEventHandler.h
branches/dev/fireworks/graf3d/gl/src/TGLEventHandler.cxx
33792
=====
Author: matevz
Date: Tue Jun 8 23:08:09 2010
New Revision: 33792
URL: http://root.cern.ch/viewvc?rev=33792&root=root&view=rev
Log:
Add option to fix the default camera center.
To activate, call:
camera->SetFixDefCenterVec(x, y, z);
camera->SetFixDefCenter(kTRUE);
This will take effect on next camera reset.
External center still overrides the setting.
Modified:
branches/dev/fireworks/graf3d/gl/inc/TGLCamera.h
branches/dev/fireworks/graf3d/gl/src/TGLCamera.cxx
branches/dev/fireworks/graf3d/gl/src/TGLOrthoCamera.cxx
branches/dev/fireworks/graf3d/gl/src/TGLPerspectiveCamera.cxx
33796
=====
Author: alja
Date: Wed Jun 9 12:51:06 2010
New Revision: 33796
URL: http://root.cern.ch/viewvc?rev=33796&root=root&view=rev
Log:
Fix bug in redering of selected cells in case cells are highlighted the same time.
Modified:
branches/dev/fireworks/graf3d/eve/src/TEveCaloLegoGL.cxx
33798
=====
Author: matevz
Date: Wed Jun 9 15:28:30 2010
New Revision: 33798
URL: http://root.cern.ch/viewvc?rev=33798&root=root&view=rev
Log:
White space.
Modified:
branches/dev/fireworks/graf3d/eve/src/TEveCaloLegoGL.cxx
33804
=====
Author: matevz
Date: Wed Jun 9 20:49:33 2010
New Revision: 33804
URL: http://root.cern.ch/viewvc?rev=33804&root=root&view=rev
Log:
Use central function TEveCaloData::ProcessSelection(...) to process
(multiple secondary) selection from all GL renderers (3D, 2D and
Lego).
Fix rendering of non-rebinned lego for multiple selection.
Modified:
branches/dev/fireworks/graf3d/eve/inc/TEveCaloData.h
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
33817
=====
Author: matevz
Date: Thu Jun 10 15:31:17 2010
New Revision: 33817
URL: http://root.cern.ch/viewvc?rev=33817&root=root&view=rev
Log:
Do not redraw if the widget is not mapped.
Add option to block redraw in UpdateScene().
Modified:
branches/dev/fireworks/graf3d/gl/inc/TGLViewer.h
branches/dev/fireworks/graf3d/gl/src/TGLViewer.cxx
33823
=====
Author: matevz
Date: Thu Jun 10 16:25:59 2010
New Revision: 33823
URL: http://root.cern.ch/viewvc?rev=33823&root=root&view=rev
Log:
Fix placement of global lights.
Modified:
branches/dev/fireworks/graf3d/gl/src/TGLLightSet.cxx
33825
=====
Author: matevz
Date: Thu Jun 10 16:47:54 2010
New Revision: 33825
URL: http://root.cern.ch/viewvc?rev=33825&root=root&view=rev
Log:
Hide tooltip on key event.
Modified:
branches/dev/fireworks/graf3d/gl/src/TGLEventHandler.cxx
Revision
30366 -
(
view)
(
download)
(
as text)
(
annotate)
-
[select for diffs]
Modified
Wed Sep 23 09:23:32 2009 UTC (5 years, 4 months ago) by
matevz
File length: 10421 byte(s)
Diff to
previous 29754
Merge revisions 30010-30222 from the fireworks branch.
- Many new features and some fixes in calorimeter visualization classes.
- New function TGLCamera::SetCenterWarp for positioning of camera.
Revision
29754 -
(
view)
(
download)
(
as text)
(
annotate)
-
[select for diffs]
Modified
Tue Aug 11 15:48:54 2009 UTC (5 years, 5 months ago) by
matevz
File length: 10182 byte(s)
Diff to
previous 28201
* TGLBoundingBox:
- IsEmpty() was using Volume() to decide whether the box is empty.
This caused scenes with 2d objects only to be ignored during scene
selection in TGLViewerBase::PreRender().
* TGLCamera:
- Use TGLBoundingBox::Diagonal() instead of Volume() also for
calculation of OfInterest().
* EVE classes:
- remove workarounds for the TGLBoundingBox bug that accumulated
over time.
Revision
27369 -
(
view)
(
download)
(
as text)
(
annotate)
-
[select for diffs]
Modified
Fri Feb 6 17:35:54 2009 UTC (5 years, 11 months ago) by
matevz
File length: 10269 byte(s)
Diff to
previous 25431
Add function:
Bool_t TGLCamera::Truck(Double_t xDelta, Double_t yDelta)
that allows external code to control camera translation.
Use this also for the common code from perspective / orthographic camera.
Revision
25431 -
(
view)
(
download)
(
as text)
(
annotate)
-
[select for diffs]
Modified
Wed Sep 17 08:35:34 2008 UTC (6 years, 4 months ago) by
matevz
File length: 10210 byte(s)
Diff to
previous 25245
Merge Alja's development since the release from the fireworks branch.
25284
-----
TEveCaloLegoGL, TGLAxisPainter, TGLCameraOverlay:
Fix tick-mark and font offsets.
25291
-----
TGLViewerEditor, TGLViewer, TGLCamera, TGLOrthoCamera,
TGLCameraOverlay, LinkDef.h:
Remove TGLCameraMarkupStyle. Functionality is moved to TGLCameraOverlay.
TGLFontManager:
Add utility function TGLFont::RenderBitmap() to draw pixmap
and bitmap fonts on given location.
TEveProjectionAxesGL:
Use TGLFont::RenderBitmap() function.
cms_calo.C, projection_test_prescale.C, projection_test.C, test_compound.C:
Camera markup is not drawn by default in orthographic projection.
25319
-----
TGLCameraOverlay.cxx:
Fix gl pick matrix.
TEveLegoOverlay:
Move inheritance from TGLOverlayElement to TGLCameraOverlay.
25395
-----
TGLFontManager, TGLAxisPainter, TGLCameraOverlay,TEveLegoOverlay, TEveCaloLegoGL:
Modify utility function TGLFont::RenderBitmap() to render text with given alignment.
TEveProjectionAxes:
Render axis on the edges of viewport instead of on edges of bounding box.
25405
-----
TEveProjectionAxesGL:
Draw axis from start to end of frustum corners if frustum inside projection limits,
else draw axis from low to high projection limit.
Set tick-mark size relative to viewport size.
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: 12201 byte(s)
Diff to
previous 24158
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
24158 -
(
view)
(
download)
(
as text)
(
annotate)
-
[select for diffs]
Modified
Thu Jun 5 17:16:56 2008 UTC (6 years, 7 months ago) by
matevz
File length: 12201 byte(s)
Diff to
previous 23667
From Alja.
TEveCaloData:
Change GetCellData() to const.
TEveCalo:
Set threshold in SetData().
TEveCaloLegoGL:
Fix tick-marks and change rendering order of cells and plane.
TGLCamera:
Coordinate-system conversion functions ViewportDeltaToWorld(),
ViewportToWorld() and WorldToViewport now take an optional argument
specifying model-view matrix to be used in calculation.
Revision
23667 -
(
view)
(
download)
(
as text)
(
annotate)
-
[select for diffs]
Modified
Tue May 6 17:30:36 2008 UTC (6 years, 8 months ago) by
matevz
File length: 12126 byte(s)
Diff to
previous 23666
From Alja:
TEveLegoEventHandler - New class for camera event handling.
TEveCaloLegoGL - Remove code which changed GL model-view matrix.
TGLViewer, TGLViewerBase - New getters.
TGLCamera - Add function GetTheta().
tutorials/eve/cms_calo.C - Structural improvements. Demonstrate
TEveLegoEventHandler.
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: 11988 byte(s)
Diff to
previous 23087
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
23087 -
(
view)
(
download)
(
as text)
(
annotate)
-
[select for diffs]
Modified
Wed Apr 9 14:10:56 2008 UTC (6 years, 9 months ago) by
rdm
Original Path:
trunk/gl/inc/TGLCamera.h
File length: 11988 byte(s)
Diff to
previous 22539
From Alja, Bertrand and Matevz - merged branches/dev/fireworks 22550:23082.
Major changes imported by this merge are:
gl/
====
- reorganization of scene rendering in TGLViewer - render opaque
objects from all scenes first, then all transparent ones;
- improve saving of images from the GL-viewer so that the dialog boxes
and other windows do not result in black areas on the saved image;
- improved management of FTGL fonts accross GL contexts.
eve/
====
- new classes for visualization of calorimeter data in lego mode;
- allow fixed scale beyond given radius for fish-eye projections.
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/gl/inc/TGLCamera.h
File length: 11921 byte(s)
Diff to
previous 21812
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
21812 -
(
view)
(
download)
(
as text)
(
annotate)
-
[select for diffs]
Modified
Tue Jan 22 20:52:31 2008 UTC (7 years ago) by
matevz
Original Path:
trunk/gl/inc/TGLCamera.h
File length: 11911 byte(s)
Diff to
previous 20882
From Alja:
New class TFTGLManager for management of FTGL fonts.
New classes TEveText, TEveTextEditor and TEveTextGL for display and
configuration of a 3D text.
New test macro 'tutorials/eve/text_test.C'.
From Matevz:
Reenable smart-refresh during redraw of TEveScenes.
Minor code-layout changes.
Revision
20292 -
(
view)
(
download)
(
as text)
(
annotate)
-
[select for diffs]
Modified
Wed Oct 10 14:08:48 2007 UTC (7 years, 3 months ago) by
brun
Original Path:
trunk/gl/inc/TGLCamera.h
File length: 11746 byte(s)
Diff to
previous 19826
From Matevz & Alja
* base/inc/TVirtualViewer3D.h:
Add function virtual void ObjectPaint(TObject*, Option_t*).
/**************************************************************************/
* ged/src/TGedEditor.cxx:
When adding top-level TGFrame for the extra tabs specify layout
hints with kLHintsExpandX.
/**************************************************************************/
* gl/inc/TGLScenePad.h:
* gl/src/TGLScenePad.cxx:
Implement virtual TVirtualViewer3D::ObjectPaint().
* gl/src/TGLCamera.cxx:
* gl/inc/TGLCamera.h:
* gl/src/TGLPerspectiveCamera.cxx:
* gl/inc/TGLPerspectiveCamera.h:
* gl/src/TGLOrthoCamera.cxx:
* gl/inc/TGLOrthoCamera.h:
Introduce two transformation matrices to clearly define movement
of camera around the center point. The first transformation matrix
fCamBase defines the coordinate system placed at the camera center
point with camera up-vector as the third base vector. The second
transformation matrix fCamTrans defines the camera transformation
relative to fCamBase.
Implement a common Truck(), Rotate() and Dolly() function for
orthographic and perspective camera.
Implement an option to define camera center point
externally. Center can also be determined via picking.
* gl/src/TGLUtil.cxx:
* gl/inc/TGLUtil.h:
TGLMatrix: add new functions to get/set the base vectors
directly.
TGLUtil: add member UInt_t fgDefaultDrawQuality.
TGLRect: bugfix in Diagonal(), integer calculation overflowed.
* gl/src/TGLViewer.cxx:
* gl/inc/TGLViewer.h:
Make interface to draw camera center point.
Add option to disable/enable depth test when drawing axis guides.
* gl/src/TGLViewerEditor.cxx:
* gl/inc/TGLViewerEditor.h:
Add GUI to manipulate camera center and to disable/enable depth
test when drawing axis guides.
* gl/src/TGLClipSetEditor.cxx:
Change layout of labeled number entries.
* gl/src/TGLLightSet.cxx:
Fix positioning of front light. White-space consolidation.
* gl/src/TGLLightSetEditor.cxx:
* gl/inc/TGLLightSetEditor.h:
Put GUI for the 6 lights in two columns.
/**************************************************************************/
* tutorials/gl/glViewerExercise.C:
Follow-up on changes in TGLCamera. Enable rotation on
orthographic camera.
* tutorials/gl/glViewerLOD.C:
Workourond for cint bug with switch statements.
Revision
19000 -
(
view)
(
download)
(
as text)
(
annotate)
-
[select for diffs]
Modified
Mon Jun 11 19:56:34 2007 UTC (7 years, 7 months ago) by
brun
Original Path:
trunk/gl/inc/TGLCamera.h
File length: 10102 byte(s)
Diff to
previous 17136
From Matevz:
Major restructuring of GL viewer-scene relationship (Matevz)
===================================================
The main idea was to generalize current GL infrustructure so that the
following features can be done in the future:
1. Full pad rendering via GL including 3D histo/func painters and 2D graphics.
2. Implementation of GL canvas (with independent viewers serving as pads).
3. Multi-view event-visualization front-end.
4. Inclusion of external scenes (non-ROOT-gl) in ROOT viewer.
Rendering of ROOT scenes in external GL frameworks.
Changes on the code level
-------------------------
0. Extend current scene/viewer classes into a 2-level class hierarchy.
New classes TGLViewerBase and TGLSceneBase.
1. Allow scenes to be shared among viewers. View-specific scene-cache
needs to be kept at the viewer side.
2. Viewer now manages a list of scenes. It is possible to put together
a combination of scenes (e.g. one showing geometry, another one tracks
and yet another clusters). Each scene can define its own clipping object.
3. Provide API for fine-grained control over rendered object removal,
creation and update. This allows for efficient scene-updates.
4. Disentangle selection, clipping and other markup objects from
within viewer-scene singleton.
New classes TGLClipSet, TGLManipSet.
6. Disentangle selection management.
7. Separate overlay rendering to allow any number of active GL-GUI
elements (like manipulators are now).
New classes TGLOverlayElement.
8. Trailing white space has been removed in all files.
Restructure low-level interface to OpenGL (Timur)
=========================================
1. Allow sharing GL resources among viewers.
2. Do not bind GL-output (windowed or offscreen) to ROOT GUI.
New classes TGLContext, TGLFormat, TGLWidget.
This oboletes TGLKernel and TVirtualGL classes.
Revision
17136 -
(
view)
(
download)
(
as text)
(
annotate)
-
[select for diffs]
Modified
Sat Dec 9 23:04:00 2006 UTC (8 years, 1 month ago) by
rdm
Original Path:
trunk/gl/inc/TGLCamera.h
File length: 9815 byte(s)
Diff to
previous 16151
From Alja:
New class TGLCameraMarkupStyle and virtual TGLCamera::Markup() to draw
viewport/camera information in the GL window. Only implemented for
orthographic projection. Make getter CurrentCamera() public.
Revision
16151 -
(
view)
(
download)
(
as text)
(
annotate)
-
[select for diffs]
Modified
Mon Aug 28 18:28:33 2006 UTC (8 years, 4 months ago) by
brun
Original Path:
trunk/gl/inc/TGLCamera.h
File length: 7751 byte(s)
Diff to
previous 16090
From Matevz:
I made another mistake in gl/: in TGLCamera::OfInterest() i named the argument 'checkSize' instead of 'ignoreSize'.
This patch removes this inconsistency and fixes behaviour for polymarkers whoose (point-count is > 1) && (volume of bounding-box is small but not zero).
Revision
16090 -
(
view)
(
download)
(
as text)
(
annotate)
-
[select for diffs]
Modified
Wed Aug 23 14:39:40 2006 UTC (8 years, 5 months ago) by
brun
Original Path:
trunk/gl/inc/TGLCamera.h
File length: 7749 byte(s)
Diff to
previous 14108
From Matevz Tadel:
1) Implementation of two-level (secondary) selection
Rendering objects can provide a new level of interactivity, for
example a TPointSet3D holding a set of clusters can attach a pointer
to original cluster to each point and receive notifications when a
specified cluster was clicked.
Secondary selection is activated by Control-Left clicking into the
GL window.
2) Improve control over camera-reset behaviour
Allow user to prevent camera reset on scene update and
double-click.
3) Improvements in TPointSet3D(GL)
Detailed ChangeLog
==================
* base/inc/TVirtualViewer3D.h:
Added virtual methods 'void ResetCameras(){}' and 'void
ResetCamerasAfterNextUpdate(){}'.
* gl/inc/TGLScene.h:
* gl/src/TGLScene.cxx:
Implemented two-level selection. It is enabled for next selection
pass by calling ActivateSecSelect().
DoSelect() does not change the selected object but only indicates
which object has been selected by setting new member
'TGLPhysicalShape *fSelectionResult'. Caller (TGLViewer) must call
new method 'void ApplySelection()' to actually change the selected
object to the last selection result.
Changed declaration of selection buffer from being a static varable
within DoSelect() to data-member. This allows post-processing of
selection records needed by two-level selection.
* gl/inc/TGLCamera.h:
* gl/inc/TGLOrthoCamera.h:
* gl/inc/TGLPerspectiveCamera.h:
* gl/src/TGLCamera.cxx:
* gl/src/TGLOrthoCamera.cxx:
* gl/src/TGLPerspectiveCamera.cxx:
Added Bool_t argument with default value to:
virtual void TGLCamera::Setup(const TGLBoundingBox & box, Bool_t
reset=kTRUE) = 0;
By setting it to false one can change camera parameters for new
scene bounding-box without repositioning the camera.
Added 'Bool_t checkSize' argument to OfInterest().
This is relevant for marker-classes which can have small
volume/length but are still visible as they are rendered in
pixel-coordinates. Value of this argument is needed in TGLScene
(DestroyPhysicals) and TGLViewer (AddObject). It is obtained by
calling virtual method TGLLogicalShape::IgnoreSizeForOfInterest().
This method returns false by defalut and is overriden in
TGLPolyMarker and TPointSet3DGL.
* gl/inc/TGLViewer.h:
* gl/src/TGLViewer.cxx:
Added controls for camera-reset behaviour.
Data-members: 'Bool_t fResetCamerasOnUpdate', 'Bool_t
fResetCamerasOnNextUpdate', 'Bool_t fResetCameraOnDoubleClick'.
Methods: 'ResetCameras()', 'ResetCamerasAfterNextUpdate()',
'ResetCurrentCamera()'.
Added an argument to 'void PostSceneBuildSetup(Bool_t resetCameras).
Added Bool_t return-value to RequestSelect(). It returns true if
result of the selection is different then fSelectedPhysical.
Added method ApplySelection() to interface with TGLScene
selection state. This is called from event-handling functions in
TGLViewer.
Added key-binding for 'Home': ResetCurrentCamera().
* gl/inc/TGLSAViewer.h:
* gl/src/TGLSAViewer.cxx:
Added description of new functionality to fgHelpText.
MSVC was complaining about fgHelpText being too long: I split it
into fgHelpText1 and fgHelpText2.
* gl/inc/TGLDrawFlags.h:
* gl/src/TGLDrawFlags.cxx:
Added members 'Bool_t fSelection' and 'Bool_t
fSecSelection' allowing passing of current selection state to
renderers. This is needed to allow different render-paths during
(secondary) selection.
We should consider passing TGLScene* and/or TGLViewer* down to
DirectDraw() of individual renderers.
* gl/src/TGLDrawable.cxx:
In ShouldCache() return false if secondary selection is in progress.
* gl/src/TGLPhysicalShape.cxx:
Handle new members in TGLDrawFlags.
* gl/inc/TGLLogicalShape.h:
* gl/src/TGLLogicalShape.cxx:
Added three new functions:
1) virtual Bool_t SupportsSecondarySelect() const { return kFALSE; }
This is called by TGLScene::DoSelect() to check is object that was
the result of primary selection supports secondary selection.
2) virtual void ProcessSelection(UInt_t* ptr, TGLViewer*, TGLScene*);
It is called back from TGLViewer after successful secondary
selection. As the object that does the rendering is the only one
that actually knows how the object sub-parts were named it has
to interpret the results.
Both of these should be overriden in classes that support
secondary selection, for example see TPointSet3DGL.
3) virtual Bool_t IgnoreSizeForOfInterest() const { return kFALSE; }
Signals to TGLScene and TGLViewer that volume/lenght of this
class' bounding box should not be considered when checking if
objects of this class are of interest to current camera.
* gl/inc/TGLObject.h:
* gl/src/TGLObject.cxx:
Changed second argument of function:
Bool_t SetModelCheckClass(TObject* obj, const Text_t* classname);
to 'TClass* cls'. This is much more efficient.
* g3d/inc/TPointSet3D.h:
* g3d/src/TPointSet3D.cxx:
Added support for per-point designations (one TObject* per point;
via casting it can be set to anything).
New virtual method 'void PointSelected(Int_t n)' that is called
back after successful secondary selection in TGLViewer (via
virtual TGLLogicalShape::ProcessSelection()).
* gl/inc/TPointSet3DGL.h:
* gl/src/TPointSet3DGL.cxx:
Added support for per-point selection. Point-sizes are taken into
account during selection (by modifying the projection
matrix).
Implemented 'virtual Bool_t TGLDrawable::ShouldCache()' to disable
caching when in primary selection (point-size improvements).
Cross-like marker types are now supported to some extent.
Improved structure of rendering code.
Override 'virtual Bool_t TGLLogicalShape::IgnoreSizeForOfInterest()'
to return true.
Multiply TAttMarker::GetMarkerSize() by 5 before applying.
* gl/inc/TGLPolyMarker.h:
Override 'virtual Bool_t TGLLogicalShape::IgnoreSizeForOfInterest()'
to return true.
Revision
13936 -
(
view)
(
download)
(
as text)
(
annotate)
-
[select for diffs]
Modified
Thu Jan 26 11:59:42 2006 UTC (8 years, 11 months ago) by
brun
Original Path:
trunk/gl/inc/TGLCamera.h
File length: 7669 byte(s)
Diff to
previous 13860
From Richard:
Implement manipulators (translate/scale/rotate) for all shapes in
viewer (previously only clip shapes could use them).
Behaviour:
i) Single selection in viewer - either a normal / clip shape or none.
Current manipulator is attached (and shown) when attached to selection.
ii) Normal viewer shapes are selected using Shift+Left Mouse button (and
have bounding box drawn).
iii) Clip shapes are shown/selected by checking 'Show/Edit' option on
the Scene/Clipping tab of the GUI.
iv) Any exisiting (normal/clip) selection is cleared when making new
choice.
v) (Transparent) clip shapes cannot be selected (picked) directly in the
viewer - normal shape override this.
Rotation properties of shapes are not reflected in GUI currently.
Revision
13860 -
(
view)
(
download)
(
as text)
(
annotate)
-
[select for diffs]
Modified
Wed Jan 18 16:57:59 2006 UTC (9 years ago) by
brun
Original Path:
trunk/gl/inc/TGLCamera.h
File length: 7398 byte(s)
Diff to
previous 13286
From Richard:
Further GL / LOD performance improvements:
i) Shape can indicate LOD support by axis. For tubes TGLCylinder only X+
Y supported. Calc LOD hint based on larger projection of Z faces of
bounding box, avoiding excessive LOD for long tubes.
ii) Only test time limited draws every 50 objects to avoid excessive
timing costs.
Revision
13250 -
(
view)
(
download)
(
as text)
(
annotate)
-
[select for diffs]
Modified
Wed Nov 16 16:41:59 2005 UTC (9 years, 2 months ago) by
brun
Original Path:
trunk/gl/inc/TGLCamera.h
File length: 6009 byte(s)
Diff to
previous 13164
From Richard:
Update to axes in GL viewer - in response to requests from Witold
Pokorski.
i) Added options to draw axes through origin (not depth clipped), as
well at edge (depth clipped).
ii) Added option to show a single reference marker (orange sphere) at
location - for debugging geometries.
iii) Improved draw quality of axes - similar to manipulators.
iv) These moved to new "Guides" tab under "Scene" for GUI.
Revision
13160 -
(
view)
(
download)
(
as text)
(
annotate)
-
[select for diffs]
Modified
Tue Nov 8 19:18:18 2005 UTC (9 years, 2 months ago) by
brun
Original Path:
trunk/gl/inc/TGLCamera.h
File length: 5590 byte(s)
Diff to
previous 13005
From Richard:
Various updates to cameras:
i) Larger range/sensitivities
ii) Better auto-framing for ortho cameras
iii) Better lighting - especially for ortho views
iv) Some more debug aids for scene center, origin and light positions -
enabled in debug mode (d key)
Revision
13005 -
(
view)
(
download)
(
as text)
(
annotate)
-
[select for diffs]
Modified
Mon Oct 24 14:49:33 2005 UTC (9 years, 3 months ago) by
brun
Original Path:
trunk/gl/inc/TGLCamera.h
File length: 5492 byte(s)
Diff to
previous 12562
From Richard:
i) Add rotation manipulator.
ii) Allow direct manipulation of clipping plane - rotate/translate.
Cannot scale - makes no sense.
Note:
iii) Rotation interaction requires some improvement - difficult when
ring is almost parallel with eye line of camera.
iv) Still need to extend for all selected objects - requires some
internal rearrangement of TGLScene/TGLViewer
Revision
12281 -
(
view)
(
download)
(
as text)
(
annotate)
-
[select for diffs]
Modified
Fri Jul 8 15:39:29 2005 UTC (9 years, 6 months ago) by
brun
Original Path:
trunk/gl/inc/TGLCamera.h
File length: 4377 byte(s)
Diff to
previous 12100
From Richard:
Improvements to camera and other GL viewer components to:
i) Avoid unrequired rebuilds.
ii) Improve near/far clip plane calculations - set using current
projected scene limits. Reduces depth buffer precision problems - seen
particularly on MESA software GL.
iii) Improve bounding box overlap tests.
iv) Tidy some vector/vertex code.
Revision
12100 -
(
view)
(
download)
(
as text)
(
annotate)
-
[select for diffs]
Modified
Tue Jun 21 16:54:17 2005 UTC (9 years, 7 months ago) by
brun
Original Path:
trunk/gl/inc/TGLCamera.h
File length: 4223 byte(s)
Diff to
previous 11929
From Richard Maunder:
Fixes for camera limits - greater ranges +
Right Mouse: Dolly Camera (Move In/Out) with side/side motion (as
before). Also j/k keys control.
Mouse Wheel: Zoom Camera - adjust field of view of 'lens'. As expected
this can introduce noticable distortion at wide angles.
Combination of two gives a very large 'zoom' range for the camera
sufficient for current detectors.
Additionally modifiers adjusts the sensitvity of the interactions,
making easier to tune in on a certain part:
Shift: x 10
Ctrl: x 0.1
Shift+Ctrl: x 0.01
NB Modifier must go down after mouse button for shift to avoid
[Under Win32 the modifiers do not work with mouse wheel (Zoom) as
TGEvent does not contain them for some reason. Will log a bug for this
to be looked into]
Also:
i) Added 'debug' mode for viewer (toggle with 'd' key) which draws out
camera interest, frustum basis, scene boxes etc in various colors. In
debug mode rebuilds only done when forced with space key strike.
ii) Fixes lost objects in some scene rebuilds.
Revision
11929 -
(
view)
(
download)
(
as text)
(
annotate)
-
[select for diffs]
Modified
Wed Jun 1 12:38:25 2005 UTC (9 years, 7 months ago) by
brun
Original Path:
trunk/gl/inc/TGLCamera.h
File length: 3535 byte(s)
Diff to
previous 11880
From Richard Maunder:
"Apply to Family" color changes - update all physical shapes with same
logical.
Moving/scaling object via edit boxes or moving via Shift+Middle mouse
button.
Removed some old commented code.
Revision
11866 -
(
view)
(
download)
(
as text)
(
annotate)
-
[select for diffs]
Modified
Wed May 25 14:25:17 2005 UTC (9 years, 8 months ago) by
brun
Original Path:
trunk/gl/inc/TGLCamera.h
File length: 3347 byte(s)
Diff to
previous 10614
From Richard Maunder:
Major changes to GL viewer to support:
i) Logical/Physical shape pairings
ii) Level of detail (LOD) scheme (TGLSphere only using at present)
iii) Common display list cache
iv) Scene rebuilds for large geometries
v) Some basic interactivity improvements - draw timeouts, drop low LOD
shapes etc
vi) New camara interactions:
Left Mouse: Rotate
Middle Mouse: Truck (pan parallel to camera film plane)
Right Mouse: Side-side drag dolly/zoom
Double click any button to reset the camera.
The previous pan with arrow keys, and zoom on mouse wheel are still
supported.
Camera interaction is default in viewer. These extra camera modes mean
there are not enough mouse buttons for previous right context/select.
To select / invoke context menu use Shift+Left Button and Shift+Right
Button respectively.
Revision
10045 -
(
view)
(
download)
(
as text)
(
annotate)
-
[select for diffs]
Modified
Tue Sep 14 15:37:34 2004 UTC (10 years, 4 months ago) by
rdm
Original Path:
trunk/gl/inc/TGLCamera.h
File length: 2312 byte(s)
Diff to
previous 9897
added cvs id lines and copyright notices. ROOT includes are included with
"" and not <>. In the header files added #ifndef's around includes to
avoid unecessary header file reading. In TViewerOpenGL fix the window closing
crash under X11.
Revision
9888 -
(
view)
(
download)
(
as text)
(
annotate)
-
[select for diffs]
Added
Fri Sep 3 12:52:42 2004 UTC (10 years, 4 months ago) by
brun
Original Path:
trunk/gl/inc/TGLCamera.h
File length: 1637 byte(s)
From Timur Pocheptsov
What's added:
1. Several modes :
"Navigation" - our standard rotation (context menu added(*))
"Picking" - user can select object and move it (**)
"Material editor" - not implemented, now it simply allows to
make objects transparent.
2. Several views :
Perspective view and three orthogonal projections
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.