Esempio n. 1
0
        public override int GetHashCode()
        {
            int hash = 1;

            if (HasXCenter)
            {
                hash ^= XCenter.GetHashCode();
            }
            if (HasYCenter)
            {
                hash ^= YCenter.GetHashCode();
            }
            if (HasHeight)
            {
                hash ^= Height.GetHashCode();
            }
            if (HasWidth)
            {
                hash ^= Width.GetHashCode();
            }
            if (HasRotation)
            {
                hash ^= pbc::ProtobufEqualityComparers.BitwiseSingleEqualityComparer.GetHashCode(Rotation);
            }
            if (HasRectId)
            {
                hash ^= RectId.GetHashCode();
            }
            if (_unknownFields != null)
            {
                hash ^= _unknownFields.GetHashCode();
            }
            return(hash);
        }
Esempio n. 2
0
        public override double Get(double x, double y)
        {
            double dx  = x - XCenter.Get(x, y);
            double dy  = y - YCenter.Get(x, y);
            double len = Math.Sqrt(dx * dx + dy * dy);
            double rad = Radius.Get(x, y);
            double i   = (rad - len) / rad;

            if (i < 0)
            {
                i = 0;
            }

            if (i > 1)
            {
                i = 1;
            }

            return(i);
        }
Esempio n. 3
0
        public override double Get(double x, double y, double z, double w)
        {
            double dx  = x - XCenter.Get(x, y, z, w);
            double dy  = y - YCenter.Get(x, y, z, w);
            double dz  = z - ZCenter.Get(x, y, z, w);
            double dw  = w - WCenter.Get(x, y, z, w);
            double len = Math.Sqrt(dx * dx + dy * dy + dz * dz + dw * dw);
            double rad = Radius.Get(x, y, z, w);
            double i   = (rad - len) / rad;

            if (i < 0)
            {
                i = 0;
            }

            if (i > 1)
            {
                i = 1;
            }

            return(i);
        }
Esempio n. 4
0
        public override double Get(double x, double y, double z, double w, double u, double v)
        {
            double dx  = x - XCenter.Get(x, y, z, w, u, v);
            double dy  = y - YCenter.Get(x, y, z, w, u, v);
            double dz  = z - ZCenter.Get(x, y, z, w, u, v);
            double dw  = w - WCenter.Get(x, y, z, w, u, v);
            double du  = u - UCenter.Get(x, y, z, w, u, v);
            double dv  = v - VCenter.Get(x, y, z, w, u, v);
            double len = Math.Sqrt(dx * dx + dy * dy + dz * dz + dw * dw + du * du + dv * dv);
            double rad = Radius.Get(x, y, z, w, u, v);
            double i   = (rad - len) / rad;

            if (i < 0)
            {
                i = 0;
            }

            if (i > 1)
            {
                i = 1;
            }

            return(i);
        }
Esempio n. 5
0
 private void 角心未归位数ToolStripMenuItem_Click(object sender, EventArgs e) =>
 MessageBox.Show(XCenter.Stat());