igeo
Interface ITransformable

All Known Subinterfaces:
ICurveI, IMeshI, IParticleI, IParticleOnCurveI, ISurfaceI, ITrimCurveI, IVec4I, IVecI
All Known Implementing Classes:
IArc, IArcGeo, IBoid, IBox, IBrep, ICircle, ICircleGeo, ICurve, ICurveGeo, ICurveR, ICylinder, IGeometry, IMesh, IMeshGeo, IMeshR, IParticle, IParticleAgent, IParticleOnCurve, IParticleOnCurveAgent, IPoint, IPointAgent, IPointR, IPolycurveGeo, ISphere, IStraightenerCurve, ISurface, ISurfaceGeo, ISurfaceR, ITensionLine, ITensionLineOnCurve, ITrimCurve, IVec, IVec4, IVec4R, IVecR, IVectorObject, IVertex

public interface ITransformable

Abstract interface of transformable geometry.

Version:
0.7.0.0;
Author:
Satoru Sugihara

Method Summary
 ITransformable add(double x, double y, double z)
           
 ITransformable add(double f, IVecI v)
          scale add alias
 ITransformable add(IDoubleI x, IDoubleI y, IDoubleI z)
           
 ITransformable add(IDoubleI f, IVecI v)
          scale add alias
 ITransformable add(IVecI v)
           
 ITransformable add(IVecI v, double f)
          scale add
 ITransformable add(IVecI v, IDoubleI f)
          scale add
 ITransformable cp()
          cp() is alias of dup()
 ITransformable cp(double x, double y, double z)
          cp() is alias of dup().add()
 ITransformable cp(IDoubleI x, IDoubleI y, IDoubleI z)
           
 ITransformable cp(IVecI v)
           
 ITransformable div(double v)
           
 ITransformable div(IDoubleI v)
           
 ITransformable dup()
          duplicate the instance
 ITransformable flip()
          alias of neg
 ITransformable mirror(IVecI planeDir)
          mirror is alias of ref
 ITransformable mirror(IVecI center, IVecI planeDir)
           
 ITransformable mul(double v)
           
 ITransformable mul(IDoubleI v)
           
 ITransformable mv(double x, double y, double z)
          mv() is alias of add()
 ITransformable mv(IDoubleI x, IDoubleI y, IDoubleI z)
           
 ITransformable mv(IVecI v)
           
 ITransformable neg()
           
 ITransformable ref(IVecI planeDir)
          reflect(mirror) 3 dimensionally to the other side of the plane
 ITransformable ref(IVecI center, IVecI planeDir)
           
 ITransformable rot(double angle)
           
 ITransformable rot(IDoubleI angle)
          rotation around z-axis and origin
 ITransformable rot(IVecI axis, double angle)
           
 ITransformable rot(IVecI axis, IDoubleI angle)
          rotation around axis vector
 ITransformable rot(IVecI axis, IVecI destDir)
          rotate to destination direction vector
 ITransformable rot(IVecI center, IVecI axis, double angle)
           
 ITransformable rot(IVecI center, IVecI axis, IDoubleI angle)
          rotation around axis vector and center
 ITransformable rot(IVecI center, IVecI axis, IVecI destPt)
          rotate to destination point location
 ITransformable rot2(double angle)
          rotation on xy-plane around origin; same with rot(double)
 ITransformable rot2(IDoubleI angle)
          rotation on xy-plane around origin; same with rot(IDoubleI)
 ITransformable rot2(IVecI destDir)
          rotation on xy-plane to destination direction vector
 ITransformable rot2(IVecI center, double angle)
           
 ITransformable rot2(IVecI center, IDoubleI angle)
          rotation on xy-plane around center
 ITransformable rot2(IVecI center, IVecI destPt)
          rotation on xy-plane to destination point location
 ITransformable scale(double f)
           
 ITransformable scale(IDoubleI f)
          alias of mul
 ITransformable scale(IVecI center, double f)
           
 ITransformable scale(IVecI center, IDoubleI f)
           
 ITransformable scale1d(IVecI axis, double f)
          scale only in 1 direction
 ITransformable scale1d(IVecI axis, IDoubleI f)
           
 ITransformable scale1d(IVecI center, IVecI axis, double f)
           
 ITransformable scale1d(IVecI center, IVecI axis, IDoubleI f)
           
 ITransformable shear(double sxy, double syx, double syz, double szy, double szx, double sxz)
          shear operation
 ITransformable shear(IDoubleI sxy, IDoubleI syx, IDoubleI syz, IDoubleI szy, IDoubleI szx, IDoubleI sxz)
           
 ITransformable shear(IVecI center, double sxy, double syx, double syz, double szy, double szx, double sxz)
           
 ITransformable shear(IVecI center, IDoubleI sxy, IDoubleI syx, IDoubleI syz, IDoubleI szy, IDoubleI szx, IDoubleI sxz)
           
 ITransformable shearXY(double sxy, double syx)
           
 ITransformable shearXY(IDoubleI sxy, IDoubleI syx)
           
 ITransformable shearXY(IVecI center, double sxy, double syx)
           
 ITransformable shearXY(IVecI center, IDoubleI sxy, IDoubleI syx)
           
 ITransformable shearYZ(double syz, double szy)
           
 ITransformable shearYZ(IDoubleI syz, IDoubleI szy)
           
 ITransformable shearYZ(IVecI center, double syz, double szy)
           
 ITransformable shearYZ(IVecI center, IDoubleI syz, IDoubleI szy)
           
 ITransformable shearZX(double szx, double sxz)
           
 ITransformable shearZX(IDoubleI szx, IDoubleI sxz)
           
 ITransformable shearZX(IVecI center, double szx, double sxz)
           
 ITransformable shearZX(IVecI center, IDoubleI szx, IDoubleI sxz)
           
 ITransformable sub(double x, double y, double z)
           
 ITransformable sub(IDoubleI x, IDoubleI y, IDoubleI z)
           
 ITransformable sub(IVecI v)
           
 ITransformable transform(IMatrix3I mat)
           
 ITransformable transform(IMatrix4I mat)
           
 ITransformable transform(IVecI xvec, IVecI yvec, IVecI zvec)
           
 ITransformable transform(IVecI xvec, IVecI yvec, IVecI zvec, IVecI translate)
           
 ITransformable translate(double x, double y, double z)
          translate() is alias of add()
 ITransformable translate(IDoubleI x, IDoubleI y, IDoubleI z)
           
 ITransformable translate(IVecI v)
           
 

