35 #ifndef ANA_BUCKET_BUCKET_H 36 #define ANA_BUCKET_BUCKET_H 51 struct SliceViewState;
58 Bucket(
const char *filename=NULL);
63 virtual bool boundingBox( std::vector<float> & bmin,
64 std::vector<float> & bmax )
const;
66 std::vector<float> & bmax )
const 73 virtual std::vector<float>
voxelSize()
const;
74 virtual void setVoxelSize(
const std::vector<float> & vs );
99 virtual bool empty()
const;
110 virtual AObject*
objectAt(
const std::vector<float> & pos,
float tol = 0 );
113 virtual bool savable()
const {
return(
true ); }
114 virtual bool save(
const std::string & filename );
115 virtual bool reload(
const std::string & filename );
146 typedef std::pair<biter, biter> piter;
147 std::vector<piter> ivec;
148 ivec.push_back( piter( ibegin, iend ) );
ViewState holds information about how a view wants to see an object.
virtual std::vector< float > voxelSize() const
Returns at least 4 sizes. For 3D objects, returns (1, 1, 1, 1)
void insert(const aims::BucketMap< Void > ®ion)
virtual void setSubBucketGeomExtrema(const Point3df &pmin=Point3df(0., 0., 0.), const Point3df &pmax=Point3df(0., 0., 0.))
const aims::BucketMap< Void > & bucket() const
virtual void setInternalsChanged()
Notifies some underlying lower-level objects have changed.
virtual void setGeomExtrema()
Scans the object internals and determines its geometry extrema.
virtual bool hasBucketChanged() const
Base Anatomist object (abstract)
float MaxT() const
Obsolete, deprecated.
AIMSDATA_API AimsTimeSurface< 4, Void > AimsSurfaceFacet
size_t createFacet(size_t t=0) const
virtual bool save(const std::string &filename)
virtual bool reload(const std::string &filename)
Re-reads objects from disk.
virtual unsigned glNumVertex(const ViewState &) const
carto::rc_ptr< aims::BucketMap< Void > > _bucket
static Tree * _optionTree
void setSurface(AimsSurfaceFacet *surf)
float MinT() const
Obsolete, deprecated.
virtual bool empty() const
Attributed objects wrapper.
virtual const GLfloat * glVertexArray(const ViewState &) const
void setBucket(const aims::BucketMap< Void > &theBuck)
virtual const GLfloat * glNormalArray(const ViewState &) const
normals array (optional), default=0 (no normals, flat shaded faces)
virtual carto::GenericObject * attributed()
virtual bool boundingBox2D(std::vector< float > &bmin, std::vector< float > &bmax) const
Bounding box in 2D views mode.
bool allow2DRendering() const
Bucket(const char *filename=NULL)
aims::BucketMap< Void > & bucket()
const AimsSurface< 4, Void > * surface(const ViewState &) const
virtual bool loadable() const
virtual bool boundingBox(std::vector< float > &bmin, std::vector< float > &bmax) const
Fills bmin and bmax with the N-D bounding box extrema in the object's referential coordinates...
void meshSubBucket(aims::BucketMap< Void >::Bucket::const_iterator ibegin, aims::BucketMap< Void >::Bucket::const_iterator iend, AimsSurface< 4, Void > *surf, bool glonfly=false) const
virtual bool savable() const
virtual Tree * optionTree() const
Menu tree for new options, see object/optionMatcher.h.
virtual bool Is3DObject()
virtual void setBucketChanged()
virtual AObject * objectAt(const std::vector< float > &pos, float tol=0)
Find the object (sub-object) at given postion with a tolerence.
void erase(const aims::BucketMap< Void > ®ion)
virtual std::string viewStateID(glPart part, const ViewState &) const
Makes a unique ID from a viewstate.
glPart
GL object parts, each driving a GL list.
virtual void setVoxelSize(const std::vector< float > &vs)
carto::rc_ptr< aims::BucketMap< Void > > rcBucket()
virtual const GLuint * glPolygonArray(const ViewState &) const
virtual unsigned glNumPolygon(const ViewState &) const
void setAllow2DRendering(bool x)
when false, a bucket will always appear 3D
Specialization for a sliceable object.
virtual unsigned glPolygonSize(const ViewState &) const
number of vertices per polygon (default = 3: triangles)
virtual bool Is2DObject()