Package org.vast.swe.helper
Class VectorHelper
java.lang.Object
org.vast.swe.SWEHelper
org.vast.swe.helper.VectorHelper
- Direct Known Subclasses:
GeoPosHelper
,RasterHelper
Helper class to create SWE structures used in vector math
- Since:
- March 2016
-
Field Summary
FieldsModifier and TypeFieldDescriptionstatic final String
static final String
static final String
static final String
static final String
static final String
static final String
static final String
static final String
static final String
static final String
static final String
static final String
static final String
Fields inherited from class org.vast.swe.SWEHelper
ACCEL_UNIT, ANGLE_UNIT, ANGULAR_SPEED_UNIT, CURRENT_UNIT, DEFAULT_SWE_FACTORY, DISTANCE_UNIT, ENERGY_UNIT, fac, MASS_UNIT, PATH_SEPARATOR, POWER_UNIT, SPEED_UNIT, SURFACE_UNIT, TEMP_UNIT, TIME_UNIT, UNITLESS, uomParser, VOLTAGE_UNIT, VOLUME_UNIT
-
Constructor Summary
Constructors -
Method Summary
Modifier and TypeMethodDescriptioncreateAccelerationVector
(String uomCode) Creates a 3D acceleration vector in an ortho-normal frame with X/Y/Z axescreateAngularVelocityVector
(String uomCode) Creates a 3D angular velocity vector in an ortho-normal frame with X/Y/Z axescreateEulerAngles
(String uomCode) Creates a 3D euler angles vector with unspecified order of rotations about X/Y/Z axes.createLocationVectorXYZ
(String uomCode) Creates a 3D location vector in an ortho-normal frame with X/Y/Z axesCreates a 3D unit vector in an ortho-normal frame with X/Y/Z axesCreates a 3D vector with arbitrary axes called u1, u2, u3createVelocityVector
(String uomCode) Creates a 3D velocity vector in an ortho-normal frame with X/Y/Z axesnewAccelerationVector
(String def, String refFrame, String uomCode) Creates a 3D acceleration vector in an ortho-normal frame with X/Y/Z axesnewAngularVelocityVector
(String def, String refFrame, String uomCode) Creates a 3D angular velocity vector in an ortho-normal frame with X/Y/Z axesnewEulerAngles
(String refFrame, String uomCode) Creates a 3D euler angles vector with unspecified order of rotations about X/Y/Z axes.
This is only used when order and axes of rotations are specified separately.newLocationVectorXYZ
(String def, String refFrame, String uomCode) Creates a 3D location vector in an ortho-normal frame with X/Y/Z axesnewMatrix
(int nRows, int nCols) Creates a matrix (i.e.Creates a matrix (i.e.newRotationMatrix
(String refFrame) Creates a 3x3 rotation matrixnewUnitVectorXYZ
(String def, String refFrame) Creates a 3D unit vector in an ortho-normal frame with X/Y/Z axesnewVector3
(String def, String refFrame) Creates a 3D vector with arbitrary axes called u1, u2, u3protected Vector
newVelocityVector
(String def, String refFrame, String uomCode) Creates a 3D velocity vector in an ortho-normal frame with X/Y/Z axesMethods inherited from class org.vast.swe.SWEHelper
assignBinaryEncoding, checkUom, checkUom, checkUom, createArray, createBoolean, createCategory, createCategoryRange, createChoice, createCount, createCountRange, createDataParser, createDataWriter, createGeometry, createMatrix, createQuantity, createQuantityRange, createRecord, createText, createTime, createTimeRange, createVector, ensureXmlCompatible, findComponent, findComponentByDefinition, findComponentByName, findComponentByPath, findComponentByPath, getCfUri, getComponentPath, getDBpediaUri, getDefaultBinaryEncoding, getDefaultEncoding, getEpsgUri, getPropertyUri, getQudtUri, getRootComponent, getTimeStampIndexer, newAllowedTimes, newAllowedTokens, newAllowedValues, newBinaryBlock, newBinaryComponent, newBinaryEncoding, newBinaryEncoding, newBoolean, newBoolean, newCategory, newCategory, newCategoryRange, newCount, newCount, newCount, newCount, newCountRange, newCountRange, newDataArray, newDataArray, newDataArray, newDataChoice, newDataRecord, newDataRecord, newDataStream, newDataStream, newEncodedValuesProperty, newLinkProperty, newLinkProperty, newLinkProperty, newMatrix, newMatrix, newNilValue, newNilValues, newPhenomenonTimeIsoUTC, newQuantity, newQuantity, newQuantity, newQuantity, newQuantityRange, newQuantityRange, newRgbImage, newSystemIdComponent, newText, newText, newTextEncoding, newTextEncoding, newTime, newTime, newTime, newTime, newTimeIsoUTC, newTimeRange, newTimeRange, newTimeStampIsoGPS, newTimeStampIsoUTC, newTimeStampOnBoardClock, newUnitReference, newVector, newVector, newXMLEncoding, wrapWithTimeStamp, wrapWithTimeStampUTC
-
Field Details
-
DEF_COORD
-
DEF_ROT_MATRIX
-
DEF_ORIENTATION
-
DEF_ORIENTATION_EULER
-
DEF_ORIENTATION_QUAT
-
DEF_UNIT_VECTOR
-
DEF_ROW
-
DEF_LOCATION
-
DEF_DISTANCE
-
DEF_VELOCITY
-
DEF_ACCELERATION
-
DEF_ANGULAR_VELOCITY
-
DEF_ANGULAR_ACCEL
-
DEF_ANGLE
-
-
Constructor Details
-
VectorHelper
public VectorHelper()
-
-
Method Details
-
newVector3D
-
createVector3
Creates a 3D vector with arbitrary axes called u1, u2, u3- Returns:
- A builder to set other options and build the final vector
-
newVector3
Creates a 3D vector with arbitrary axes called u1, u2, u3- Parameters:
def
- semantic definition of velocity vector (must be set)refFrame
- reference frame within which the vector is expressed- Returns:
- the new Vector component object
-
createUnitVectorXYZ
Creates a 3D unit vector in an ortho-normal frame with X/Y/Z axes- Returns:
- A builder to set other options and build the final vector
-
newUnitVectorXYZ
Creates a 3D unit vector in an ortho-normal frame with X/Y/Z axes- Parameters:
def
- semantic definition of vector (if null,DEF_UNIT_VECTOR
is used)refFrame
- reference frame within which the vector is expressed- Returns:
- the new Vector component object
-
createLocationVectorXYZ
Creates a 3D location vector in an ortho-normal frame with X/Y/Z axes- Parameters:
uomCode
- unit of distance to use on all 3 axes- Returns:
- A builder to set other options and build the final vector
-
newLocationVectorXYZ
Creates a 3D location vector in an ortho-normal frame with X/Y/Z axes- Parameters:
def
- semantic definition of location vector (if null,DEF_LOCATION
is used)refFrame
- reference frame within which the vector is expresseduomCode
- unit of distance to use on all 3 axes- Returns:
- the new Vector component object
-
createVelocityVector
Creates a 3D velocity vector in an ortho-normal frame with X/Y/Z axes- Parameters:
uomCode
- unit of velocity to use on all 3 axes- Returns:
- A builder to set other options and build the final vector
-
newVelocityVector
Creates a 3D velocity vector in an ortho-normal frame with X/Y/Z axes- Parameters:
def
- semantic definition of velocity vector (if null,DEF_VELOCITY
is used)refFrame
- reference frame within which the vector is expresseduomCode
- unit of velocity to use on all 3 axes- Returns:
- the new Vector component object
-
createAccelerationVector
Creates a 3D acceleration vector in an ortho-normal frame with X/Y/Z axes- Parameters:
uomCode
- unit of acceleration to use on all 3 axes- Returns:
- A builder to set other options and build the final vector
-
newAccelerationVector
Creates a 3D acceleration vector in an ortho-normal frame with X/Y/Z axes- Parameters:
def
- semantic definition of acceleration vector (if null,DEF_ACCELERATION
is used)refFrame
- reference frame within which the vector is expresseduomCode
- unit of acceleration to use on all 3 axes- Returns:
- the new Vector component object
-
createEulerAngles
Creates a 3D euler angles vector with unspecified order of rotations about X/Y/Z axes.- Parameters:
uomCode
- angular unit to use on all 3 axes- Returns:
- A builder to set other options and build the final vector
-
newEulerAngles
Creates a 3D euler angles vector with unspecified order of rotations about X/Y/Z axes.
This is only used when order and axes of rotations are specified separately.- Parameters:
refFrame
- reference frame within which the angles are expresseduomCode
- angular unit to use on all 3 axes- Returns:
- the new Vector component object
-
createAngularVelocityVector
Creates a 3D angular velocity vector in an ortho-normal frame with X/Y/Z axes- Parameters:
uomCode
- unit of acceleration to use on all 3 axes- Returns:
- A builder to set other options and build the final vector
-
newAngularVelocityVector
Creates a 3D angular velocity vector in an ortho-normal frame with X/Y/Z axes- Parameters:
def
- semantic definition of angular velocity vector (if null,DEF_ANGULAR_VELOCITY
is used)refFrame
- reference frame within which the vector is expresseduomCode
- unit of acceleration to use on all 3 axes- Returns:
- the new Vector component object
-
newMatrix
Creates a matrix (i.e. 2D tensor) with no definition nor reference frame- Parameters:
nRows
- number of rowsnCols
- number of columns- Returns:
- the new Matrix component object
-
newMatrix
Creates a matrix (i.e. 2D tensor)- Parameters:
def
- semantic definition of matrix (e.g. rotation matrix, stress matrix, etc.)refFrame
- reference frame within which the matrix is expressed, if applicable, null otherwisenRows
- number of rowsnCols
- number of columns- Returns:
- the new Matrix component object
-
newRotationMatrix
Creates a 3x3 rotation matrix- Parameters:
refFrame
- reference frame within which the rotation matrix is expressed- Returns:
- the new Matrix component object
-