Method Detail

add

ITransformable add(double x,
                   double y,
                   double z)

add

ITransformable add(IDoubleI x,
                   IDoubleI y,
                   IDoubleI z)

add

ITransformable add(IVecI v)

sub

ITransformable sub(double x,
                   double y,
                   double z)

sub

ITransformable sub(IDoubleI x,
                   IDoubleI y,
                   IDoubleI z)

sub

ITransformable sub(IVecI v)

mul

ITransformable mul(IDoubleI v)

mul

ITransformable mul(double v)

div

ITransformable div(IDoubleI v)

div

ITransformable div(double v)

neg

ITransformable neg()

flip

ITransformable flip()
alias of neg


add

ITransformable add(IVecI v,
                   double f)
scale add


add

ITransformable add(IVecI v,
                   IDoubleI f)
scale add


add

ITransformable add(double f,
                   IVecI v)
scale add alias


add

ITransformable add(IDoubleI f,
                   IVecI v)
scale add alias


rot

ITransformable rot(IDoubleI angle)
rotation around z-axis and origin


rot

ITransformable rot(double angle)

rot

ITransformable rot(IVecI axis,
                   IDoubleI angle)
rotation around axis vector


rot

ITransformable rot(IVecI axis,
                   double angle)

rot

ITransformable rot(IVecI center,
                   IVecI axis,
                   IDoubleI angle)
rotation around axis vector and center


rot

ITransformable rot(IVecI center,
                   IVecI axis,
                   double angle)

rot

ITransformable rot(IVecI axis,
                   IVecI destDir)
rotate to destination direction vector


rot

ITransformable rot(IVecI center,
                   IVecI axis,
                   IVecI destPt)
rotate to destination point location


rot2

ITransformable rot2(IDoubleI angle)
rotation on xy-plane around origin; same with rot(IDoubleI)


