com.supermap.data
类 MathUtil
- java.lang.Object
-
- com.supermap.data.MathUtil
-
public class MathUtil extends Object
数学工具类,用于实现点绕旋转轴旋转、角度与弧度互转、计算三维线段间的距离、计算与不同两个向量均垂直的向量,支持判断三维点是否在三维线段上、三维线段是否相交等。- 从以下版本开始:
- 11.3.0。
-
-
构造器概要
构造器 构造器和说明 MathUtil()
-
方法概要
所有方法 静态方法 具体方法 限定符和类型 方法和说明 static double
degreeToRadian(double degree)
角度转弧度。static double
distance(Point3D point, Segment3D segment)
计算点到线段间的距离。static double
distance(Segment3D segment1, Segment3D segment2)
计算两个三维线段对象之间的最短距离。static Boolean
isIntersect(Segment3D segment1, Segment3D segment2)
判断两个三维线段对象是否相交。static boolean
isOnSegment(Point3D point, Segment3D segment)
判断点是否在线段上。static Vector3D
perpendicular(Vector3D v1, Vector3D v2)
返回与两个三维向量均垂直的向量,方向与v1xv2方向相同。static double
radianToDegree(double radians)
弧度转角度。static Point3D
rotate(Point3D point, double dAangle, Vector3D vecRotateAxis)
计算点绕旋转轴旋转后的点或向量。
-
-
-
字段详细资料
-
DEGTORAD
public static final double DEGTORAD
- 另请参阅:
- 常量字段值
-
RADTODEG
public static final double RADTODEG
- 另请参阅:
- 常量字段值
-
-
方法详细资料
-
rotate
public static Point3D rotate(Point3D point, double dAangle, Vector3D vecRotateAxis)
计算点绕旋转轴旋转后的点或向量。- 参数:
point
- 三维点,参数类型支持Point3D、Vector3D。dAangle
- 旋转的角度。vecRotateAxis
- 旋转轴。- 返回:
- 新点或新向量。
-
degreeToRadian
public static double degreeToRadian(double degree)
角度转弧度。- 参数:
degree
- 角度。- 返回:
- 弧度。
-
radianToDegree
public static double radianToDegree(double radians)
弧度转角度。- 参数:
radians
- 弧度。- 返回:
- 角度。
-
distance
public static double distance(Point3D point, Segment3D segment)
计算点到线段间的距离。- 参数:
point
- 三维点,参数类型支持Point3D、Vector3D。segment
- 三维线段。- 返回:
- 点到线段间的距离。
-
isOnSegment
public static boolean isOnSegment(Point3D point, Segment3D segment)
判断点是否在线段上。- 参数:
point
- 三维点,参数类型支持Point3D、Vector3D。segment
- 三维线段。- 返回:
- 点是否在线段上。返回true,表示点在线段上,返回false,表示点未在线段上。
-
isIntersect
public static Boolean isIntersect(Segment3D segment1, Segment3D segment2)
判断两个三维线段对象是否相交。- 参数:
segment1
- 三维线段。segment2
- 三维线段。- 返回:
- 是否相交。返回true,表示两个三维线段对象相交,返回false,表示两个三维线段对象不相交。
-
distance
public static double distance(Segment3D segment1, Segment3D segment2)
计算两个三维线段对象之间的最短距离。- 参数:
segment1
- 三维线段。segment2
- 三维线段。- 返回:
- 线段之间的最短距离,相交返回0。
-
-
Copyright © 2021–2025 SuperMap. All rights reserved.