classpublicPriority 3
SpherePositionProvider
com.hypixel.hytale.builtin.hytalegenerator.positionproviders.SpherePositionProvider
extends PositionProvider
1
Methods
1
Public Methods
2
Fields
1
Constructors
Constructors
public
SpherePositionProvider(PositionProvider positionProvider, double range)Methods
Public Methods (1)
public
void positionsIn(PositionProvider.Context context)@Override
Fields
Private/Package Fields (2)
private
PositionProvider positionProviderprivate
double rangeInheritance
Parent
Current
Interface
Child
Use mouse wheel to zoom, drag to pan. Click nodes to navigate.
Related Classes
Used By
Source Code
package com.hypixel.hytale.builtin.hytalegenerator.positionproviders;
import com.hypixel.hytale.builtin.hytalegenerator.VectorUtil;
import javax.annotation.Nonnull;
public class SpherePositionProvider extends PositionProvider {
@Nonnull
private final PositionProvider positionProvider;
private final double range;
public SpherePositionProvider(@Nonnull PositionProvider positionProvider, double range) {
this.positionProvider = positionProvider;
this.range = range;
}
@Override
public void positionsIn(@Nonnull PositionProvider.Context context) {
PositionProvider.Context childContext = new PositionProvider.Context(context);
childContext.consumer = position -> {
double distance = position.length();
if (VectorUtil.isInside(position, context.minInclusive, context.maxExclusive) && distance <= this.range) {
context.consumer.accept(position);
}
};
this.positionProvider.positionsIn(childContext);
}
}