private static Bitmap GenerateBitmap(DiagramArguments arguments, IClassDiagram cd)
        {
            var cdVisual = new ClassDiagramVisual(cd);

            using (var measureBitmap = new Bitmap(1, 1))
                using (var measureGraphics = System.Drawing.Graphics.FromImage(measureBitmap))
                {
                    var graphicContext = new GdiPlusGraphicContext(measureGraphics);

                    cdVisual.Layout(graphicContext);

                    var renderBitmap = new Bitmap(
                        (int)Math.Ceiling(cdVisual.Width + 1),
                        (int)Math.Ceiling(cdVisual.Height + 1));

                    using (var renderGraphics = System.Drawing.Graphics.FromImage(renderBitmap))
                    {
                        renderGraphics.Clear(Color.White);
                        renderGraphics.CompositingQuality = System.Drawing.Drawing2D.CompositingQuality.HighQuality;
                        renderGraphics.InterpolationMode  = System.Drawing.Drawing2D.InterpolationMode.High;
                        renderGraphics.SmoothingMode      = System.Drawing.Drawing2D.SmoothingMode.AntiAlias;

                        graphicContext = new GdiPlusGraphicContext(renderGraphics);

                        cdVisual.Draw(graphicContext);
                    }

                    return(renderBitmap);
                }
        }
        public AffectedClassDiagram(IDictionary <ITestMethod, IList <IMethodInvocation> > coverage,
                                    ISet <IMethodChange> methodChanges, IClassDiagram classDiagram)
        {
            Coverage      = coverage;
            MethodChanges = methodChanges;
            ClassDiagram  = classDiagram;

            GenerateDiagram();
        }
示例#3
0
 public DiagramCreationResult(IClassDiagram classDiagram, IEnumerable <Error> errors)
 {
     //if (classDiagram == null) throw new ArgumentNullException("classDiagram");
     if (errors == null)
     {
         throw new ArgumentNullException("errors");
     }
     ClassDiagram = classDiagram;
     Errors       = errors;
 }
        public ClassDiagramVisual(IClassDiagram cd)
        {
            if (cd == null)
            {
                throw new ArgumentNullException("cd");
            }
            _mCd = cd;

            _classVisuals       = new Dictionary <IClass, ClassVisual>();
            _associationVisuals = new Dictionary <IAssociation, AssociationVisual>();

            Initialize();
        }
        private IAssociation t08_check(IClassDiagram cd)
        {
            Assert.IsNotNull(cd, "parsing failed");

            var classes = cd.Classes.ToList();

            Assert.AreEqual(2, classes.Count, "wrong class count");
            Assert.AreEqual("a", classes[0].Name, "unexpected class name");
            Assert.AreEqual("b", classes[1].Name, "unexpected class name");

            var assocs = cd.Associations.ToList();

            Assert.AreEqual(1, assocs.Count, "wrong association count");
            Assert.AreEqual("a", assocs[0].Source.Name, "Source name wrong");
            Assert.AreEqual("b", assocs[0].Target.Name, "Target name wrong");
            Assert.AreEqual(AssociationKind.Undirected, assocs[0].Kind, "wrong association kind");
            return(assocs[0]);
        }