Exemple #1
0
 public override int GetHashCode()
 {
     unchecked
     {
         int result = WindowLayer.GetHashCode();
         result = (result * 397) ^ ComponentLayer.GetHashCode();
         result = (result * 397) ^ ZOrder.GetHashCode();
         return(result);
     }
 }
Exemple #2
0
        public static void WriteLogError(this ILogger logger, ComponentLayer componentLayer, string className, string methodName, string message, params object[] args)
        {
            switch (componentLayer)
            {
            case ComponentLayer.API:
                logger.LogError("APILAYER", className, methodName, message, args);
                break;

            case ComponentLayer.REPOSITORY:
                logger.LogError("REPOSITORYLAYER", className, methodName, message, args);
                break;

            default:
                break;
            }
        }
Exemple #3
0
        public static void WriteLogInformation(this ILogger logger, ComponentLayer componentLayer, string className, string methodName, MethodLine methodLine, string message, params object[] args)
        {
            var layer = string.Empty;

            switch (componentLayer)
            {
            case ComponentLayer.API:

                break;

            case ComponentLayer.REPOSITORY:
                logger.LogInformation("REPOSITORYLAYER", className, methodName, message, args);
                break;

            default:
                break;
            }

            var line = string.Empty;

            switch (methodLine)
            {
            case MethodLine.BEGIN:
                line = "BEGIN";
                break;

            case MethodLine.END:
                line = "END";
                break;

            default:
                break;
            }

            logger.LogInformation(layer, line, className, methodName, message, args);
        }
Exemple #4
0
        private static void DrawLayers(XGraphics gfx, IatRunConfiguration config, ComponentLayer componentLayer, double scaleFactor, IPcbLayer overlayLayer, IPcbLayer pasteLayer, IPcbLayer mechanicalLayer, double maxExtensionX, double maxExtensionY, Dictionary <string, List <Component> > componentGroup, List <XColor> colorsFromConfiguration)
        {
            var state = gfx.Save();

            if (componentLayer == ComponentLayer.Top)
            {
                gfx.ScaleTransform(1, -1);
                gfx.TranslateTransform(1, -maxExtensionY);
                gfx.TranslateTransform(gfx.PdfPage.Width * 0.05, -gfx.PdfPage.Height * 0.05);
                gfx.TranslateTransform(1, -maxExtensionY * scaleFactor + maxExtensionY);
                gfx.ScaleTransform(scaleFactor);
            }
            else
            {
                gfx.ScaleTransform(-1, -1);
                gfx.TranslateTransform(-maxExtensionX, -maxExtensionY);
                gfx.TranslateTransform(-gfx.PdfPage.Width * 0.05, -gfx.PdfPage.Height * 0.05);
                gfx.TranslateTransform(-maxExtensionX * scaleFactor + maxExtensionX, -maxExtensionY * scaleFactor + maxExtensionY);
                gfx.ScaleTransform(scaleFactor);
            }

            XPen xpenPasteLayer = new XPen(XColors.Gray)
            {
                Width    = 0.1,
                LineCap  = XLineCap.Round,
                LineJoin = XLineJoin.Round
            };

            foreach (PcbShape s in pasteLayer.PcbShapes)
            {
                DrawElement(gfx, s, xpenPasteLayer);
            }

            XPen xpenOverlayLayer = new XPen(XColors.Black)
            {
                Width    = 0.1,
                LineCap  = XLineCap.Round,
                LineJoin = XLineJoin.Round
            };

            foreach (PcbShape s in overlayLayer.PcbShapes)
            {
                DrawElement(gfx, s, xpenOverlayLayer);
            }

            XPen xpenMechanicalOutlineLayer = new XPen(XColors.DarkRed)
            {
                Width    = 0.1,
                LineCap  = XLineCap.Round,
                LineJoin = XLineJoin.Round
            };

            foreach (PcbShape s in mechanicalLayer.PcbShapes)
            {
                DrawElement(gfx, s, xpenMechanicalOutlineLayer);
            }

            int nrLines = config.OutputSettings.ComponentColors.Count;

            for (int lineIndex = 0; lineIndex < Math.Min(nrLines, componentGroup.Count); lineIndex++)
            {
                XPen xpenComponent = new XPen(colorsFromConfiguration[lineIndex])
                {
                    Width    = 0.1,
                    LineCap  = XLineCap.Round,
                    LineJoin = XLineJoin.Round
                };
                XBrush xb = new XSolidBrush(colorsFromConfiguration[lineIndex]);

                double width          = 0.5;
                double dotScaleFactor = (double)config.OutputSettings.DotScaleFactor;
                foreach (Component c in componentGroup.Values.ElementAt(lineIndex))
                {
                    double posX    = (double)c.PositionX - width * dotScaleFactor / 2;
                    double posY    = (double)c.PositionY - width * dotScaleFactor / 2;
                    double widthXY = width * dotScaleFactor;
                    gfx.DrawRectangle(xpenComponent, xb, posX, posY, widthXY, widthXY);
                }
            }

            gfx.Restore(state);
        }