igeo

## Interface IDoubleI

- All Superinterfaces:
    IArithmeticVal<IDoubleI,IDoubleI>, IDoubleOp, IParameter, IScalar, IVal
  All Known Implementing Classes:
    IDouble, IDoubleR

      public interface IDoubleI
      extends IDoubleOp, IArithmeticVal<IDoubleI,IDoubleI>

  Interface of double (1 dimensional vector) to be used as IParameterObject.
  Author:
    Satoru Sugihara

- - ### Method Summary

    Methods
    Modifier and Type | Method and Description
    --- | ---
    `IDoubleI` | `abs()`
    `IDoubleI` | `acos()`
    `IDoubleI` | `add(double v)`
    `IDoubleI` | `add(IDoubleI v)`
    `IDoubleI` | `asin()`
    `IDoubleI` | `atan()`
    `IDoubleI` | `atan2(double x2)`
    `IDoubleI` | `atan2(IDoubleI x2)`
    `IDoubleI` | `cos()`
    `IDoubleI` | `cp()` alias of dup()
    `IDoubleI` | `cp(double v)` duplicate and add
    `IDoubleI` | `cp(IDoubleI v)` duplicate and add
    `IDoubleI` | `deg()`
    `IDoubleI` | `div(double v)`
    `IDoubleI` | `div(IDoubleI v)`
    `IDoubleI` | `dup()`
    `boolean` | `eq(double v)`
    `boolean` | `eq(double v, double resolution)`
    `boolean` | `eq(IDoubleI v)`
    `boolean` | `eq(IDoubleI v, double resolution)`
    `boolean` | `eq(ISwitchE e, IDoubleI v)`
    `boolean` | `eq(ISwitchE e, IDoubleI v, double resolution)`
    `IBoolI` | `eq(ISwitchR r, IDoubleI v)`
    `IBoolI` | `eq(ISwitchR r, IDoubleI v, IDoubleI resolution)`
    `IDoubleI` | `exp()`
    `IDouble` | `get()`
    `IDoubleI` | `getX()`
    `IDoubleI` | `inv()`
    `IDoubleI` | `log()`
    `IDoubleI` | `mul(double v)`
    `IDoubleI` | `mul(IDoubleI v)`
    `IDoubleI` | `neg()`
    `IDoubleI` | `pow(double n)`
    `IDoubleI` | `pow(IDoubleI n)`
    `IDoubleI` | `rad()`
    `IDoubleI` | `set(double v)`
    `IDoubleI` | `set(IDoubleI v)`
    `IDoubleI` | `set(IIntegerI v)`
    `IDoubleI` | `sin()`
    `IDoubleI` | `sq()`
    `IDoubleI` | `sqrt()`
    `IDoubleI` | `sub(double v)`
    `IDoubleI` | `sub(IDoubleI v)`
    `IDoubleI` | `tan()`
    `double` | `x()`
    `IDoubleI` | `zero()`

- - ### Method Detail

    - #### x

          double x()

      Specified by:
        `x` in interface `IDoubleOp`
      Returns:
        primitive value

    - #### get

          IDouble get()

      Specified by:
        `get` in interface `IDoubleOp`
      Specified by:
        `get` in interface `IParameter`
      Returns:
        fixed value but in wrapper class

    - #### getX

          IDoubleI getX()

      Returns:
        generic parameter of the value (either of entity class or reference class)

    - #### dup

          IDoubleI dup()

      Specified by:
        `dup` in interface `IArithmeticVal<IDoubleI,IDoubleI>`
      Returns:
        duplicated instance

    - #### cp

          IDoubleI cp()

      alias of dup()
      Specified by:
        `cp` in interface `IArithmeticVal<IDoubleI,IDoubleI>`

    - #### cp

          IDoubleI cp(double v)

      duplicate and add

    - #### cp

          IDoubleI cp(IDoubleI v)

      duplicate and add

    - #### set

          IDoubleI set(double v)

    - #### set

          IDoubleI set(IDoubleI v)

      Specified by:
        `set` in interface `IArithmeticVal<IDoubleI,IDoubleI>`

    - #### set

          IDoubleI set(IIntegerI v)

    - #### zero

          IDoubleI zero()

      Specified by:
        `zero` in interface `IArithmeticVal<IDoubleI,IDoubleI>`

    - #### add

          IDoubleI add(IDoubleI v)

      Specified by:
        `add` in interface `IArithmeticVal<IDoubleI,IDoubleI>`

    - #### add

          IDoubleI add(double v)

    - #### sub

          IDoubleI sub(IDoubleI v)

      Specified by:
        `sub` in interface `IArithmeticVal<IDoubleI,IDoubleI>`

    - #### sub

          IDoubleI sub(double v)

    - #### mul

          IDoubleI mul(IDoubleI v)

      Specified by:
        `mul` in interface `IArithmeticVal<IDoubleI,IDoubleI>`

    - #### mul

          IDoubleI mul(double v)

    - #### div

          IDoubleI div(IDoubleI v)

      Specified by:
        `div` in interface `IArithmeticVal<IDoubleI,IDoubleI>`

    - #### div

          IDoubleI div(double v)

    - #### neg

          IDoubleI neg()

    - #### inv

          IDoubleI inv()

    - #### abs

          IDoubleI abs()

    - #### pow

          IDoubleI pow(double n)

    - #### pow

          IDoubleI pow(IDoubleI n)

    - #### sq

          IDoubleI sq()

    - #### sqrt

          IDoubleI sqrt()

    - #### exp

          IDoubleI exp()

    - #### log

          IDoubleI log()

    - #### sin

          IDoubleI sin()

    - #### cos

          IDoubleI cos()

    - #### tan

          IDoubleI tan()

    - #### asin

          IDoubleI asin()

    - #### acos

          IDoubleI acos()

    - #### atan

          IDoubleI atan()

    - #### atan2

          IDoubleI atan2(double x2)

    - #### atan2

          IDoubleI atan2(IDoubleI x2)

    - #### deg

          IDoubleI deg()

    - #### rad

          IDoubleI rad()

    - #### eq

          boolean eq(double v)

    - #### eq

          boolean eq(IDoubleI v)

    - #### eq

          boolean eq(ISwitchE e,
                   IDoubleI v)

    - #### eq

          IBoolI eq(ISwitchR r,
                  IDoubleI v)

    - #### eq

          boolean eq(double v,
                   double resolution)

    - #### eq

          boolean eq(IDoubleI v,
                   double resolution)

    - #### eq

          boolean eq(ISwitchE e,
                   IDoubleI v,
                   double resolution)

    - #### eq

          IBoolI eq(ISwitchR r,
                  IDoubleI v,
                  IDoubleI resolution)