ROOT logo
Gled » VAR1 » TriMeshField

class TriMeshField: public ZGlass


 mDim-dimensional field defined on vertices of a mesh.
 Dimensions up to 3 are supported.

 Link mColorArraySource is dyn-casted to TriMeshColorArraySource and used to
 get color arrays for update. If 0 is returned for vertex color-array no
 update is done. If 0 is returned for triangle color-array triangle colors
 are not updated.

Function Members (Methods)

public:
TriMeshField(const TriMeshField&)
TriMeshField(const Text_t* n = "TriMeshField", const Text_t* t = 0)
~TriMeshField()
static void_gled_catalog_init()
voidTObject::AbstractMethod(const char* method) const
virtual voidTObject::AppendPad(Option_t* option = "")
voidApplyColors(Bool_t regen_tring_cols = true)
virtual AList*ZGlass::AsAList()
virtual voidTObject::Browse(TBrowser* b)
Bool_tZGlass::CheckBit(ZGlass::Bits_e bit) const
static TClass*Class()
virtual const char*TObject::ClassName() const
virtual voidTObject::Clear(Option_t* = "")
virtual voidZGlass::ClearAllReferences()
voidZGlass::ClearLinks()
virtual TObject*TObject::Clone(const char* newname = "") const
virtual Int_tTObject::Compare(const TObject* obj) const
virtual voidTObject::Copy(TObject& object) const
virtual voidCopyLinkRefs(lppZGlass_t& ref_list)
virtual voidCopyLinkReps(ZGlass::lLinkRep_t& link_rep_list)
virtual voidCopyLinks(lpZGlass_t& glass_list)
Short_tZGlass::DecEyeRefCount()
Short_tZGlass::DecRefCount(ZGlass* from, UShort_t n = 1)
virtual voidTObject::Delete(Option_t* option = "")MENU
virtual Int_tZGlass::DetachedThreadNice(const ZMIR* mir) const
voidDiffuse(Float_t diff_const = 1, Float_t dt = 0.1, Bool_t limit_df = false, Bool_t recolor_p = false)
virtual Int_tTObject::DistancetoPrimitive(Int_t px, Int_t py)
virtual voidTObject::Draw(Option_t* option = "")
virtual voidTObject::DrawClass() constMENU
virtual TObject*TObject::DrawClone(Option_t* option = "") constMENU
virtual voidTObject::Dump() constMENU
virtual voidTObject::Error(const char* method, const char* msgfmt) const
virtual voidTObject::Execute(const char* method, const char* params, Int_t* error = 0)
virtual voidTObject::Execute(TMethod* method, TObjArray* params, Int_t* error = 0)
virtual voidTObject::ExecuteEvent(Int_t event, Int_t px, Int_t py)
voidExecuteMir(ZMIR& mir)
Float_t&F(Int_t i, Int_t j = 0)
virtual voidTObject::Fatal(const char* method, const char* msgfmt) const
static FID_tFID()
voidFillByGaussBlobs(Bool_t reset_field = true, Int_t n_blobs = 40, Float_t A_min = 5, Float_t A_max = 20, Float_t sigma_min = 2, Float_t sigma_max = 10, Bool_t minmax_p = false, Bool_t recolor_p = false)
virtual ZGlass*ZGlass::FindLensByPath(const TString& url, bool throwp = false)
voidFindMinMaxField()
virtual TObject*TObject::FindObject(const char* name) const
virtual TObject*TObject::FindObject(const TObject* obj) const
Float_t*FVec(Int_t i = 0)
Bool_tZGlass::GetAcceptRefs() const
ZGlass*GetColorArraySource()
Int_tGetDim() const
virtual Option_t*TObject::GetDrawOption() const
static Long_tTObject::GetDtorOnly()
UShort_tZGlass::GetFireRefCount() const
const Text_t*GetFormula() const
UInt_tZGlass::GetGlassBits()
ZMirFilter*ZGlass::GetGuard()
virtual const char*TObject::GetIconName() const
virtual ZGlass*ZGlass::GetLinkByName(const TString& link_name)
Float_tGetMaxValue() const
TriMesh*GetMesh()
Float_tGetMinValue() const
Bool_tZGlass::GetMIRActive() const
UShort_tZGlass::GetMoonRefCount() const
virtual const Text_t*ZGlass::GetName() const
Int_tGetNVerts() const
virtual char*TObject::GetObjectInfo(Int_t px, Int_t py) const
static Bool_tTObject::GetObjectStat()
virtual Option_t*TObject::GetOption() const
RGBAPalette*GetPalette()
ZQueen*ZGlass::GetQueen()
UShort_tZGlass::GetRefCount() const
Saturn*ZGlass::GetSaturn()
ID_tZGlass::GetSaturnID() const
TimeStamp_tZGlass::GetStampReqTring() const
UShort_tZGlass::GetSunRefCount() const
TimeStamp_tZGlass::GetTimeStamp() const
virtual const Text_t*ZGlass::GetTitle() const
virtual UInt_tTObject::GetUniqueID() const
Bool_tZGlass::GetUseDispList() const
Bool_tZGlass::GetUseNameStack() const
static GledNS::ClassInfo*GlassInfo()
virtual Bool_tTObject::HandleTimer(TTimer* timer)
virtual ULong_tTObject::Hash() const
TStringZGlass::Identify() const
Short_tZGlass::IncEyeRefCount()
Short_tZGlass::IncRefCount(ZGlass* from)
virtual voidTObject::Info(const char* method, const char* msgfmt) const
virtual Bool_tTObject::InheritsFrom(const char* classname) const
virtual Bool_tTObject::InheritsFrom(const TClass* cl) const
virtual voidTObject::Inspect() constMENU
voidTObject::InvertBit(UInt_t f)
virtual TClass*IsA() const
virtual Bool_tTObject::IsEqual(const TObject* obj) const
virtual Bool_tTObject::IsFolder() const
Bool_tTObject::IsOnHeap() const
virtual Bool_tTObject::IsSortable() const
boolZGlass::IsSunOrFireSpace()
boolZGlass::IsSunSpace()
Bool_tTObject::IsZombie() const
virtual voidTObject::ls(Option_t* option = "") const
virtual voidZGlass::MarkStampReqTring()
voidTObject::MayNotUse(const char* method) const
static MID_tMid_ApplyColors()
static MID_tMid_Diffuse()
static MID_tMid_FillByGaussBlobs()
static MID_tMid_FindMinMaxField()
static MID_tZGlass::Mid_RebuildRnrScheme()
static MID_tMid_Resize()
static MID_tMid_ResizeToMesh()
static MID_tZGlass::Mid_ReTriangulate()
static MID_tZGlass::Mid_SetAcceptRefs()
static MID_tMid_SetColorArraySource()
static MID_tMid_SetFormula()
static MID_tZGlass::Mid_SetGuard()
static MID_tMid_SetMaxValue()
static MID_tMid_SetMesh()
static MID_tMid_SetMinValue()
static MID_tZGlass::Mid_SetMIRActive()
static MID_tZGlass::Mid_SetName()
static MID_tMid_SetPalette()
static MID_tZGlass::Mid_SetStampReqTring()
static MID_tZGlass::Mid_SetTimeStamp()
static MID_tZGlass::Mid_SetTitle()
static MID_tZGlass::Mid_SetUseDispList()
static MID_tZGlass::Mid_SetUseDLRec()
static MID_tZGlass::Mid_SetUseNameStack()
static MID_tZGlass::Mid_UpdateAllViews()
static MID_tZGlass::Mid_UpdateGlassView()
virtual Bool_tTObject::Notify()
voidTObject::Obsolete(const char* method, const char* asOfVers, const char* removedFromVers) const
static voidTObject::operator delete(void* ptr)
static voidTObject::operator delete(void* ptr, void* vp)
static voidTObject::operator delete[](void* ptr)
static voidTObject::operator delete[](void* ptr, void* vp)
void*TObject::operator new(size_t sz)
void*TObject::operator new(size_t sz, void* vp)
void*TObject::operator new[](size_t sz)
void*TObject::operator new[](size_t sz, void* vp)
TriMeshField&operator=(const TriMeshField&)
Float_t&operator[](Int_t idx)
virtual voidTObject::Paint(Option_t* option = "")
voidPartiallyApplyColors(set<Int_t> vertices, Bool_t regen_tring_cols = true)
virtual voidTObject::Pop()
virtual voidTObject::Print(Option_t* option = "") const
virtual Int_tTObject::Read(const char* name)
voidZGlass::ReadLock() const
voidZGlass::ReadUnlock() const
virtual Int_tZGlass::RebuildAllRefs(An_ID_Demangler* idd)
virtual Int_tRebuildLinkRefs(An_ID_Demangler* c)
voidZGlass::RebuildRnrScheme()
virtual voidTObject::RecursiveRemove(TObject* obj)
const TString&ZGlass::RefName() const
const TString&ZGlass::RefTitle() const
voidZGlass::register_name_change_cb(ZGlass::NameChangeCB* nccb)
voidZGlass::register_ray_absorber(ZGlass::RayAbsorber* ra)
Int_tZGlass::RemoveReferencesTo(ZGlass* lens)
voidTObject::ResetBit(UInt_t f)
voidResize(Int_t nvert, Int_t dim = 0)
voidResizeToMesh(Int_t dim = -1)
voidZGlass::ReTriangulate()
ZMIR*S_ApplyColors(Bool_t regen_tring_cols = true)
ZMIR*S_Diffuse(Float_t diff_const = 1, Float_t dt = 0.1, Bool_t limit_df = false, Bool_t recolor_p = false)
ZMIR*S_FillByGaussBlobs(Bool_t reset_field = true, Int_t n_blobs = 40, Float_t A_min = 5, Float_t A_max = 20, Float_t sigma_min = 2, Float_t sigma_max = 10, Bool_t minmax_p = false, Bool_t recolor_p = false)
ZMIR*S_FindMinMaxField()
ZMIR*ZGlass::S_RebuildRnrScheme()
ZMIR*S_Resize(Int_t nvert, Int_t dim = 0)
ZMIR*S_ResizeToMesh(Int_t dim = -1)
ZMIR*ZGlass::S_ReTriangulate()
ZMIR*ZGlass::S_SetAcceptRefs(Bool_t acceptrefs)
ZMIR*S_SetColorArraySource(ZGlass* colorarraysource)
ZMIR*S_SetFormula(const Text_t* s)
ZMIR*ZGlass::S_SetGuard(ZMirFilter* guard)
ZMIR*S_SetMaxValue(Float_t maxvalue)
ZMIR*S_SetMesh(TriMesh* mesh)
ZMIR*S_SetMinValue(Float_t minvalue)
ZMIR*ZGlass::S_SetMIRActive(Bool_t miractive)
ZMIR*ZGlass::S_SetName(const Text_t* s)
ZMIR*S_SetPalette(RGBAPalette* palette)
ZMIR*ZGlass::S_SetStampReqTring(TimeStamp_t stampreqtring)
ZMIR*ZGlass::S_SetTimeStamp(TimeStamp_t timestamp)
ZMIR*ZGlass::S_SetTitle(const Text_t* s)
ZMIR*ZGlass::S_SetUseDispList(Bool_t usedisplist)
ZMIR*ZGlass::S_SetUseDLRec(Bool_t state)
ZMIR*ZGlass::S_SetUseNameStack(Bool_t usenamestack)
ZMIR*ZGlass::S_UpdateAllViews()
ZMIR*ZGlass::S_UpdateGlassView()
virtual voidTObject::SaveAs(const char* filename = "", Option_t* option = "") constMENU
virtual voidTObject::SavePrimitive(basic_ostream<char,char_traits<char> >& out, Option_t* option = "")
voidZGlass::SetAcceptRefs(Bool_t acceptrefs)
voidTObject::SetBit(UInt_t f)
voidTObject::SetBit(UInt_t f, Bool_t set)
voidSetColorArraySource(ZGlass* colorarraysource)
virtual voidTObject::SetDrawOption(Option_t* option = "")MENU
static voidTObject::SetDtorOnly(void* obj)
voidSetField(Float_t c0)
voidSetField(Float_t c0, Float_t c1)
voidSetField(Float_t c0, Float_t c1, Float_t c2)
voidSetFormula(const Text_t* s)
voidZGlass::SetGuard(ZMirFilter* guard)
voidSetMaxValue(Float_t maxvalue)
voidSetMesh(TriMesh* mesh)
voidSetMinValue(Float_t minvalue)
voidZGlass::SetMIRActive(Bool_t miractive)
voidZGlass::SetName(const Text_t* n)
static voidTObject::SetObjectStat(Bool_t stat)
voidSetPalette(RGBAPalette* palette)
voidZGlass::SetStampReqTring(TimeStamp_t stampreqtring)
virtual voidZGlass::SetStamps(TimeStamp_t s)
voidZGlass::SetTimeStamp(TimeStamp_t timestamp)
voidZGlass::SetTitle(const Text_t* t)
virtual voidTObject::SetUniqueID(UInt_t uid)
voidZGlass::SetUseDispList(Bool_t usedisplist)
voidZGlass::SetUseDLRec(Bool_t state)
voidZGlass::SetUseNameStack(Bool_t usenamestack)
virtual voidShowMembers(TMemberInspector& insp)
TimeStamp_tZGlass::Stamp()
virtual TimeStamp_tZGlass::Stamp(FID_t fid, UChar_t eye_bits = 0)
TimeStamp_tZGlass::StampLink()
virtual TimeStamp_tZGlass::StampLink(FID_t fid)
TimeStamp_tZGlass::StampLinkVFID()
virtual voidZGlass::StampReqTring(FID_t fid = FID_t(0,0))
TimeStamp_tZGlass::StampVFID()
virtual voidStreamer(TBuffer& b)
voidStreamerNVirtual(TBuffer& b)
TStringStrFormula() const
TStringZGlass::StrName() const
TStringZGlass::StrTitle() const
virtual voidTObject::SysError(const char* method, const char* msgfmt) const
Bool_tTObject::TestBit(UInt_t f) const
Int_tTObject::TestBits(UInt_t f) const
voidZGlass::unregister_name_change_cb(ZGlass::NameChangeCB* nccb)
voidZGlass::unregister_ray_absorber(ZGlass::RayAbsorber* ra)
voidZGlass::UpdateAllViews()
voidZGlass::UpdateGlassView()
voidUpdateMinMaxField(set<Int_t> vertices)
virtual voidTObject::UseCurrentStyle()
virtual FID_tVFID() const
virtual GledNS::ClassInfo*VGlassInfo() const
virtual voidTObject::Warning(const char* method, const char* msgfmt) const
virtual Int_tTObject::Write(const char* name = 0, Int_t option = 0, Int_t bufsize = 0)
virtual Int_tTObject::Write(const char* name = 0, Int_t option = 0, Int_t bufsize = 0) const
voidZGlass::WriteLock()
voidZGlass::WriteUnlock()
protected:
virtual voidZGlass::AdEndarkenment()
virtual voidZGlass::AdEnlightenment()
virtual voidZGlass::AdUnfoldment()
ZGlass*assert_colorarraysource(const Exc_t& eh)
TriMesh*assert_mesh(const Exc_t& eh)
ZMIR*ZGlass::assert_MIR_presence(const Exc_t& header, int what = 0)
RGBAPalette*assert_palette(const Exc_t& eh)
voidcheck_min_max(Float_t v)
virtual voidTObject::DoError(int level, const char* location, const char* fmt, va_list va) const
ZMIR*ZGlass::get_MIR()
voidTObject::MakeZombie()
voidZGlass::queen_check_in(ZGlass* l)
virtual voidZGlass::reference_all()
virtual voidZGlass::reference_links()
virtual Int_tZGlass::remove_references_to(ZGlass* lens)
voidZGlass::set_link_or_die(ZGlass*& link, ZGlass* new_val, FID_t fid)
ZMIR*ZGlass::suggest_MIR_presence(const Exc_t& header, int what = 0)
virtual voidZGlass::unreference_all()
virtual voidZGlass::unreference_links()
voidZGlass::warn_caller(const TString& warning)
private:
void_init()

