Definition at line 30 of file REvePolygonSetProjected.hxx.
Classes | |
struct | Polygon_t |
Public Member Functions | |
REvePolygonSetProjected (const std::string &n="REvePolygonSetProjected", const std::string &t="") | |
Constructor. | |
~REvePolygonSetProjected () override | |
Destructor. | |
void | BuildRenderData () override |
Crates representation for rendering. | |
void | ComputeBBox () override |
Override of virtual method from TAttBBox. | |
void | DumpBuffer3D () |
Dump information about currently projected buffer. | |
virtual void | DumpPolys () const |
Dump information about built polygons. | |
REveElement * | GetProjectedAsElement () override |
Returns this projected dynamic-casted to REveElement. | |
void | ProjectBuffer3D () |
Project current buffer. | |
void | SetProjection (REveProjectionManager *mng, REveProjectable *model) override |
This is virtual method from base-class REveProjected. | |
void | UpdateProjection () override |
This is virtual method from base-class REveProjected. | |
Int_t | WriteCoreJson (nlohmann::json &j, Int_t rnr_offset) override |
Fill core part of JSON representation. | |
![]() | |
REveShape (const std::string &n="REveShape", const std::string &t="") | |
Constructor. | |
~REveShape () override | |
Destructor. | |
void | CopyVizParams (const REveElement *el) override |
Copy visualization parameters from element el. | |
Bool_t | GetDrawFrame () const |
UChar_t | GetFillAlpha () const |
Color_t | GetFillColor () const |
Bool_t | GetHighlightFrame () const |
UChar_t | GetLineAlpha () const |
Color_t | GetLineColor () const |
Float_t | GetLineWidth () const |
Bool_t | GetMiniFrame () const |
void | SetDrawFrame (Bool_t f) |
void | SetFillAlpha (UChar_t c) |
void | SetFillColor (Color_t c) |
void | SetHighlightFrame (Bool_t f) |
void | SetLineAlpha (UChar_t c) |
void | SetLineColor (Color_t c) |
void | SetLineWidth (Float_t lw) |
void | SetMainColor (Color_t color) override |
Set main color. | |
void | SetMiniFrame (Bool_t r) |
Int_t | WriteCoreJson (nlohmann::json &j, Int_t rnr_offset) override |
Fill core part of JSON representation. | |
void | WriteVizParams (std::ostream &out, const TString &var) override |
Write visualization parameters. | |
![]() | |
REveElement (const REveElement &e) | |
Copy constructor. | |
REveElement (const std::string &name="", const std::string &title="") | |
Default constructor. | |
virtual | ~REveElement () |
Destructor. | |
virtual Bool_t | AcceptElement (REveElement *el) |
Check if el can be added to this element. | |
virtual void | AddAunt (REveAunt *au) |
Add el into the list aunts. | |
virtual void | AddElement (REveElement *el) |
Add el to the list of children. | |
virtual void | AddStamp (UChar_t bits) |
Add (bitwise or) given stamps to fChangeBits. | |
virtual void | Annihilate () |
Optimized destruction without check of reference-count. | |
virtual void | AnnihilateElements () |
Annihilate elements. | |
Bool_t | ApplyVizTag (const TString &tag, const TString &fallback_tag="") |
Set the VizTag, find model-element from the VizDB and copy visualization-parameters from it. | |
virtual Bool_t | CanEditElement () const |
virtual Bool_t | CanEditMainColor () const |
virtual Bool_t | CanEditMainTrans () const |
virtual Bool_t | CanEditMainTransparency () const |
virtual void | CheckReferenceCount (const std::string &from="<unknown>") |
Check external references to this and eventually auto-destruct the render-element. | |
virtual void | ClearStamps () |
virtual void | CloneChildrenRecurse (REveElement *dest, Int_t level=0) const |
Clone children and attach them to the dest element. | |
virtual REveElement * | CloneElement () const |
Clone the element via copy constructor. | |
virtual REveElement * | CloneElementRecurse (Int_t level=0) const |
Clone elements and recurse 'level' deep over children. | |
virtual void | CopyVizParamsFromDB () |
Copy visualization parameters from the model-element fVizModel. | |
void | CSCApplyMainColorToAllChildren () |
void | CSCApplyMainColorToMatchingChildren () |
void | CSCApplyMainTransparencyToAllChildren () |
void | CSCApplyMainTransparencyToMatchingChildren () |
void | CSCImplySelectAllChildren () |
void | CSCTakeMotherAsMaster () |
void | DecDenyDestroy () |
Decreases the deny-destroy count of the element. | |
void | DecImpliedSelected () |
virtual void | Destroy () |
Destroy this element. | |
virtual void | DestroyElements () |
Destroy all children of this element. | |
virtual void | DestroyMainTrans () |
Destroy the main transformation matrix, it will always be taken as identity. | |
virtual void | DestroyOrWarn () |
Destroy this element. Prints a warning if deny-destroy is in force. | |
void | DisableListElements (Bool_t rnr_self=kFALSE, Bool_t rnr_children=kFALSE) |
Disable rendering of children and their list contents. | |
void | EnableListElements (Bool_t rnr_self=kTRUE, Bool_t rnr_children=kTRUE) |
Enable rendering of children and their list contents. | |
virtual void | ExportToInterpreter (const char *var_name) |
Export render-element to CINT with variable name var_name. | |
virtual void | FillExtraSelectionData (nlohmann::json &, const std::set< int > &) const |
virtual void | FillImpliedSelectedSet (Set_t &impSelSet, const std::set< int > &) |
Populate set impSelSet with derived / dependant elements. | |
REveElement * | FindChild (const TString &name, const TClass *cls=nullptr) |
Find the first child with given name. | |
REveElement * | FindChild (TPRegexp ®exp, const TClass *cls=nullptr) |
Find the first child whose name matches regexp. | |
Int_t | FindChildren (List_t &matches, const TString &name, const TClass *cls=nullptr) |
Find all children with given name and append them to matches list. | |
Int_t | FindChildren (List_t &matches, TPRegexp ®exp, const TClass *cls=nullptr) |
Find all children whose name matches regexp and append them to matches list. | |
REveElement * | FirstChild () const |
Returns the first child element or 0 if the list is empty. | |
UChar_t | GetChangeBits () const |
TClass * | GetChildClass () const |
const char * | GetCName () const |
REveCompound * | GetCompound () |
const char * | GetCTitle () const |
Int_t | GetDenyDestroy () const |
Returns the number of times deny-destroy has been requested on the element. | |
Bool_t | GetDestroyOnZeroRefCnt () const |
Returns state of flag determining if the element will be destroyed when reference count reaches zero. | |
ElementId_t | GetElementId () const |
virtual std::string | GetHighlightTooltip (const std::set< int > &) const |
int | GetImpliedSelected () |
virtual Color_t | GetMainColor () const |
Color_t * | GetMainColorPtr () const |
virtual Char_t | GetMainTransparency () const |
REveElement * | GetMother () |
const std::string & | GetName () const |
REveRenderData * | GetRenderData () const |
virtual Bool_t | GetRnrAnything () const |
virtual Bool_t | GetRnrChildren () const |
virtual Bool_t | GetRnrSelf () const |
virtual Bool_t | GetRnrState () const |
REveScene * | GetScene () |
virtual REveElement * | GetSelectionMaster () |
Returns the master element - that is: | |
const std::string & | GetTitle () const |
void * | GetUserData () const |
REveElement * | GetVizModel () const |
const TString & | GetVizTag () const |
Bool_t | HasAunts () const |
Bool_t | HasChild (REveElement *el) |
Check if element el is a child of this element. | |
Bool_t | HasChildren () const |
virtual Bool_t | HasMainColor () const |
virtual Bool_t | HasMainTrans () const |
bool | HasMother () |
bool | HasScene () |
void | IncDenyDestroy () |
Increases the deny-destroy count of the element. | |
void | IncImpliedSelected () |
virtual void | InitMainTrans (Bool_t can_edit=kTRUE) |
Initialize the main transformation to identity matrix. | |
TClass * | IsA () const |
Return class for this element Return REveElement class in case dicitonary is not exisiting. | |
Bool_t | IsPickable () const |
REveElement * | LastChild () const |
Returns the last child element or 0 if the list is empty. | |
virtual void | NameTitleChanged () |
Virtual function called when a name or title of the element has been changed. | |
Int_t | NumAunts () const |
Int_t | NumChildren () const |
virtual void | ProjectAllChildren (Bool_t same_depth=kTRUE) |
If this is a projectable, loop over all projected replicas and add the projected image of all children there. | |
virtual void | ProjectChild (REveElement *el, Bool_t same_depth=kTRUE) |
If this is a projectable, loop over all projected replicas and add the projected image of child 'el' there. | |
virtual void | PropagateMainColorToProjecteds (Color_t color, Color_t old_color) |
Propagate color to projected elements. | |
virtual void | PropagateMainTransparencyToProjecteds (Char_t t, Char_t old_t) |
Propagate transparency to projected elements. | |
virtual void | PropagateRnrStateToProjecteds () |
Propagate render state to the projected replicas of this element. | |
virtual void | PropagateVizParamsToChildren (REveElement *el=nullptr) |
Propagate visualization parameters from element el (defaulting to this) to all children. | |
virtual void | PropagateVizParamsToProjecteds () |
Propagate visualization parameters to dependent elements. | |
virtual REveTrans * | PtrMainTrans (Bool_t create=kTRUE) |
Return pointer to main transformation. | |
void | RecheckImpliedSelections () |
Call this if it is possible that implied-selection or highlight has changed for this element or for implied-selection this element is member of and you want to maintain consistent selection state. | |
AuntList_t & | RefAunts () |
const AuntList_t & | RefAunts () const |
List_t & | RefChildren () |
const List_t & | RefChildren () const |
virtual REveTrans & | RefMainTrans () |
Return reference to main transformation. | |
virtual void | RemoveAunt (REveAunt *au) |
Remove el from the list of aunts. | |
virtual void | RemoveElement (REveElement *el) |
Remove el from the list of children. | |
virtual void | RemoveElementLocal (REveElement *el) |
Perform additional local removal of el. | |
virtual void | RemoveElements () |
Remove all elements. | |
virtual void | RemoveElementsLocal () |
Perform additional local removal of all elements. | |
virtual bool | RequiresExtraSelectionData () const |
void | ResetAllCSCBits () |
void | ResetCSCBits (UChar_t f) |
void | SaveVizParams (std::ostream &out, const TString &tag, const TString &var) |
Save visualization parameters for this element with given tag. | |
void | SetChildClass (TClass *c) |
void | SetCompound (REveCompound *c) |
void | SetCSCBits (UChar_t f) |
void | SetDestroyOnZeroRefCnt (Bool_t d) |
Sets the state of flag determining if the element will be destroyed when reference count reaches zero. | |
void | SetEditMainColor (Bool_t x) |
void | SetEditMainTransparency (Bool_t x) |
void | SetMainAlpha (Float_t alpha) |
Set main-transparency via float alpha variable. | |
void | SetMainColorPixel (Pixel_t pixel) |
Convert pixel to Color_t and call SetMainColor(). | |
void | SetMainColorPtr (Color_t *colptr) |
void | SetMainColorRGB (Float_t r, Float_t g, Float_t b) |
Convert RGB values to Color_t and call SetMainColor. | |
void | SetMainColorRGB (UChar_t r, UChar_t g, UChar_t b) |
Convert RGB values to Color_t and call SetMainColor. | |
virtual void | SetMainTransparency (Char_t t) |
Set main-transparency. | |
void | SetName (const std::string &name) |
Set name of an element. | |
void | SetNameTitle (const std::string &name, const std::string &title) |
Set name and title of an element. | |
void | SetPickable (Bool_t p) |
void | SetPickableRecursively (Bool_t p) |
Set pickable state on the element and all its children. | |
virtual Bool_t | SetRnrChildren (Bool_t rnr) |
Set render state of this element's children, i.e. | |
virtual Bool_t | SetRnrSelf (Bool_t rnr) |
Set render state of this element, i.e. | |
virtual Bool_t | SetRnrSelfChildren (Bool_t rnr_self, Bool_t rnr_children) |
Set state for rendering of this element and its children. | |
virtual Bool_t | SetRnrState (Bool_t rnr) |
Set render state of this element and of its children to the same value. | |
void | SetSelectionMaster (REveElement *el) |
void | SetTitle (const std::string &title) |
Set title of an element. | |
virtual void | SetTransMatrix (const TGeoMatrix &mat) |
Set transformation matrix from TGeo's matrix. | |
virtual void | SetTransMatrix (Double_t *carr) |
Set transformation matrix from column-major array. | |
void | SetupDefaultColorAndTransparency (Color_t col, Bool_t can_edit_color, Bool_t can_edit_transparency) |
Set up element to use built-in main color and set flags allowing editing of main color and transparency. | |
void | SetUserData (void *ud) |
void | SetVizModel (REveElement *model) |
Set visualization-parameter model element. | |
Bool_t | SetVizModelByTag () |
Find model element in VizDB that corresponds to previously assigned fVizTag and set fVizModel accordingly. | |
void | SetVizTag (const TString &tag) |
virtual Bool_t | SingleRnrState () const |
void | Stamp () |
void | StampColorSelection () |
void | StampElementAdded () |
void | StampObjProps () |
void | StampTransBBox () |
void | StampVisibility () |
Bool_t | TestCSCBits (UChar_t f) const |
void | VizDB_Apply (const std::string &tag) |
Set visual parameters for this object for given tag. | |
void | VizDB_Insert (const std::string &tag, Bool_t replace=kTRUE, Bool_t update=kTRUE) |
Create a replica of element and insert it into VizDB with given tag. | |
void | VizDB_Reapply () |
Reset visual parameters for this object from VizDB. | |
void | VizDB_UpdateModel (Bool_t update=kTRUE) |
Copy visual parameters from this element to viz-db model. | |
![]() | |
TAttBBox () | |
virtual | ~TAttBBox () |
Float_t * | AssertBBox () |
Float_t * | GetBBox () |
Bool_t | GetBBoxOK () const |
virtual TClass * | IsA () const |
TAttBBox & | operator= (const TAttBBox &tab) |
void | ResetBBox () |
void | SetupBBoxCube (Float_t extent, Float_t x, Float_t y, Float_t z) |
Setup bounding box as cube with given extent and center position. | |
virtual void | Streamer (TBuffer &) |
void | StreamerNVirtual (TBuffer &ClassDef_StreamerNVirtual_b) |
![]() | |
REveProjected ()=default | |
virtual | ~REveProjected () |
Destructor. | |
Float_t | GetDepth () const |
REveProjectionManager * | GetManager () const |
REveProjectable * | GetProjectable () const |
virtual void | SetDepth (Float_t d) |
Set depth coordinate for the element. | |
virtual void | UnRefProjectable (REveProjectable *assumed_parent, bool notifyParent=true) |
Remove reference to projectable. | |
Protected Types | |
typedef std::list< Polygon_t > | vpPolygon_t |
![]() | |
enum | ECompoundSelectionColorBits { kCSCBImplySelectAllChildren = BIT(0) , kCSCBTakeMotherAsMaster = BIT(1) , kCSCBApplyMainColorToAllChildren = BIT(2) , kCSCBApplyMainColorToMatchingChildren = BIT(3) , kCSCBApplyMainTransparencyToAllChildren = BIT(4) , kCSCBApplyMainTransparencyToMatchingChildren = BIT(5) } |
enum | EDestruct { kNone , kStandard , kAnnihilate } |
Protected Member Functions | |
Float_t | PolygonSurfaceXY (const Polygon_t &poly) const |
Calculate XY surface of a polygon. | |
void | SetDepthLocal (Float_t d) override |
Set depth (z-coordinate) of the projected points. | |
![]() | |
virtual void | AnnihilateRecursively () |
Protected member function called from REveElement::Annihilate(). | |
void | assign_element_id_recurisvely () |
void | assign_scene_recursively (REveScene *s) |
ElementId_t | get_mother_id () const |
ElementId_t | get_scene_id () const |
virtual void | PreDeleteElement () |
Vertex / normal / triangle index information for rendering. | |
virtual void | RemoveElementsInternal () |
Remove all elements. | |
![]() | |
TAttBBox (const TAttBBox &tab) | |
void | AssertBBoxExtents (Float_t epsilon=0.005) |
Assert extents of all sides of the bounding-box are at least epsilon. | |
void | BBoxCheckPoint (const Float_t *p) |
void | BBoxCheckPoint (Float_t x, Float_t y, Float_t z) |
void | BBoxClear () |
Remove BBox information. | |
void | BBoxInit (Float_t infinity=1e6) |
Dynamic Float_t[6] X(min,max), Y(min,max), Z(min,max) | |
void | BBoxZero (Float_t epsilon=0, Float_t x=0, Float_t y=0, Float_t z=0) |
Create cube of volume (2*epsilon)^3 at (x,y,z). | |
![]() | |
void | SetDepthCommon (Float_t d, REveElement *el, Float_t *bbox) |
Utility function to update the z-values of the bounding-box. | |
Private Member Functions | |
REvePolygonSetProjected (const REvePolygonSetProjected &)=delete | |
Float_t | AddPolygon (std::list< UInt_t > &pp, std::list< Polygon_t > &p) |
Check if polygon has dimensions above REveProjection::fgEps and add it to a list if it is not a duplicate. | |
Bool_t | IsFirstIdxHead (Int_t s0, Int_t s1) |
Compare the two segments and check if the first index of first segment is starting. | |
Float_t | MakePolygonsFromBP (std::vector< UInt_t > &idxMap) |
Build polygons from list of buffer polygons. | |
Float_t | MakePolygonsFromBS (std::vector< UInt_t > &idxMap) |
Build polygons from the set of buffer segments. | |
REvePolygonSetProjected & | operator= (const REvePolygonSetProjected &)=delete |
std::vector< UInt_t > | ProjectAndReducePoints () |
Project and reduce buffer points. | |
Private Attributes | |
std::unique_ptr< TBuffer3D > | fBuff |
Additional Inherited Members | |
![]() | |
typedef std::vector< REveVector2 > | vVector2_t |
![]() | |
typedef std::list< REveAunt * > | AuntList_t |
enum | EChangeBits { kCBColorSelection = BIT(0) , kCBTransBBox = BIT(1) , kCBObjProps = BIT(2) , kCBVisibility = BIT(3) , kCBElementAdded = BIT(4) } |
typedef std::list< REveElement * > | List_t |
typedef std::set< REveElement * > | Set_t |
![]() | |
static void | CheckAndFixBoxOrientationEv (REveVector box[8]) |
Make sure box orientation is consistent with standard arrangement. | |
static void | CheckAndFixBoxOrientationFv (Float_t box[8][3]) |
Make sure box orientation is consistent with standard arrangement. | |
static Int_t | FindConvexHull (const vVector2_t &pin, vVector2_t &pout, REveElement *caller=nullptr) |
Determines the convex-hull of points in pin. | |
static Bool_t | IsBoxOrientationConsistentEv (const REveVector box[8]) |
Checks if the first face normal is pointing into the other direction as the vector pointing towards the opposite face. | |
static Bool_t | IsBoxOrientationConsistentFv (const Float_t box[8][3]) |
Checks if the first face normal is pointing into the other direction as the vector pointing towards the opposite face. | |
![]() | |
static TClass * | Class () |
static const char * | Class_Name () |
static constexpr Version_t | Class_Version () |
static const char * | DeclFileName () |
![]() | |
static const std::string & | ToString (Bool_t b) |
Convert Bool_t to string - kTRUE or kFALSE. | |
#include <ROOT/REvePolygonSetProjected.hxx>
|
protected |
Definition at line 54 of file REvePolygonSetProjected.hxx.
|
privatedelete |
REvePolygonSetProjected::REvePolygonSetProjected | ( | const std::string & | n = "REvePolygonSetProjected" , |
const std::string & | t = "" |
||
) |
Constructor.
Definition at line 53 of file REvePolygonSetProjected.cxx.
|
override |
Destructor.
Definition at line 63 of file REvePolygonSetProjected.cxx.
|
private |
Check if polygon has dimensions above REveProjection::fgEps and add it to a list if it is not a duplicate.
Definition at line 274 of file REvePolygonSetProjected.cxx.
|
overridevirtual |
Crates representation for rendering.
This is complicated as we need to:
Reimplemented from ROOT::Experimental::REveElement.
Definition at line 88 of file REvePolygonSetProjected.cxx.
|
overridevirtual |
Override of virtual method from TAttBBox.
Implements TAttBBox.
Definition at line 155 of file REvePolygonSetProjected.cxx.
void REvePolygonSetProjected::DumpBuffer3D | ( | ) |
Dump information about currently projected buffer.
Definition at line 542 of file REvePolygonSetProjected.cxx.
|
virtual |
Dump information about built polygons.
Definition at line 523 of file REvePolygonSetProjected.cxx.
|
inlineoverridevirtual |
Returns this projected dynamic-casted to REveElement.
This is needed as class REveProjected is used as secondary inheritance.
Reimplemented from ROOT::Experimental::REveProjected.
Definition at line 86 of file REvePolygonSetProjected.hxx.
Compare the two segments and check if the first index of first segment is starting.
Definition at line 205 of file REvePolygonSetProjected.cxx.
Build polygons from list of buffer polygons.
Definition at line 343 of file REvePolygonSetProjected.cxx.
Build polygons from the set of buffer segments.
First creates a segment pool according to reduced and projected points and then build polygons from the pool.
Definition at line 401 of file REvePolygonSetProjected.cxx.
|
privatedelete |
Calculate XY surface of a polygon.
Definition at line 507 of file REvePolygonSetProjected.cxx.
|
private |
Project and reduce buffer points.
Definition at line 216 of file REvePolygonSetProjected.cxx.
void REvePolygonSetProjected::ProjectBuffer3D | ( | ) |
Project current buffer.
Definition at line 468 of file REvePolygonSetProjected.cxx.
|
overrideprotectedvirtual |
Set depth (z-coordinate) of the projected points.
Reimplemented from ROOT::Experimental::REveProjected.
Definition at line 182 of file REvePolygonSetProjected.cxx.
|
overridevirtual |
This is virtual method from base-class REveProjected.
Reimplemented from ROOT::Experimental::REveProjected.
Definition at line 169 of file REvePolygonSetProjected.cxx.
|
overridevirtual |
This is virtual method from base-class REveProjected.
Implements ROOT::Experimental::REveProjected.
Definition at line 193 of file REvePolygonSetProjected.cxx.
|
overridevirtual |
Fill core part of JSON representation.
Reimplemented from ROOT::Experimental::REveElement.
Definition at line 71 of file REvePolygonSetProjected.cxx.
|
private |
Definition at line 57 of file REvePolygonSetProjected.hxx.
|
protected |
! reduced and projected points
Definition at line 71 of file REvePolygonSetProjected.hxx.
|
protected |
! polygons
Definition at line 67 of file REvePolygonSetProjected.hxx.
|
protected |
! polygons build from TBuffer3D polygons
Definition at line 69 of file REvePolygonSetProjected.hxx.
|
protected |
! polygons build from TBuffer3D segments
Definition at line 68 of file REvePolygonSetProjected.hxx.