Interface ProcessBufferBinaryMixed<S,T>

Type Parameters:
S - type of first buffer
T - type of second buffer
Functional Interface:
This is a functional interface and can therefore be used as the assignment target for a lambda expression or method reference.

@FunctionalInterface public interface ProcessBufferBinaryMixed<S,T>
Processes a 3D point like ProcessPoint but also retrieves both one VoxelBuffer for the current z-slice and one Buffer for the current z-slice.

It is very similar to ProcessBufferUnary but uses two Buffer of the same type instead of a single one.

Author:
Owen Feehan
  • Method Summary

    Modifier and Type
    Method
    Description
    default void
    Notifies the processor that there has been a change in slice.
    void
    process(Point3i point, VoxelBuffer<S> buffer1, T buffer2, int offset1, int offset2)
    Processes a voxel location in two buffers.
  • Method Details

    • notifyChangeSlice

      default void notifyChangeSlice(int z)
      Notifies the processor that there has been a change in slice.
      Parameters:
      z - the slice-index (global coordinates).
    • process

      void process(Point3i point, VoxelBuffer<S> buffer1, T buffer2, int offset1, int offset2)
      Processes a voxel location in two buffers.
      Parameters:
      point - a point with global coordinates.
      buffer1 - first buffer for the current slice for which offsetSlice refers to a particular location.
      buffer2 - second buffer for the current slice for which offsetSlice refers to a particular location.
      offset1 - an offset value for the current slice for buffer1 (i.e. indexing XY only, but not Z).
      offset2 - an offset value for the current slice for buffer2 (i.e. indexing XY only, but not Z).