java.lang.Object
org.hipparchus.geometry.partitioning.AbstractSubHyperplane<S,T>
- 类型参数:
-
S
- 嵌入空间的类型。 -
T
- 嵌入子空间的类型。
- 所有已实现的接口:
-
SubHyperplane<S>
- 直接已知子类:
-
SubCircle
,SubLimitAngle
,SubLine
,SubOrientedPoint
,SubPlane
public abstract class AbstractSubHyperplane<S extends Space,T extends Space> extends Object implements SubHyperplane<S>
该类实现了
SubHyperplane
的与维度无关的部分。
当一个hyperplane
的部分被与之相交的其他超平面切割时,就会得到子超平面。剩余部分是一个凸区域。这种对象出现在BSP树
中,作为切割超平面与其分割的凸区域的交集,切割超平面是更靠近树根的切割超平面。
-
嵌套类概要
从接口继承的嵌套类/接口 org.hipparchus.geometry.partitioning.SubHyperplane
SubHyperplane.SplitSubHyperplane<U extends Space>
-
构造器概要
限定符构造器说明protected
AbstractSubHyperplane
(Hyperplane<S> hyperplane, Region<T> remainingRegion) 从超平面和区域构建子超平面。 -
方法概要
修饰符和类型方法说明applyTransform
(Transform<S, T> transform) 对实例应用变换。protected abstract AbstractSubHyperplane
<S, T> buildNew
(Hyperplane<S> hyper, Region<T> remaining) 从超平面和区域构建子超平面。copySelf()
复制实例。获取基础超平面。获取超平面的剩余区域。double
getSize()
获取实例的大小。boolean
isEmpty()
检查实例是否为空。reunite
(SubHyperplane<S> other) 计算实例和另一个子超平面的并集。abstract SubHyperplane.SplitSubHyperplane
<S> split
(Hyperplane<S> hyper) 通过超平面将实例分为两部分。
-
构造器详细资料
-
AbstractSubHyperplane
从超平面和区域构建子超平面。- 参数:
-
hyperplane
- 基础超平面 -
remainingRegion
- 超平面的剩余区域
-
-
方法详细资料
-
buildNew
从超平面和区域构建子超平面。- 参数:
-
hyper
- 基础超平面 -
remaining
- 超平面的剩余区域 - 返回:
- 一个新的子超平面
-
copySelf
复制实例。创建的实例与原始实例完全独立。使用深度复制,没有共享任何基础对象(除了节点属性和不可变对象)。
- 指定者:
-
copySelf
在接口中SubHyperplane<S extends Space>
- 返回:
- 一个新的子超平面,实例的副本
-
getHyperplane
获取基础超平面。- 指定者:
-
getHyperplane
在接口中SubHyperplane<S extends Space>
- 返回:
- 基础超平面
-
getRemainingRegion
获取超平面的剩余区域。返回的区域是在规范超平面框架中表示的,并具有超平面维度。例如,在3D欧几里得空间中,被切割的超平面是一个2D平面,相应的区域是一个凸2D多边形。
- 返回:
- 超平面的剩余区域
-
getSize
public double getSize()获取实例的大小。- 指定者:
-
getSize
在接口中SubHyperplane<S extends Space>
- 返回:
- 实例的大小(在1D中是长度,在2D中是面积,在3D中是体积...)
-
reunite
计算实例和另一个子超平面的并集。- 指定者:
-
reunite
在接口中SubHyperplane<S extends Space>
- 参数:
-
other
- 要合并的另一个子超平面(必须与实例在同一超平面上) - 返回:
- 一个新的子超平面,实例和其他的并集
-
applyTransform
对实例应用变换。实例必须是相对于变换的(D-1)维子超平面,而不是(D-2)维子超平面,变换本身知道如何进行变换。变换将首先转换超平面,然后使用变换提供的各种方法转换整个区域。
- 参数:
-
transform
- 要应用的D维变换 - 返回:
- 转换后的实例
-
split
通过超平面将实例分为两部分。- 指定者:
-
split
在接口中SubHyperplane<S extends Space>
- 参数:
-
hyper
- 分割超平面 - 返回:
- 包含实例正面部分和负面部分的对象
-
isEmpty
public boolean isEmpty()检查实例是否为空。- 指定者:
-
isEmpty
在接口中SubHyperplane<S extends Space>
- 返回:
- 如果实例为空,则为true
-