Data Members

protected:
Bool_tZGlass::bAcceptRefsX{GS} 7 BoolOut()
Bool_tZGlass::bMIRActiveX{GS} 7 BoolOut(-join=>1)
Bool_tZGlass::bUseDispListX{GST} 7 Bool(-join=>1)
Bool_tZGlass::bUseNameStackX{GS} 7 Bool()
ZLink<ZGlass>mColorArraySourceX{GS} L{a}
Int_tmDimX{G} 7 ValOut()
UShort_tZGlass::mEyeRefCount!
vector<Float_t>mField
UShort_tZGlass::mFireRefCount! X{G} 7 ValOut(-width=>4)
TStringmFormulaX{GS} 7 Textor()
UInt_tZGlass::mGlassBitsX{g}
ZLink<ZMirFilter>ZGlass::mGuardX{E} L{}
Float_tmMaxValueX{GS} 7 Value(-range=>[-1e6,1e6,1,100])
ZLink<TriMesh>mMeshX{GS} L{a}
Float_tmMinValueX{GS} 7 Value(-range=>[-1e6,1e6,1,100], -join=>1)
UShort_tZGlass::mMoonRefCount! X{G} 7 ValOut(-width=>4)
Int_tmNVertsX{G} 7 ValOut(-join=>1)
TStringZGlass::mNameX{RGE} 7 Textor()
ZLink<RGBAPalette>mPaletteX{GS} L{a}
ZQueen*ZGlass::mQueen! X{g}
GMutexZGlass::mReadMutex!
UShort_tZGlass::mRefCount! X{G} 7 ValOut(-width=>4, -join=>1)
Saturn*ZGlass::mSaturn! X{g}
ID_tZGlass::mSaturnIDX{G} 7 ValOut(-range=>[0,MAX_ID,1], -width=>10)
TimeStamp_tZGlass::mStampReqTring! X{GS} TimeStamp of last change that requires retriangulation
UShort_tZGlass::mSunRefCount! X{G} 7 ValOut(-width=>4, -join=>1)
TimeStamp_tZGlass::mTimeStamp! X{GS} TimeStamp of last change
TStringZGlass::mTitleX{RGE} 7 Textor()
set<NameChangeCB*>*ZGlass::pspNameChangeCB!
set<RayAbsorber*>*ZGlass::pspRayAbsorber!
static GledNS::LinkMemberInfo*sap_ColorArraySource_lmi
static GledNS::LinkMemberInfo*ZGlass::sap_Guard_lmi
static GledNS::LinkMemberInfo*sap_Mesh_lmi
static GledNS::LinkMemberInfo*sap_Palette_lmi
static GledNS::ClassInfo*sap_TriMeshField_ci
static GledNS::ClassInfo*ZGlass::sap_ZGlass_ci

