コード例 #1
0
ファイル: Hair.cs プロジェクト: zengande/faces.net
        private void AfroHair(XmlDocument document, XmlElement paper, int width, int height)
        {
            var e = FaceHelper.NewPath(document, paper);

            e.SetAttribute("d", "M 25,250" +
                           "a 210,150 0 1 1 352,0" +
                           "c 0,0 -180,-150 -352,0");
            FaceHelper.ScaleCentered(e, FaceHelper.FatScale(Fatness), 1, width, height);
        }
コード例 #2
0
ファイル: Hair.cs プロジェクト: zengande/faces.net
        private void NormalShortHair(XmlDocument document, XmlElement paper, int width, int height)
        {
            var e = FaceHelper.NewPath(document, paper);

            e.SetAttribute("d", "M 200,100" +
                           "c 0,0 180,-10 176,150" +
                           "c 0,0 -180,-150 -352,0" +
                           "c 0,0 0,-160 176,-150");
            FaceHelper.ScaleCentered(e, FaceHelper.FatScale(Fatness), 1, width, height);
        }
コード例 #3
0
ファイル: Hair.cs プロジェクト: zengande/faces.net
        private void FlatTopHair(XmlDocument document, XmlElement paper, int width, int height)
        {
            var e = FaceHelper.NewPath(document, paper);

            e.SetAttribute("d", "M 25,60" +
                           "h 352" +
                           "v 190" +
                           "c 0,0 -180,-150 -352,0" +
                           "v -190");
            FaceHelper.ScaleCentered(e, FaceHelper.FatScale(Fatness), 1, width, height);
        }
コード例 #4
0
ファイル: Mouth.cs プロジェクト: zengande/faces.net
        /// <summary>
        /// Generic open mouth
        /// </summary>
        /// <param name="document"></param>
        /// <param name="paper"></param>
        /// <param name="CX"></param>
        /// <param name="CY"></param>
        private void GenericOpenMouth(XmlDocument document, XmlElement paper)
        {
            var x = CX - 55;
            var y = CY;

            var e = FaceHelper.NewPath(document, paper);

            e.SetAttribute("d", "M " + x + "," + y +
                           "a 54,10 0 1 1 110,0" +
                           "a 54,20 0 1 1 -110,0");
        }
コード例 #5
0
ファイル: Eye.cs プロジェクト: zengande/faces.net
        /// <summary>
        /// Dot
        /// </summary>
        /// <param name="document"></param>
        /// <param name="paper"></param>
        private void DotEye(XmlDocument document, XmlElement paper, int width, int height)
        {
            var x = CX;
            var y = CY + 13;

            var e = FaceHelper.NewPath(document, paper);

            e.SetAttribute("d", "M " + x + "," + y +
                           "a 20,15 0 1 1 0.1,0");
            FaceHelper.RotateCentered(e, (LR == LR.Left ? Angle : -Angle), width, height);
        }
コード例 #6
0
ファイル: Head.cs プロジェクト: zengande/faces.net
        private void DefaultHead(XmlDocument document, XmlElement paper, int width, int height)
        {
            var e = FaceHelper.NewPath(document, paper);

            e.SetAttribute("d", "M 200,100" +
                           "c 0,0 180,-10 180,200" +
                           "c 0,0 0,210 -180,200" +
                           "c 0,0 -180,10 -180,-200" +
                           "c 0,0 0,-210 180,-200");
            e.SetAttribute("fill", FaceHelper.GetHtmlColor(SkinColor));
            FaceHelper.ScaleCentered(e, FaceHelper.FatScale(Fatness), 1, width, height);
        }
コード例 #7
0
ファイル: Mouth.cs プロジェクト: zengande/faces.net
        /// <summary>
        /// Thin flat
        /// </summary>
        /// <param name="document"></param>
        /// <param name="paper"></param>
        /// <param name="CX"></param>
        /// <param name="CY"></param>
        private void ThinFlatMouth(XmlDocument document, XmlElement paper)
        {
            var x = CX - 55;
            var y = CY;

            var e = FaceHelper.NewPath(document, paper);

            e.SetAttribute("d", "M " + x + "," + y +
                           "h 110");
            e.SetAttribute("stroke", "#000");
            e.SetAttribute("stroke-width", "8");
            e.SetAttribute("fill", "none");
        }
コード例 #8
0
ファイル: Mouth.cs プロジェクト: zengande/faces.net
        /// <summary>
        /// Thin smile
        /// </summary>
        /// <param name="document"></param>
        /// <param name="paper"></param>
        /// <param name="CX"></param>
        /// <param name="CY"></param>
        private void ThinSmileMouth(XmlDocument document, XmlElement paper)
        {
            var x = CX - 75;
            var y = CY - 15;

            var e = FaceHelper.NewPath(document, paper);

            e.SetAttribute("d", "M " + x + "," + y +
                           "c 0,0 75,60 150,0");
            e.SetAttribute("stroke", "#000");
            e.SetAttribute("stroke-width", "8");
            e.SetAttribute("fill", "none");
        }
コード例 #9
0
ファイル: Eye.cs プロジェクト: zengande/faces.net
        /// <summary>
        /// Horizontal
        /// </summary>
        /// <param name="document"></param>
        /// <param name="paper"></param>
        private void HorizontalEye(XmlDocument document, XmlElement paper, int width, int height)
        {
            var x = CX - 30;
            var y = CY;

            var e = FaceHelper.NewPath(document, paper);

            e.SetAttribute("d", "M " + x + "," + y +
                           "h 60");
            e.SetAttribute("stroke", "#000");
            e.SetAttribute("stroke-width", "8");
            e.SetAttribute("fill", "none");
            FaceHelper.RotateCentered(e, (LR == LR.Left ? Angle : -Angle), width, height);
        }
