Esempio n. 1
0
        /// search for overlap with a MillingCutter c positioned at cl, return found objects
        public LinkedList <Triangle> search_cutter_overlap(MillingCutter c, CLPoint cl)
        {
            double r = c.getRadius();
            // build a bounding-box at the current CL
            Bbox bb = new Bbox(cl.x - r, cl.x + r, cl.y - r, cl.y + r, cl.z, cl.z + c.getLength());

            return(this.search(bb));
        }
Esempio n. 2
0
 /// set the MillingCutter to use
 public virtual void setCutter(MillingCutter c)
 {
     cutter = c;
     foreach (Operation op in subOp)
     {
         op.setCutter(cutter);
     }
 }
        /// add a MillingCutter to this CompositeCutter
        /// the cutter is valid from the previous radius out to the given radius
        /// and its axial offset is given by zoffset

        // add cutter c which is valid until radius=r and height=z with z-offset zoff
        public void addCutter(MillingCutter c, double r, double h, double zoff)
        {
            radiusvec.Add(r);
            heightvec.Add(h);
            cutter.Add(c);
            zoffset.Add(zoff);
            if (r > radius)
            {
                radius   = r;
                diameter = 2 * r;
            }
            // update length also?
        }