# Class BinPlan

java.lang.Object
uk.ac.starlink.ttools.plot2.layer.BinPlan

public class BinPlan extends Object
Drawing plan object for counting the number of hits to each bin in a grid. It's a 2-d histogram.

The `calculatePointCloudPlan` method is intended for use by `Drawing` implementations.

Since:
  15 Feb 2013
Author:
  Mark Taylor

## Constructor Summary

Constructors
Constructor
Description
`BinPlan(Binner binner, Gridder gridder)`
Constructor.

## Method Summary

Modifier and Type
Method
Description
`static BinPlan`
`calculatePointCloudPlan(PointCloud pointCloud, Surface surface, DataStore dataStore, Object[] knownPlans)`
Returns a BinPlan instance which reports where on a grid points in a PointCloud have landed.
`Binner`
`getBinner()`
Returns count information.
`Gridder`
`getGridder()`
Returns grid geometry.

### Methods inherited from class Object

`clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait`

## Constructor Details

### BinPlan

public BinPlan(Binner binner, Gridder gridder)
Constructor.

Parameters:
  `binner` - contains counts
  `gridder` - contains pixel grid geometry

## Method Details

### getBinner

public Binner getBinner()
Returns count information.

Returns:
  binner

### getGridder

public Gridder getGridder()
Returns grid geometry.

Returns:
  gridder

### calculatePointCloudPlan

public static BinPlan calculatePointCloudPlan(PointCloud pointCloud, Surface surface, DataStore dataStore, Object[] knownPlans)
Returns a BinPlan instance which reports where on a grid points in a PointCloud have landed. Used as a plan for plot layers which want a count of the data points falling in each plot surface pixel. Instances returned by this method are reusable by layers which have the same requirements.

Parameters:
  `pointCloud` - data position set
  `surface` - plot surface
  `dataStore` - data storage object
  `knownPlans` - existing pre-calculated plans; if one of these fits the bill it will be returned without any calculations being performed