From f68db619b47a50c8c93adf76d5c0b3c34a3b82d6 Mon Sep 17 00:00:00 2001 From: chuongmep <31106432+chuongmep@users.noreply.github.com> Date: Tue, 18 Apr 2023 21:10:35 +0800 Subject: [PATCH] add SortPointsByDirection --- .idea/.idea.OpenMEP/.idea/.name | 1 + OpenMEPSandbox/Geometry/Point.cs | 104 +++-- .../dyn/Point.SortPointsByDirection.dyn | 409 ++++++++++++++++++ .../dyn/pic/Point.SortPointsByDirection.png | Bin 0 -> 103201 bytes 4 files changed, 489 insertions(+), 25 deletions(-) create mode 100644 .idea/.idea.OpenMEP/.idea/.name create mode 100644 docs/OpenMEPPage/geometry/dyn/Point.SortPointsByDirection.dyn create mode 100644 docs/OpenMEPPage/geometry/dyn/pic/Point.SortPointsByDirection.png diff --git a/.idea/.idea.OpenMEP/.idea/.name b/.idea/.idea.OpenMEP/.idea/.name new file mode 100644 index 00000000..794249ec --- /dev/null +++ b/.idea/.idea.OpenMEP/.idea/.name @@ -0,0 +1 @@ +OpenMEP \ No newline at end of file diff --git a/OpenMEPSandbox/Geometry/Point.cs b/OpenMEPSandbox/Geometry/Point.cs index ee7b74b7..b07d799f 100644 --- a/OpenMEPSandbox/Geometry/Point.cs +++ b/OpenMEPSandbox/Geometry/Point.cs @@ -48,8 +48,8 @@ public static Autodesk.DesignScript.Geometry.Point ProjectOntoPlane( public static Autodesk.DesignScript.Geometry.Point ProjectOnToLine(Autodesk.DesignScript.Geometry.Point? point, Autodesk.DesignScript.Geometry.Line? line) { - if(point is null) throw new ArgumentNullException(nameof(point)); - if(line is null) throw new ArgumentNullException(nameof(line)); + if (point is null) throw new ArgumentNullException(nameof(point)); + if (line is null) throw new ArgumentNullException(nameof(line)); Autodesk.DesignScript.Geometry.Vector lineDirection = line.Direction.Normalized(); Autodesk.DesignScript.Geometry.Point start = line.StartPoint; Autodesk.DesignScript.Geometry.Vector vector = point.AsVector().Subtract(start.AsVector()); @@ -288,7 +288,8 @@ public static double Euclidean(Autodesk.DesignScript.Geometry.Point p1, Autodesk /// internal static double Euclidean(double x1, double x2, double y1, double y2, double z1, double z2) { - return System.Math.Sqrt(System.Math.Pow(x1 - x2, 2) + System.Math.Pow(y1 - y2, 2) + System.Math.Pow(z1 - z2, 2)); + return System.Math.Sqrt(System.Math.Pow(x1 - x2, 2) + System.Math.Pow(y1 - y2, 2) + + System.Math.Pow(z1 - z2, 2)); } /// @@ -446,7 +447,7 @@ public static double CompareTo(Autodesk.DesignScript.Geometry.Point point1, int compareTo = point1.ToGSharkType().CompareTo(point2.ToGSharkType()); return compareTo; } - + /// /// takes a list of 3D points as input and returns the shortest route that visits each point exactly once' /// https://en.wikipedia.org/wiki/Travelling_salesman_problem @@ -502,8 +503,10 @@ public static double CompareTo(Autodesk.DesignScript.Geometry.Point point1, points.Add(Autodesk.DesignScript.Geometry.Point.ByCoordinates(x, y, z)); } + return points; } + /// /// Generates a given number of random points within a rectangular prism (i.e., a cube with different dimensions) of the given size. /// @@ -515,7 +518,8 @@ public static double CompareTo(Autodesk.DesignScript.Geometry.Point point1, /// /// ![](../OpenMEPPage/geometry/dyn/pic/Point.GenerateRandomPointsInCube.png) /// - public static List GenerateRandomPointsInCube(double width, double height, double length, int numPoints) + public static List GenerateRandomPointsInCube(double width, double height, + double length, int numPoints) { List points = new List(); @@ -527,9 +531,10 @@ public static double CompareTo(Autodesk.DesignScript.Geometry.Point point1, points.Add(Autodesk.DesignScript.Geometry.Point.ByCoordinates(x, y, z)); } + return points; } - + /// /// Generates an array of random 3D points on the circumference of a specified circle. /// @@ -539,7 +544,8 @@ public static double CompareTo(Autodesk.DesignScript.Geometry.Point point1, /// /// ![](../OpenMEPPage/geometry/dyn/pic/Point.GenerateRandomPointsOnCircle.png) /// - public static List GenerateRandomPointsOnCircle(Circle circle,double numPoints) + public static List GenerateRandomPointsOnCircle(Circle circle, + double numPoints) { List points = new List(); @@ -551,16 +557,18 @@ public static double CompareTo(Autodesk.DesignScript.Geometry.Point point1, var n = circle.Normal; var radius = circle.Radius; var center = circle.CenterPoint; - var u = Autodesk.DesignScript.Geometry.Vector.ByCoordinates(0,-n.Z,n.Y); - var v = Autodesk.DesignScript.Geometry.Vector.ByCoordinates(System.Math.Pow(n.Y,2)+System.Math.Pow(n.Z,2), -n.X*n.Y,-n.X*n.Z); - var x = center.X+ radius* v.X* System.Math.Cos(theta) + radius* u.X* System.Math.Sin(theta); - var y = center.Y+ radius* v.Y* System.Math.Cos(theta) + radius* u.Y* System.Math.Sin(theta); - var z = center.Z+ radius* v.Z* System.Math.Cos(theta) + radius* u.Z* System.Math.Sin(theta); + var u = Autodesk.DesignScript.Geometry.Vector.ByCoordinates(0, -n.Z, n.Y); + var v = Autodesk.DesignScript.Geometry.Vector.ByCoordinates( + System.Math.Pow(n.Y, 2) + System.Math.Pow(n.Z, 2), -n.X * n.Y, -n.X * n.Z); + var x = center.X + radius * v.X * System.Math.Cos(theta) + radius * u.X * System.Math.Sin(theta); + var y = center.Y + radius * v.Y * System.Math.Cos(theta) + radius * u.Y * System.Math.Sin(theta); + var z = center.Z + radius * v.Z * System.Math.Cos(theta) + radius * u.Z * System.Math.Sin(theta); points.Add(Autodesk.DesignScript.Geometry.Point.ByCoordinates(x, y, z)); } + return points; } - + /// /// Generates an array of random 3D points inside a specified circle. /// @@ -577,7 +585,8 @@ public static Autodesk.DesignScript.Geometry.Point[] GenerateRandomPointInCircle for (int i = 0; i < numPoints; i++) { - double radius = circle.Radius * System.Math.Sqrt(random.NextDouble()); // random radius between 0 and circle radius + double radius = + circle.Radius * System.Math.Sqrt(random.NextDouble()); // random radius between 0 and circle radius double angle = 2 * System.Math.PI * random.NextDouble(); // random angle between 0 and 2π radians double x = circle.CenterPoint.X + radius * System.Math.Cos(angle); // x-coordinate of the point @@ -585,21 +594,25 @@ public static Autodesk.DesignScript.Geometry.Point[] GenerateRandomPointInCircle // calculate the z-coordinate of the point by generating a random value between -1 and 1 // and scaling it by the distance from the circle's center to the point in the x-y plane - double z = circle.CenterPoint.Z + 2 * (random.NextDouble() - 0.5) * System.Math.Sqrt(circle.Radius * circle.Radius - radius * radius); - Autodesk.DesignScript.Geometry.Point coordinates = Autodesk.DesignScript.Geometry.Point.ByCoordinates(x, y, z); - Autodesk.DesignScript.Geometry.Point point = ProjectOntoPlane(coordinates, Autodesk.DesignScript.Geometry.Plane.ByOriginNormal(circle.CenterPoint, circle.Normal)); + double z = circle.CenterPoint.Z + 2 * (random.NextDouble() - 0.5) * + System.Math.Sqrt(circle.Radius * circle.Radius - radius * radius); + Autodesk.DesignScript.Geometry.Point coordinates = + Autodesk.DesignScript.Geometry.Point.ByCoordinates(x, y, z); + Autodesk.DesignScript.Geometry.Point point = ProjectOntoPlane(coordinates, + Autodesk.DesignScript.Geometry.Plane.ByOriginNormal(circle.CenterPoint, circle.Normal)); points[i] = point; } return points; } + private static Random random = new Random(); + private static double RandomNumber(double min, double max) { - return random.NextDouble() * (max - min) + min; } - + /// /// Returns a new point with the smallest integer values that are greater than or equal to the X, Y, and Z coordinates of the input point. /// @@ -610,11 +623,12 @@ private static double RandomNumber(double min, double max) /// public static Autodesk.DesignScript.Geometry.Point Floor(Autodesk.DesignScript.Geometry.Point point) { - int x = (int)System.Math.Floor(point.X); - int y = (int)System.Math.Floor(point.Y); - int z = (int)System.Math.Floor(point.Z); + int x = (int) System.Math.Floor(point.X); + int y = (int) System.Math.Floor(point.Y); + int z = (int) System.Math.Floor(point.Z); return Autodesk.DesignScript.Geometry.Point.ByCoordinates(x, y, z); } + /// /// Returns a new point with the larger integer values that are greater than or equal to the X, Y, and Z coordinates of the input point. /// @@ -625,9 +639,49 @@ public static Autodesk.DesignScript.Geometry.Point Floor(Autodesk.DesignScript.G /// public static Autodesk.DesignScript.Geometry.Point Ceiling(Autodesk.DesignScript.Geometry.Point point) { - int x = (int)System.Math.Floor(point.X); - int y = (int)System.Math.Floor(point.Y); - int z = (int)System.Math.Floor(point.Z); + int x = (int) System.Math.Floor(point.X); + int y = (int) System.Math.Floor(point.Y); + int z = (int) System.Math.Floor(point.Z); return Autodesk.DesignScript.Geometry.Point.ByCoordinates(x, y, z); } + + /// + /// Sorts a list of 3D points by their direction relative to a specified direction vector. + /// + /// The list of points to be sorted. + /// The direction vector relative to which the points will be sorted. + /// A new list of points sorted by their direction relative to the specified direction vector. + /// + /// ![](../OpenMEPPage/geometry/dyn/pic/Point.SortPointsByDirection.png) + /// [Point.SortPointsByDirection.dyn](../OpenMEPPage/geometry/dyn/Point.SortPointsByDirection.dyn) + /// + public static List SortPointsByDirection( + List points, Autodesk.DesignScript.Geometry.Vector direction) + { + if (direction == null) throw new ArgumentNullException(nameof(direction)); + if (points == null) throw new ArgumentNullException(nameof(points)); + if(points.Count==1 || points.Count==0) return points; + // Normalize the direction vector + double length = + System.Math.Sqrt(direction.X * direction.X + direction.Y * direction.Y + direction.Z * direction.Z); + Autodesk.DesignScript.Geometry.Point normalizedDirection = + Autodesk.DesignScript.Geometry.Point.ByCoordinates(direction.X / length, direction.Y / length, + direction.Z / length); + + // Calculate the dot product of each point with the normalized direction vector + List dotProducts = points.Select(p => + p.X * normalizedDirection.X + p.Y * normalizedDirection.Y + p.Z * normalizedDirection.Z).ToList(); + + // Combine the dot products and points into a list of tuples + List<(double dotProduct, Autodesk.DesignScript.Geometry.Point point)> dotProductsAndPoints = + dotProducts.Zip(points, (dotProduct, point) => (dotProduct, point)).ToList(); + + // Sort the list by dot product, which will sort the points by direction + dotProductsAndPoints.Sort(); + + // Extract the sorted points from the sorted list of tuples + List sortedPoints = dotProductsAndPoints.Select(dp => dp.point).ToList(); + + return sortedPoints; + } } \ No newline at end of file diff --git a/docs/OpenMEPPage/geometry/dyn/Point.SortPointsByDirection.dyn b/docs/OpenMEPPage/geometry/dyn/Point.SortPointsByDirection.dyn new file mode 100644 index 00000000..bebe12db --- /dev/null +++ b/docs/OpenMEPPage/geometry/dyn/Point.SortPointsByDirection.dyn @@ -0,0 +1,409 @@ +{ + "Uuid": "5b1084ed-079a-499e-aeb7-be08a844e14d", + "IsCustomNode": false, + "Description": "", + "Name": "Point.SortPointsByDirection", + "ElementResolver": { + "ResolutionMap": {} + }, + "Inputs": [], + "Outputs": [], + "Nodes": [ + { + "ConcreteType": "Dynamo.Graph.Nodes.ZeroTouch.DSFunction, DynamoCore", + "NodeType": "FunctionNode", + "FunctionSignature": "OpenMEPSandbox.Geometry.Point.SortPointsByDirection@Autodesk.DesignScript.Geometry.Point[],Autodesk.DesignScript.Geometry.Vector", + "Id": "fa38762382e6432a82fb3156d4e2088d", + "Inputs": [ + { + "Id": "91a59e7a929c4a6a96873e9e0f256dee", + "Name": "points", + "Description": "The list of points to be sorted.\n\nPoint[]", + "UsingDefaultValue": false, + "Level": 2, + "UseLevels": false, + "KeepListStructure": false + }, + { + "Id": "bbb2053b809f43389096805ef670f31d", + "Name": "direction", + "Description": "The direction vector relative to which the points will be sorted.\n\nVector", + "UsingDefaultValue": false, + "Level": 2, + "UseLevels": false, + "KeepListStructure": false + } + ], + "Outputs": [ + { + "Id": "8cc3e0d180f14c0c9d5c2356cda5a0a4", + "Name": "points", + "Description": "A new list of points sorted by their direction relative to the specified direction vector.", + "UsingDefaultValue": false, + "Level": 2, + "UseLevels": false, + "KeepListStructure": false + } + ], + "Replication": "Auto", + "Description": "Sorts a list of 3D points by their direction relative to a specified direction vector.\n\nPoint.SortPointsByDirection (points: Point[], direction: Vector): Point[]" + }, + { + "ConcreteType": "Dynamo.Graph.Nodes.ZeroTouch.DSFunction, DynamoCore", + "NodeType": "FunctionNode", + "FunctionSignature": "Autodesk.DesignScript.Geometry.Point.ByCoordinates@double,double,double", + "Id": "80df26589cc0489d9c38a43510309dd3", + "Inputs": [ + { + "Id": "97488e613dd14ac19b36c70708be2b7f", + "Name": "x", + "Description": "X coordinate\n\ndouble\nDefault value : 0", + "UsingDefaultValue": true, + "Level": 2, + "UseLevels": false, + "KeepListStructure": false + }, + { + "Id": "ff01ffa4c9b24f6bb804a6392c8dc196", + "Name": "y", + "Description": "Y coordinate\n\ndouble\nDefault value : 0", + "UsingDefaultValue": true, + "Level": 2, + "UseLevels": false, + "KeepListStructure": false + }, + { + "Id": "1a58780ff8224311bbfeb5b89a379f98", + "Name": "z", + "Description": "Z coordinate\n\ndouble\nDefault value : 0", + "UsingDefaultValue": true, + "Level": 2, + "UseLevels": false, + "KeepListStructure": false + } + ], + "Outputs": [ + { + "Id": "952fc83da49549b295ab598abc11c435", + "Name": "Point", + "Description": "Point created by coordinates", + "UsingDefaultValue": false, + "Level": 2, + "UseLevels": false, + "KeepListStructure": false + } + ], + "Replication": "Auto", + "Description": "Form a Point given 3 cartesian coordinates\n\nPoint.ByCoordinates (x: double = 0, y: double = 0, z: double = 0): Point" + }, + { + "ConcreteType": "Dynamo.Graph.Nodes.CodeBlockNodeModel, DynamoCore", + "NodeType": "CodeBlockNode", + "Code": "10;", + "Id": "363aa6f34f6b43088abf4497de3d2cea", + "Inputs": [], + "Outputs": [ + { + "Id": "327dafacfc2e4c0580d32580e4511080", + "Name": "", + "Description": "Value of expression at line 1", + "UsingDefaultValue": false, + "Level": 2, + "UseLevels": false, + "KeepListStructure": false + } + ], + "Replication": "Disabled", + "Description": "Allows for DesignScript code to be authored directly" + }, + { + "ConcreteType": "Dynamo.Graph.Nodes.ZeroTouch.DSFunction, DynamoCore", + "NodeType": "FunctionNode", + "FunctionSignature": "DSCore.Math.RandomList@int,double,double,int", + "Id": "a0f0badc31f0441cb92c58c3ec97b4b6", + "Inputs": [ + { + "Id": "cd0049e59c814878b88187f2f55f05bd", + "Name": "amount", + "Description": "Amount of random numbers the result list will contain.\n\nint", + "UsingDefaultValue": false, + "Level": 2, + "UseLevels": false, + "KeepListStructure": false + }, + { + "Id": "80bd44d2ede641e38bed0a3213c4c84b", + "Name": "value1", + "Description": "Lower end of the range for the random number.\n\ndouble", + "UsingDefaultValue": false, + "Level": 2, + "UseLevels": false, + "KeepListStructure": false + }, + { + "Id": "53548373252e4e93b09c739f0dd02a30", + "Name": "value2", + "Description": "Higher end of the range for the random number.\n\ndouble", + "UsingDefaultValue": false, + "Level": 2, + "UseLevels": false, + "KeepListStructure": false + }, + { + "Id": "3359d50f332e4b87bbf05c479981aa2b", + "Name": "seed", + "Description": "Seed value for the random number generator.\n\nint", + "UsingDefaultValue": false, + "Level": 2, + "UseLevels": false, + "KeepListStructure": false + } + ], + "Outputs": [ + { + "Id": "2f023affc2b64205b74ca61b72de0117", + "Name": "number", + "Description": "List of random numbers in the range [lower_number, higher_number).", + "UsingDefaultValue": false, + "Level": 2, + "UseLevels": false, + "KeepListStructure": false + } + ], + "Replication": "Auto", + "Description": "Produces a list containing the given amount of random doubles in the defined range of [lower_number, higher_number) based on an initial seed value.\n\nMath.RandomList (amount: int, value1: double, value2: double, seed: int): var[]..[]" + }, + { + "ConcreteType": "Dynamo.Graph.Nodes.CodeBlockNodeModel, DynamoCore", + "NodeType": "CodeBlockNode", + "Code": "1;\n10;\n1;", + "Id": "b8c468feb3b5463fbe1e2cc27cdb221d", + "Inputs": [], + "Outputs": [ + { + "Id": "5feaf64678994920878675225a1b8692", + "Name": "", + "Description": "Value of expression at line 1", + "UsingDefaultValue": false, + "Level": 2, + "UseLevels": false, + "KeepListStructure": false + }, + { + "Id": "8f0aa2047e8249389ade164810246c61", + "Name": "", + "Description": "Value of expression at line 2", + "UsingDefaultValue": false, + "Level": 2, + "UseLevels": false, + "KeepListStructure": false + }, + { + "Id": "aadbb675862842c79e8a8489f5e41f33", + "Name": "", + "Description": "Value of expression at line 3", + "UsingDefaultValue": false, + "Level": 2, + "UseLevels": false, + "KeepListStructure": false + } + ], + "Replication": "Disabled", + "Description": "Allows for DesignScript code to be authored directly" + }, + { + "ConcreteType": "Dynamo.Graph.Nodes.ZeroTouch.DSFunction, DynamoCore", + "NodeType": "FunctionNode", + "FunctionSignature": "Autodesk.DesignScript.Geometry.Vector.XAxis", + "Id": "f248d70669994c86ac3ebeea3e017baf", + "Inputs": [], + "Outputs": [ + { + "Id": "7b0bfebe9ed249d8a3485da3694d14f9", + "Name": "Vector", + "Description": "Vector", + "UsingDefaultValue": false, + "Level": 2, + "UseLevels": false, + "KeepListStructure": false + } + ], + "Replication": "Auto", + "Description": "Get the canonical X axis Vector (1,0,0)\n\nVector.XAxis ( ): Vector" + } + ], + "Connectors": [ + { + "Start": "952fc83da49549b295ab598abc11c435", + "End": "91a59e7a929c4a6a96873e9e0f256dee", + "Id": "70f4db7e971e441a8eaf5dd79b7bd238", + "IsHidden": "False" + }, + { + "Start": "327dafacfc2e4c0580d32580e4511080", + "End": "cd0049e59c814878b88187f2f55f05bd", + "Id": "70aabf81ab874767bf6507eb152f55d3", + "IsHidden": "False" + }, + { + "Start": "2f023affc2b64205b74ca61b72de0117", + "End": "ff01ffa4c9b24f6bb804a6392c8dc196", + "Id": "fa24495d84754e78be99cca029dbedfc", + "IsHidden": "False" + }, + { + "Start": "2f023affc2b64205b74ca61b72de0117", + "End": "97488e613dd14ac19b36c70708be2b7f", + "Id": "926e86ac99074d9fa30680c5a5233bac", + "IsHidden": "False" + }, + { + "Start": "2f023affc2b64205b74ca61b72de0117", + "End": "1a58780ff8224311bbfeb5b89a379f98", + "Id": "cdd0eeff8a5d4f4e918cbe0b708d9189", + "IsHidden": "False" + }, + { + "Start": "5feaf64678994920878675225a1b8692", + "End": "80bd44d2ede641e38bed0a3213c4c84b", + "Id": "539a46e051f8466fa12fe59e5dd7564d", + "IsHidden": "False" + }, + { + "Start": "8f0aa2047e8249389ade164810246c61", + "End": "53548373252e4e93b09c739f0dd02a30", + "Id": "596da448a42a47cda7da9968d2682d57", + "IsHidden": "False" + }, + { + "Start": "aadbb675862842c79e8a8489f5e41f33", + "End": "3359d50f332e4b87bbf05c479981aa2b", + "Id": "d3ba48b5e8314d0b9b87ee55c5fb4b1e", + "IsHidden": "False" + }, + { + "Start": "7b0bfebe9ed249d8a3485da3694d14f9", + "End": "bbb2053b809f43389096805ef670f31d", + "Id": "c92161bda4444e5bb51120234e25cc94", + "IsHidden": "False" + } + ], + "Dependencies": [], + "NodeLibraryDependencies": [ + { + "Name": "OpenMEP", + "Version": "1.0.0", + "ReferenceType": "Package", + "Nodes": [ + "fa38762382e6432a82fb3156d4e2088d" + ] + } + ], + "Thumbnail": "", + "GraphDocumentationURL": null, + "ExtensionWorkspaceData": [ + { + "ExtensionGuid": "28992e1d-abb9-417f-8b1b-05e053bee670", + "Name": "Properties", + "Version": "2.17", + "Data": {} + } + ], + "Author": "", + "Linting": { + "activeLinter": "None", + "activeLinterId": "7b75fb44-43fd-4631-a878-29f4d5d8399a", + "warningCount": 0, + "errorCount": 0 + }, + "Bindings": [], + "View": { + "Dynamo": { + "ScaleFactor": 1.0, + "HasRunWithoutCrash": true, + "IsVisibleInDynamoLibrary": true, + "Version": "2.17.2.4543", + "RunType": "Automatic", + "RunPeriod": "1000" + }, + "Camera": { + "Name": "_Background Preview", + "EyeX": -17.0, + "EyeY": 24.0, + "EyeZ": 50.0, + "LookX": 12.0, + "LookY": -13.0, + "LookZ": -58.0, + "UpX": 0.0, + "UpY": 1.0, + "UpZ": 0.0 + }, + "ConnectorPins": [], + "NodeViews": [ + { + "Name": "Point.SortPointsByDirection", + "ShowGeometry": true, + "Id": "fa38762382e6432a82fb3156d4e2088d", + "IsSetAsInput": false, + "IsSetAsOutput": false, + "Excluded": false, + "X": 931.7304535637146, + "Y": 303.51101511879045 + }, + { + "Name": "Point.ByCoordinates", + "ShowGeometry": true, + "Id": "80df26589cc0489d9c38a43510309dd3", + "IsSetAsInput": false, + "IsSetAsOutput": false, + "Excluded": false, + "X": 467.3226781857453, + "Y": 303.6544276457883 + }, + { + "Name": "Code Block", + "ShowGeometry": true, + "Id": "363aa6f34f6b43088abf4497de3d2cea", + "IsSetAsInput": false, + "IsSetAsOutput": false, + "Excluded": false, + "X": -26.484702219473206, + "Y": 220.41474936967492 + }, + { + "Name": "Math.RandomList", + "ShowGeometry": true, + "Id": "a0f0badc31f0441cb92c58c3ec97b4b6", + "IsSetAsInput": false, + "IsSetAsOutput": false, + "Excluded": false, + "X": 173.00302375809957, + "Y": 319.65874730021562 + }, + { + "Name": "Code Block", + "ShowGeometry": true, + "Id": "b8c468feb3b5463fbe1e2cc27cdb221d", + "IsSetAsInput": false, + "IsSetAsOutput": false, + "Excluded": false, + "X": -24.617710583153325, + "Y": 353.67818574514041 + }, + { + "Name": "Vector.XAxis", + "ShowGeometry": true, + "Id": "f248d70669994c86ac3ebeea3e017baf", + "IsSetAsInput": false, + "IsSetAsOutput": false, + "Excluded": false, + "X": 733.23267959537623, + "Y": 433.76640326562853 + } + ], + "Annotations": [], + "X": 211.89561453851849, + "Y": 19.592717031546471, + "Zoom": 0.78916103292481576 + } +} \ No newline at end of file diff --git a/docs/OpenMEPPage/geometry/dyn/pic/Point.SortPointsByDirection.png b/docs/OpenMEPPage/geometry/dyn/pic/Point.SortPointsByDirection.png new file mode 100644 index 0000000000000000000000000000000000000000..8a3b553399c235dcb860d014f17793139b132c13 GIT binary patch literal 103201 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