Class Charts

Inheritance Inherited Members Includes Libraries
Class Charts

Function documentation

void _init()
void Resize(Int_t nvert, Int_t dim = 0)
void ResizeToMesh(Int_t dim = -1)
 Resize field to size of mMesh and dim.
 If dim <= 0, keep the old dim;
void SetField(Float_t c0)
void SetField(Float_t c0, Float_t c1)
void SetField(Float_t c0, Float_t c1, Float_t c2)
void FindMinMaxField()
 Find min/max field values.
void UpdateMinMaxField(set<Int_t> vertices)
 Iterate over specified vertices and update global min/max values.
void ApplyColors(Bool_t regen_tring_cols = true)
void PartiallyApplyColors(set<Int_t> vertices, Bool_t regen_tring_cols = true)
void FillByGaussBlobs(Bool_t reset_field = true, Int_t n_blobs = 40, Float_t A_min = 5, Float_t A_max = 20, Float_t sigma_min = 2, Float_t sigma_max = 10, Bool_t minmax_p = false, Bool_t recolor_p = false)
 Generate random 3D gaussian blobs on the surface of the mesh and
 initialize field with the sum of contributions from all the blobs.

 gRandom is used for generation of the blob parameters.
void Diffuse(Float_t diff_const = 1, Float_t dt = 0.1, Bool_t limit_df = false, Bool_t recolor_p = false)
void check_min_max(Float_t v)
TriMeshField(const Text_t* n = "TriMeshField", const Text_t* t = 0)
{ _init(); }
Float_t* FVec(Int_t i = 0)
{ return &mField[i*mDim]; }
Float_t& operator[](Int_t idx)
{ return mField[idx]; }