コード例 #10
0
        /// <summary>
        /// Big single
        /// </summary>
        /// <param name="document"></param>
        /// <param name="paper"></param>
        /// <param name="CX"></param>
        /// <param name="CY"></param>
        /// <param name="Size"></param>
        /// <param name="Flip"></param>
        private void BigSingleNose(XmlDocument document, XmlElement paper, int width, int height)
        {
            var scale = Size + 0.5;
            var x     = CX - 9;
            var y     = CY - 25;

            var e = FaceHelper.NewPath(document, paper);

            e.SetAttribute("d", "M " + x + "," + y +
                           "c 0,0 -20,60 9,55" +
                           "c 0,0 29,5 9,-55");
            e.SetAttribute("stroke", "#000");
            e.SetAttribute("stroke-width", "8");
            e.SetAttribute("fill", "none");
            FaceHelper.ScaleCentered(e, scale, scale, width, height);
        }
コード例 #11
0
ファイル: Eye.cs プロジェクト: zengande/faces.net
        /// <summary>
        /// Normal (circle with a dot in it)
        /// </summary>
        /// <param name="document"></param>
        /// <param name="paper"></param>
        private void NormalEye(XmlDocument document, XmlElement paper, int width, int height)
        {
            var x = CX;
            var y = CY + 20;

            var e = FaceHelper.NewPath(document, paper);

            e.SetAttribute("d", "M " + x + "," + y +
                           "a 30,20 0 1 1 0.1,0");
            e.SetAttribute("stroke", "#000");
            e.SetAttribute("stroke-width", "6");
            e.SetAttribute("fill", "#f0f0f0");
            FaceHelper.RotateCentered(e, (LR == LR.Left ? Angle : -Angle), width, height);

            var e2 = FaceHelper.NewPath(document, paper);

            e2.SetAttribute("d", "M " + x + "," + (y - 12) +
                            "a 12,8 0 1 1 0.1,0");
            FaceHelper.RotateCentered(e2, (LR == LR.Left ? Angle : -Angle), width, height);
        }
コード例 #12
0
ファイル: Eye.cs プロジェクト: zengande/faces.net
        /// <summary>
        /// Arc eyelid
        /// </summary>
        /// <param name="document"></param>
        /// <param name="paper"></param>
        private void ArcEyelidEye(XmlDocument document, XmlElement paper, int width, int height)
        {
            var x = CX;
            var y = CY + 20;

            var e = FaceHelper.NewPath(document, paper);

            e.SetAttribute("d", "M " + x + "," + y +
                           "a 17,17 0 1 1 0.1,0 z");
            FaceHelper.RotateCentered(e, (LR == LR.Left ? Angle : -Angle), width, height);

            var e2 = FaceHelper.NewPath(document, paper);

            e2.SetAttribute("d", "M " + (x - 40) + "," + (y - 14) +
                            "c 36,-44 87,-4 87,-4");
            e2.SetAttribute("stroke", "#000");
            e2.SetAttribute("stroke-width", "4");
            e2.SetAttribute("fill", "none");
            FaceHelper.RotateCentered(e, (LR == LR.Left ? Angle : -Angle), width, height);
        }
コード例 #13
0
ファイル: Mouth.cs プロジェクト: zengande/faces.net
        /// <summary>
        /// Open-mouthed smile, top teeth
        /// </summary>
        /// <param name="document"></param>
        /// <param name="paper"></param>
        /// <param name="CX"></param>
        /// <param name="CY"></param>
        private void OpenMouthedSmileMouth(XmlDocument document, XmlElement paper)
        {
            var x = CX - 75;
            var y = CY - 15;

            var e = FaceHelper.NewPath(document, paper);

            e.SetAttribute("d", "M " + x + "," + y +
                           "c 0,0 75,100 150,0" +
                           "h -150");

            var e2 = FaceHelper.NewPath(document, paper);

            e2.SetAttribute("d", "M " + (x + 16) + "," + (y + 8) +
                            "l 16,16" +
                            "h 86" +
                            "l 16,-16" +
                            "h -118");
            e2.SetAttribute("fill", "#f0f0f0");
        }
コード例 #14
0
ファイル: Eyebrow.cs プロジェクト: zengande/faces.net
        private void DefaultEyebrow(XmlDocument document, XmlElement paper)
        {
            var x = CX - 30;
            var y = CY;

            var e = FaceHelper.NewPath(document, paper);

            if (LR == LR.Left)
            {
                e.SetAttribute("d", "M " + x + "," + y +
                               "c 0,0 -3,-30 60,0");
            }
            else
            {
                e.SetAttribute("d", "M " + x + "," + y +
                               "c 0,0 63,-30 60,0");
            }
            e.SetAttribute("stroke", "#000");
            e.SetAttribute("stroke-width", "8");
            e.SetAttribute("fill", "none");
        }
コード例 #15
0
        /// <summary>
        /// Pinnochio
        /// </summary>
        /// <param name="document"></param>
        /// <param name="paper"></param>
        private void PinnochioNose(XmlDocument document, XmlElement paper, int width, int height)
        {
            var scale = Size + 0.5;
            var x     = CX;
            var y     = CY - 10;

            var e = FaceHelper.NewPath(document, paper);

            e.SetAttribute("d", "M " + (Flip ? x - 48 : x) + "," + y +
                           "c 0,0 50,-30 0,30");
            e.SetAttribute("stroke", "#000");
            e.SetAttribute("stroke-width", "8");
            e.SetAttribute("fill", "none");
            if (Flip)
            {
                FaceHelper.ScaleCentered(e, -scale, scale, width, height);
            }
            else
            {
                FaceHelper.ScaleCentered(e, scale, scale, width, height);
            }
        }