39 ClassImp(TPointSet3D);
44 TPointSet3D::TPointSet3D(
const TPointSet3D &t) :
45 TPolyMarker3D(t), TAttBBox(t), fOwnIds(kFALSE), fIds()
53 TPointSet3D::~TPointSet3D()
61 void TPointSet3D::CopyIds(
const TPointSet3D& t)
64 fIds.Expand(t.fIds.GetSize());
66 for (Int_t i=0; i<t.fIds.GetSize(); ++i)
67 fIds.AddAt(t.fIds.At(i)->Clone(), i);
69 for (Int_t i=0; i<t.fIds.GetSize(); ++i)
70 fIds.AddAt(t.fIds.At(i), i);
77 TPointSet3D& TPointSet3D::operator=(
const TPointSet3D& t)
81 TPolyMarker3D::operator=(t);
90 void TPointSet3D::ComputeBBox()
96 for (Int_t i = 0; i < n; ++i, p += 3) {
107 void TPointSet3D::SetPointId(TObject*
id)
109 SetPointId(fLastPoint,
id);
115 void TPointSet3D::SetPointId(Int_t n, TObject*
id)
118 if (fN > fIds.GetSize())
126 void TPointSet3D::ClearIds()
129 for (Int_t i=0; i<fIds.GetSize(); ++i)
130 delete GetPointId(i);
145 void TPointSet3D::PointSelected(Int_t n)
147 TObject*
id = GetPointId(n);
148 printf(
"TPointSet3D::PointSelected n=%d, id=(%s*)0x%lx\n",
149 n,
id ? id->IsA()->GetName() :
"void", (ULong_t)
id);
157 void TPointSet3D::Streamer(TBuffer &R__b)
159 if (R__b.IsReading()) {
160 R__b.ReadClassBuffer(TPointSet3D::Class(),
this);
164 for (Int_t i=0; i<n; ++i) {
165 TObject* o = (TObject*) R__b.ReadObjectAny(TObject::Class());
166 if (gDebug > 0) { printf(
"Read[%2d]: ", i); o->Print(); }
170 R__b.WriteClassBuffer(TPointSet3D::Class(),
this);
172 R__b << fIds.GetEntries();
175 while ((o = next())) {
176 if (gDebug > 0) { printf(
"Writing: "); o->Print(); }
177 R__b.WriteObjectAny(o, TObject::Class());