public override IBlauPoint clone()
        {
            IBlauPoint dupe = new QuantizedBlauPoint(this.Space, this._quantizer);

            for (int i = 0; i < this.Space.Dimension; i++)
            {
                dupe.setCoordinate(i, this.getCoordinate(i));
            }
            return(dupe);
        }
Beispiel #2
0
        // convert integral lattice coordinates to real blauspace coordinates
        private IBlauPoint getCurrentBlauPoint()
        {
            BlauPoint p = new QuantizedBlauPoint(this.BlauSpace, this);

            for (int i = 0; i < this.BlauSpace.Dimension; i++)
            {
                double coord =
                    this.BlauSpace.getAxis(i).MinimumValue +
                    ((double)this.getCoordinate(i) * getStepSize(i));

                p.setCoordinate(i, coord);
            }
            return(p);
        }
Beispiel #3
0
        // quantize a blaupoint with respect to this lattice
        public IBlauPoint quantize(IBlauPoint p)
        {
            if (p.Space != this.BlauSpace)
            {
                throw new Exception("BlauSpaceLattice is being requested to quantize a BlauPoint which lies in a foreign BlauSpace");
            }

            IBlauPoint qp = new QuantizedBlauPoint(p.Space, this);

            for (int i = 0; i < p.Space.Dimension; i++)
            {
                double px = p.getCoordinate(i);
                // qp will quantize coordinates to this lattice
                qp.setCoordinate(i, px);
            }
            return(qp);
        }