HyCodeYourTale
classpublicPriority 3

SmoothMaxDensity

com.hypixel.hytale.builtin.hytalegenerator.density.nodes.SmoothMaxDensity

extends Density

2

Methods

2

Public Methods

3

Fields

1

Constructors

Constructors

public
SmoothMaxDensity(double range, Density inputA, Density inputB)

Methods

Public Methods (2)

public
double process(Density.Context context)
@Override
public
void setInputs(Density[] inputs)
@Override

Fields

Private/Package Fields (3)

privateDensity inputA
privateDensity inputB
privatedouble range

Inheritance

Parent
Current
Interface
Child

Use mouse wheel to zoom, drag to pan. Click nodes to navigate.

Related Classes

Source Code

package com.hypixel.hytale.builtin.hytalegenerator.density.nodes;

import com.hypixel.hytale.builtin.hytalegenerator.density.Density;
import com.hypixel.hytale.builtin.hytalegenerator.framework.math.Calculator;
import javax.annotation.Nonnull;
import javax.annotation.Nullable;

public class SmoothMaxDensity extends Density {
   private final double range;
   @Nullable
   private Density inputA;
   @Nullable
   private Density inputB;

   public SmoothMaxDensity(double range, Density inputA, Density inputB) {
      this.range = range;
      this.inputA = inputA;
      this.inputB = inputB;
   }

   @Override
   public double process(@Nonnull Density.Context context) {
      return this.inputA != null && this.inputB != null ? Calculator.smoothMax(this.range, this.inputA.process(context), this.inputB.process(context)) : 0.0;
   }

   @Override
   public void setInputs(@Nonnull Density[] inputs) {
      if (inputs.length < 2) {
         this.inputA = null;
         this.inputB = null;
      }

      this.inputA = inputs[0];
      this.inputB = inputs[1];
   }
}