public class RayCellIterator extends DataBlock
attributeOrder, axisOrdering, axisWeights, bounds, dataOrder, dimensionality, numAttributes, pointOrder, recordDesc| Constructor and Description |
|---|
RayCellIterator(float startx,
float starty,
float startz,
float dx,
float dy,
float dz,
float step,
Indexable source)
construct the interator by giving voxel,starting point,ending point,concreteBlock
|
| Modifier and Type | Method and Description |
|---|---|
void |
datum(Datum datum,
IndexSpaceID id)
Given an IndexSpaceID, copy the values of the Datum at that position to the
argument Datum.
|
void |
datum(Datum datum,
IndexSpaceID id,
FieldIDMapper mp)
Given an IndexSpaceID and FieldIDMapper, copy the values of the Datum at
that position to the argument Datum.
|
void |
datum(Datum datum,
IndexSpaceID id,
RecordSpec spec)
Given an IndexSpaceID and RecordSpec, copy the values of the Datum at
that position to the argument Datum.
|
void |
datum(Datum d,
int[] coordArray)
Given an array of coordinates, copy the corresponding datum
into the first parameter.
|
Datum |
datum(IndexSpaceID did)
Given an IndexSpaceID, return the corresponding datum.
|
Datum |
datum(IndexSpaceID did,
RecordSpec spec)
Given an IndexSpaceID, return the corresponding datum with attributes
specified in the RecordSpec.
|
ISBounds[] |
getEnumerWindow(int windowSize)
get an array of ISBounds within the iteration enumeration window
Enumeration window is the number of iteration steps that can be predicted in advance
it's possible that two element in the array have the same ISBounds
|
float[] |
getLocalIntersection() |
Values |
getValues()
Returns the Values of the current DataBlock.
|
boolean |
hasMoreElements()
Return true if this ISIterator can be incremented.
|
void |
init()
initialize the itertor
move to the first cell block which intersects with the ray, set default axisordering as
{2,1,0}
|
void |
init(AxisOrdering order)
initialize the itertor
move to the first cell block which intersects with the ray
|
float[] |
interpolateValues()
return interpolated values of all the attribute, stored in a array
|
void |
next()
move the iterator to the next possiton, and get the data from the source
|
boolean |
nextBounds()
return true if iterator moves to next spacial postion.
|
void |
setDatum(IndexSpaceID isid,
Datum d)
Set the location specified by the IndexSpaceID to the given datum.
|
void |
subblock(DataBlock theBlock,
ISBounds dstBounds,
ISBounds srcBounds)
Reads a subblock defined by srcBounds into the region of the Datablock argument
defined by dstBounds.
|
void |
subblock(DataBlock theBlock,
ISBounds dstBounds,
ISBounds srcBounds,
FieldIDMapper mp)
Reads a subblock defined by srcBounds into the region of the Datablock argument
defined by dstBounds.
|
void |
subblock(DataBlock theBlock,
ISBounds dstBounds,
ISBounds srcBounds,
RecordSpec spec)
Reads a subblock defined by srcBounds into the region of the Datablock argument
defined by dstBounds.
|
DataBlock |
subblock(ISBounds db)
Return a new DataBlock that is a subset of this datablock.
|
float |
triliner(float fx,
float fy,
float fz,
float v000,
float v100,
float v110,
float v010,
float v001,
float v101,
float v111,
float v011)
trilinear interpolation.
|
setByAttribute, setByte, setBytes, setBytes, setBytesByAttribute, setBytesByPoint, setDouble, setDoubles, setDoubles, setDoublesByAttribute, setDoublesByPoint, setFloat, setFloats, setFloats, setFloatsByAttribute, setFloatsByPoint, setInt, setInts, setInts, setIntsByAttribute, setIntsByPoint, setShort, setShorts, setShorts, setShortsByAttribute, setShortsByPoint, setValues, setValues, setValuesByAttribute, setValuesByPoint, toStringbyteSize, computeOffset, computeOffset, copyBounds, createDataBlock, createDataBlock, createDataBlock, createDatum, createDatum, createDatum, createDatum, createDatum, createDatum, datum, dim, getAttributeNames, getAxisOrdering, getAxisWeight, getAxisWeights, getBounds, getByte, getBytes, getBytes, getBytes, getBytes, getBytes, getBytes, getBytesByAttribute, getBytesByAttribute, getBytesByPoint, getBytesByPoint, getDataOrder, getDimensionsArray, getDouble, getDoubles, getDoubles, getDoubles, getDoubles, getDoubles, getDoubles, getDoublesByAttribute, getDoublesByAttribute, getDoublesByPoint, getDoublesByPoint, getFloat, getFloats, getFloats, getFloats, getFloats, getFloats, getFloats, getFloatsByAttribute, getFloatsByAttribute, getFloatsByPoint, getFloatsByPoint, getInt, getInts, getInts, getInts, getInts, getInts, getInts, getIntsByAttribute, getIntsByAttribute, getIntsByPoint, getIntsByPoint, getLowerBoundsArray, getNumAttributes, getRecordDescriptor, getShort, getShorts, getShorts, getShorts, getShorts, getShorts, getShorts, getShortsByAttribute, getShortsByAttribute, getShortsByPoint, getShortsByPoint, getStorageType, getUpperBoundsArray, getValues, getValuesByAttribute, getValuesByPoint, longVolume, setAxisOrdering, setBounds, setRecordDescriptor, size, subblock, subblock, subblock, subblock, subblock, subblock, subblock, subblock, useBytesOnly, volumepublic RayCellIterator(float startx,
float starty,
float startz,
float dx,
float dy,
float dz,
float step,
Indexable source)
public void init()
public void init(AxisOrdering order)
public boolean hasMoreElements()
public void next()
public boolean nextBounds()
public ISBounds[] getEnumerWindow(int windowSize)
public float[] getLocalIntersection()
public Datum datum(IndexSpaceID did)
datum in interface Indexabledatum in class DataCollectionpublic void datum(Datum d, int[] coordArray)
datum in class DataCollectionpublic void datum(Datum datum, IndexSpaceID id, RecordSpec spec)
DataCollectiondatum in interface Indexabledatum in class DataCollectionpublic void datum(Datum datum, IndexSpaceID id, FieldIDMapper mp)
DataCollectiondatum in interface Indexabledatum in class DataCollectionpublic void datum(Datum datum, IndexSpaceID id)
DataCollectiondatum in interface Indexabledatum in class DataCollectionpublic Datum datum(IndexSpaceID did, RecordSpec spec)
datum in interface Indexabledatum in class DataCollectionpublic void setDatum(IndexSpaceID isid, Datum d)
public DataBlock subblock(ISBounds db)
subblock in interface Indexablesubblock in class DataCollectionpublic void subblock(DataBlock theBlock, ISBounds dstBounds, ISBounds srcBounds)
subblock in interface Indexablesubblock in class DataCollectionpublic void subblock(DataBlock theBlock, ISBounds dstBounds, ISBounds srcBounds, FieldIDMapper mp)
subblock in interface Indexablesubblock in class DataCollectionpublic void subblock(DataBlock theBlock, ISBounds dstBounds, ISBounds srcBounds, RecordSpec spec)
subblock in interface Indexablesubblock in class DataCollectionpublic Values getValues()
public float[] interpolateValues()
public float triliner(float fx,
float fy,
float fz,
float v000,
float v100,
float v110,
float v010,
float v001,
float v101,
float v111,
float v011)