Class Voro.wall_cylinder

  • Enclosing class:
    Voro

    class Voro.wall_cylinder
    extends Voro.wall
    \brief A class representing a cylindrical wall object. This class represents a open cylinder wall object.
    • Field Summary

      Fields 
      Modifier and Type Field Description
      private double asi  
      private double rc  
      private int w_id  
      private double xa  
      private double xc  
      private double ya  
      private double yc  
      private double za  
      private double zc  
    • Constructor Summary

      Constructors 
      Constructor Description
      wall_cylinder​(double xc_, double yc_, double zc_, double xa_, double ya_, double za_, double rc_, int w_id_)
      Constructs a cylinder wall object.
    • Method Summary

      All Methods Instance Methods Concrete Methods 
      Modifier and Type Method Description
      boolean cut_cell​(Voro.voronoicell_neighbor c, double x, double y, double z)
      A pure virtual function for cutting a cell with neighbor-tracking enabled with a wall.
      boolean cut_cell​(Voro.voronoicell c, double x, double y, double z)
      A pure virtual function for cutting a cell without neighbor-tracking with a wall.
      boolean cut_cell_base​(Voro.voronoicell_neighbor c, double x, double y, double z)  
      boolean cut_cell_base​(Voro.voronoicell c, double x, double y, double z)
      Cuts a cell by the cylindrical wall object.
      void delete()  
      boolean point_inside​(double x, double y, double z)
      Tests to see whether a point is inside the cylindrical wall object.
      • Methods inherited from class java.lang.Object

        clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
    • Field Detail

      • w_id

        private int w_id
      • xc

        private double xc
      • yc

        private double yc
      • zc

        private double zc
      • xa

        private double xa
      • ya

        private double ya
      • za

        private double za
      • asi

        private double asi
      • rc

        private double rc
    • Constructor Detail

      • wall_cylinder

        public wall_cylinder​(double xc_,
                             double yc_,
                             double zc_,
                             double xa_,
                             double ya_,
                             double za_,
                             double rc_,
                             int w_id_)
        Constructs a cylinder wall object. \param[in] (xc_,yc_,zc_) a point on the axis of the cylinder. \param[in] (xa_,ya_,za_) a vector pointing along the direction of the cylinder. \param[in] rc_ the radius of the cylinder \param[in] w_id_ an ID number to associate with the wall for neighbor tracking.
    • Method Detail

      • point_inside

        public boolean point_inside​(double x,
                                    double y,
                                    double z)
        Tests to see whether a point is inside the cylindrical wall object. \param[in] (x,y,z) the vector to test. \return True if the point is inside, false if the point is outside.
        Specified by:
        point_inside in class Voro.wall
      • cut_cell_base

        public boolean cut_cell_base​(Voro.voronoicell c,
                                     double x,
                                     double y,
                                     double z)
        Cuts a cell by the cylindrical wall object. The cylindrical wall is approximated by a single plane applied at the point on the cylinder which is closest to the center of the cell. This works well for particle arrangements that are packed against the wall, but loses accuracy for sparse particle distributions. \param[in,out] c the Voronoi cell to be cut. \param[in] (x,y,z) the location of the Voronoi cell. \return True if the cell still exists, false if the cell is deleted.
      • cut_cell

        public boolean cut_cell​(Voro.voronoicell c,
                                double x,
                                double y,
                                double z)
        Description copied from class: Voro.wall
        A pure virtual function for cutting a cell without neighbor-tracking with a wall.
        Specified by:
        cut_cell in class Voro.wall
      • cut_cell

        public boolean cut_cell​(Voro.voronoicell_neighbor c,
                                double x,
                                double y,
                                double z)
        Description copied from class: Voro.wall
        A pure virtual function for cutting a cell with neighbor-tracking enabled with a wall.
        Specified by:
        cut_cell in class Voro.wall