igeo
Class IMatrix4
java.lang.Object
igeo.IMatrix
igeo.IMatrix4
- All Implemented Interfaces:
- IMatrix4I, IMatrix4Op, IMatrixI, IMatrixOp, IParameter
public class IMatrix4
- extends IMatrix
- implements IMatrix4I
Class of 4x4 numerical matrix.
- Version:
- 0.7.0.0;
- Author:
- Satoru Sugihara
Constructor Summary |
IMatrix4()
|
IMatrix4(double v11,
double v12,
double v13,
double v14,
double v21,
double v22,
double v23,
double v24,
double v31,
double v32,
double v33,
double v34,
double v41,
double v42,
double v43,
double v44)
|
IMatrix4(IMatrix4 m)
|
Method Summary |
static IMatrix4 |
convertCoordinates(IVec xvec1,
IVec yvec1,
IVec zvec1,
IVec orig1,
IVec xvec2,
IVec yvec2,
IVec zvec2,
IVec orig2)
|
double |
determinant()
|
IMatrix4 |
dup()
|
IMatrix4 |
get()
|
static IMatrix4 |
getAlignmentOnPlane(IVec trianglePt1,
IVec trianglePt2,
IVec trianglePt3,
IVec planePt1,
IVec planePt2,
IVec planePt3)
|
static IMatrix4 |
getRotation(IVec axis,
double angle)
|
static IMatrix4 |
getScale(double scale)
|
static IMatrix4 |
getTransform(IVec xvector,
IVec yvector,
IVec zvector,
IVec translate)
|
static IMatrix4 |
getTranslate(double x,
double y,
double z)
|
static IMatrix4 |
getTranslate(IVec p)
|
static IMatrix4 |
getXRotation(double angle)
|
static IMatrix4 |
getYRotation(double angle)
|
static IMatrix4 |
getZRotation(double angle)
|
IMatrix4 |
invert()
|
IMatrix4 |
mul(IMatrix4 m)
m is applied from right side and update the content of this without
creating new instance. |
IMatrix4 |
mul(IMatrix4I m)
|
IVec4 |
mul(IVec4I v)
vector is treated as vertical vector |
IVec |
mul(IVecI v)
|
IMatrix4 |
set(double v11,
double v12,
double v13,
double v14,
double v21,
double v22,
double v23,
double v24,
double v31,
double v32,
double v33,
double v34,
double v41,
double v42,
double v43,
double v44)
|
IMatrix4 |
set(IDoubleI v11,
IDoubleI v12,
IDoubleI v13,
IDoubleI v14,
IDoubleI v21,
IDoubleI v22,
IDoubleI v23,
IDoubleI v24,
IDoubleI v31,
IDoubleI v32,
IDoubleI v33,
IDoubleI v34,
IDoubleI v41,
IDoubleI v42,
IDoubleI v43,
IDoubleI v44)
|
IVec |
transform(IVecI v)
applying transformation matrix to 3D vector |
Methods inherited from class igeo.IMatrix |
add, add, columnNum, columnNum, columnNum, det, determinant, determinant, div, div, get, get, get, mul, mul, mul, mul, rowNum, rowNum, rowNum, set, set, set, set, set, set, setId, setRange, setZero, sub, sub, toString |
Methods inherited from class java.lang.Object |
clone, equals, finalize, getClass, hashCode, notify, notifyAll, wait, wait, wait |
Methods inherited from interface igeo.IMatrixI |
add, columnNum, columnNum, columnNum, determinant, determinant, div, div, get, get, get, mul, mul, mul, rowNum, rowNum, rowNum, set, set, set, set, set, setId, setZero, sub |
IMatrix4
public IMatrix4()
IMatrix4
public IMatrix4(double v11,
double v12,
double v13,
double v14,
double v21,
double v22,
double v23,
double v24,
double v31,
double v32,
double v33,
double v34,
double v41,
double v42,
double v43,
double v44)
IMatrix4
public IMatrix4(IMatrix4 m)
get
public IMatrix4 get()
- Specified by:
get
in interface IMatrix4I
- Specified by:
get
in interface IMatrix4Op
- Specified by:
get
in interface IMatrixOp
- Specified by:
get
in interface IParameter
- Overrides:
get
in class IMatrix
set
public IMatrix4 set(double v11,
double v12,
double v13,
double v14,
double v21,
double v22,
double v23,
double v24,
double v31,
double v32,
double v33,
double v34,
double v41,
double v42,
double v43,
double v44)
- Specified by:
set
in interface IMatrix4I
set
public IMatrix4 set(IDoubleI v11,
IDoubleI v12,
IDoubleI v13,
IDoubleI v14,
IDoubleI v21,
IDoubleI v22,
IDoubleI v23,
IDoubleI v24,
IDoubleI v31,
IDoubleI v32,
IDoubleI v33,
IDoubleI v34,
IDoubleI v41,
IDoubleI v42,
IDoubleI v43,
IDoubleI v44)
- Specified by:
set
in interface IMatrix4I
dup
public IMatrix4 dup()
- Specified by:
dup
in interface IMatrix4I
- Specified by:
dup
in interface IMatrixI
- Overrides:
dup
in class IMatrix
determinant
public double determinant()
- Specified by:
determinant
in interface IMatrixI
- Overrides:
determinant
in class IMatrix
invert
public IMatrix4 invert()
- Specified by:
invert
in interface IMatrixI
- Overrides:
invert
in class IMatrix
mul
public IMatrix4 mul(IMatrix4 m)
- m is applied from right side and update the content of this without
creating new instance. it returns itself.
mul
public IMatrix4 mul(IMatrix4I m)
- Specified by:
mul
in interface IMatrix4I
mul
public IVec4 mul(IVec4I v)
- vector is treated as vertical vector
- Specified by:
mul
in interface IMatrix4I
mul
public IVec mul(IVecI v)
- Specified by:
mul
in interface IMatrix4I
transform
public IVec transform(IVecI v)
- applying transformation matrix to 3D vector
- Specified by:
transform
in interface IMatrix4I
getXRotation
public static IMatrix4 getXRotation(double angle)
getYRotation
public static IMatrix4 getYRotation(double angle)
getZRotation
public static IMatrix4 getZRotation(double angle)
getRotation
public static IMatrix4 getRotation(IVec axis,
double angle)
getScale
public static IMatrix4 getScale(double scale)
getTranslate
public static IMatrix4 getTranslate(double x,
double y,
double z)
getTranslate
public static IMatrix4 getTranslate(IVec p)
getTransform
public static IMatrix4 getTransform(IVec xvector,
IVec yvector,
IVec zvector,
IVec translate)
convertCoordinates
public static IMatrix4 convertCoordinates(IVec xvec1,
IVec yvec1,
IVec zvec1,
IVec orig1,
IVec xvec2,
IVec yvec2,
IVec zvec2,
IVec orig2)
getAlignmentOnPlane
public static IMatrix4 getAlignmentOnPlane(IVec trianglePt1,
IVec trianglePt2,
IVec trianglePt3,
IVec planePt1,
IVec planePt2,
IVec planePt3)