public void TrimCircleTest() { var action = new TrimAction(); var nodeBuilder1 = BuildLine(new Point3D(0, 0, 0), new Point3D(5, 5, 0)); var builder = _sketchCreator.CreateBuilder(FunctionNames.Circle); builder[0].Reference = GetPointNode(new Point3D(2, 2, 0)); builder[1].Real = 1; builder.ExecuteFunction(); Assert.AreEqual(_document.Root.Children.Count, 6); var clickPoint = new Point3D(2, 3, 0); var trimmedEntities = new List <SceneSelectedEntity> { new SceneSelectedEntity(builder.Node) { ShapeType = TopAbsShapeEnum.TopAbs_WIRE } }; var trimmingEntities = new List <SceneSelectedEntity> { new SceneSelectedEntity(nodeBuilder1.Node) { ShapeType = TopAbsShapeEnum.TopAbs_WIRE } }; var newNodes = action.GetTrimResult(_document, trimmedEntities, clickPoint); // the resulting arc has the end points on the line (x==y) and the distance between them is the diameter of the circle Assert.AreEqual(newNodes.Count, 1); var nb = newNodes[0]; Assert.AreEqual(nb.FunctionName, FunctionNames.Arc); Assert.AreEqual(nb.Node.Children.Count, 3); var nodeBuilder = new NodeBuilder(nb.Node.Children[1].Get <ReferenceInterpreter>().Node); Assert.AreEqual(nodeBuilder[1].Name, "Point3D"); Assert.AreEqual(nodeBuilder[1].TransformedPoint3D.IsEqual(new Point3D(2, 2, 0)), true); nodeBuilder = new NodeBuilder(nb.Node.Children[2].Get <ReferenceInterpreter>().Node); Assert.AreEqual(nodeBuilder[1].Name, "Point3D"); Assert.IsTrue(nodeBuilder[1].TransformedPoint3D.Distance(new Point3D(1.2928, 1.2928, 0)) < 0.001); nodeBuilder = new NodeBuilder(nb.Node.Children[3].Get <ReferenceInterpreter>().Node); Assert.AreEqual(nodeBuilder[1].Name, "Point3D"); Assert.IsTrue(nodeBuilder[1].TransformedPoint3D.Distance(new Point3D(2.7071, 2.7071, 0)) < 0.001); Assert.IsTrue((new Point3D(1.2928, 1.2928, 0)).Distance(new Point3D(2.7071, 2.7071, 0)) - 4 < 0.001); }
private void InitialiseMembers() { Trim = new EmptyFdpTrim(); IdentifierPrefix = "Page"; Programmes = Enumerable.Empty <Programme>(); Gateways = Enumerable.Empty <Gateway>(); CarLines = Enumerable.Empty <CarLine>(); ModelYears = Enumerable.Empty <ModelYear>(); CurrentAction = TrimAction.NotSet; }
public void TrimLineTest() { var action = new TrimAction(); var nodeBuilder1 = BuildLine(new Point3D(0, 0, 0), new Point3D(5, 5, 0)); var nodeBuilder2 = BuildLine(new Point3D(2, 0, 0), new Point3D(2, 5, 0)); var clickPoint = new Point3D(4, 4, 0); var trimmedEntities = new List <SceneSelectedEntity> { new SceneSelectedEntity(nodeBuilder1.Node) { ShapeType = TopAbsShapeEnum.TopAbs_WIRE } }; var trimmingEntities = new List <SceneSelectedEntity> { new SceneSelectedEntity(nodeBuilder2.Node) { ShapeType = TopAbsShapeEnum.TopAbs_WIRE } }; var newNodes = action.GetTrimResult(_document, trimmedEntities, clickPoint); Assert.AreEqual(newNodes.Count, 1); var nb = newNodes[0]; Assert.AreEqual(nb.FunctionName, FunctionNames.LineTwoPoints); Assert.AreEqual(nb.Node.Children.Count, 2); var nodeBuilder = new NodeBuilder(nb.Node.Children[1].Get <ReferenceInterpreter>().Node); Assert.AreEqual(nodeBuilder[1].Name, "Point3D"); Assert.AreEqual(nodeBuilder[1].TransformedPoint3D.IsEqual(new Point3D(0, 0, 0)), true); nodeBuilder = new NodeBuilder(nb.Node.Children[2].Get <ReferenceInterpreter>().Node); Assert.AreEqual(nodeBuilder[1].Name, "Point3D"); Assert.AreEqual(nodeBuilder[1].TransformedPoint3D.IsEqual(new Point3D(2, 2, 0)), true); }
private string GetContentPartialViewName(TrimAction forAction) { return(string.Format("_{0}", Enum.GetName(forAction.GetType(), forAction))); }
public TrimParameters() { Action = TrimAction.NotSet; }
private void InitialiseMembers() { Trim = new EmptyFdpTrim(); IdentifierPrefix = "Page"; Programmes = Enumerable.Empty<Programme>(); Gateways = Enumerable.Empty<Gateway>(); CarLines = Enumerable.Empty<CarLine>(); ModelYears = Enumerable.Empty<ModelYear>(); CurrentAction = TrimAction.NotSet; }