Index

C++ Code Documentation

geom::surface0::surface::SurfaceBase

Derived from: geom::surface0::surface::virtual MaterialSetBase

File: GEOM/geom/surface/SurfaceBase.H

List of surfaces.

public:
  • SurfaceBase();
    void constructor
  • SurfaceBase( SurfaceBase const & );
    copy constructor
  • virtual ~SurfaceBase();
    destructor
  • SurfaceBase &operator=( SurfaceBase const & );
    assignment operator
  • virtual void changed() const;
  • virtual void insert( surface0::GeomObject const &g );
  • virtual void insert( std::list<surface0::GeomObject *> const &L );
  • virtual void insert( SurfaceBase const &G );
  • virtual void insert_no_copy( surface0::GeomObject *g );
  • virtual void insert_no_copy( std::list<surface0::GeomObject *> const &L );
  • uint size() const;
  • bool empty() const;
  • surface0::GeomObject *first();
  • surface0::GeomObject const *first() const;
  • base::String const &name() const;
  • void name( base::String const &name );
  • void read( ::io::Istream &stream, geom::FileMode filemode = geom::FILEMODE_DEFAULT ) throw (::io::ReadException);
  • void read( ::io::Istream &stream, ::milieu::kernel::MilieuBase &M, geom::FileMode filemode = geom::FILEMODE_DEFAULT ) throw (::io::ReadException);
  • void write( ::io::Ostream &stream, geom::FileMode filemode = geom::FILEMODE_DEFAULT ) const throw (::io::WriteException);
  • void write( ::io::Ostream &stream, uint normals, uint colors, milieu::kernel::MilieuBase const &milieu, geom::FileMode filemode = geom::FILEMODE_DEFAULT ) const throw (::io::WriteException);
  • void dump( ::io::Ostream & ) const;
  • void clear();
  • void clear_no_delete();
  • virtual void materials( MaterialSetBase const &M );
    set the materials of *this to M
  • virtual void materials( uint id, Material const & );
  • virtual surface::Material const &materials(uint i) const;
  • uint vertex_count() const;
  • uint edge_count() const;
  • uint face_count() const;
  • geom::Box const &box() const;
  • void relax( uint iterations );
    Smooth a mesh. relaxes a mesh by replacing each point by the average of its adjacent points boundary points are omitted the points are relaxed in random order to prevent lopsidedness iterations is approximately how many cycles through all the vertices typically < 10
  • void color_original( base::Color4 const &p );
    void color_fixed( base::Color4 const &p ); Color the surface a modification of its original color. surface0::GeomObjectrguments 1/2,1/2,1/2,1/2 restore the surface to its original color. Other arguments color the surface by piecewise linear interpolation between 0, the original value, and 1 (except hue which shifts).
  • void color_by_normal( base::Color4 const &p );
    Color the surface at each vertex by the normal direction of the surface at that vertex
  • void color_by_direction( base::Color4 const &p );
    Color the surface at each vertex by its direction of that vertex from the origin (r,g,b) = scale * (unit direction base::vector)
  • void color_by_distance( base::Color4 const &p, float scale );
    Color the surface at each vertex by its distance from the origin the distance, in the interval [0,inf) is rescaled to the interval [0,1) by an arctan function
  • void color_by_area( base::Color4 const &p, float scale );
    Color the surface at each vertex by the area of an adjacent face
  • void color_by_gaussian_curvature( base::Color4 const &p, float scale );
    Color the surface by discrete Gaussian curvature.
  • void color_by_mean_curvature( base::Color4 const &p, float scale );
    Color the surface by discrete mean curvature.
  • void color_randomly( base::Color4 const &p );
    Color the faces of the surface with randomly chosen colors.
  • void color_checked( base::Color4 const &p1, base::Color4 const &p2 );
  • void alpha_fade( float x0, float x1 );
  • virtual void draw() const;
  • virtual void draw( geom::Transform const &transform, geom::ProjectionMode mode ) const;
  • static surface0::Surface *surface( surface0::GeomObject *s );
    CASTS
  • static surface0::Surface const *surface( surface0::GeomObject const *s );
  • virtual std::list<surface0::GeomObject *> const &list() const;
  • surface0::GeomObject *strip();
  • void position( std::list<geom::Transform> &x ) const;
  • void position( geom::Transform const &x );
protected:
  • mutable surface0::BoundingBox _box;
private:
  • virtual std::list<surface0::GeomObject *> &list();
  • base::String _name;
  • friend class Construct;
  • std::list<surface0::GeomObject *> _;


geom::surface0::surface::SurfaceBase GANG