public void GetFrameFromGroupWithShapesAfterRemovingShapeFromGroupWithOneShape() { var rectangleFrame = new Rect(0, 200, 0, 150); var ellipseFrame = new Rect(250, 100, -100, 100); var triangleFrame = new Rect(-100, 100, 50, 100); var resultFrame = new Rect(-100, 450, -100, 250); var resultFrameAfterRemoving = new Rect(0, 350, -100, 250); var rectangle = new Rectangle(rectangleFrame, null, null); var ellipse = new Elipse(ellipseFrame, null, null); var triangle = new Triangle(triangleFrame); var group = new GroupShape(); var triangleGroup = new GroupShape(); group.InsertShape(rectangle, 0); group.InsertShape(ellipse, 0); group.InsertShape(triangleGroup, 0); triangleGroup.InsertShape(triangle, 0); Assert.IsTrue(IsEqualFrame(resultFrame, group.GetFrame().Value)); Assert.IsTrue(IsEqualFrame(triangleFrame, triangle.GetFrame().Value)); triangleGroup.RemoveShapeAtIndex(0); Assert.IsTrue(IsEqualFrame(resultFrameAfterRemoving, group.GetFrame().Value)); Assert.IsNull(triangleGroup.GetFrame()); }
public void SetFrameToGroupWithoutShapes() { var group = new GroupShape(); var frame = new Rect(-100, 450, -100, 250); group.SetFrame(frame); Assert.AreEqual(null, group.GetFrame()); }
public void GetFrameFromGroupWithOneShape() { var rectangleFrame = new Rect(200, 200, 200, 150); var rectangle = new Rectangle(rectangleFrame, null, null); var group = new GroupShape(); group.InsertShape(rectangle, 0); Assert.IsTrue(IsEqualFrame(rectangleFrame, group.GetFrame().Value)); }
public void GetFrameFromGroupWithEmptyGroups() { var group = new GroupShape(); var emptyGroupOne = new GroupShape(); var emptyGroupTwo = new GroupShape(); group.InsertShape(emptyGroupOne, 0); group.InsertShape(emptyGroupTwo, 0); Assert.IsNull(group.GetFrame()); }
public void GetFrame_EmptyGroupShape_ReturnNull() { // Arrange var groupShape = new GroupShape(); // Act Rect?result = groupShape.GetFrame(); // Assert Assert.Null(result); }
public void SetFrameToGroupWithEmptyGroups() { var group = new GroupShape(); var emptyGroupOne = new GroupShape(); var emptyGroupTwo = new GroupShape(); group.InsertShape(emptyGroupOne, 0); group.InsertShape(emptyGroupTwo, 0); group.SetFrame(new Rect(10, 10, 10, 10)); Assert.IsNull(group.GetFrame()); }
public void SetFrameToGroupWithShapesAndEmptyGroup() { var rectangleFrame = new Rect(0, 200, 0, 150); var ellipseFrame = new Rect(250, 100, -100, 100); var resultFrame = new Rect(0, 350, -100, 250); var rectangle = new Rectangle(rectangleFrame, null, null); var ellipse = new Elipse(ellipseFrame, null, null); var group = new GroupShape(); var emptyGroup = new GroupShape(); group.InsertShape(rectangle, 0); group.InsertShape(ellipse, 0); group.InsertShape(emptyGroup, 0); Assert.IsTrue(IsEqualFrame(resultFrame, group.GetFrame().Value)); group.SetFrame(new Rect(0, 700, 0, 125)); Assert.IsTrue(IsEqualFrame(new Rect(0, 700, 0, 125), group.GetFrame().Value)); }
public void GetFrameFromGroupWithShapesAfterAddingEmptyGroup() { var rectangleFrame = new Rect(0, 200, 0, 150); var ellipseFrame = new Rect(250, 100, -100, 100); var resultFrame = new Rect(0, 350, -100, 250); var rectangle = new Rectangle(rectangleFrame, null, null); var ellipse = new Elipse(ellipseFrame, null, null); var group = new GroupShape(); var emptyGroup = new GroupShape(); group.InsertShape(rectangle, 0); group.InsertShape(ellipse, 0); Assert.IsTrue(IsEqualFrame(resultFrame, group.GetFrame().Value)); group.InsertShape(emptyGroup, 0); Assert.IsTrue(IsEqualFrame(resultFrame, group.GetFrame().Value)); Assert.IsNull(emptyGroup.GetFrame()); }
static void Main(string [] args) { var canvas = new Canvas.SkiaCanvas(1000, 1000); var slide = new Slide(1000, 1000); var sunFillStyle = new Style.Style(Color.Yellow, true); var sunOutLineStyle = new OutLineStyle(Color.Orange, true, 5); var firstFloorFillStyle = new Style.Style(Color.Brown, true); var firstFloorOutLineStyle = new OutLineStyle(Color.Red, true, 5); var secondFloorFillStyle = new Style.Style(Color.Green, true); var secondFloorOutLineStyle = new OutLineStyle(Color.GreenYellow, true, 5); var roofFrame = new Rect(200, 200, 95, 100); var roof = new Triangle(roofFrame, secondFloorFillStyle, secondFloorOutLineStyle); var porchFrame = new Rect(100, 100, 250, 100); var porch = new Rectangle(porchFrame, firstFloorFillStyle, firstFloorOutLineStyle); var rectangleFrameTwo = new Rect(200, 200, 200, 150); var rectangleTwo = new Rectangle(rectangleFrameTwo, firstFloorFillStyle, firstFloorOutLineStyle); var ellipseFrame = new Rect(450, 100, 100, 100); var ellipse = new Elipse(ellipseFrame, sunFillStyle, sunOutLineStyle); var home = new GroupShape(); var sky = new GroupShape(); var picture = new GroupShape(); slide.SetBackgroundColor(Color.Black.ToArgb()); home.InsertShape(porch, 0); home.InsertShape(rectangleTwo, 0); home.InsertShape(roof, 0); sky.InsertShape(ellipse, 0); picture.InsertShape(home, 0); picture.InsertShape(sky, 0); slide.GetShapes().InsertShape(picture, 0); slide.Draw(canvas); PrintFrame(picture.GetFrame().Value); canvas.Save("E:\\учёба\\test1.png"); var newGroupFrame = new Rect(0, 900, 0, 510); picture.SetFrame(newGroupFrame); var pictureStyle = picture.GetFillStyle(); pictureStyle.SetColor(Color.Azure); slide.Draw(canvas); PrintFrame(ellipse.GetFrame().Value); canvas.Save("E:\\учёба\\test2.png"); }
public void GetFrame_GroupShapeHasOnePhigure_ReturnThisPhigureFrame() { // Arrange var groupShape = new GroupShape(); var shape = new Rectangle(new Rect(1, 1, 1, 1)); groupShape.InsertShape(shape, 0); // Act Rect?result = groupShape.GetFrame(); // Assert Assert.Equal(shape.GetFrame(), result); }
public void SetNewFrameWithDoubleBiggerWidthAndHeightToGroupWithShapes() { var rectangleFrame = new Rect(200, 200, 200, 150); var ellipseFrame = new Rect(450, 100, 100, 100); var triangleFrame = new Rect(100, 100, 250, 100); var groupFrame = new Rect(100, 450, 100, 250); var newRectangleFrame = new Rect(300, 400, 300, 300); var newEllipseFrame = new Rect(800, 200, 100, 200); var newTriangleFrame = new Rect(100, 200, 400, 200); var newGroupFrame = new Rect(100, 900, 100, 500); var rectangle = new Rectangle(rectangleFrame, null, null); var ellipse = new Elipse(ellipseFrame, null, null); var triangle = new Triangle(triangleFrame, null, null); var group = new GroupShape(); var triangleGroup = new GroupShape(); triangleGroup.InsertShape(triangle, 0); group.InsertShape(rectangle, 0); group.InsertShape(ellipse, 0); group.InsertShape(triangleGroup, 0); Assert.IsTrue(IsEqualFrame(rectangleFrame, rectangle.GetFrame().Value)); Assert.IsTrue(IsEqualFrame(triangleFrame, triangle.GetFrame().Value)); Assert.IsTrue(IsEqualFrame(ellipseFrame, ellipse.GetFrame().Value)); Assert.IsTrue(IsEqualFrame(groupFrame, group.GetFrame().Value)); group.SetFrame(newGroupFrame); Assert.IsTrue(IsEqualFrame(newRectangleFrame, rectangle.GetFrame().Value)); Assert.IsTrue(IsEqualFrame(newTriangleFrame, triangle.GetFrame().Value)); Assert.IsTrue(IsEqualFrame(newEllipseFrame, ellipse.GetFrame().Value)); Assert.IsTrue(IsEqualFrame(newGroupFrame, group.GetFrame().Value)); }
public void SetFrameWithDoubleSmallerWidthAndHeightAndNegativeLeftTopToGroupWithShapes() { var rectangleFrame = new Rect(200, 200, 200, 150); var ellipseFrame = new Rect(450, 100, 100, 100); var triangleFrame = new Rect(100, 100, 250, 100); var groupFrame = new Rect(100, 450, 100, 250); var newRectangleFrame = new Rect(-50, 100, -50, 75); var newEllipseFrame = new Rect(75, 50, -100, 50); var newTriangleFrame = new Rect(-100, 50, -25, 50); var newGroupFrame = new Rect(-100, 225, -100, 125); var rectangle = new Rectangle(rectangleFrame, null, null); var ellipse = new Elipse(ellipseFrame, null, null); var triangle = new Triangle(triangleFrame, null, null); var group = new GroupShape(); var triangleGroup = new GroupShape(); triangleGroup.InsertShape(triangle, 0); group.InsertShape(rectangle, 0); group.InsertShape(ellipse, 0); group.InsertShape(triangleGroup, 0); Assert.IsTrue(IsEqualFrame(rectangleFrame, rectangle.GetFrame().Value)); Assert.IsTrue(IsEqualFrame(triangleFrame, triangle.GetFrame().Value)); Assert.IsTrue(IsEqualFrame(ellipseFrame, ellipse.GetFrame().Value)); Assert.IsTrue(IsEqualFrame(groupFrame, group.GetFrame().Value)); group.SetFrame(newGroupFrame); Assert.IsTrue(IsEqualFrame(newRectangleFrame, rectangle.GetFrame().Value)); Assert.IsTrue(IsEqualFrame(newTriangleFrame, triangle.GetFrame().Value)); Assert.IsTrue(IsEqualFrame(newEllipseFrame, ellipse.GetFrame().Value)); Assert.IsTrue(IsEqualFrame(newGroupFrame, group.GetFrame().Value)); }
public void SetFrame_SetToSimpleShape_GetSettedFrame() { // Arrange var groupShape = new GroupShape(); var rectangle = new Rectangle(new Rect(left: 0, top: 1, width: 2, height: 1)); groupShape.InsertShape(rectangle, 0); var expectedFrame = new Rect(3, 3, 3, 3); // Act groupShape.SetFrame(expectedFrame); Rect?result = groupShape.GetFrame(); // Assert Assert.True(result.HasValue); Assert.Equal(expectedFrame, result); }
public void GetFrame_GroupShapeHasTwoPhigure_ReturnCombinedFrame() { // Arrange var groupShape = new GroupShape(); var rectangle = new Rectangle(new Rect(left: 0, top: 1, width: 2, height: 1)); var ellipse = new Rectangle(new Rect(left: 1, top: 2, width: 1.5f, height: 1)); groupShape.InsertShape(rectangle, 0); groupShape.InsertShape(ellipse, 1); var expectedFrame = new Rect(0, 2, 2.5f, 2); // Act Rect?result = groupShape.GetFrame(); // Assert Assert.Equal(expectedFrame, result); }
public void GetFrameFromGroupWithShapesWithNegativeLeftTop() { var rectangleFrame = new Rect(0, 200, 0, 150); var ellipseFrame = new Rect(250, 100, -100, 100); var triangleFrame = new Rect(-100, 100, 50, 100); var resultFrame = new Rect(-100, 450, -100, 250); var rectangle = new Rectangle(rectangleFrame, null, null); var ellipse = new Elipse(ellipseFrame, null, null); var triangle = new Triangle(triangleFrame, null, null); var group = new GroupShape(); var triangleGroup = new GroupShape(); triangleGroup.InsertShape(triangle, 0); group.InsertShape(rectangle, 0); group.InsertShape(ellipse, 0); group.InsertShape(triangleGroup, 0); Assert.IsTrue(IsEqualFrame(resultFrame, group.GetFrame().Value)); Assert.IsTrue(IsEqualFrame(triangleFrame, triangleGroup.GetFrame().Value)); }
public void GetFrame_GroupShapeHasAnotherGroupShape_ReturnCombinedFrame() { // Arrange var groupShapeOne = new GroupShape(); var rectangle = new Rectangle(new Rect(left: 0, top: 1, width: 2, height: 1)); var ellipse = new Rectangle(new Rect(left: 1, top: 2, width: 1.5f, height: 1)); groupShapeOne.InsertShape(rectangle, 0); groupShapeOne.InsertShape(ellipse, 1); var groupShapeTwo = new GroupShape(); groupShapeTwo.InsertShape(groupShapeOne, 0); groupShapeTwo.InsertShape(rectangle, 1); var expectedFrame = new Rect(0, 2, 2.5f, 2); // Act Rect?result = groupShapeTwo.GetFrame(); // Assert Assert.True(result.HasValue); Assert.Equal(expectedFrame, result); }
public void GetFrameFromGroupWithoutShapes() { var group = new GroupShape(); Assert.AreEqual(null, group.GetFrame()); }