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

## igeo
Class ISurfaceR

    java.lang.Object
      igeo.IObject
          igeo.ISurfaceR

All Implemented Interfaces:
  IParameter, ISurfaceI, ISurfaceOp, ITransformable, IVal

    public class ISurfaceR

extends IObject
implements ISurfaceI

Reference class of NURBS surface to contain any instance of ISurfaceI.

Author:
  Satoru Sugihara

Nested Class Summary
`static class` | `ISurfaceR.IsFlat`
`static class` | `ISurfaceR.IsUClosed`
`static class` | `ISurfaceR.IsVClosed`
`static class` | `ISurfaceR.Normal`
`static class` | `ISurfaceR.Pt`
`static class` | `ISurfaceR.UTan`
`static class` | `ISurfaceR.UV`
`static class` | `ISurfaceR.UV2`
`static class` | `ISurfaceR.VTan`

Field Summary
`ISurfaceI` | `surface`

Fields inherited from class igeo.IObject
`attribute, dynamics, graphics, parameter, server, userData`

Constructor Summary
`ISurfaceR()`
`ISurfaceR(IServerI s)`
`ISurfaceR(IServerI s, ISurfaceI srf)`
`ISurfaceR(IServerI s, ISurfaceR srf)`
`ISurfaceR(ISurfaceI srf)`
`ISurfaceR(ISurfaceR srf)`

