コード例 #1
0
        private void setVertex()
        {
            float xmin = float.MaxValue;
            float ymin = float.MaxValue;
            float xmax = float.MinValue;
            float ymax = float.MinValue;

            for (int i = 0; i < 4; i++)
            {
                xmax = Math.Max(xmax, vertex[i].X);
                ymax = Math.Max(ymax, vertex[i].Y);
                xmin = Math.Min(xmin, vertex[i].X);
                ymin = Math.Min(ymin, vertex[i].Y);
            }

            rect = new Rectangle((int)xmin, (int)ymin, (int)(xmax - xmin), (int)(ymax - ymin));

            AB = new YLScsDrawing.Geometry.Vector(vertex[0], vertex[1]);
            BC = new YLScsDrawing.Geometry.Vector(vertex[1], vertex[2]);
            CD = new YLScsDrawing.Geometry.Vector(vertex[2], vertex[3]);
            DA = new YLScsDrawing.Geometry.Vector(vertex[3], vertex[0]);

            // get unit vector
            AB /= AB.Magnitude;
            BC /= BC.Magnitude;
            CD /= CD.Magnitude;
            DA /= DA.Magnitude;
        }
コード例 #2
0
ファイル: FreeTransform.cs プロジェクト: emcf/WolfEngine
        private void setVertex()
        {
            float xmin = float.MaxValue;
            float ymin = float.MaxValue;
            float xmax = float.MinValue;
            float ymax = float.MinValue;

            for (int i = 0; i < 4; i++)
            {
                xmax = Math.Max(xmax, vertex[i].X);
                ymax = Math.Max(ymax, vertex[i].Y);
                xmin = Math.Min(xmin, vertex[i].X);
                ymin = Math.Min(ymin, vertex[i].Y);
            }

            rect = new Rectangle((int)xmin, (int)ymin, (int)(xmax - xmin), (int)(ymax - ymin));

            AB = new YLScsDrawing.Geometry.Vector(vertex[0], vertex[1]);
            BC = new YLScsDrawing.Geometry.Vector(vertex[1], vertex[2]);
            CD = new YLScsDrawing.Geometry.Vector(vertex[2], vertex[3]);
            DA = new YLScsDrawing.Geometry.Vector(vertex[3], vertex[0]);

            // get unit vector
            AB /= AB.Magnitude;
            BC /= BC.Magnitude;
            CD /= CD.Magnitude;
            DA /= DA.Magnitude;
        }