在C#中,Point
结构表示二维平面上的一个点
- 加法:将两个点相加以获取新点。新点的坐标是原始点坐标之和。
Point point1 = new Point(3, 4); Point point2 = new Point(1, 2); Point result = point1 + point2; // result: (4, 6)
- 减法:从第一个点减去第二个点以获取新点。新点的坐标是原始点坐标之差。
Point point1 = new Point(3, 4); Point point2 = new Point(1, 2); Point result = point1 - point2; // result: (2, 2)
- 乘法:将点的坐标与给定的数值相乘以获取新点。
Point point1 = new Point(3, 4); int multiplier = 2; Point result = point1 * multiplier; // result: (6, 8)
- 除法:将点的坐标除以给定的数值以获取新点。
Point point1 = new Point(6, 8); int divisor = 2; Point result = point1 / divisor; // result: (3, 4)
- 求距离:计算两个点之间的欧几里得距离。
Point point1 = new Point(3, 4); Point point2 = new Point(6, 8); double distance = point1.DistanceTo(point2); // distance: 5.0
- 点积:计算两个点的点积(内积)。
Point point1 = new Point(3, 4); Point point2 = new Point(1, 2); int dotProduct = point1.DotProduct(point2); // dotProduct: 11
- 叉积:计算两个点的叉积(外积)。
Point point1 = new Point(3, 4); Point point2 = new Point(1, 2); int crossProduct = point1.CrossProduct(point2); // crossProduct: -2
- 单位向量:计算点的单位向量。
Point point1 = new Point(3, 4); Point unitVector = point1.UnitVector(); // unitVector: (0.6, 0.8)
- 归一化:将点的长度缩放到1。
Point point1 = new Point(3, 4); point1.Normalize(); // point1: (0.6, 0.8)
- 旋转:根据给定的角度旋转点。
Point point1 = new Point(3, 4); double angleInDegrees = 90; Point rotatedPoint = point1.Rotate(angleInDegrees); // rotatedPoint: (-4, 3)
这些操作可以帮助您在二维空间中处理点并执行各种计算。请注意,这些示例使用了自定义的 Point
类。在实际项目中,您可能需要根据您的需求调整这些方法。