Method Summary
`ISurfaceR` | `add(double x, double y, double z)` transformation methods; API of ITransformable interface
`ISurfaceR` | `add(double f, IVecI v)` scale add alias
`ISurfaceR` | `add(IDoubleI x, IDoubleI y, IDoubleI z)`
`ISurfaceR` | `add(IDoubleI f, IVecI v)` scale add alias
`ISurfaceR` | `add(IVecI v)`
`ISurfaceR` | `add(IVecI v, double f)` scale add
`ISurfaceR` | `add(IVecI v, IDoubleI f)` scale add
`ISurfaceR` | `addInnerTrimLoop(ICurveI trim)` input trim curves is deleted as default if it inherits IObject like ICurve or ICurveR
`ISurfaceR` | `addInnerTrimLoop(ICurveI[] trim)` input trim curves is deleted as default if it inherits IObject like ICurve or ICurveR
`ISurfaceR` | `addInnerTrimLoop(ICurveI[] trim, boolean deleteInput)`
`ISurfaceR` | `addInnerTrimLoop(ICurveI trim, boolean deleteInput)`
`ISurfaceR` | `addInnerTrimLoop(ITrimCurveI trim)`
`ISurfaceR` | `addInnerTrimLoop(ITrimCurveI[] trim)`
`ISurfaceR` | `addOuterTrimLoop(ICurveI trim)`
`ISurfaceR` | `addOuterTrimLoop(ICurveI[] trim)`
`ISurfaceR` | `addOuterTrimLoop(ICurveI[] trim, boolean deleteInput)`
`ISurfaceR` | `addOuterTrimLoop(ICurveI trim, boolean deleteInput)`
`ISurfaceR` | `addOuterTrimLoop(ITrimCurveI trim)`
`ISurfaceR` | `addOuterTrimLoop(ITrimCurveI[] trim)`
`IVecI` | `center()` returns center of geometry object
`ISurfaceR` | `clearInnerTrim()`
`ISurfaceR` | `clearOuterTrim()`
`ISurfaceR` | `clearTrim()`
`IVecR` | `closePt(IVec2I pt)` find approximately closest point on a surface on 2D
`IVecR` | `closePt(IVecI pt)` find approximately closest point on a surface
`ISurfaceR` | `clr(java.awt.Color c)`
`ISurfaceR` | `clr(java.awt.Color c, double alpha)`
`ISurfaceR` | `clr(java.awt.Color c, float alpha)`
`ISurfaceR` | `clr(java.awt.Color c, int alpha)`
`ISurfaceR` | `clr(double dgray)`
`ISurfaceR` | `clr(double dgray, double dalpha)`
`ISurfaceR` | `clr(double dr, double dg, double db)`
`ISurfaceR` | `clr(double dr, double dg, double db, double da)`
`ISurfaceR` | `clr(float fgray)`
`ISurfaceR` | `clr(float fgray, float falpha)`
`ISurfaceR` | `clr(float fr, float fg, float fb)`
`ISurfaceR` | `clr(float fr, float fg, float fb, float fa)`
`ISurfaceR` | `clr(IColor c)`
`ISurfaceR` | `clr(IColor c, double alpha)` to set color, with alpha value overwritten
`ISurfaceR` | `clr(IColor c, float alpha)` to set color, with alpha value overwritten
`ISurfaceR` | `clr(IColor c, int alpha)` to set color, with alpha value overwritten
`ISurfaceR` | `clr(int gray)`
`ISurfaceR` | `clr(int gray, int alpha)`
`ISurfaceR` | `clr(int r, int g, int b)`
`ISurfaceR` | `clr(int r, int g, int b, int a)`
`IVecR` | `corner(IIntegerI i, IIntegerI j)`
`IVecR` | `corner(int i, int j)`
`IVecI` | `cornerCP(IIntegerI i, IIntegerI j)`
`IVecI` | `cornerCP(int i, int j)`
`ISurfaceR` | `cp()` cp() is alias of dup()
`ISurfaceR` | `cp(double x, double y, double z)` cp() is alias of dup().add()
`ISurfaceR` | `cp(IDoubleI x, IDoubleI y, IDoubleI z)` cp() is alias of dup().add()
`IVecI` | `cp(IIntegerI i, IIntegerI j)`
`IVecI` | `cp(int i, int j)`
`ISurfaceR` | `cp(IVecI v)` cp() is alias of dup().add()
`IVecI[][]` | `cps()`
`IGraphicObject` | `createGraphic(IGraphicMode m)`
`double` | `dist(IVec2I pt)` distance to the closest point on a surface on 2D
`double` | `dist(IVecI pt)` distance to the closest point on a surface
`ISurfaceR` | `div(double v)`
`ISurfaceR` | `div(IDoubleI v)`
`ISurfaceR` | `dup()` duplicate object
`IVecR` | `ep(IIntegerI i, IIntegerI j)`
`IVecR` | `ep(int i, int j)`
`ISurfaceR` | `flip()` alias of neg
`ISurfaceR` | `flipN()` alias of flipN()
`ISurfaceR` | `flipU()` alias of revU()
`ISurfaceR` | `flipUV()` alias of revUV()
`ISurfaceR` | `flipV()` alias of revV()
`ISurfaceGeo` | `get()`
`boolean` | `hasDefaultTrim()` check if it has default rectangular outer trim
`boolean` | `hasDefaultTrim(ISwitchE e)`
`IBoolI` | `hasDefaultTrim(ISwitchR r)`
`boolean` | `hasInnerTrim()`
`boolean` | `hasInnerTrim(ISwitchE e)`
`IBoolI` | `hasInnerTrim(ISwitchR r)`
`boolean` | `hasOuterTrim()`
`boolean` | `hasOuterTrim(ISwitchE e)`
`IBoolI` | `hasOuterTrim(ISwitchR r)`
`boolean` | `hasTrim()`
`boolean` | `hasTrim(ISwitchE e)`
`IBoolI` | `hasTrim(ISwitchR r)`
`ISurfaceR` | `hide()`
`ISurfaceR` | `hsb(double h, double s, double b)`
`ISurfaceR` | `hsb(double h, double s, double b, double a)`
`ISurfaceR` | `hsb(float h, float s, float b)`
`ISurfaceR` | `hsb(float h, float s, float b, float a)`
`void` | `initSurface(IServerI s)`
`ITrimCurveI` | `innerTrim(IIntegerI i, IIntegerI j)`
`ITrimCurveI` | `innerTrim(int i, int j)`
`ITrimCurveI[]` | `innerTrimLoop(IIntegerI i)`
`ITrimCurveI[]` | `innerTrimLoop(int i)`
`int` | `innerTrimLoopNum()`
`int` | `innerTrimLoopNum(ISwitchE e)`
`IIntegerI` | `innerTrimLoopNum(ISwitchR r)`
`IIntegerI` | `innerTrimNum(IIntegerI i)`
`int` | `innerTrimNum(int i)`
`boolean` | `isFlat()`
`boolean` | `isFlat(ISwitchE e)`
`IBoolI` | `isFlat(ISwitchR r)`
`boolean` | `isRational()`
`boolean` | `isRational(ISwitchE e)`
`IBoolI` | `isRational(ISwitchR r)`
`boolean` | `isUClosed()`
`boolean` | `isUClosed(ISwitchE e)`
`IBoolI` | `isUClosed(ISwitchR r)`
`boolean` | `isValid()` checking parameters validity.
`boolean` | `isVClosed()`
`boolean` | `isVClosed(ISwitchE e)`
`IBoolI` | `isVClosed(ISwitchR r)`
`ISurfaceR` | `layer(ILayer l)` Set layer by ILayer object
`IVecR` | `mid()` mid in UV parameter (u=0.5, v=0.5) point on a surface
`ISurfaceR` | `mirror(IVecI planeDir)` mirror is alias of ref
`ISurfaceR` | `mirror(IVecI center, IVecI planeDir)`
`ISurfaceR` | `mul(double v)`
`ISurfaceR` | `mul(IDoubleI v)`
`ISurfaceR` | `mv(double x, double y, double z)` mv() is alias of add()
`ISurfaceR` | `mv(IDoubleI x, IDoubleI y, IDoubleI z)`
`ISurfaceR` | `mv(IVecI v)`
`ISurfaceR` | `name(java.lang.String nm)` methods of IObject
`ISurfaceR` | `neg()`
`IVecR` | `nml(double u, double v)` alias of normal
`IVecR` | `nml(IDoubleI u, IDoubleI v)`
`IVecR` | `nml(IVec2I v)`
`IVecR` | `normal(double u, double v)`
`IVecR` | `normal(IDoubleI u, IDoubleI v)`
`IVecR` | `normal(IVec2I v)`
`IVecR` | `nrml(double u, double v)`
`IVecR` | `nrml(IDoubleI u, IDoubleI v)`
`IVecR` | `nrml(IVec2I v)`
`ITrimCurveI` | `outerTrim(IIntegerI i, IIntegerI j)`
`ITrimCurveI` | `outerTrim(int i, int j)`
`ITrimCurveI[]` | `outerTrimLoop(IIntegerI i)`
`ITrimCurveI[]` | `outerTrimLoop(int i)`
`int` | `outerTrimLoopNum()`
`int` | `outerTrimLoopNum(ISwitchE e)`
`IIntegerI` | `outerTrimLoopNum(ISwitchR r)`
`IIntegerI` | `outerTrimNum(IIntegerI i)`
`int` | `outerTrimNum(int i)`
`IVecR` | `pt(double u, double v)`
`IVecR` | `pt(double u, double v, double n)`
`IVecR` | `pt(IDoubleI u, IDoubleI v)`
`IVecR` | `pt(IDoubleI u, IDoubleI v, IDoubleI n)`
`IVecR` | `pt(IVec2I v)`
`IVecR` | `pt(IVecI v)`
`ISurfaceR` | `ref(IVecI planeDir)` reflect(mirror) 3 dimensionally to the other side of the plane
`ISurfaceR` | `ref(IVecI center, IVecI planeDir)`
`ISurfaceR` | `revN()` reverse normal direction by reversing V direction (UV and normal is dependent
`ISurfaceR` | `revU()` reverse U parameter internally without creating a new instance
`ISurfaceR` | `revUV()` reverse U and V parameter internally without creating a new instance
`ISurfaceR` | `revV()` reverse V parameter internally without creating a new instance
`ISurfaceR` | `rot(double angle)`
`ISurfaceR` | `rot(IDoubleI angle)` rotation around z-axis and origin
`ISurfaceR` | `rot(IVecI axis, double angle)`
`ISurfaceR` | `rot(IVecI axis, IDoubleI angle)` rotation around axis vector
`ISurfaceR` | `rot(IVecI axis, IVecI destDir)` rotate to destination direction vector
`ISurfaceR` | `rot(IVecI center, IVecI axis, double angle)`
`ISurfaceR` | `rot(IVecI center, IVecI axis, IDoubleI angle)` rotation around axis vector and center
`ISurfaceR` | `rot(IVecI center, IVecI axis, IVecI destPt)` rotate to destination point location
`ISurfaceR` | `rot2(double angle)` rotation on xy-plane around origin; same with rot(double)
`ISurfaceR` | `rot2(IDoubleI angle)` rotation on xy-plane around origin; same with rot(IDoubleI)
`ISurfaceR` | `rot2(IVecI destDir)` rotation on xy-plane to destination direction vector
`ISurfaceR` | `rot2(IVecI center, double angle)`
`ISurfaceR` | `rot2(IVecI center, IDoubleI angle)` rotation on xy-plane around center
`ISurfaceR` | `rot2(IVecI center, IVecI destPt)` rotation on xy-plane to destination point location
`ISurfaceR` | `scale(double f)`
`ISurfaceR` | `scale(IDoubleI f)` alias of mul
`ISurfaceR` | `scale(IVecI center, double f)`
`ISurfaceR` | `scale(IVecI center, IDoubleI f)`
`ISurfaceR` | `scale1d(IVecI axis, double f)` scale only in 1 direction
`ISurfaceR` | `scale1d(IVecI axis, IDoubleI f)`
`ISurfaceR` | `scale1d(IVecI center, IVecI axis, double f)`
`ISurfaceR` | `scale1d(IVecI center, IVecI axis, IDoubleI f)`
`ISurfaceR` | `setColor(java.awt.Color c)`
`ISurfaceR` | `setColor(java.awt.Color c, int alpha)`
`ISurfaceR` | `setColor(double dgray)`
`ISurfaceR` | `setColor(double dgray, double dalpha)`
`ISurfaceR` | `setColor(double dr, double dg, double db)`
`ISurfaceR` | `setColor(double dr, double dg, double db, double da)`
`ISurfaceR` | `setColor(float fgray)`
`ISurfaceR` | `setColor(float fgray, float falpha)`
`ISurfaceR` | `setColor(float fr, float fg, float fb)`
`ISurfaceR` | `setColor(float fr, float fg, float fb, float fa)`
`ISurfaceR` | `setColor(int gray)`
`ISurfaceR` | `setColor(int gray, int alpha)`
`ISurfaceR` | `setColor(int r, int g, int b)`
`ISurfaceR` | `setColor(int r, int g, int b, int a)`
`ISurfaceR` | `setHSBColor(double h, double s, double b)`
`ISurfaceR` | `setHSBColor(double h, double s, double b, double a)`
`ISurfaceR` | `setHSBColor(float h, float s, float b)`
`ISurfaceR` | `setHSBColor(float h, float s, float b, float a)`
`ISurfaceR` | `shear(double sxy, double syx, double syz, double szy, double szx, double sxz)` shear operation
`ISurfaceR` | `shear(IDoubleI sxy, IDoubleI syx, IDoubleI syz, IDoubleI szy, IDoubleI szx, IDoubleI sxz)`
`ISurfaceR` | `shear(IVecI center, double sxy, double syx, double syz, double szy, double szx, double sxz)`
`ISurfaceR` | `shear(IVecI center, IDoubleI sxy, IDoubleI syx, IDoubleI syz, IDoubleI szy, IDoubleI szx, IDoubleI sxz)`
`ISurfaceR` | `shearXY(double sxy, double syx)`
`ISurfaceR` | `shearXY(IDoubleI sxy, IDoubleI syx)`
`ISurfaceR` | `shearXY(IVecI center, double sxy, double syx)`
`ISurfaceR` | `shearXY(IVecI center, IDoubleI sxy, IDoubleI syx)`
`ISurfaceR` | `shearYZ(double syz, double szy)`
`ISurfaceR` | `shearYZ(IDoubleI syz, IDoubleI szy)`
`ISurfaceR` | `shearYZ(IVecI center, double syz, double szy)`
`ISurfaceR` | `shearYZ(IVecI center, IDoubleI syz, IDoubleI szy)`
`ISurfaceR` | `shearZX(double szx, double sxz)`
`ISurfaceR` | `shearZX(IDoubleI szx, IDoubleI sxz)`
`ISurfaceR` | `shearZX(IVecI center, double szx, double sxz)`
`ISurfaceR` | `shearZX(IVecI center, IDoubleI szx, IDoubleI sxz)`
`ISurfaceR` | `show()`
`ISurfaceR` | `sub(double x, double y, double z)`
`ISurfaceR` | `sub(IDoubleI x, IDoubleI y, IDoubleI z)`
`ISurfaceR` | `sub(IVecI v)`
`ISurfaceR` | `swapUV()` swap U and V parameter
`ISurfaceR` | `transform(IMatrix3I mat)`
`ISurfaceR` | `transform(IMatrix4I mat)`
`ISurfaceR` | `transform(IVecI xvec, IVecI yvec, IVecI zvec)`
`ISurfaceR` | `transform(IVecI xvec, IVecI yvec, IVecI zvec, IVecI translate)`
`ISurfaceR` | `translate(double x, double y, double z)` translate() is alias of add()
`ISurfaceR` | `translate(IDoubleI x, IDoubleI y, IDoubleI z)`
`ISurfaceR` | `translate(IVecI v)`
`IDoubleI` | `u(IIntegerI epIdx, IDoubleI epFraction)`
`double` | `u(int epIdx, double epFraction)`
`int` | `ucpNum()`
`int` | `ucpNum(ISwitchE e)`
`IIntegerI` | `ucpNum(ISwitchR r)`
`int` | `udeg()`
`int` | `udeg(ISwitchE e)`
`IIntegerI` | `udeg(ISwitchR r)`
`double` | `uend()`
`double` | `uend(ISwitchE e)`
`IDoubleI` | `uend(ISwitchR r)`
`int` | `uepNum()`
`int` | `uepNum(ISwitchE e)`
`IIntegerI` | `uepNum(ISwitchR r)`
`IDoubleI` | `uknot(IIntegerI i)`
`double` | `uknot(int i)`
`int` | `uknotNum()`
`int` | `uknotNum(ISwitchE e)`
`IIntegerI` | `uknotNum(ISwitchR r)`
`double[]` | `uknots()`
`double[]` | `uknots(ISwitchE e)`
`IDoubleI[]` | `uknots(ISwitchR r)`
`int` | `unum()`
`int` | `unum(ISwitchE e)`
`IIntegerI` | `unum(ISwitchR r)`
`double` | `ustart()` original knots start value and end value
`double` | `ustart(ISwitchE e)`
`IDoubleI` | `ustart(ISwitchR r)`
`IVecR` | `utan(double u, double v)`
`IVecR` | `utan(IDoubleI u, IDoubleI v)`
`IVecR` | `utan(IVec2I v)`
`IVec2R` | `uv(IVec2I pt)` approximate invert projection from 2D location to interanl UV parameter (closest point on surface)
`IVec2R` | `uv(IVecI pt)` approximate invert projection from 3D location to interanl UV parameter (closest point on surface)
`IDoubleI` | `v(IIntegerI epIdx, IDoubleI epFraction)`
`double` | `v(int epIdx, double epFraction)`
`int` | `vcpNum()`
`int` | `vcpNum(ISwitchE e)`
`IIntegerI` | `vcpNum(ISwitchR r)`
`int` | `vdeg()`
`int` | `vdeg(ISwitchE e)`
`IIntegerI` | `vdeg(ISwitchR r)`
`double` | `vend()`
`double` | `vend(ISwitchE e)`
`IDoubleI` | `vend(ISwitchR r)`
`int` | `vepNum()`
`int` | `vepNum(ISwitchE e)`
`IIntegerI` | `vepNum(ISwitchR r)`
`IDoubleI` | `vknot(IIntegerI i)`
`double` | `vknot(int i)`
`int` | `vknotNum()`
`int` | `vknotNum(ISwitchE e)`
`IIntegerI` | `vknotNum(ISwitchR r)`
`double[]` | `vknots()`
`double[]` | `vknots(ISwitchE e)`
`IDoubleI[]` | `vknots(ISwitchR r)`
`int` | `vnum()`
`int` | `vnum(ISwitchE e)`
`IIntegerI` | `vnum(ISwitchR r)`
`double` | `vstart()`
`double` | `vstart(ISwitchE e)`
`IDoubleI` | `vstart(ISwitchR r)`
`IVecR` | `vtan(double u, double v)`
`IVecR` | `vtan(IDoubleI u, IDoubleI v)`
`IVecR` | `vtan(IVec2I v)`
`ISurfaceR` | `weight(double w)`
`ISurfaceR` | `weight(float w)`

Methods inherited from class igeo.IObject
`addDynamics, alpha, alphaInt, attr, attr, attr, awtColor, blue, blueInt, clearDynamics, clearGraphics, clr, defaultAttribute, del, deletDynamics, deleteDynamics, deleteDynamics, deleteGraphic, dynamicsNum, getAWTColor, getColor, getDynamics, getGraphic, getGraphic, getParameter, graphicsNum, gray, grayInt, green, greenInt, greyInt, initGraphic, initObject, isVisible, layer, layer, name, red, redInt, resetGraphic, server, setColor, setColor, setColor, setColor, setColor, setColor, setParameter, syncColor, syncGraphic, syncVisibility, syncWeight, updateGraphic, userData, userData, visible, weight`

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

Field Detail

### surface

    public ISurfaceI surface

Constructor Detail

### ISurfaceR

    public ISurfaceR()

### ISurfaceR

    public ISurfaceR(ISurfaceI srf)

### ISurfaceR

    public ISurfaceR(IServerI s)

### ISurfaceR

    public ISurfaceR(IServerI s,
                     ISurfaceI srf)

### ISurfaceR

    public ISurfaceR(ISurfaceR srf)

### ISurfaceR

    public ISurfaceR(IServerI s,
                     ISurfaceR srf)

Method Detail

### initSurface

    public void initSurface(IServerI s)

### createGraphic

    public IGraphicObject createGraphic(IGraphicMode m)

  Overrides:
    `createGraphic` in class `IObject`

### isValid

    public boolean isValid()

  Description copied from class: `IObject`
  checking parameters validity. to be overriden.

  Specified by:
    `isValid` in interface `ISurfaceI`
  Overrides:
    `isValid` in class `IObject`

### get

    public ISurfaceGeo get()

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

### dup

    public ISurfaceR dup()

  Description copied from class: `IObject`
  duplicate object

  Specified by:
    `dup` in interface `ISurfaceI`
  Specified by:
    `dup` in interface `ITransformable`
  Overrides:
    `dup` in class `IObject`
  Returns:
    duplicated instance

### pt

    public IVecR pt(IVec2I v)

  Specified by:
    `pt` in interface `ISurfaceI`

### pt

    public IVecR pt(IDoubleI u,
                    IDoubleI v)

  Specified by:
    `pt` in interface `ISurfaceI`

### pt

    public IVecR pt(double u,
                    double v)

  Specified by:
    `pt` in interface `ISurfaceI`

### pt

    public IVecR pt(double u,
                    double v,
                    double n)

  Specified by:
    `pt` in interface `ISurfaceI`
  Parameters:
    `u` - u coordinates in uv parameter space
    `v` - v coordinates in uv parameter space
    `n` - length in normal direction in 3D space

### pt

    public IVecR pt(IDoubleI u,
                    IDoubleI v,
                    IDoubleI n)

  Specified by:
    `pt` in interface `ISurfaceI`

### pt

    public IVecR pt(IVecI v)

  Specified by:
    `pt` in interface `ISurfaceI`

### utan

    public IVecR utan(IVec2I v)

  Specified by:
    `utan` in interface `ISurfaceI`

### utan

    public IVecR utan(IDoubleI u,
                      IDoubleI v)

  Specified by:
    `utan` in interface `ISurfaceI`

### utan

    public IVecR utan(double u,
                      double v)

  Specified by:
    `utan` in interface `ISurfaceI`

### vtan

    public IVecR vtan(IVec2I v)

  Specified by:
    `vtan` in interface `ISurfaceI`

### vtan

    public IVecR vtan(IDoubleI u,
                      IDoubleI v)

  Specified by:
    `vtan` in interface `ISurfaceI`

### vtan

    public IVecR vtan(double u,
                      double v)

  Specified by:
    `vtan` in interface `ISurfaceI`

### normal

    public IVecR normal(IVec2I v)

  Specified by:
    `normal` in interface `ISurfaceI`

### normal

    public IVecR normal(IDoubleI u,
                        IDoubleI v)

  Specified by:
    `normal` in interface `ISurfaceI`

### normal

    public IVecR normal(double u,
                        double v)

  Specified by:
    `normal` in interface `ISurfaceI`

### nrml

    public IVecR nrml(IVec2I v)

  Specified by:
    `nrml` in interface `ISurfaceI`

### nrml

    public IVecR nrml(IDoubleI u,
                      IDoubleI v)

  Specified by:
    `nrml` in interface `ISurfaceI`

### nrml

    public IVecR nrml(double u,
                      double v)

  Specified by:
    `nrml` in interface `ISurfaceI`

### nml

    public IVecR nml(IVec2I v)

  Specified by:
    `nml` in interface `ISurfaceI`

### nml

    public IVecR nml(IDoubleI u,
                     IDoubleI v)

  Specified by:
    `nml` in interface `ISurfaceI`

### nml

    public IVecR nml(double u,
                     double v)

  Description copied from interface: `ISurfaceI`
  alias of normal

  Specified by:
    `nml` in interface `ISurfaceI`

### cp

    public IVecI cp(int i,
                    int j)

  Specified by:
    `cp` in interface `ISurfaceI`

### cp

    public IVecI cp(IIntegerI i,
                    IIntegerI j)

  Specified by:
    `cp` in interface `ISurfaceI`

### cps

    public IVecI[][] cps()

  Specified by:
    `cps` in interface `ISurfaceI`

### ep

    public IVecR ep(int i,
                    int j)

  Specified by:
    `ep` in interface `ISurfaceI`

### ep

    public IVecR ep(IIntegerI i,
                    IIntegerI j)

  Specified by:
    `ep` in interface `ISurfaceI`

### corner

    public IVecR corner(int i,
                        int j)

  Specified by:
    `corner` in interface `ISurfaceI`

### corner

    public IVecR corner(IIntegerI i,
                        IIntegerI j)

  Specified by:
    `corner` in interface `ISurfaceI`

### cornerCP

    public IVecI cornerCP(int i,
                          int j)

  Specified by:
    `cornerCP` in interface `ISurfaceI`

### cornerCP

    public IVecI cornerCP(IIntegerI i,
                          IIntegerI j)

  Specified by:
    `cornerCP` in interface `ISurfaceI`

### mid

    public IVecR mid()

  mid in UV parameter (u=0.5, v=0.5) point on a surface

  Specified by:
    `mid` in interface `ISurfaceI`

### center

    public IVecI center()

  returns center of geometry object

  Specified by:
    `center` in interface `ISurfaceI`

### uv

    public IVec2R uv(IVecI pt)

  approximate invert projection from 3D location to interanl UV parameter (closest point on surface)

  Specified by:
    `uv` in interface `ISurfaceI`

### uv

    public IVec2R uv(IVec2I pt)

  approximate invert projection from 2D location to interanl UV parameter (closest point on surface)

  Specified by:
    `uv` in interface `ISurfaceI`

### closePt

    public IVecR closePt(IVecI pt)

  find approximately closest point on a surface

  Specified by:
    `closePt` in interface `ISurfaceI`

### closePt

    public IVecR closePt(IVec2I pt)

  find approximately closest point on a surface on 2D

  Specified by:
    `closePt` in interface `ISurfaceI`

### dist

    public double dist(IVecI pt)

  distance to the closest point on a surface

  Specified by:
    `dist` in interface `ISurfaceI`

### dist

    public double dist(IVec2I pt)

  distance to the closest point on a surface on 2D

  Specified by:
    `dist` in interface `ISurfaceI`

### uknot

    public double uknot(int i)

  Specified by:
    `uknot` in interface `ISurfaceI`

### uknot

    public IDoubleI uknot(IIntegerI i)

  Specified by:
    `uknot` in interface `ISurfaceI`

### vknot

    public double vknot(int i)

  Specified by:
    `vknot` in interface `ISurfaceI`

### vknot

    public IDoubleI vknot(IIntegerI i)

  Specified by:
    `vknot` in interface `ISurfaceI`

### uknots

    public double[] uknots()

  Specified by:
    `uknots` in interface `ISurfaceI`

### vknots

    public double[] vknots()

  Specified by:
    `vknots` in interface `ISurfaceI`

### uknots

    public double[] uknots(ISwitchE e)

  Specified by:
    `uknots` in interface `ISurfaceI`

### vknots

    public double[] vknots(ISwitchE e)

  Specified by:
    `vknots` in interface `ISurfaceI`

### uknots

    public IDoubleI[] uknots(ISwitchR r)

  Specified by:
    `uknots` in interface `ISurfaceI`

### vknots

    public IDoubleI[] vknots(ISwitchR r)

  Specified by:
    `vknots` in interface `ISurfaceI`

### uknotNum

    public int uknotNum()

  Specified by:
    `uknotNum` in interface `ISurfaceI`

### vknotNum

    public int vknotNum()

  Specified by:
    `vknotNum` in interface `ISurfaceI`

### uknotNum

    public int uknotNum(ISwitchE e)

  Specified by:
    `uknotNum` in interface `ISurfaceI`

### vknotNum

    public int vknotNum(ISwitchE e)

  Specified by:
    `vknotNum` in interface `ISurfaceI`

### uknotNum

    public IIntegerI uknotNum(ISwitchR r)

  Specified by:
    `uknotNum` in interface `ISurfaceI`

### vknotNum

    public IIntegerI vknotNum(ISwitchR r)

  Specified by:
    `vknotNum` in interface `ISurfaceI`

### isRational

    public boolean isRational()

  Specified by:
    `isRational` in interface `ISurfaceI`
  Returns:
    returns true if any of control point has non-default(1.0) weight otherwise false.

### isRational

    public boolean isRational(ISwitchE e)

  Specified by:
    `isRational` in interface `ISurfaceI`

### isRational

    public IBoolI isRational(ISwitchR r)

  Specified by:
    `isRational` in interface `ISurfaceI`

### udeg

    public int udeg()

  Specified by:
    `udeg` in interface `ISurfaceI`

### vdeg

    public int vdeg()

  Specified by:
    `vdeg` in interface `ISurfaceI`

### udeg

    public int udeg(ISwitchE e)

  Specified by:
    `udeg` in interface `ISurfaceI`

### vdeg

    public int vdeg(ISwitchE e)

  Specified by:
    `vdeg` in interface `ISurfaceI`

### udeg

    public IIntegerI udeg(ISwitchR r)

  Specified by:
    `udeg` in interface `ISurfaceI`

### vdeg

    public IIntegerI vdeg(ISwitchR r)

  Specified by:
    `vdeg` in interface `ISurfaceI`

### unum

    public int unum()

  Specified by:
    `unum` in interface `ISurfaceI`

### vnum

    public int vnum()

  Specified by:
    `vnum` in interface `ISurfaceI`

### unum

    public int unum(ISwitchE e)

  Specified by:
    `unum` in interface `ISurfaceI`

### vnum

    public int vnum(ISwitchE e)

  Specified by:
    `vnum` in interface `ISurfaceI`

### unum

    public IIntegerI unum(ISwitchR r)

  Specified by:
    `unum` in interface `ISurfaceI`

### vnum

    public IIntegerI vnum(ISwitchR r)

  Specified by:
    `vnum` in interface `ISurfaceI`

### ucpNum

    public int ucpNum()

  Specified by:
    `ucpNum` in interface `ISurfaceI`

### vcpNum

    public int vcpNum()

  Specified by:
    `vcpNum` in interface `ISurfaceI`

### ucpNum

    public int ucpNum(ISwitchE e)

  Specified by:
    `ucpNum` in interface `ISurfaceI`

### vcpNum

    public int vcpNum(ISwitchE e)

  Specified by:
    `vcpNum` in interface `ISurfaceI`

### ucpNum

    public IIntegerI ucpNum(ISwitchR r)

  Specified by:
    `ucpNum` in interface `ISurfaceI`

### vcpNum

    public IIntegerI vcpNum(ISwitchR r)

  Specified by:
    `vcpNum` in interface `ISurfaceI`

### uepNum

    public int uepNum()

  Specified by:
    `uepNum` in interface `ISurfaceI`

### vepNum

    public int vepNum()

  Specified by:
    `vepNum` in interface `ISurfaceI`

### uepNum

    public int uepNum(ISwitchE e)

  Specified by:
    `uepNum` in interface `ISurfaceI`

### vepNum

    public int vepNum(ISwitchE e)

  Specified by:
    `vepNum` in interface `ISurfaceI`

### uepNum

    public IIntegerI uepNum(ISwitchR r)

  Specified by:
    `uepNum` in interface `ISurfaceI`

### vepNum

    public IIntegerI vepNum(ISwitchR r)

  Specified by:
    `vepNum` in interface `ISurfaceI`

### u

    public double u(int epIdx,
                    double epFraction)

  Specified by:
    `u` in interface `ISurfaceI`

### u

    public IDoubleI u(IIntegerI epIdx,
                      IDoubleI epFraction)

  Specified by:
    `u` in interface `ISurfaceI`

### v

    public double v(int epIdx,
                    double epFraction)

  Specified by:
    `v` in interface `ISurfaceI`

### v

    public IDoubleI v(IIntegerI epIdx,
                      IDoubleI epFraction)

  Specified by:
    `v` in interface `ISurfaceI`

### ustart

    public double ustart()

  Description copied from interface: `ISurfaceI`
  original knots start value and end value

  Specified by:
    `ustart` in interface `ISurfaceI`

### uend

    public double uend()

  Specified by:
    `uend` in interface `ISurfaceI`

### vstart

    public double vstart()

  Specified by:
    `vstart` in interface `ISurfaceI`

### vend

    public double vend()

  Specified by:
    `vend` in interface `ISurfaceI`

### ustart

    public double ustart(ISwitchE e)

  Specified by:
    `ustart` in interface `ISurfaceI`

### uend

    public double uend(ISwitchE e)

  Specified by:
    `uend` in interface `ISurfaceI`

### vstart

    public double vstart(ISwitchE e)

  Specified by:
    `vstart` in interface `ISurfaceI`

### vend

    public double vend(ISwitchE e)

  Specified by:
    `vend` in interface `ISurfaceI`

### ustart

    public IDoubleI ustart(ISwitchR r)

  Specified by:
    `ustart` in interface `ISurfaceI`

### uend

    public IDoubleI uend(ISwitchR r)

  Specified by:
    `uend` in interface `ISurfaceI`

### vstart

    public IDoubleI vstart(ISwitchR r)

  Specified by:
    `vstart` in interface `ISurfaceI`

### vend

    public IDoubleI vend(ISwitchR r)

  Specified by:
    `vend` in interface `ISurfaceI`

### revU

    public ISurfaceR revU()

  reverse U parameter internally without creating a new instance

  Specified by:
    `revU` in interface `ISurfaceI`

### revV

    public ISurfaceR revV()

  reverse V parameter internally without creating a new instance

  Specified by:
    `revV` in interface `ISurfaceI`

### revUV

    public ISurfaceR revUV()

  reverse U and V parameter internally without creating a new instance

  Specified by:
    `revUV` in interface `ISurfaceI`

### revN

    public ISurfaceR revN()

  reverse normal direction by reversing V direction (UV and normal is dependent

  Specified by:
    `revN` in interface `ISurfaceI`

### flipU

    public ISurfaceR flipU()

  alias of revU()

  Specified by:
    `flipU` in interface `ISurfaceI`

### flipV

    public ISurfaceR flipV()

  alias of revV()

  Specified by:
    `flipV` in interface `ISurfaceI`

### flipUV

    public ISurfaceR flipUV()

  alias of revUV()

  Specified by:
    `flipUV` in interface `ISurfaceI`

### flipN

    public ISurfaceR flipN()

  alias of flipN()

  Specified by:
    `flipN` in interface `ISurfaceI`

### swapUV

    public ISurfaceR swapUV()

  swap U and V parameter

  Specified by:
    `swapUV` in interface `ISurfaceI`

### hasTrim

    public boolean hasTrim()

  Specified by:
    `hasTrim` in interface `ISurfaceI`

### hasTrim

    public boolean hasTrim(ISwitchE e)

  Specified by:
    `hasTrim` in interface `ISurfaceI`

### hasTrim

    public IBoolI hasTrim(ISwitchR r)

  Specified by:
    `hasTrim` in interface `ISurfaceI`

### hasInnerTrim

    public boolean hasInnerTrim()

  Specified by:
    `hasInnerTrim` in interface `ISurfaceI`

### hasInnerTrim

    public boolean hasInnerTrim(ISwitchE e)

  Specified by:
    `hasInnerTrim` in interface `ISurfaceI`

### hasInnerTrim

    public IBoolI hasInnerTrim(ISwitchR r)

  Specified by:
    `hasInnerTrim` in interface `ISurfaceI`

### hasOuterTrim

    public boolean hasOuterTrim()

  Specified by:
    `hasOuterTrim` in interface `ISurfaceI`

### hasOuterTrim

    public boolean hasOuterTrim(ISwitchE e)

  Specified by:
    `hasOuterTrim` in interface `ISurfaceI`

### hasOuterTrim

    public IBoolI hasOuterTrim(ISwitchR r)

  Specified by:
    `hasOuterTrim` in interface `ISurfaceI`

### innerTrimLoopNum

    public int innerTrimLoopNum()

  Specified by:
    `innerTrimLoopNum` in interface `ISurfaceI`

### innerTrimLoopNum

    public int innerTrimLoopNum(ISwitchE e)

  Specified by:
    `innerTrimLoopNum` in interface `ISurfaceI`

### innerTrimLoopNum

    public IIntegerI innerTrimLoopNum(ISwitchR r)

  Specified by:
    `innerTrimLoopNum` in interface `ISurfaceI`

### innerTrimNum

    public int innerTrimNum(int i)

  Specified by:
    `innerTrimNum` in interface `ISurfaceI`

### innerTrimNum

    public IIntegerI innerTrimNum(IIntegerI i)

  Specified by:
    `innerTrimNum` in interface `ISurfaceI`

### innerTrimLoop

    public ITrimCurveI[] innerTrimLoop(int i)

  Specified by:
    `innerTrimLoop` in interface `ISurfaceI`

### innerTrimLoop

    public ITrimCurveI[] innerTrimLoop(IIntegerI i)

  Specified by:
    `innerTrimLoop` in interface `ISurfaceI`

### innerTrim

    public ITrimCurveI innerTrim(int i,
                                 int j)

  Specified by:
    `innerTrim` in interface `ISurfaceI`

### innerTrim

    public ITrimCurveI innerTrim(IIntegerI i,
                                 IIntegerI j)

  Specified by:
    `innerTrim` in interface `ISurfaceI`

### outerTrimLoopNum

    public int outerTrimLoopNum()

  Specified by:
    `outerTrimLoopNum` in interface `ISurfaceI`

### outerTrimLoopNum

    public int outerTrimLoopNum(ISwitchE e)

  Specified by:
    `outerTrimLoopNum` in interface `ISurfaceI`

### outerTrimLoopNum

    public IIntegerI outerTrimLoopNum(ISwitchR r)

  Specified by:
    `outerTrimLoopNum` in interface `ISurfaceI`

### outerTrimNum

    public int outerTrimNum(int i)

  Specified by:
    `outerTrimNum` in interface `ISurfaceI`

### outerTrimNum

    public IIntegerI outerTrimNum(IIntegerI i)

  Specified by:
    `outerTrimNum` in interface `ISurfaceI`

### outerTrimLoop

    public ITrimCurveI[] outerTrimLoop(int i)

  Specified by:
    `outerTrimLoop` in interface `ISurfaceI`

### outerTrimLoop

    public ITrimCurveI[] outerTrimLoop(IIntegerI i)

  Specified by:
    `outerTrimLoop` in interface `ISurfaceI`

### outerTrim

    public ITrimCurveI outerTrim(int i,
                                 int j)

  Specified by:
    `outerTrim` in interface `ISurfaceI`

### outerTrim

    public ITrimCurveI outerTrim(IIntegerI i,
                                 IIntegerI j)

  Specified by:
    `outerTrim` in interface `ISurfaceI`

### hasDefaultTrim

    public boolean hasDefaultTrim()

  Description copied from interface: `ISurfaceI`
  check if it has default rectangular outer trim

  Specified by:
    `hasDefaultTrim` in interface `ISurfaceI`

### hasDefaultTrim

    public boolean hasDefaultTrim(ISwitchE e)

  Specified by:
    `hasDefaultTrim` in interface `ISurfaceI`

### hasDefaultTrim

    public IBoolI hasDefaultTrim(ISwitchR r)

  Specified by:
    `hasDefaultTrim` in interface `ISurfaceI`

### addInnerTrimLoop

    public ISurfaceR addInnerTrimLoop(ITrimCurveI trim)

  Specified by:
    `addInnerTrimLoop` in interface `ISurfaceI`
  Parameters:
    `trim` - trim curve needs to be closed

### addOuterTrimLoop

    public ISurfaceR addOuterTrimLoop(ITrimCurveI trim)

  Specified by:
    `addOuterTrimLoop` in interface `ISurfaceI`

### addInnerTrimLoop

    public ISurfaceR addInnerTrimLoop(ITrimCurveI[] trim)

  Specified by:
    `addInnerTrimLoop` in interface `ISurfaceI`
  Parameters:
    `trim` - array of trim curves need to form closed loop

### addOuterTrimLoop

    public ISurfaceR addOuterTrimLoop(ITrimCurveI[] trim)

  Specified by:
    `addOuterTrimLoop` in interface `ISurfaceI`

### addInnerTrimLoop

    public ISurfaceR addInnerTrimLoop(ICurveI trim)

  Description copied from interface: `ISurfaceI`
  input trim curves is deleted as default if it inherits IObject like ICurve or ICurveR

  Specified by:
    `addInnerTrimLoop` in interface `ISurfaceI`

### addOuterTrimLoop

    public ISurfaceR addOuterTrimLoop(ICurveI trim)

  Specified by:
    `addOuterTrimLoop` in interface `ISurfaceI`

### addInnerTrimLoop

    public ISurfaceR addInnerTrimLoop(ICurveI trim,
                                      boolean deleteInput)

  Specified by:
    `addInnerTrimLoop` in interface `ISurfaceI`

### addOuterTrimLoop

    public ISurfaceR addOuterTrimLoop(ICurveI trim,
                                      boolean deleteInput)

  Specified by:
    `addOuterTrimLoop` in interface `ISurfaceI`

### addInnerTrimLoop

    public ISurfaceR addInnerTrimLoop(ICurveI[] trim)

  Description copied from interface: `ISurfaceI`
  input trim curves is deleted as default if it inherits IObject like ICurve or ICurveR

  Specified by:
    `addInnerTrimLoop` in interface `ISurfaceI`

### addOuterTrimLoop

    public ISurfaceR addOuterTrimLoop(ICurveI[] trim)

  Specified by:
    `addOuterTrimLoop` in interface `ISurfaceI`

### addInnerTrimLoop

    public ISurfaceR addInnerTrimLoop(ICurveI[] trim,
                                      boolean deleteInput)

  Specified by:
    `addInnerTrimLoop` in interface `ISurfaceI`

### addOuterTrimLoop

    public ISurfaceR addOuterTrimLoop(ICurveI[] trim,
                                      boolean deleteInput)

  Specified by:
    `addOuterTrimLoop` in interface `ISurfaceI`

### clearInnerTrim

    public ISurfaceR clearInnerTrim()

  Specified by:
    `clearInnerTrim` in interface `ISurfaceI`

### clearOuterTrim

    public ISurfaceR clearOuterTrim()

  Specified by:
    `clearOuterTrim` in interface `ISurfaceI`

### clearTrim

    public ISurfaceR clearTrim()

  Specified by:
    `clearTrim` in interface `ISurfaceI`

### isFlat

    public boolean isFlat()

  Specified by:
    `isFlat` in interface `ISurfaceI`

### isFlat

    public boolean isFlat(ISwitchE e)

  Specified by:
    `isFlat` in interface `ISurfaceI`

### isFlat

    public IBoolI isFlat(ISwitchR r)

  Specified by:
    `isFlat` in interface `ISurfaceI`

### isUClosed

    public boolean isUClosed()

  Specified by:
    `isUClosed` in interface `ISurfaceI`

### isUClosed

    public boolean isUClosed(ISwitchE e)

  Specified by:
    `isUClosed` in interface `ISurfaceI`

### isUClosed

    public IBoolI isUClosed(ISwitchR r)

  Specified by:
    `isUClosed` in interface `ISurfaceI`

### isVClosed

    public boolean isVClosed()

  Specified by:
    `isVClosed` in interface `ISurfaceI`

### isVClosed

    public boolean isVClosed(ISwitchE e)

  Specified by:
    `isVClosed` in interface `ISurfaceI`

### isVClosed

    public IBoolI isVClosed(ISwitchR r)

  Specified by:
    `isVClosed` in interface `ISurfaceI`

### add

    public ISurfaceR add(double x,
                         double y,
                         double z)

  transformation methods; API of ITransformable interface

  Specified by:
    `add` in interface `ISurfaceI`
  Specified by:
    `add` in interface `ITransformable`

### add

    public ISurfaceR add(IDoubleI x,
                         IDoubleI y,
                         IDoubleI z)

  Specified by:
    `add` in interface `ISurfaceI`
  Specified by:
    `add` in interface `ITransformable`

### add

    public ISurfaceR add(IVecI v)

  Specified by:
    `add` in interface `ISurfaceI`
  Specified by:
    `add` in interface `ITransformable`

### sub

    public ISurfaceR sub(double x,
                         double y,
                         double z)

  Specified by:
    `sub` in interface `ISurfaceI`
  Specified by:
    `sub` in interface `ITransformable`

### sub

    public ISurfaceR sub(IDoubleI x,
                         IDoubleI y,
                         IDoubleI z)

  Specified by:
    `sub` in interface `ISurfaceI`
  Specified by:
    `sub` in interface `ITransformable`

### sub

    public ISurfaceR sub(IVecI v)

  Specified by:
    `sub` in interface `ISurfaceI`
  Specified by:
    `sub` in interface `ITransformable`

### mul

    public ISurfaceR mul(IDoubleI v)

  Specified by:
    `mul` in interface `ISurfaceI`
  Specified by:
    `mul` in interface `ITransformable`

### mul

    public ISurfaceR mul(double v)

  Specified by:
    `mul` in interface `ISurfaceI`
  Specified by:
    `mul` in interface `ITransformable`

### div

    public ISurfaceR div(IDoubleI v)

  Specified by:
    `div` in interface `ISurfaceI`
  Specified by:
    `div` in interface `ITransformable`

### div

    public ISurfaceR div(double v)

  Specified by:
    `div` in interface `ISurfaceI`
  Specified by:
    `div` in interface `ITransformable`

### neg

    public ISurfaceR neg()

  Specified by:
    `neg` in interface `ISurfaceI`
  Specified by:
    `neg` in interface `ITransformable`

### flip

    public ISurfaceR flip()

  alias of neg

  Specified by:
    `flip` in interface `ISurfaceI`
  Specified by:
    `flip` in interface `ITransformable`

### add

    public ISurfaceR add(IVecI v,
                         double f)

  scale add

  Specified by:
    `add` in interface `ISurfaceI`
  Specified by:
    `add` in interface `ITransformable`

### add

    public ISurfaceR add(IVecI v,
                         IDoubleI f)

  Description copied from interface: `ITransformable`
  scale add

  Specified by:
    `add` in interface `ISurfaceI`
  Specified by:
    `add` in interface `ITransformable`

### add

    public ISurfaceR add(double f,
                         IVecI v)

  scale add alias

  Specified by:
    `add` in interface `ITransformable`

### add

    public ISurfaceR add(IDoubleI f,
                         IVecI v)

  Description copied from interface: `ITransformable`
  scale add alias

  Specified by:
    `add` in interface `ITransformable`

### rot

    public ISurfaceR rot(IDoubleI angle)

  Description copied from interface: `ITransformable`
  rotation around z-axis and origin

  Specified by:
    `rot` in interface `ITransformable`

### rot

    public ISurfaceR rot(double angle)

  Specified by:
    `rot` in interface `ITransformable`

### rot

    public ISurfaceR rot(IVecI axis,
                         IDoubleI angle)

  Description copied from interface: `ITransformable`
  rotation around axis vector

  Specified by:
    `rot` in interface `ISurfaceI`
  Specified by:
    `rot` in interface `ITransformable`

### rot

    public ISurfaceR rot(IVecI axis,
                         double angle)

  Specified by:
    `rot` in interface `ISurfaceI`
  Specified by:
    `rot` in interface `ITransformable`

### rot

    public ISurfaceR rot(IVecI center,
                         IVecI axis,
                         IDoubleI angle)

  Description copied from interface: `ITransformable`
  rotation around axis vector and center

  Specified by:
    `rot` in interface `ISurfaceI`
  Specified by:
    `rot` in interface `ITransformable`

### rot

    public ISurfaceR rot(IVecI center,
                         IVecI axis,
                         double angle)

  Specified by:
    `rot` in interface `ISurfaceI`
  Specified by:
    `rot` in interface `ITransformable`

### rot

    public ISurfaceR rot(IVecI axis,
                         IVecI destDir)

  rotate to destination direction vector

  Specified by:
    `rot` in interface `ISurfaceI`
  Specified by:
    `rot` in interface `ITransformable`

### rot

    public ISurfaceR rot(IVecI center,
                         IVecI axis,
                         IVecI destPt)

  rotate to destination point location

  Specified by:
    `rot` in interface `ISurfaceI`
  Specified by:
    `rot` in interface `ITransformable`

### rot2

    public ISurfaceR rot2(IDoubleI angle)

  Description copied from interface: `ITransformable`
  rotation on xy-plane around origin; same with rot(IDoubleI)

  Specified by:
    `rot2` in interface `ITransformable`

### rot2

    public ISurfaceR rot2(double angle)

  Description copied from interface: `ITransformable`
  rotation on xy-plane around origin; same with rot(double)

  Specified by:
    `rot2` in interface `ITransformable`

### rot2

    public ISurfaceR rot2(IVecI center,
                          IDoubleI angle)

  Description copied from interface: `ITransformable`
  rotation on xy-plane around center

  Specified by:
    `rot2` in interface `ITransformable`

### rot2

    public ISurfaceR rot2(IVecI center,
                          double angle)

  Specified by:
    `rot2` in interface `ITransformable`

### rot2

    public ISurfaceR rot2(IVecI destDir)

  rotation on xy-plane to destination direction vector

  Specified by:
    `rot2` in interface `ITransformable`

### rot2

    public ISurfaceR rot2(IVecI center,
                          IVecI destPt)

  rotation on xy-plane to destination point location

  Specified by:
    `rot2` in interface `ITransformable`

### scale

    public ISurfaceR scale(IDoubleI f)

  alias of mul

  Specified by:
    `scale` in interface `ISurfaceI`
  Specified by:
    `scale` in interface `ITransformable`

### scale

    public ISurfaceR scale(double f)

  Specified by:
    `scale` in interface `ISurfaceI`
  Specified by:
    `scale` in interface `ITransformable`

### scale

    public ISurfaceR scale(IVecI center,
                           IDoubleI f)

  Specified by:
    `scale` in interface `ISurfaceI`
  Specified by:
    `scale` in interface `ITransformable`

### scale

    public ISurfaceR scale(IVecI center,
                           double f)

  Specified by:
    `scale` in interface `ISurfaceI`
  Specified by:
    `scale` in interface `ITransformable`

### scale1d

    public ISurfaceR scale1d(IVecI axis,
                             double f)

  scale only in 1 direction

  Specified by:
    `scale1d` in interface `ISurfaceI`
  Specified by:
    `scale1d` in interface `ITransformable`

### scale1d

    public ISurfaceR scale1d(IVecI axis,
                             IDoubleI f)

  Specified by:
    `scale1d` in interface `ISurfaceI`
  Specified by:
    `scale1d` in interface `ITransformable`

### scale1d

    public ISurfaceR scale1d(IVecI center,
                             IVecI axis,
                             double f)

  Specified by:
    `scale1d` in interface `ISurfaceI`
  Specified by:
    `scale1d` in interface `ITransformable`

### scale1d

    public ISurfaceR scale1d(IVecI center,
                             IVecI axis,
                             IDoubleI f)

  Specified by:
    `scale1d` in interface `ISurfaceI`
  Specified by:
    `scale1d` in interface `ITransformable`

### ref

    public ISurfaceR ref(IVecI planeDir)

  reflect(mirror) 3 dimensionally to the other side of the plane

  Specified by:
    `ref` in interface `ISurfaceI`
  Specified by:
    `ref` in interface `ITransformable`

### ref

    public ISurfaceR ref(IVecI center,
                         IVecI planeDir)

  Specified by:
    `ref` in interface `ISurfaceI`
  Specified by:
    `ref` in interface `ITransformable`

### mirror

    public ISurfaceR mirror(IVecI planeDir)

  mirror is alias of ref

  Specified by:
    `mirror` in interface `ISurfaceI`
  Specified by:
    `mirror` in interface `ITransformable`

### mirror

    public ISurfaceR mirror(IVecI center,
                            IVecI planeDir)

  Specified by:
    `mirror` in interface `ISurfaceI`
  Specified by:
    `mirror` in interface `ITransformable`

### shear

    public ISurfaceR shear(double sxy,
                           double syx,
                           double syz,
                           double szy,
                           double szx,
                           double sxz)

  shear operation

  Specified by:
    `shear` in interface `ISurfaceI`
  Specified by:
    `shear` in interface `ITransformable`

### shear

    public ISurfaceR shear(IDoubleI sxy,
                           IDoubleI syx,
                           IDoubleI syz,
                           IDoubleI szy,
                           IDoubleI szx,
                           IDoubleI sxz)

  Specified by:
    `shear` in interface `ISurfaceI`
  Specified by:
    `shear` in interface `ITransformable`

### shear

    public ISurfaceR shear(IVecI center,
                           double sxy,
                           double syx,
                           double syz,
                           double szy,
                           double szx,
                           double sxz)

  Specified by:
    `shear` in interface `ISurfaceI`
  Specified by:
    `shear` in interface `ITransformable`

### shear

    public ISurfaceR shear(IVecI center,
                           IDoubleI sxy,
                           IDoubleI syx,
                           IDoubleI syz,
                           IDoubleI szy,
                           IDoubleI szx,
                           IDoubleI sxz)

  Specified by:
    `shear` in interface `ISurfaceI`
  Specified by:
    `shear` in interface `ITransformable`

### shearXY

    public ISurfaceR shearXY(double sxy,
                             double syx)

  Specified by:
    `shearXY` in interface `ISurfaceI`
  Specified by:
    `shearXY` in interface `ITransformable`

### shearXY

    public ISurfaceR shearXY(IDoubleI sxy,
                             IDoubleI syx)

  Specified by:
    `shearXY` in interface `ISurfaceI`
  Specified by:
    `shearXY` in interface `ITransformable`

### shearXY

    public ISurfaceR shearXY(IVecI center,
                             double sxy,
                             double syx)

  Specified by:
    `shearXY` in interface `ISurfaceI`
  Specified by:
    `shearXY` in interface `ITransformable`

### shearXY

    public ISurfaceR shearXY(IVecI center,
                             IDoubleI sxy,
                             IDoubleI syx)

  Specified by:
    `shearXY` in interface `ISurfaceI`
  Specified by:
    `shearXY` in interface `ITransformable`

### shearYZ

    public ISurfaceR shearYZ(double syz,
                             double szy)

  Specified by:
    `shearYZ` in interface `ISurfaceI`
  Specified by:
    `shearYZ` in interface `ITransformable`

### shearYZ

    public ISurfaceR shearYZ(IDoubleI syz,
                             IDoubleI szy)

  Specified by:
    `shearYZ` in interface `ISurfaceI`
  Specified by:
    `shearYZ` in interface `ITransformable`

### shearYZ

    public ISurfaceR shearYZ(IVecI center,
                             double syz,
                             double szy)

  Specified by:
    `shearYZ` in interface `ISurfaceI`
  Specified by:
    `shearYZ` in interface `ITransformable`

### shearYZ

    public ISurfaceR shearYZ(IVecI center,
                             IDoubleI syz,
                             IDoubleI szy)

  Specified by:
    `shearYZ` in interface `ISurfaceI`
  Specified by:
    `shearYZ` in interface `ITransformable`

### shearZX

    public ISurfaceR shearZX(double szx,
                             double sxz)

  Specified by:
    `shearZX` in interface `ISurfaceI`
  Specified by:
    `shearZX` in interface `ITransformable`

### shearZX

    public ISurfaceR shearZX(IDoubleI szx,
                             IDoubleI sxz)

  Specified by:
    `shearZX` in interface `ISurfaceI`
  Specified by:
    `shearZX` in interface `ITransformable`

### shearZX

    public ISurfaceR shearZX(IVecI center,
                             double szx,
                             double sxz)

  Specified by:
    `shearZX` in interface `ISurfaceI`
  Specified by:
    `shearZX` in interface `ITransformable`

### shearZX

    public ISurfaceR shearZX(IVecI center,
                             IDoubleI szx,
                             IDoubleI sxz)

  Specified by:
    `shearZX` in interface `ISurfaceI`
  Specified by:
    `shearZX` in interface `ITransformable`

### mv

    public ISurfaceR mv(double x,
                        double y,
                        double z)

  mv() is alias of add()

  Specified by:
    `mv` in interface `ISurfaceI`
  Specified by:
    `mv` in interface `ITransformable`

### mv

    public ISurfaceR mv(IDoubleI x,
                        IDoubleI y,
                        IDoubleI z)

  Specified by:
    `mv` in interface `ISurfaceI`
  Specified by:
    `mv` in interface `ITransformable`

### mv

    public ISurfaceR mv(IVecI v)

  Specified by:
    `mv` in interface `ISurfaceI`
  Specified by:
    `mv` in interface `ITransformable`

### cp

    public ISurfaceR cp()

  cp() is alias of dup()

  Specified by:
    `cp` in interface `ISurfaceI`
  Specified by:
    `cp` in interface `ITransformable`
  Overrides:
    `cp` in class `IObject`

### cp

    public ISurfaceR cp(double x,
                        double y,
                        double z)

  cp() is alias of dup().add()

  Specified by:
    `cp` in interface `ISurfaceI`
  Specified by:
    `cp` in interface `ITransformable`

### cp

    public ISurfaceR cp(IDoubleI x,
                        IDoubleI y,
                        IDoubleI z)

  cp() is alias of dup().add()

  Specified by:
    `cp` in interface `ISurfaceI`
  Specified by:
    `cp` in interface `ITransformable`

### cp

    public ISurfaceR cp(IVecI v)

  cp() is alias of dup().add()

  Specified by:
    `cp` in interface `ISurfaceI`
  Specified by:
    `cp` in interface `ITransformable`

### translate

    public ISurfaceR translate(double x,
                               double y,
                               double z)

  translate() is alias of add()

  Specified by:
    `translate` in interface `ISurfaceI`
  Specified by:
    `translate` in interface `ITransformable`

### translate

    public ISurfaceR translate(IDoubleI x,
                               IDoubleI y,
                               IDoubleI z)

  Specified by:
    `translate` in interface `ISurfaceI`
  Specified by:
    `translate` in interface `ITransformable`

### translate

    public ISurfaceR translate(IVecI v)

  Specified by:
    `translate` in interface `ISurfaceI`
  Specified by:
    `translate` in interface `ITransformable`

### transform

    public ISurfaceR transform(IMatrix3I mat)

  Specified by:
    `transform` in interface `ISurfaceI`
  Specified by:
    `transform` in interface `ITransformable`

### transform

    public ISurfaceR transform(IMatrix4I mat)

  Specified by:
    `transform` in interface `ISurfaceI`
  Specified by:
    `transform` in interface `ITransformable`

### transform

    public ISurfaceR transform(IVecI xvec,
                               IVecI yvec,
                               IVecI zvec)

  Specified by:
    `transform` in interface `ISurfaceI`
  Specified by:
    `transform` in interface `ITransformable`

### transform

    public ISurfaceR transform(IVecI xvec,
                               IVecI yvec,
                               IVecI zvec,
                               IVecI translate)

  Specified by:
    `transform` in interface `ISurfaceI`
  Specified by:
    `transform` in interface `ITransformable`

### name

    public ISurfaceR name(java.lang.String nm)

  methods of IObject

  Overrides:
    `name` in class `IObject`

### layer

    public ISurfaceR layer(ILayer l)

  Description copied from class: `IObject`
  Set layer by ILayer object

  Overrides:
    `layer` in class `IObject`

### hide

    public ISurfaceR hide()

  Overrides:
    `hide` in class `IObject`

### show

    public ISurfaceR show()

  Overrides:
    `show` in class `IObject`

### clr

    public ISurfaceR clr(IColor c)

  Overrides:
    `clr` in class `IObject`

### clr

    public ISurfaceR clr(IColor c,
                         int alpha)

  Description copied from class: `IObject`
  to set color, with alpha value overwritten

  Overrides:
    `clr` in class `IObject`

### clr

    public ISurfaceR clr(IColor c,
                         float alpha)

  Description copied from class: `IObject`
  to set color, with alpha value overwritten

  Overrides:
    `clr` in class `IObject`

### clr

    public ISurfaceR clr(IColor c,
                         double alpha)

  Description copied from class: `IObject`
  to set color, with alpha value overwritten

  Overrides:
    `clr` in class `IObject`

### clr

    public ISurfaceR clr(java.awt.Color c)

  Overrides:
    `clr` in class `IObject`

### clr

    public ISurfaceR clr(java.awt.Color c,
                         int alpha)

  Overrides:
    `clr` in class `IObject`

### clr

    public ISurfaceR clr(java.awt.Color c,
                         float alpha)

  Overrides:
    `clr` in class `IObject`

### clr

    public ISurfaceR clr(java.awt.Color c,
                         double alpha)

  Overrides:
    `clr` in class `IObject`

### clr

    public ISurfaceR clr(int gray)

  Overrides:
    `clr` in class `IObject`

### clr

    public ISurfaceR clr(float fgray)

  Overrides:
    `clr` in class `IObject`

### clr

    public ISurfaceR clr(double dgray)

  Overrides:
    `clr` in class `IObject`

### clr

    public ISurfaceR clr(int gray,
                         int alpha)

  Overrides:
    `clr` in class `IObject`

### clr

    public ISurfaceR clr(float fgray,
                         float falpha)

  Overrides:
    `clr` in class `IObject`

### clr

    public ISurfaceR clr(double dgray,
                         double dalpha)

  Overrides:
    `clr` in class `IObject`

### clr

    public ISurfaceR clr(int r,
                         int g,
                         int b)

  Overrides:
    `clr` in class `IObject`

### clr

    public ISurfaceR clr(float fr,
                         float fg,
                         float fb)

  Overrides:
    `clr` in class `IObject`

### clr

    public ISurfaceR clr(double dr,
                         double dg,
                         double db)

  Overrides:
    `clr` in class `IObject`

### clr

    public ISurfaceR clr(int r,
                         int g,
                         int b,
                         int a)

  Overrides:
    `clr` in class `IObject`

### clr

    public ISurfaceR clr(float fr,
                         float fg,
                         float fb,
                         float fa)

  Overrides:
    `clr` in class `IObject`

### clr

    public ISurfaceR clr(double dr,
                         double dg,
                         double db,
                         double da)

  Overrides:
    `clr` in class `IObject`

### hsb

    public ISurfaceR hsb(float h,
                         float s,
                         float b,
                         float a)

  Overrides:
    `hsb` in class `IObject`

### hsb

    public ISurfaceR hsb(double h,
                         double s,
                         double b,
                         double a)

  Overrides:
    `hsb` in class `IObject`

### hsb

    public ISurfaceR hsb(float h,
                         float s,
                         float b)

  Overrides:
    `hsb` in class `IObject`

### hsb

    public ISurfaceR hsb(double h,
                         double s,
                         double b)

  Overrides:
    `hsb` in class `IObject`

### setColor

    public ISurfaceR setColor(java.awt.Color c)

  Overrides:
    `setColor` in class `IObject`

### setColor

    public ISurfaceR setColor(java.awt.Color c,
                              int alpha)

  Overrides:
    `setColor` in class `IObject`

### setColor

    public ISurfaceR setColor(int gray)

  Overrides:
    `setColor` in class `IObject`

### setColor

    public ISurfaceR setColor(float fgray)

  Overrides:
    `setColor` in class `IObject`

### setColor

    public ISurfaceR setColor(double dgray)

  Overrides:
    `setColor` in class `IObject`

### setColor

    public ISurfaceR setColor(int gray,
                              int alpha)

  Overrides:
    `setColor` in class `IObject`

### setColor

    public ISurfaceR setColor(float fgray,
                              float falpha)

  Overrides:
    `setColor` in class `IObject`

### setColor

    public ISurfaceR setColor(double dgray,
                              double dalpha)

  Overrides:
    `setColor` in class `IObject`

### setColor

    public ISurfaceR setColor(int r,
                              int g,
                              int b)

  Overrides:
    `setColor` in class `IObject`

### setColor

    public ISurfaceR setColor(float fr,
                              float fg,
                              float fb)

  Overrides:
    `setColor` in class `IObject`

### setColor

    public ISurfaceR setColor(double dr,
                              double dg,
                              double db)

  Overrides:
    `setColor` in class `IObject`

### setColor

    public ISurfaceR setColor(int r,
                              int g,
                              int b,
                              int a)

  Overrides:
    `setColor` in class `IObject`

### setColor

    public ISurfaceR setColor(float fr,
                              float fg,
                              float fb,
                              float fa)

  Overrides:
    `setColor` in class `IObject`

### setColor

    public ISurfaceR setColor(double dr,
                              double dg,
                              double db,
                              double da)

  Overrides:
    `setColor` in class `IObject`

### setHSBColor

    public ISurfaceR setHSBColor(float h,
                                 float s,
                                 float b,
                                 float a)

  Overrides:
    `setHSBColor` in class `IObject`

### setHSBColor

    public ISurfaceR setHSBColor(double h,
                                 double s,
                                 double b,
                                 double a)

  Overrides:
    `setHSBColor` in class `IObject`

### setHSBColor

    public ISurfaceR setHSBColor(float h,
                                 float s,
                                 float b)

  Overrides:
    `setHSBColor` in class `IObject`

### setHSBColor

    public ISurfaceR setHSBColor(double h,
                                 double s,
                                 double b)

  Overrides:
    `setHSBColor` in class `IObject`

### weight

    public ISurfaceR weight(double w)

  Overrides:
    `weight` in class `IObject`

### weight

    public ISurfaceR weight(float w)

  Overrides:
    `weight` in class `IObject`

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