public void ByPoints_PointArray_ProducesValidAdaptiveComponentAndLocations() { var pts = new Point[] { Point.ByCoordinates(0, 0, 0), Point.ByCoordinates(10, 0, 10), Point.ByCoordinates(20, 0, 0) }; var fs = FamilySymbol.ByName("3PointAC"); var ac = AdaptiveComponent.ByPoints(pts, fs); var locs = ac.Locations; var pairs = locs.Zip(pts, (point, point1) => new Tuple<Point, Point>(point, point1)); // compares after unit conversion foreach (var pair in pairs) pair.Item1.ShouldBeApproximately(pair.Item2); var unconvertedPairs = pts.Zip(GetInternalPoints((FamilyInstance) ac.InternalElement), (point, point1) => new Tuple<Point, XYZ>(point, point1)); foreach (var pair in unconvertedPairs) { pair.Item1.ShouldBeApproximately(pair.Item2 * UnitConverter.HostToDynamoFactor); } Assert.NotNull(ac); }
public void ByPoints_PointArray_ProducesValidAdaptiveComponentAndLocations() { var pts = new Point[] { Point.ByCoordinates(0, 0, 0), Point.ByCoordinates(10, 0, 10), Point.ByCoordinates(20, 0, 0) }; var fs = FamilyType.ByName("3PointAC"); var ac = AdaptiveComponent.ByPoints(pts, fs); var locs = ac.Locations; var pairs = locs.Zip(pts, (point, point1) => new Tuple <Point, Point>(point, point1)); // compares after unit conversion foreach (var pair in pairs) { pair.Item1.ShouldBeApproximately(pair.Item2); } var unconvertedPairs = pts.Zip(GetInternalPoints((FamilyInstance)ac.InternalElement), (point, point1) => new Tuple <Point, XYZ>(point, point1)); foreach (var pair in unconvertedPairs) { pair.Item1.ShouldBeApproximately(pair.Item2 * UnitConverter.HostToDynamoFactor(UnitType.UT_Length)); } Assert.NotNull(ac); }