VolumeJ
Class VJInterpolator
java.lang.Object
|
+--VolumeJ.VJInterpolator
- Direct Known Subclasses:
- VJNearestNeighbor, VJSplineInterpolator, VJTrilinear
- public abstract class VJInterpolator
- extends java.lang.Object
This class is the abstract class for all volume
interpolators and defines the methods
for each of these classes.
- See Also:
Volume
,
VJGradient
,
Copyright (c) 1999-2002, Michael Abramoff. All rights reserved.
Method Summary |
abstract VJGradient |
gradient(Volume v,
VJVoxelLoc vl)
Interpolate the gradient of v at location vl. |
abstract boolean |
isValid(VJVoxelLoc vl,
Volume v)
Does vl fall within the bounds of volume for a specific interpolation kernel? |
abstract boolean |
isValidGradient(VJCell c,
Volume v)
Does cell c fall within the bounds of a volume for nearest neighbor gradient interpolation? |
abstract boolean |
isValidGradient(VJVoxelLoc vl,
Volume v)
Does vl fall within the bounds of volume for nearest neighbor gradient interpolation? |
abstract java.lang.String |
toString()
|
abstract VJValue |
value(VJValue voxel,
Volume v,
VJVoxelLoc vl)
Interpolate the value of v at location vl. |
VJValueHSB |
valueHS(VJValueHSB hsb,
VolumeRGB v,
float threshold,
VJVoxelLoc vl)
This method should not be here, but where:
it is a special HSB vector interpolation for RGB volumes. |
Methods inherited from class java.lang.Object |
, clone, equals, finalize, getClass, hashCode, notify, notifyAll, wait, wait, wait |
VJInterpolator
public VJInterpolator()
isValid
public abstract boolean isValid(VJVoxelLoc vl,
Volume v)
- Does vl fall within the bounds of volume for a specific interpolation kernel?
- Parameters:
vl
- a VJVoxelLoc for which you want to know whether it falls inside the bounds,
taking account of support.v
- the volume to be interpolated.- Returns:
- boolean whether or not vl falls within the bounds.
isValidGradient
public abstract boolean isValidGradient(VJVoxelLoc vl,
Volume v)
- Does vl fall within the bounds of volume for nearest neighbor gradient interpolation?
- Parameters:
vl
- a VJVoxelLoc for which you want to know whether it falls inside the bounds,
taking account of support for the gradient kernel.v
- the volume to be interpolated.- Returns:
- boolean whether or not vl falls within the bounds.
isValidGradient
public abstract boolean isValidGradient(VJCell c,
Volume v)
- Does cell c fall within the bounds of a volume for nearest neighbor gradient interpolation?
- Parameters:
c
- a VJCell for which you want to know whether it falls inside the bounds,
taking account of support for the gradient kernel.v
- the volume to be interpolated.boolean
- whether or not c falls within the bounds.
value
public abstract VJValue value(VJValue voxel,
Volume v,
VJVoxelLoc vl)
- Interpolate the value of v at location vl.
voxel must be instantiated as a (sub)class of VJValue.
- Parameters:
voxel
- a VJValue which will contain the interpolated voxel value on exit.v
- a volumevl
- a location in the volume.- Returns:
- voxel, which contains the value in v at vl.
gradient
public abstract VJGradient gradient(Volume v,
VJVoxelLoc vl)
- Interpolate the gradient of v at location vl.
- Parameters:
v
- a volumevl
- a location in the volume.- Returns:
- a VJGradient which contains the gradient in v at vl.
toString
public abstract java.lang.String toString()
- Overrides:
toString
in class java.lang.Object
valueHS
public VJValueHSB valueHS(VJValueHSB hsb,
VolumeRGB v,
float threshold,
VJVoxelLoc vl)
- This method should not be here, but where:
it is a special HSB vector interpolation for RGB volumes.
It is not really interpolation type dependent, but it is a type of interpolation.
Get the HSB voxel value (hue and saturation) with a brightness closest to threshold near vl.
- Parameters:
hsb
- a VJValueHSB to which will be added the hue and saturation.v
- the volume in which to interpolate.threshold
- the desired surface brightness value.vl
- the location around which to look for the surface voxel.
Submit a bug or feature
Copyright (c) 1997-2003 Michael Abramoff
Licensing available. All Rights Reserved.