95 fIntIds (
e.fIntIds ? new
TArrayI(*
e.fIntIds) : 0),
96 fIntIdsPerPoint (
e.fIntIdsPerPoint)
118 const Int_t nn = 3 *
e.fN;
120 for (
Int_t i = 0; i < nn; i++)
fP[i] =
e.fP[i];
150 delete []
fP;
fP = 0;
173 Int_t new_size = old_size + n_points;
243 static const TEveException eh(
"TEvePointSet::SetMarkerStyle ");
251 pt->SetMarkerStyle(mstyle);
264 static const TEveException eh(
"TEvePointSet::SetMarkerSize ");
272 pt->SetMarkerSize(msize);
317 throw(eh +
"selector is <null>.");
331 p[0] = *vx; p[1] = *vy; p[2] = *vz;
344 throw(eh +
"unknown tree variable type.");
351 if (subarr[i] == 0) {
353 throw(eh +
"sub-id array not available.");
377 TAttMarker::operator=(*
m);
399 return TEvePointSetProjected::Class();
408 Emit(
"PointSelected(Int_t)",
id);
442 fBins(0), fDefPointSetCapacity(128), fNBins(0), fLastBin(-1),
443 fMin(0), fCurMin(0), fMax(0), fCurMax(0),
467 if (
fBins[i] == el) {
487 static const TEveException eh(
"TEvePointSetArray::SetMarkerColor ");
502 static const TEveException eh(
"TEvePointSetArray::SetMarkerStyle ");
517 static const TEveException eh(
"TEvePointSetArray::SetMarkerSize ");
534 static const TEveException eh(
"TEvePointSetArray::TakeAction ");
537 throw eh +
"selector is <null>.";
547 throw eh +
"requires 4-d varexp.";
555 Fill(*vx, *vy, *vz, *qq);
556 ++vx; ++vy; ++vz; ++qq;
565 ++vx; ++vy; ++vz; ++qq;
571 throw eh +
"unknown tree variable type.";
584 const Int_t min = under ? 0 : 1;
586 for (
Int_t i = min; i < max; ++i)
602 static const TEveException eh(
"TEvePointSetArray::InitBins ");
604 if (nbins < 1)
throw eh +
"nbins < 1.";
605 if (min > max)
throw eh +
"min > max.";
712 using namespace TMath;
760 for (
Int_t i = 0; i <
n; ++i, p+=3)
778 for (
Int_t i = 0; i <
n; ++i, o+=3, p+=3)
char * Form(const char *fmt,...)
Array of integers (32 bits per element).
void Set(Int_t n)
Set size of this array to n ints.
const Int_t * GetArray() const
virtual void SaveMarkerAttributes(std::ostream &out, const char *name, Int_t coldef=1, Int_t stydef=1, Int_t sizdef=1)
Save line attributes as C++ statement(s) on output stream out.
virtual void SetMarkerColor(Color_t mcolor=1)
Set the marker color.
Color_t fMarkerColor
Marker color.
virtual void SetMarkerStyle(Style_t mstyle=1)
Set the marker style.
virtual void SetMarkerSize(Size_t msize=1)
Set the marker size.
Size_t fMarkerSize
Marker size.
Style_t fMarkerStyle
Marker style.
TClass instances represent classes, structs and namespaces in the ROOT type system.
Base class for TEveUtil visualization elements, providing hierarchy management, rendering control and...
virtual TEveTrans * PtrMainTrans(Bool_t create=kTRUE)
Return pointer to main transformation.
virtual void AddElement(TEveElement *el)
Add el to the list of children.
virtual void RemoveElements()
Remove all elements.
void SetMainColorPtr(Color_t *color)
virtual void CopyVizParams(const TEveElement *el)
Copy visualization parameters from element el.
static const TGPicture * fgListTreeIcons[9]
virtual void WriteVizParams(std::ostream &out, const TString &var)
Write-out visual parameters for this object.
virtual void PaintStandard(TObject *id)
Paint object – a generic implementation for EVE elements.
virtual Bool_t SetRnrSelf(Bool_t rnr)
Set render state of this element, i.e.
Exception class thrown by TEve classes and macros.
TEvePointSelectorConsumer is a virtual base for classes that can be filled from TTree data via the TE...
TEvePointSelector is a sub-class of TSelectorDraw for direct extraction of point-like data from a Tre...
An array of point-sets with each point-set playing a role of a bin in a histogram.
virtual ~TEvePointSetArray()
Destructor: deletes the fBins array.
virtual void SetMarkerSize(Size_t msize=1)
Set marker size, propagate to children.
void SetRange(Double_t min, Double_t max)
Set active range of the separating quantity.
Double_t fMin
Index of the last filled TEvePointSet.
virtual void SetMarkerColor(Color_t tcolor=1)
Set marker color, propagate to children.
void CloseBins()
Call this after all the points have been filled.
virtual void RemoveElementsLocal()
Virtual from TEveElement, provide bin management.
void InitBins(const char *quant_name, Int_t nbins, Double_t min, Double_t max)
Initialize internal point-sets with given binning parameters.
virtual void TakeAction(TEvePointSelector *)
Called from TEvePointSelector when internal arrays of the tree-selector are filled up and need to be ...
virtual Int_t Size(Bool_t under=kFALSE, Bool_t over=kFALSE) const
Get the total number of filled points.
TEvePointSetArray(const TEvePointSetArray &)
virtual void SetMarkerStyle(Style_t mstyle=1)
Set marker style, propagate to children.
void SetPointId(TObject *id)
Set external object id of the last added point.
Bool_t Fill(Double_t x, Double_t y, Double_t z, Double_t quant)
Add a new point.
Int_t fDefPointSetCapacity
void SetOwnIds(Bool_t o)
Propagate id-object ownership to children.
virtual void RemoveElementLocal(TEveElement *el)
Virtual from TEveElement, provide bin management.
Projected copy of a TEvePointSet.
virtual void PointSelected(Int_t id)
Virtual method of base class TPointSet3D.
virtual void UpdateProjection()
Re-apply the projection.
TEvePointSetProjected()
Default contructor.
virtual void SetDepthLocal(Float_t d)
Set depth (z-coordinate) of the projected points.
virtual void SetProjection(TEveProjectionManager *proj, TEveProjectable *model)
Set projection manager and projection model.
TEvePointSet is a render-element holding a collection of 3D points with optional per-point TRef and a...
virtual void InitFill(Int_t subIdNum)
Initialize point-set for new filling.
void AssertIntIdsSize()
Assert that size of IntId array is compatible with the size of the point array.
virtual TClass * ProjectedClass(const TEveProjection *p) const
Virtual from TEveProjectable, returns TEvePointSetProjected class.
virtual void SetMarkerStyle(Style_t mstyle=1)
Set marker style, propagate to projecteds.
virtual const TGPicture * GetListTreeIcon(Bool_t open=kFALSE)
Return pointset icon.
virtual void TakeAction(TEvePointSelector *)
Called from TEvePointSelector when internal arrays of the tree-selector are filled up and need to be ...
void SetPointIntIds(Int_t *ids)
Set integer ids for the last point that was registered (most probably via TPolyMarker3D::SetNextPoint...
virtual void ClonePoints(const TEvePointSet &e)
Clone points and all point-related information from point-set 'e'.
Int_t GetPointIntId(Int_t p, Int_t i) const
Return i-th integer id of point with index p.
virtual void CopyVizParams(const TEveElement *el)
Copy visualization parameters from element el.
virtual void SetMarkerColor(Color_t col)
Set the marker color.
virtual void SetTitle(const char *t)
virtual void WriteVizParams(std::ostream &out, const TString &var)
Write visualization parameters.
void Reset(Int_t n_points=0, Int_t n_int_ids=0)
Drop all data and set-up the data structures to recive new data.
Int_t GrowFor(Int_t n_points)
Resizes internal array to allow additional n_points to be stored.
virtual ~TEvePointSet()
Destructor.
virtual void Paint(Option_t *option="")
Paint point-set.
virtual void SetMarkerSize(Size_t msize=1)
Set marker size, propagate to projecteds.
TEvePointSet(Int_t n_points=0, ETreeVarType_e tv_type=kTVT_XYZ)
Constructor.
virtual void PointSelected(Int_t id)
Virtual method of base class TPointSet3D.
Int_t * GetPointIntIds(Int_t p) const
Return a pointer to integer ids of point with index p.
Abstract base-class for non-linear projectable objects.
ProjList_t fProjectedList
Abstract base class for classes that hold results of a non-linear projection transformation.
TEveProjectable * fProjectable
TEveProjectionManager * fManager
virtual void SetProjection(TEveProjectionManager *mng, TEveProjectable *model)
Sets projection manager and reference in the projectable object.
void SetDepthCommon(Float_t d, TEveElement *el, Float_t *bbox)
Utility function to update the z-values of the bounding-box.
Manager class for steering of projections and managing projected objects.
TEveProjection * GetProjection()
Base-class for non-linear projections.
void ProjectPointfv(Float_t *v, Float_t d)
Project float array.
TEveTrans is a 4x4 transformation matrix for homogeneous coordinates stored internally in a column-ma...
The TNamed class is the base class for all named ROOT classes.
Mother of all ROOT objects.
TPolyMarker3D using TPointSet3DGL for direct OpenGL rendering.
virtual void ComputeBBox()
Compute the bounding box of this points set.
virtual void PointSelected(Int_t n)
This virtual method is called from TPointSet3DGL when a point is selected.
void ClearIds()
Clears the id-array. If ids are owned the TObjects are deleted.
void CopyIds(const TPointSet3D &t)
Copy id objects from point-set 't'.
void SetPointId(TObject *id)
Set id of last point.
void SetPoint(Int_t n, Double_t x, Double_t y, Double_t z)
Set point n to x, y, z.
virtual Int_t Size() const
virtual Int_t GetN() const
virtual void SetName(const char *name)
Change (i.e.
virtual Float_t * GetP() const
virtual Int_t SetNextPoint(Double_t x, Double_t y, Double_t z)
Set point following LastPoint to x, y, z.
This is the ROOT implementation of the Qt object communication mechanism (see also http://www....
void Emit(const char *signal, const T &arg)
Activate signal with single parameter.
virtual Double_t * GetV4() const
virtual Double_t * GetV2() const
virtual Double_t * GetV1() const
virtual Int_t GetDimension() const
virtual Double_t * GetVal(Int_t i) const
Return the last values corresponding to the i-th component of the formula being processed (where the ...
virtual Double_t * GetV3() const
virtual Int_t GetNfill() const
Int_t Nint(T x)
Round to nearest integer. Rounds half integers to the nearest even integer.
Int_t FloorNint(Double_t x)