Index: packages/MathNet.Spatial.0.3.0/MathNet.Spatial.0.3.0.nupkg =================================================================== diff -u Binary files differ Index: packages/MathNet.Spatial.0.3.0/lib/net40/MathNet.Spatial.dll =================================================================== diff -u Binary files differ Index: packages/MathNet.Spatial.0.3.0/lib/net40/MathNet.Spatial.xml =================================================================== diff -u --- packages/MathNet.Spatial.0.3.0/lib/net40/MathNet.Spatial.xml (revision 0) +++ packages/MathNet.Spatial.0.3.0/lib/net40/MathNet.Spatial.xml (revision 606043f88653bfbffde5c7261a1826505ac5cd48) @@ -0,0 +1,2026 @@ + + + + MathNet.Spatial + + + + + A means of representing spatial orientation of any reference frame. + More information can be found https://en.wikipedia.org/wiki/Euler_angles + + + + + Alpha (or phi) is the rotation around the z axis + + + + + Beta (or theta) is the rotation around the N axis + + + + + Gamma (or psi) is the rotation around the Z axis + + + + + This structure represents a line between two points in 2-space. It allows for operations such as + computing the length, direction, projections to, compairisons, and shifting by a vector. + + + + + The starting point of the line + + + + + The end point of the line + + + + + A double precision number representing the distance between the startpoint and endpoint + + + + + A normalized Vector2D representing the direction from the startpoint to the endpoint + + + + + Constructor for the Line2D, throws an error if the startpoint is equal to the + endpoint. + + the starting point of the line + the ending point of the line + + + + Compute and store the length and direction of the Line2D, used for lazy loading + + + + + + Returns the shortest line between this line and a point. + + the point to create a line to + If false the startpoint can extend beyond the start and endpoint of the line + + + + + Returns the closest point on the line to the given point. + + The point that the returned point is the closest point on the line to + If true the returned point is contained by the segment ends, otherwise it can be anywhere on the projected line + + + + + Compute the intersection between two lines with parallelism considered by the double floating point precision + on the cross product of the two directions. + + The other line to compute the intersection with + The point at the intersection of two lines, or null if the lines are parallel. + + + + Compute the intersection between two lines if the angle between them is greater than a specified + angle tolerance. + + The other line to compute the intersection with + The point at the intersection of two lines, or null if the lines are parallel. + + + + Checks to determine whether or not two lines are parallel to each other, using the dot product within + the double precision specified in the MathNet.Numerics package. + + The other line to check this one against + True if the lines are parallel, false if they are not + + + + Checks to determine whether or not two lines are parallel to each other within a specified angle tolerance + + The other line to check this one against + If the angle between line directions is less than this value, the method returns true + True if the lines are parallel within the angle tolerance, false if they are not + + + + Serves as a hash function for a particular type. + + A hash code for the current + + + + Helper class for creating matrices for manipulating 2D-elements + + + + + Creates a rotation about the z-axis + + + + + + + Creates an arbitrary 2D transform + + + + + + + + + + Using public fields cos: http://blogs.msdn.com/b/ricom/archive/2006/08/31/performance-quiz-11-ten-questions-on-value-based-programming.aspx + + + + + Using public fields cos: http://blogs.msdn.com/b/ricom/archive/2006/08/31/performance-quiz-11-ten-questions-on-value-based-programming.aspx + + + + + Creates a point r from origin rotated a counterclockwise from X-Axis + + + + + + + This method is reserved and should not be used. When implementing the IXmlSerializable interface, you should return null (Nothing in Visual Basic) from this method, and instead, if specifying a custom schema is required, apply the to the class. + + + An that describes the XML representation of the object that is produced by the method and consumed by the method. + + + + + Generates an object from its XML representation. + Handles both attribute and element style + + The stream from which the object is deserialized. + + + + Converts an object into its XML representation. + + The stream to which the object is serialized. + + + + return new Point3D(X, Y, 0); + + return new Point3D(X, Y, 0); + + + + + + + return cs.Transform(this.ToPoint3D()); + + + + Create a new Point2D from a Math.NET Numerics vector of length 2. + + + + + Convert to a Math.NET Numerics dense vector of length 2. + + + + + Class to represent a closed polygon. If the + + + + + Test whether a point is enclosed within a polygon. Points on the polygon edges are not + counted as contained within the polygon. + + + + + + + Compute whether or not two polygons are colliding based on whether or not the vertices of + either are enclosed within the shape of the other. This is a simple means of detecting collisions + that can fail if the two polygons are heavily overlapped in such a way that one protrudes through + the other and out its opposing side without any vertices being enclosed. + + + + + + + + Determine whether or not a point is inside a polygon using the intersection counting + method. Return true if the point is contained, false if it is not. Points which lie + on the edge are not counted as inside the polygon. + + + + + + + + Using the recursive QuickHull algorithm, take an IEnumerable of Point2Ds and compute the + two dimensional convex hull, returning it as a Polygon2D object. + + + + + + + Recursive method to isolate the points from the working list which lie on the convex hull + + + + + + + + + Rotate the polygon around the specified point + + + + + + + + The PolyLine2D class represents a 2D curve in space made up of line segments joined end-to-end, and is + stored as a sequential list of 2D points. + + + + + Returns the number of points in the polyline + + + + + Returns the length of the polyline as the sum of the length of the individual segments + + + + + Access a point in the polyline by index number + + + + + + + Constructor which creates a PolyLine2D off of a pre-existing IEnumerable of Point2Ds + + + + + + Computes the length of the polyline by summing the lengths of the individual segments + + + + + + Get the point at a fractional distance along the curve. For instance, fraction=0.5 will return + the point halfway along the length of the polyline. + + The fractional length at which to compute the point + + + + + Get the point at a specified distance along the curve. A negative argument will return the first point, + an argument greater than the length of the curve will return the last point. + + The distance from the first point along the curve at which to return a point + + + + + Reduce the complexity of a manifold of points represented as an IEnumerable of Point2D objects. + This algorithm goes through each point in the manifold and computes the error that would be introduced + from the original if that point were removed. Then it removes nonadjacent points to produce a + reduced size manifold. + + + + + + + + Reduce the complexity of a manifold of points represented as an IEnumerable of Point2D objects by + iteratively removing all nonadjacent points which would each result in an error of less than the + single step tolerance if removed. Iterate until no further changes are made. + + + + + + + + Returns the closest point on the polyline to the given point. + + + + + + + A PolyLine is an ordered series of line segments in space represented as list of connected Point3Ds. + + + + + An integer representing the number of Point3D objects in the polyline + + + + + The length of the polyline, computed as the sum of the lengths of every segment + + + + + Indicates whether or not the collection of points in the polyline are planar within + the floating point tolerance + + + + + Computes the length of the polyline by summing the lengths of the individual segments + + + + + + Get the point at a fractional distance along the curve. For instance, fraction=0.5 will return + the point halfway along the length of the polyline. + + The fractional length at which to compute the point + + + + + Get the point at a specified distance along the curve. A negative argument will return the first point, + an argument greater than the length of the curve will return the last point. + + The distance from the first point along the curve at which to return a point + + + + + Returns the closest point on the polyline to the given point. + + + + + + + Using public fields cos: http://blogs.msdn.com/b/ricom/archive/2006/08/31/performance-quiz-11-ten-questions-on-value-based-programming.aspx + + + + + Using public fields cos: http://blogs.msdn.com/b/ricom/archive/2006/08/31/performance-quiz-11-ten-questions-on-value-based-programming.aspx + + + + + Creates a vector with length r rotated a counterclockwise from X-Axis + + The radius + The angle + + + + This method is reserved and should not be used. When implementing the IXmlSerializable interface, you should return null (Nothing in Visual Basic) from this method, and instead, if specifying a custom schema is required, apply the to the class. + + + An that describes the XML representation of the object that is produced by the method and consumed by the method. + + + + + Generates an object from its XML representation. + Handles both attribute and element style + + The stream from which the object is deserialized. + + + + Converts an object into its XML representation. + + The stream to which the object is serialized. + + + + Computes whether or not this vector is parallel to another vector using the dot product method + and comparing to within a specified tolerance + + + + True if the vector dot product is within the given double tolerance of unity, false if not + + + + Computes whether or not this vector is parallel to another vector within a given angle tolerance. + + + + True if the vectors are parallel within the angle tolerance, false if they are not + + + + + + + Positive in clockwisedirection + If angle is > 180° a negative value is returned + + + + + Compute the angle between this vector and another using the arccosine of the dot product. + + + The angle between vectors, with a range between 0° and 180° + + + + Performs the 2D 'cross product' as if the 2D vectors were really 3D vectors in the z=0 plane, returning + the scalar magnitude and direction of the resulting z value. + + + + + + + Projects this vector onto another vector + + + + + + + Create a new Vector2D from a Math.NET Numerics vector of length 2. + + + + + Convert to a Math.NET Numerics dense vector of length 2. + + + + + Create a circle from the midpoint between two points, in a direction along a specified axis + + First point on the circumference of the circle + Second point on the circumference of the circle + Direction of the plane in which the circle lies + + + + Create a circle from three points which lie along its circumference. + + + + + + + + + + + + + Sets to the matrix of rotation that aligns the 'from' vector with the 'to' vector. + The optional Axis argument may be used when the two vectors are perpendicular and in opposite directions to specify a specific solution, but is otherwise ignored. + + Input Vector object to align from. + Input Vector object to align to. + Input Vector object. + + + + Creates a coordinate system that rotates + + Angle to rotate + The unit of the angle + Vector to rotate about + + + + + Creates a coordinate system that rotates + + Angle to rotate + The unit of the angle + Vector to rotate about + + + + + Creates a coordinate system that rotates + + Angle to rotate + Vector to rotate about + + + + + Creates a coordinate system that rotates + + Angle to rotate + Vector to rotate about + + + + + Rotation around Z (yaw) then around Y (pitch) and then around X (roll) + http://en.wikipedia.org/wiki/Aircraft_principal_axes + + Rotates around Z + Rotates around Y + Rotates around X + + + + + Rotation around Z (yaw) then around Y (pitch) and then around X (roll) + http://en.wikipedia.org/wiki/Aircraft_principal_axes + + Rotates around Z + Rotates around Y + Rotates around X + + + + Rotates around Z + + + + + + + Rotates around Z + + + + + + Rotates around Y + + + + + + + Rotates around Y + + + + + + Rotates around X + + + + + + + Rotates around X + + + + + + Creates a coordinate system that maps from the 'from' coordinate system to the 'to' coordinate system. + + + + + Sets this matrix to be the matrix that maps from the 'from' coordinate system to the 'to' coordinate system. + + Input Point3D that defines the origin to map the coordinate system from. + Input Vector3D object that defines the X-axis to map the coordinate system from. + Input Vector3D object that defines the Y-axis to map the coordinate system from. + Input Vector3D object that defines the Z-axis to map the coordinate system from. + Input Point3D object that defines the origin to map the coordinate system to. + Input Vector3D object that defines the X-axis to map the coordinate system to. + Input Vector3D object that defines the Y-axis to map the coordinate system to. + Input Vector3D object that defines the Z-axis to map the coordinate system to. + + + + Creates a translation + + + + + + + + + A 3×3 matrix with the rotation portion + + + + + Resets rotations preserves scales + + + + + Transforms a vector and returns the transformed vector + + + + + + + Transforms a vector and returns the transformed vector + + + + + + + Transforms a point and returns the transformed point + + + + + + + Transforms a coordinate system and returns the transformed + + + + + + + Transforms a line and returns the transformed. + + + + + + + Transforms a ray and returns the transformed. + + + + + + + Transfomes this by the coordinate system and returns the tranformed. + + + + + + + A line between two points + + + + + The startpoint of the line + + + + + The endpoint of the line + + + + + Throws if StartPoint == EndPoint + + + + + + + Distance from startpoint to endpoint, the length of the line + + + + + The direction from the startpoint to the endpoint + + + + + Creates a Line from its string representation + + The string representation of the startpoint + The string representation of the endpoint + + + + + Returns the shortest line to a point + + + If false the startpoint can be on the line extending beyond the start and endpoint of the line + + + + + Returns the closest point on the line to the given point. + + The point which the returned point is the closest point on the line to + If true the returned point is contained by the segment ends, otherwise it can be anywhere on the projected line. + + + + + The line projected on a plane + + + + + + + Find the intersection between the line and a plane + + + + + + + + Checks to determine whether or not two lines are parallel to each other, using the dot product within + the double precision specified in the MathNet.Numerics package. + + The other line to check this one against + True if the lines are parallel, false if they are not + + + + Checks to determine whether or not two lines are parallel to each other within a specified angle tolerance + + The other line to check this one against + If the angle between line directions is less than this value, the method returns true + True if the lines are parallel within the angle tolerance, false if they are not + + + + Computes the pair of points which represent the closest distance between this Line3D and another Line3D, with the first + point being the point on this Line3D, and the second point being the corresponding point on the other Line3D. If the lines + intersect the points will be identical, if the lines are parallel the first point will be the start point of this line. + + line to compute the closest points with + A tuple of two points representing the endpoints of the shortest distance between the two lines + + + + Computes the pair of points which represents the closest distance between this Line3D and another Line3D, with the option + of treating the lines as segments bounded by their start and end points. + + line to compute the closest points with + if true, the lines are treated as segments bounded by the start and end point + A tuple of two points representing the endpoints of the shortest distance between the two lines or segments + + + + Indicates whether the current object is equal to another object of the same type. + + + true if the current object is equal to the parameter; otherwise, false. + + An object to compare with this object. + + + + Determines whether the specified is equal to the current . + + + true if the specified is equal to the current ; otherwise, false. + + The to compare with the current . 2 + + + + Serves as a hash function for a particular type. + + + A hash code for the current . + + 2 + + + + http://www.had2know.com/academics/equation-plane-through-3-points.html + + + + + + + + Creates a Plane from its string representation + + The string representation of the Plane + + + + + Project Vector3D onto this plane + + The Vector3D to project + The projected Vector3D + + + + Project Vector3D onto this plane + + The Vector3D to project + The projected Vector3D + + + + Finds the intersection of the two planes, throws if they are parallel + http://mathworld.wolfram.com/Plane-PlaneIntersection.html + + + + + + + + Find intersection between Line3D and Plane + http://geomalgorithms.com/a05-_intersect-1.html + + + + Intersection Point or null + + + + http://www.cs.princeton.edu/courses/archive/fall00/cs426/lectures/raycast/sld017.htm + + + + + + + + Indicates whether the current object is equal to another object of the same type. + + + true if the current object is equal to the parameter; otherwise, false. + + An object to compare with this object. + + + + Determines whether the specified is equal to the current . + + + true if the specified is equal to the current ; otherwise, false. + + The to compare with the current . 2 + + + + Serves as a hash function for a particular type. + + + A hash code for the current . + + 2 + + + + Using public fields cos: http://blogs.msdn.com/b/ricom/archive/2006/08/31/performance-quiz-11-ten-questions-on-value-based-programming.aspx + + + + + Using public fields cos: http://blogs.msdn.com/b/ricom/archive/2006/08/31/performance-quiz-11-ten-questions-on-value-based-programming.aspx + + + + + Using public fields cos: http://blogs.msdn.com/b/ricom/archive/2006/08/31/performance-quiz-11-ten-questions-on-value-based-programming.aspx + + + + + Creates a Point3D from its string representation + + The string representation of the Point3D + + + + + This method is reserved and should not be used. When implementing the IXmlSerializable interface, you should return null (Nothing in Visual Basic) from this method, and instead, if specifying a custom schema is required, apply the to the class. + + + An that describes the XML representation of the object that is produced by the method and consumed by the method. + + + + + Generates an object from its XML representation. + + The stream from which the object is deserialized. + + + + Converts an object into its XML representation. + + The stream to which the object is serialized. + + + + Create a new Point3D from a Math.NET Numerics vector of length 3. + + + + + Convert to a Math.NET Numerics dense vector of length 3. + + + + Quaternion Number + + http://en.wikipedia.org/wiki/Quaternion + http://mathworld.wolfram.com/Quaternion.html + http://web.cs.iastate.edu/~cs577/handouts/quaternion.pdf + http://www.lce.hut.fi/~ssarkka/pub/quat.pdf + + + + + Initializes a new instance of the Quatpow + + ernion. + + + + + Given a Vector (w,x,y,z), transforms it into a Quaternion = w+xi+yj+zk + + The vector to transform into a Quaternion + + + + Neutral element for multiplication + + + + + Neutral element for sum + + + + + Calculates norm of quaternion from it's algebraical notation + + + + + Creates unit quaternion (it's norm == 1) from it's algebraical notation + + + + + Gets the real part of the quaternion. + + + + + Gets the imaginary X part (coefficient of complex I) of the quaternion. + + + + + Gets the imaginary Y part (coefficient of complex J) of the quaternion. + + + + + Gets the imaginary Z part (coefficient of complex K) of the quaternion. + + + + + Gets the the sum of the squares of the four components. + + + + + Gets the norm of the quaternion q: square root of the sum of the squares of the four components. + + + + + Gets the argument phi = arg(q) of the quaternion q, such that q = r*(cos(phi) + + u*sin(phi)) = r*exp(phi*u) where r is the absolute and u the unit vector of + q. + + + + + True if the quaternion q is of length |q| = 1. + + + To normalize a quaternion to a length of 1, use the method. + All unit quaternions form a 3-sphere. + + + + + The quaternion expresses a relationship between two coordinate frames, A and B say. This relationship, if + expressed using Euler angles, is as follows: + 1) Rotate frame A about its z axis by angle gamma; + 2) Rotate the resulting frame about its (new) y axis by angle beta; + 3) Rotate the resulting frame about its (new) x axis by angle alpha, to arrive at frame B. + + + + + + Returns a new Quaternion q with the Scalar part only. + If you need a Double, use the Real-Field instead. + + + + + Returns a new Quaternion q with the Vector part only. + + + + + Returns a new normalized Quaternion u with the Vector part only, such that ||u|| = 1. + Q may then be represented as q = r*(cos(phi) + u*sin(phi)) = r*exp(phi*u) where r is the absolute and phi the argument of q. + + + + + Returns a new normalized Quaternion q with the direction of this quaternion. + + + + + Roatates the provided rotation quaternion with this quaternion + + The rotation quaternion to rotate + + + + + Roatates the provided unit quaternion with this quaternion + + The unit quaternion to rotate + + + + + (nop) + + + + + Negate a quaternion. + + + + + Add a quaternion to a quaternion. + + + + + Add a floating point number to a quaternion. + + + + + Add a quaternion to a floating point number. + + + + + Subtract a quaternion from a quaternion. + + + + + Subtract a floating point number from a quaternion. + + + + + Subtract a floating point number from a quaternion. + + + + + Multiply a quaternion with a quaternion. + + + + + Multiply a floating point number with a quaternion. + + + + + Multiply a floating point number with a quaternion. + + + + + Divide a quaternion by a quaternion. + + + + + Divide a quaternion by a floating point number. + + + + + Raise a quaternion to a quaternion. + + + + + Raise a quaternion to a floating point number. + + + + + Equality operator for two quaternions + + + + + Equality operator for quaternion and double + + + + + Equality operator for quaternion and double + + + + + Inequality operator for two quaternions + + + + + Inequality operator for quaternion and double + + + + + Inequality operator for quaternion and double + + + + + Negate this quaternion. + + + + + Inverts this quaternion. Inversing Zero returns Zero + + + + + Returns the distance |a-b| of two quaternions, forming a metric space. + + + + + Conjugate this quaternion. + + + + + Logarithm to a given base. + + + + + Natural Logarithm to base E. + + + + + Common Logarithm to base 10. + + + + + Exponential Function. + + + + + + Raise the quaternion to a given power. + + + This algorithm is not very accurate and works only for normalized quaternions + + + + + Returns cos(n*arccos(x)) = 2*Cos((n-1)arccos(x))cos(arccos(x)) - cos((n-2)*arccos(x)) + + + + + Returns sin(n*x) + + + + + Raise the quaternion to a given power. + + + + + Square root of the Quaternion: q^(1/2). + + + + + returns quaternion as real+ImagXi+ImagYj+ImagZk based on format provided + + + + + returns quaternion as real+ImagXi+ImagYj+ImagZk + + + + + + Equality for quaternions + + + + + Equality for quaternion + + + + + Quaternion hashcode based on all members. + + + + + The intersection of the two planes + + + + + + + + Parses string representation of throughpoint and direction + This is mainly meant for tests + + + + + + + + Parses a string in the format: 'p:{1, 2, 3} v:{0, 0, 1}' to a Ray3D + This is mainly meant for tests + + + + + + + Returns the shortes line from a point to the ray + + + + + + + Returns a that represents the current . + + + A that represents the current . + + 2 + + + + Sets to the matrix of rotation that would align the 'from' vector with the 'to' vector. + The optional Axis argument may be used when the two vectors are parallel and in opposite directions to specify a specific solution, but is otherwise ignored. + + Input Vector object to align from. + Input Vector object to align to. + Input Vector object. + + + + Sets to the matrix of rotation that would align the 'from' vector with the 'to' vector. + The optional Axis argument may be used when the two vectors are parallel and in opposite directions to specify a specific solution, but is otherwise ignored. + + Input Vector object to align from. + Input Vector object to align to. + Input Vector object. + + + + + + + Angle in degrees + + + + + + A unit vector, this is used to describe a direction in 3D + + + + + Using public fields cos: http://blogs.msdn.com/b/ricom/archive/2006/08/31/performance-quiz-11-ten-questions-on-value-based-programming.aspx + + + + + Using public fields cos: http://blogs.msdn.com/b/ricom/archive/2006/08/31/performance-quiz-11-ten-questions-on-value-based-programming.aspx + + + + + Using public fields cos: http://blogs.msdn.com/b/ricom/archive/2006/08/31/performance-quiz-11-ten-questions-on-value-based-programming.aspx + + + + + A vector orthogonbal to this + + + + + Creates a UnitVector3D from its string representation + + The string representation of the UnitVector3D + + + + + This method is reserved and should not be used. When implementing the IXmlSerializable interface, you should return null (Nothing in Visual Basic) from this method, and instead, if specifying a custom schema is required, apply the to the class. + + + An that describes the XML representation of the object that is produced by the method and consumed by the method. + + + + + Generates an object from its XML representation. + + The stream from which the object is deserialized. + + + + Converts an object into its XML representation. + + The stream to which the object is serialized. + + + + The length of the vector not the count of elements + + + + + Computes whether or not this unit vector is parallel to another vector using the dot product method and comparing it + to within a specified tolerance. + + + A tolerance value for the dot product method. Values below 2*Precision.DoublePrecision may cause issues. + True if the vector dot product is within the given double tolerance of unity, false if not + + + + Computes whether or not this unit vector is parallel to a unit vector using the dot product method and comparing it + to within a specified tolerance. + + + A tolerance value for the dot product method. Values below 2*Precision.DoublePrecision may cause issues. + True if the vector dot product is within the given double tolerance of unity, false if not + + + + Determine whether or not this unit vector is parallel to another unit vector within a given angle tolerance. + + + + true if the vectors are parallel within the angle tolerance, false if they are not + + + + Determine whether or not this unit vector is parallel to a vector within a given angle tolerance. + + + + true if the vectors are parallel within the angle tolerance, false if they are not + + + + Returns signed angle + + The fromVector3D to calculate the signed angle to + The vector around which to rotate to get the correct sign + + + + Returns signed angle + + The fromVector3D to calculate the signed angle to + The vector around which to rotate to get the correct sign + + + + The nearest angle between the vectors + + The other vector + The angle + + + + Compute the angle between this vector and a unit vector using the arccosine of the dot product. + + The other vector + The angle between the vectors, with a range between 0° and 180° + + + + Returns a vector that is this vector rotated the signed angle around the about vector + + + + + + + + Returns a vector that is this vector rotated the signed angle around the about vector + + + + + + + + Convert to a Math.NET Numerics dense vector of length 3. + + + + + Using public fields cos: http://blogs.msdn.com/b/ricom/archive/2006/08/31/performance-quiz-11-ten-questions-on-value-based-programming.aspx + + + + + Using public fields cos: http://blogs.msdn.com/b/ricom/archive/2006/08/31/performance-quiz-11-ten-questions-on-value-based-programming.aspx + + + + + Using public fields cos: http://blogs.msdn.com/b/ricom/archive/2006/08/31/performance-quiz-11-ten-questions-on-value-based-programming.aspx + + + + + The length of the vector not the count of elements + + + + + A vector orthogonbal to this + + + + + Creates a Vector3D from its string representation + + The string representation of the Vector3D + + + + + This method is reserved and should not be used. When implementing the IXmlSerializable interface, you should return null (Nothing in Visual Basic) from this method, and instead, if specifying a custom schema is required, apply the to the class. + + + An that describes the XML representation of the object that is produced by the method and consumed by the method. + + + + + Generates an object from its XML representation. + + The stream from which the object is deserialized. + + + + Converts an object into its XML representation. + + The stream to which the object is serialized. + + + + Compute and return a unit vector from this vector + + + + + + Computes whether or not this vector is parallel to another vector using the dot product method and comparing it + to within a specified tolerance. + + + A tolerance value for the dot product method. Values below 2*Precision.DoublePrecision may cause issues. + true if the vector dot product is within the given tolerance of unity, false if it is not + + + + Computes whether or not this vector is parallel to a unit vector using the dot product method and comparing it + to within a specified tolerance. + + + A tolerance value for the dot product method. Values below 2*Precision.DoublePrecision may cause issues. + true if the vector dot product is within the given tolerance of unity, false if not + + + + Determine whether or not this vector is parallel to another vector within a given angle tolerance. + + + + true if the vectors are parallel within the angle tolerance, false if they are not + + + + Determine whether or not this vector is parallel to a unit vector within a given angle tolerance. + + + + true if the vectors are parallel within the angle tolerance, false if they are not + + + + Computes whether or not this vector is perpendicular to another vector using the dot product method and + comparing it to within a specified tolerance + + + + true if the vector dot product is within the given tolerance of zero, false if not + + + + Computes whether or not this vector is perpendicular to another vector using the dot product method and + comparing it to within a specified tolerance + + + + true if the vector dot product is within the given tolerance of zero, false if not + + + + Inverses the direction of the vector, equivalent to multiplying by -1 + + + + + + Returns signed angle + + The vector to calculate the signed angle to + The vector around which to rotate to get the correct sign + + + + Returns signed angle + + The vector to calculate the signed angle to + The vector around which to rotate to get the correct sign + + + + Compute the angle between this vector and another using the arccosine of the dot product. + + The other vector + The angle between the vectors, with a range between 0° and 180° + + + + Compute the angle between this vector and a unit vector using the arccosine of the dot product. + + The other vector + The angle between the vectors, with a range between 0° and 180° + + + + Returns a vector that is this vector rotated the signed angle around the about vector + + Constraining it like this does not box + + + + + + + + Returns a vector that is this vector rotated the signed angle around the about vector + + + + + + + + Returns a vector that is this vector rotated the signed angle around the about vector + + + + + + + + return new Point3D(this.X, this.Y, this.Z); + + + + + + Transforms the vector by a coordinate system and returns the transformed. + + + + + + + Create a new Vector3D from a Math.NET Numerics vector of length 3. + + + + + Convert to a Math.NET Numerics dense vector of length 3. + + + + + Using public fields cos: http://blogs.msdn.com/b/ricom/archive/2006/08/31/performance-quiz-11-ten-questions-on-value-based-programming.aspx + + + + + Using public fields cos: http://blogs.msdn.com/b/ricom/archive/2006/08/31/performance-quiz-11-ten-questions-on-value-based-programming.aspx + + + + + Using public fields cos: http://blogs.msdn.com/b/ricom/archive/2006/08/31/performance-quiz-11-ten-questions-on-value-based-programming.aspx + + + + + Using public fields cos: http://blogs.msdn.com/b/ricom/archive/2006/08/31/performance-quiz-11-ten-questions-on-value-based-programming.aspx + + + + + Create a new Point3D from a Math.NET Numerics vector of length 3. + + + + + Convert to a Math.NET Numerics dense vector of length 3. + + + + + Using public fields cos: http://blogs.msdn.com/b/ricom/archive/2006/08/31/performance-quiz-11-ten-questions-on-value-based-programming.aspx + + + + + Using public fields cos: http://blogs.msdn.com/b/ricom/archive/2006/08/31/performance-quiz-11-ten-questions-on-value-based-programming.aspx + + + + + Using public fields cos: http://blogs.msdn.com/b/ricom/archive/2006/08/31/performance-quiz-11-ten-questions-on-value-based-programming.aspx + + + + + Using public fields cos: http://blogs.msdn.com/b/ricom/archive/2006/08/31/performance-quiz-11-ten-questions-on-value-based-programming.aspx + + + + + return new Point3DHomogeneous(this.X, this.Y, this.Z, this.W); + + + + + + Create a new Vector3DHomogeneous from a Math.NET Numerics vector of length 4. + + + + + Convert to a Math.NET Numerics dense vector of length 4. + + + + + An angle + + + + + The value in radians + + + + + Initializes a new instance of the Angle. + + + + + + + Initializes a new instance of the Angle. + + + + + + + The value in degrees + + + + + Creates an Angle from its string representation + + The string representation of the angle + + + + + Creates a new instance of Angle. + + + + + + + Creates a new instance of Angle. + + + + + + Creates a new instance of Angle. + + + + + + Indicates whether two instances are equal. + + + true if the values of and are equal; otherwise, false. + + A . + A . + + + + Indicates whether two instances are not equal. + + + true if the values of and are not equal; otherwise, false. + + A . + A . + + + + Indicates whether a specified is less than another specified . + + + true if the value of is less than the value of ; otherwise, false. + + An . + An . + + + + Indicates whether a specified is greater than another specified . + + + true if the value of is greater than the value of ; otherwise, false. + + An . + An . + + + + Indicates whether a specified is less than or equal to another specified . + + + true if the value of is less than or equal to the value of ; otherwise, false. + + An . + An . + + + + Indicates whether a specified is greater than or equal to another specified . + + + true if the value of is greater than or equal to the value of ; otherwise, false. + + An . + An . + + + + Multiplies an instance of with and returns the result. + + An instance of + An instance of + Multiplies an instance of with and returns the result. + + + + Multiplies an instance of with and returns the result. + + An instance of + An instance of + Multiplies an instance of with and returns the result. + + + + Divides an instance of with and returns the result. + + An instance of + An instance of + Divides an instance of with and returns the result. + + + + Adds two specified instances. + + + An whose value is the sum of the values of and . + + A . + A TimeSpan. + + + + Subtracts an angle from another angle and returns the difference. + + + An that is the difference + + A (the minuend). + A (the subtrahend). + + + + Returns an whose value is the negated value of the specified instance. + + + An with the same numeric value as this instance, but the opposite sign. + + A + + + + Returns the specified instance of . + + + Returns . + + A + + + + Compares this instance to a specified object and returns an integer that indicates whether this is shorter than, equal to, or longer than the object. + + + A signed number indicating the relative values of this instance and . + + Value + + Description + + A negative integer + + This instance is smaller than . + + Zero + + This instance is equal to . + + A positive integer + + This instance is larger than . + + + A object to compare to this instance. + + + + Returns a value indicating whether this instance is equal to a specified object. + + + true if represents the same angle as this instance; otherwise, false. + + An object to compare with this instance. + + + + Returns a value indicating whether this instance is equal to a specified object within the given tolerance. + + + true if represents the same angle as this instance; otherwise, false. + + An object to compare with this instance. + The maximum difference for being considered equal + + + + This method is reserved and should not be used. When implementing the IXmlSerializable interface, + you should return null (Nothing in Visual Basic) from this method, and instead, + if specifying a custom schema is required, apply the to the class. + + + An that describes the XML representation of the object that is produced by the + + method and consumed by the method. + + + + + Generates an object from its XML representation. + + The stream from which the object is deserialized. + + + + Converts an object into its XML representation. + + The stream to which the object is serialized. + + + + Reads an instance of from the + + + An instance of + + + + Reads attribute if it exists + + + + + + + Index: packages/MathNet.Spatial.0.3.0/license.txt =================================================================== diff -u --- packages/MathNet.Spatial.0.3.0/license.txt (revision 0) +++ packages/MathNet.Spatial.0.3.0/license.txt (revision 606043f88653bfbffde5c7261a1826505ac5cd48) @@ -0,0 +1,25 @@ +Math.NET Spatial License (MIT/X11) +================================== + +Copyright (c) 2002-2014 Math.NET + +Permission is hereby granted, free of charge, to any person +obtaining a copy of this software and associated documentation +files (the "Software"), to deal in the Software without +restriction, including without limitation the rights to use, +copy, modify, merge, publish, distribute, sublicense, and/or sell +copies of the Software, and to permit persons to whom the +Software is furnished to do so, subject to the following +conditions: + +The above copyright notice and this permission notice shall be +included in all copies or substantial portions of the Software. + +THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, +EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES +OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND +NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT +HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, +WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING +FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR +OTHER DEALINGS IN THE SOFTWARE. Index: packages/MathNet.Spatial.0.3.0/readme.txt =================================================================== diff -u --- packages/MathNet.Spatial.0.3.0/readme.txt (revision 0) +++ packages/MathNet.Spatial.0.3.0/readme.txt (revision 606043f88653bfbffde5c7261a1826505ac5cd48) @@ -0,0 +1,26 @@ + __ __ _ _ _ _ ______ _______ + | \/ | | | | | | \ | | ____|__ __| + | \ / | __ _| |_| |__ | \| | |__ | | + | |\/| |/ _` | __| '_ \ | . ` | __| | | + | | | | (_| | |_| | | |_| |\ | |____ | | + |_| |_|\__,_|\__|_| |_(_)_| \_|______| |_| + + Math.NET Spatial - http://spatial.mathdotnet.com + Copyright (c) Math.NET - Open Source MIT/X11 License + + Math.NET Spatial v0.3.0 + +### 0.3.0 - 2016-11-05 +* Various additions and fixes + +### 0.2.0-alpha - 2015-04-20 +* Coordinate System: Rotation overloads +* Coordinate System: OffsetBy +* Homogeneous Coordinates *~luisllamasbinaburo* +* Split into Euclidean and Projective namespaces +* BUG: fix Vector3D.ProjectOn *~Ralle* +* Angle: various improvements and fixes +* Compatibility: downgraded to .Net 4.0 (from .Net 4.5) + +### 0.1.1-alpha - 2014-10-08 +* Initial version