Package | Class | Tree | Deprecated | Index | Help
PREV CLASS NEXT CLASS | FRAMES NO FRAMES
SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD

## igeo
Class ISurfaceFieldGeo

    java.lang.Object
      igeo.IFieldGeo
          igeo.ISurfaceFieldGeo

All Implemented Interfaces:
  I3DFieldI, IFieldI

Direct Known Subclasses:
  ISurfaceAttractorField.ISurfaceAttractorFieldGeo, ISurfaceNormalField.ISurfaceNormalFieldGeo, ISurfacePositionField.ISurfacePositionFieldGeo, ISurfaceSlopeField.ISurfaceSlopeFieldGeo, ISurfaceUTangentField.ISurfaceUTangentFieldGeo, ISurfaceVTangentField.ISurfaceVTangentFieldGeo

    public class ISurfaceFieldGeo

extends IFieldGeo
implements I3DFieldI

3D vector filed defined by a NURBS surface.

Author:
  Satoru Sugihara

Nested Class Summary

Nested classes/interfaces inherited from class igeo.IFieldGeo
`IFieldGeo.Decay`

Field Summary
`ISurfaceI` | `fieldSurface`
`ISurfaceI` | `surface`

Fields inherited from class igeo.IFieldGeo
`bidirectional, constantIntensity, customDecay, decay, gaussDecay, intensity, linearDecay, noDecay, threshold`

Constructor Summary
`ISurfaceFieldGeo(ISurfaceI srf, ISurfaceI fieldSrf)`

Method Summary
`ISurfaceFieldGeo` | `bidirectional(boolean b)` if bidirectional is on, field force vector is flipped when velocity of particle is going opposite
`ISurfaceFieldGeo` | `constantIntensity(boolean b)` if output vector is besed on constant length (intensity) or variable depending geometry when curve or surface tangent is used
`void` | `del()`
`ISurfaceFieldGeo` | `gauss(double threshold)` alias of gaussianDecay
`ISurfaceFieldGeo` | `gaussian(double threshold)` alias of gaussianDecay
`ISurfaceFieldGeo` | `gaussianDecay(double threshold)` set Gaussian decay; Threshold is used as double of standard deviation (when distance is eqaul to threshold, output is 13.5% of original).
`IVecI` | `get(IVecI pos)` get 3D vector field value
`IVecI` | `get(IVecI pos, IVec2I uv)` get original field value out of curve parameter u
`IVecI` | `get(IVecI pos, IVecI vel)` get 3D vector field value
`IVecI` | `get(IVecI pos, IVecI vel, IVec2I uv)` get original field value out of curve parameter u
`ISurfaceFieldGeo` | `intensity(double i)` set output intensity
`ISurfaceFieldGeo` | `linear(double threshold)` alias of linearDecay
`ISurfaceFieldGeo` | `linearDecay(double threshold)` set linear decay; When distance is equal to threshold, output is zero.
`ISurfaceFieldGeo` | `noDecay()` set no decay
`ISurfaceFieldGeo` | `threshold(double t)` set decay threshold

Methods inherited from class igeo.IFieldGeo
`decay, decay, intensity, threshold`

Methods inherited from class java.lang.Object
`clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait`

Methods inherited from interface igeo.IFieldI
`decay, intensity, threshold`

Field Detail

### surface

    public ISurfaceI surface

### fieldSurface

    public ISurfaceI fieldSurface

Constructor Detail

### ISurfaceFieldGeo

    public ISurfaceFieldGeo(ISurfaceI srf,
                            ISurfaceI fieldSrf)

Method Detail

### get

    public IVecI get(IVecI pos,
                     IVec2I uv)

  get original field value out of curve parameter u

### get

    public IVecI get(IVecI pos,
                     IVecI vel,
                     IVec2I uv)

  get original field value out of curve parameter u

### get

    public IVecI get(IVecI pos)

  get 3D vector field value

  Specified by:
    `get` in interface `I3DFieldI`
  Specified by:
    `get` in interface `IFieldI`

### get

    public IVecI get(IVecI pos,
                     IVecI vel)

  get 3D vector field value

  Specified by:
    `get` in interface `I3DFieldI`
  Specified by:
    `get` in interface `IFieldI`
  Parameters:
    `pos` - positio of the input particle
    `vel` - velocity of the input particle

### constantIntensity

    public ISurfaceFieldGeo constantIntensity(boolean b)

  if output vector is besed on constant length (intensity) or variable depending geometry when curve or surface tangent is used

  Specified by:
    `constantIntensity` in interface `IFieldI`
  Overrides:
    `constantIntensity` in class `IFieldGeo`

### bidirectional

    public ISurfaceFieldGeo bidirectional(boolean b)

  if bidirectional is on, field force vector is flipped when velocity of particle is going opposite

  Specified by:
    `bidirectional` in interface `IFieldI`
  Overrides:
    `bidirectional` in class `IFieldGeo`

### noDecay

    public ISurfaceFieldGeo noDecay()

  set no decay

  Specified by:
    `noDecay` in interface `IFieldI`
  Overrides:
    `noDecay` in class `IFieldGeo`

### linearDecay

    public ISurfaceFieldGeo linearDecay(double threshold)

  set linear decay; When distance is equal to threshold, output is zero.

  Specified by:
    `linearDecay` in interface `IFieldI`
  Overrides:
    `linearDecay` in class `IFieldGeo`

### linear

    public ISurfaceFieldGeo linear(double threshold)

  Description copied from class: `IFieldGeo`
  alias of linearDecay

  Specified by:
    `linear` in interface `IFieldI`
  Overrides:
    `linear` in class `IFieldGeo`

### gaussianDecay

    public ISurfaceFieldGeo gaussianDecay(double threshold)

  set Gaussian decay; Threshold is used as double of standard deviation (when distance is eqaul to threshold, output is 13.5% of original).

  Specified by:
    `gaussianDecay` in interface `IFieldI`
  Overrides:
    `gaussianDecay` in class `IFieldGeo`

### gaussian

    public ISurfaceFieldGeo gaussian(double threshold)

  Description copied from class: `IFieldGeo`
  alias of gaussianDecay

  Specified by:
    `gaussian` in interface `IFieldI`
  Overrides:
    `gaussian` in class `IFieldGeo`

### gauss

    public ISurfaceFieldGeo gauss(double threshold)

  Description copied from class: `IFieldGeo`
  alias of gaussianDecay

  Specified by:
    `gauss` in interface `IFieldI`
  Overrides:
    `gauss` in class `IFieldGeo`

### threshold

    public ISurfaceFieldGeo threshold(double t)

  Description copied from class: `IFieldGeo`
  set decay threshold

  Specified by:
    `threshold` in interface `IFieldI`
  Overrides:
    `threshold` in class `IFieldGeo`

### intensity

    public ISurfaceFieldGeo intensity(double i)

  Description copied from class: `IFieldGeo`
  set output intensity

  Specified by:
    `intensity` in interface `IFieldI`
  Overrides:
    `intensity` in class `IFieldGeo`

### del

    public void del()

  Specified by:
    `del` in interface `IFieldI`

Package | Class | Tree | Deprecated | Index | Help
PREV CLASS NEXT CLASS | FRAMES NO FRAMES
SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD