Record Class InterpolatedFunction.Sampler

java.lang.Object
java.lang.Record
net.minecraft.world.level.levelgen.densityfunction.op.InterpolatedFunction.Sampler
All Implemented Interfaces:
DensitySampler
Enclosing class:
InterpolatedFunction

private static record InterpolatedFunction.Sampler(DensitySampler input, int cellSizeXz, int cellSizeY, float cellSizeXzInv, float cellSizeYInv) extends Record implements DensitySampler
  • Field Details

    • input

      private final DensitySampler input
      The field for the input record component.
    • cellSizeXz

      private final int cellSizeXz
      The field for the cellSizeXz record component.
    • cellSizeY

      private final int cellSizeY
      The field for the cellSizeY record component.
    • cellSizeXzInv

      private final float cellSizeXzInv
      The field for the cellSizeXzInv record component.
    • cellSizeYInv

      private final float cellSizeYInv
      The field for the cellSizeYInv record component.
  • Constructor Details

    • Sampler

      private Sampler(DensitySampler input, int cellSizeXz, int cellSizeY, float cellSizeXzInv, float cellSizeYInv)
      Creates an instance of a Sampler record class.
      Parameters:
      input - the value for the input record component
      cellSizeXz - the value for the cellSizeXz record component
      cellSizeY - the value for the cellSizeY record component
      cellSizeXzInv - the value for the cellSizeXzInv record component
      cellSizeYInv - the value for the cellSizeYInv record component
  • Method Details

    • sampleVolume

      public void sampleVolume(SamplerContext context, DensityBuffer outputBuffer, DensityVolume volume)
      Specified by:
      sampleVolume in interface DensitySampler
    • sampleWithNonBlockStep

      private void sampleWithNonBlockStep(SamplerContext context, DensityBuffer outputBuffer, DensityVolume volume)
    • sampleWithBlockStep

      private void sampleWithBlockStep(SamplerContext context, DensityBuffer outputBuffer, DensityVolume volume)
    • fillCell

      private void fillCell(DensityBuffer outputBuffer, DensityVolume outputVolume, DensityVolume cellVolume, int cellX, int cellY, int cellZ, float v000, float v100, float v010, float v110, float v001, float v101, float v011, float v111)
    • sampleValue

      public float sampleValue(SamplerContext context, int blockX, int blockY, int blockZ)
      Specified by:
      sampleValue in interface DensitySampler
    • toString

      public final String toString()
      Returns a string representation of this record class. The representation contains the name of the class, followed by the name and value of each of the record components.
      Specified by:
      toString in class Record
      Returns:
      a string representation of this object
    • hashCode

      public final int hashCode()
      Returns a hash code value for this object. The value is derived from the hash code of each of the record components.
      Specified by:
      hashCode in class Record
      Returns:
      a hash code value for this object
    • equals

      public final boolean equals(Object o)
      Indicates whether some other object is "equal to" this one. The objects are equal if the other object is of the same class and if all the record components are equal. Reference components are compared with Objects::equals(Object,Object); primitive components are compared with the compare method from their corresponding wrapper classes.
      Specified by:
      equals in class Record
      Parameters:
      o - the object with which to compare
      Returns:
      true if this object is the same as the o argument; false otherwise.
    • input

      public DensitySampler input()
      Returns the value of the input record component.
      Returns:
      the value of the input record component
    • cellSizeXz

      public int cellSizeXz()
      Returns the value of the cellSizeXz record component.
      Returns:
      the value of the cellSizeXz record component
    • cellSizeY

      public int cellSizeY()
      Returns the value of the cellSizeY record component.
      Returns:
      the value of the cellSizeY record component
    • cellSizeXzInv

      public float cellSizeXzInv()
      Returns the value of the cellSizeXzInv record component.
      Returns:
      the value of the cellSizeXzInv record component
    • cellSizeYInv

      public float cellSizeYInv()
      Returns the value of the cellSizeYInv record component.
      Returns:
      the value of the cellSizeYInv record component