示例#1
0
        public void AnglesInPrintedParts()
        {
            // without expand thin walls
            {
                var loadedGCode = TestUtilities.SliceAndGetGCode("Bridge Test - CoveredU 30 Degrees", (config) =>
                {
                    config.FirstLayerThickness   = .2;
                    config.LayerThickness        = .2;
                    config.NumberOfSkirtLoops    = 0;
                    config.InfillPercent         = 0;
                    config.NumberOfPerimeters    = 1;
                    config.ExpandThinWalls       = false;
                    config.MergeOverlappingLines = false;
                });

                Assert.AreEqual(55, loadedGCode.LayerCount());

                var layerPolygons = TestUtilities.GetAllLayersExtrusionPolygons(loadedGCode);

                var mostCommon = TestUtilities.GetLineAngles(layerPolygons[45]).OrderBy(i => i.Value).Last();
                var angle      = mostCommon.Key;

                Assert.AreEqual(30, angle, 3, "Should have generated a bridge at 30 degrees");
            }
        }