rot2

ITransformable rot2(double angle)
rotation on xy-plane around origin; same with rot(double)


rot2

ITransformable rot2(IVecI center,
                    IDoubleI angle)
rotation on xy-plane around center


rot2

ITransformable rot2(IVecI center,
                    double angle)

rot2

ITransformable rot2(IVecI destDir)
rotation on xy-plane to destination direction vector


rot2

ITransformable rot2(IVecI center,
                    IVecI destPt)
rotation on xy-plane to destination point location


scale

ITransformable scale(IDoubleI f)
alias of mul


scale

ITransformable scale(double f)

scale

ITransformable scale(IVecI center,
                     IDoubleI f)

scale

ITransformable scale(IVecI center,
                     double f)

scale1d

ITransformable scale1d(IVecI axis,
                       double f)
scale only in 1 direction


scale1d

ITransformable scale1d(IVecI axis,
                       IDoubleI f)

scale1d

ITransformable scale1d(IVecI center,
                       IVecI axis,
                       double f)

scale1d

ITransformable scale1d(IVecI center,
                       IVecI axis,
                       IDoubleI f)

ref

ITransformable ref(IVecI planeDir)
reflect(mirror) 3 dimensionally to the other side of the plane


ref

ITransformable ref(IVecI center,
                   IVecI planeDir)

mirror

ITransformable mirror(IVecI planeDir)
mirror is alias of ref


mirror

ITransformable mirror(IVecI center,
                      IVecI planeDir)

shear

ITransformable shear(double sxy,
                     double syx,
                     double syz,
                     double szy,
                     double szx,
                     double sxz)
shear operation


shear

ITransformable shear(IDoubleI sxy,
                     IDoubleI syx,
                     IDoubleI syz,
                     IDoubleI szy,
                     IDoubleI szx,
                     IDoubleI sxz)

shear

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

shear

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

shearXY

ITransformable shearXY(double sxy,
                       double syx)

shearXY

ITransformable shearXY(IDoubleI sxy,
                       IDoubleI syx)

shearXY

ITransformable shearXY(IVecI center,
                       double sxy,
                       double syx)

shearXY

ITransformable shearXY(IVecI center,
                       IDoubleI sxy,
                       IDoubleI syx)

shearYZ

ITransformable shearYZ(double syz,
                       double szy)

shearYZ

ITransformable shearYZ(IDoubleI syz,
                       IDoubleI szy)

shearYZ

ITransformable shearYZ(IVecI center,
                       double syz,
                       double szy)

shearYZ

ITransformable shearYZ(IVecI center,
                       IDoubleI syz,
                       IDoubleI szy)

shearZX

ITransformable shearZX(double szx,
                       double sxz)

shearZX

ITransformable shearZX(IDoubleI szx,
                       IDoubleI sxz)

shearZX

ITransformable shearZX(IVecI center,
                       double szx,
                       double sxz)

shearZX

ITransformable shearZX(IVecI center,
                       IDoubleI szx,
                       IDoubleI sxz)

mv

ITransformable mv(double x,
                  double y,
                  double z)
mv() is alias of add()


mv

ITransformable mv(IDoubleI x,
                  IDoubleI y,
                  IDoubleI z)

mv

ITransformable mv(IVecI v)

dup

ITransformable dup()
duplicate the instance


cp

ITransformable cp()
cp() is alias of dup()


cp

ITransformable cp(double x,
                  double y,
                  double z)
cp() is alias of dup().add()


cp

ITransformable cp(IDoubleI x,
                  IDoubleI y,
                  IDoubleI z)

cp

ITransformable cp(IVecI v)

translate

ITransformable translate(double x,
                         double y,
                         double z)
translate() is alias of add()


translate

ITransformable translate(IDoubleI x,
                         IDoubleI y,
                         IDoubleI z)

translate

ITransformable translate(IVecI v)

transform

ITransformable transform(IMatrix3I mat)

transform

ITransformable transform(IMatrix4I mat)

transform

ITransformable transform(IVecI xvec,
                         IVecI yvec,
                         IVecI zvec)

transform

ITransformable transform(IVecI xvec,
                         IVecI yvec,
                         IVecI zvec,
                         IVecI translate)