trans_seq.c
Go to the documentation of this file.
399 Error("The evaluation of the second derivative of parametrized-patch transforms is not implemented yet");
void UpdateUsedDOF(unsigned int *dof, TTransSeq *ts) Determines the dof used in a transform sequence. Definition: trans_seq.c:645 Definition of basic functions. void HTransformTxyz(double tx, double ty, double tz, THTransform *t) Constructor. Definition: htransform.c:146 boolean VarIncludedinTransSeq(unsigned int v, TTransSeq *ts) Determines if the sequence includes a given variable. Definition: trans_seq.c:630 boolean TransHasVar(unsigned int v, TTrans *t) Identifies if a variable is involved in a given transform. Definition: trans_seq.c:150 void HTransformTranspose(THTransform *t, THTransform *tt) Transpose of a homogeneous transform. Definition: htransform.c:672 A homgeneous transform in R^3. void ReplaceVarInTransSeq(unsigned int nv, unsigned int nvNew, TTransSeq *ts) Replaces a variable. Definition: trans_seq.c:831 CBLAS_INLINE double Norm(unsigned int s, double *v) Computes the norm of a vector. Definition: basic_algebra.c:356 CBLAS_INLINE void SumVector(unsigned int s, double *v1, double *v2, double *v) Adds two vectors. Definition: basic_algebra.c:67 void HTransformApplyRot(double *p_in, double *p_out, THTransform *t) Multiply the rotation part of the homogeneous transform and a vector. Definition: htransform.c:801 #define INIT_NUM_TERMS_TS Initial room for terms in a transform sequence. Definition: trans_seq.h:117 CBLAS_INLINE void AccumulateVector(unsigned int s, double *v1, double *v2) Adds a vector to another vectors. Definition: basic_algebra.c:55 void AddVarTrans2TransSeq(unsigned int t, int s, unsigned int v, TTransSeq *ts) Adds a variable transform to the sequence. Definition: trans_seq.c:578 void EvaluatePATrans(double u, double v, THTransform *a, TTrans *t) Evaluates a PA transform. Definition: trans_seq.c:406 CBLAS_INLINE void HTransformAcumTrans(double tx, double ty, double tz, THTransform *t) Computes the result of multiplying a homogeneous transform by a translation matrix with parameters tx... Definition: htransform.c:695 CBLAS_INLINE void Normalize(unsigned int s, double *v) Normalizes a vector. Definition: basic_algebra.c:592 CBLAS_INLINE void HTransformProduct(THTransform *t1, THTransform *t2, THTransform *t3) Product of two homogeneous transforms. Definition: htransform.c:410 void InitPatchTrans(unsigned int tp, int s, unsigned int u, unsigned int v, double **p, TTrans *t) Initializes a parametrized-patch transform. Definition: trans_seq.c:61 Sequence (product) of homogeneous transforms. boolean HTransformIsTranslation(THTransform *t) Identify the translation matrices. Definition: htransform.c:102 double HTransformGetElement(unsigned int i, unsigned int j, THTransform *t) Gets an element in a homogeneous transform. Definition: htransform.c:329 void HTransformFromVectors(double *x, double *y, double *z, double *h, THTransform *t) Defines a homogeneous transform from 4 vectors. Definition: htransform.c:341 void AddCtTrans2TransSeq(THTransform *t, TTransSeq *ts) Adds a constant transform to the sequence. Definition: trans_seq.c:550 double DotProduct(double *v1, double *v2) Computes the dot product of two 3d vectors. Definition: geom.c:652 void HTransformInverse(THTransform *t, THTransform *ti) Inverse of a homogeneous transform. Definition: htransform.c:503 CBLAS_INLINE void ScaleVector2(double f, unsigned int s, double *v, double *vout) Scales a vector. Definition: basic_algebra.c:42 unsigned int TransSeqSize(TTransSeq *ts) Number of elements in the transform sequence. Definition: trans_seq.c:501 void DifferenceVector(unsigned int s, double *v1, double *v2, double *v) Substracts two vectors. Definition: basic_algebra.c:264 void AddTrans2TransSeq(TTrans *t, TTransSeq *ts) Adds a transform to a transform sequence. Definition: trans_seq.c:514 void DeriveTransSeq(unsigned int v, unsigned int *n, TTransSeq ***tsd, TTransSeq *ts) Derive a sequence of transforms. Definition: trans_seq.c:868 CBLAS_INLINE void HTransformAcumRot(unsigned int type, double s, double c, THTransform *t) Computes the result of multiplying a homogeneous transform by a rotation matrix. Definition: htransform.c:727 void EvaluateTransSeq(double *v, THTransform *r, TTransSeq *ts) Evaluates the transform sequence. Definition: trans_seq.c:997 boolean HasCtRotTransSeq(TTransSeq *ts) Checks if the tranform sequence includes contant rotations. Definition: trans_seq.c:489 void InitCtTrans(THTransform *ct, TTrans *t) Initializes a constant transform. Definition: trans_seq.c:21 #define MEM_DUP(_var, _n, _type) Duplicates a previously allocated memory space. Definition: defines.h:414 #define NO_UINT Used to denote an identifier that has not been initialized. Definition: defines.h:435 CBLAS_INLINE void SumVectorScale(unsigned int s, double *v1, double w, double *v2, double *v) Adds two vectors with a scale. Definition: basic_algebra.c:86 void AddDispTrans2TransSeq(int s, unsigned int v, double *vect, TTransSeq *ts) Adds a displacement transform to the sequence. Definition: trans_seq.c:601 void EvaluateTrans(double v1, double v2, THTransform *a, TTrans *t) Evaluates a transform. Definition: trans_seq.c:174 #define IS_PATCH_TRANS(t) Checks if a transform is a parametrized patch (or derived). Definition: trans_seq.h:126 void EvaluateVectorsPATrans(double u, double v, double *x, double *y, double *h, TTrans *t) Computes the vectors defining a PA transform. Definition: trans_seq.c:155 void ShiftVariablesInTransSeq(unsigned int nv, TTransSeq *ts) Adjust variable indices after removing a variable. Definition: trans_seq.c:705 void InitTVTrans(int s, unsigned int v, double *vect, TTrans *t) Initializes a TV transform. Definition: trans_seq.c:48 TTrans * GetElementFromTransSeq(unsigned int i, TTransSeq *ts) Returns an element from a transform sequence. Definition: trans_seq.c:506 void HTransformSetElement(unsigned int i, unsigned int j, double v, THTransform *t) Sets an element in a homogeneous transform. Definition: htransform.c:312 void PrintTransSeq(FILE *f, char **varNames, TTransSeq *ts) Prints a transform sequence to a file. Definition: trans_seq.c:1074 void HTransformCopy(THTransform *t_dst, THTransform *t_src) Copy constructor. Definition: htransform.c:83 boolean IsEmptyTransSeq(TTransSeq *ts) Identify empty transform sequences. Definition: trans_seq.c:484 void CrossProduct(double *v1, double *v2, double *v3) Computes the cross product of two 3d vectors. Definition: geom.c:639 void AddPatchTrans2TransSeq(unsigned int t, int s, unsigned int u, unsigned int v, double **p, TTransSeq *ts) Adds a Parametrized-Patch transform to a transform sequence. Definition: trans_seq.c:615 void InitVarTrans(unsigned int tp, int s, unsigned int v, TTrans *t) Initializes a variable transform. Definition: trans_seq.c:34 boolean FixVarInTransSeq(unsigned int nv, double v, THTransform *ctt, TTransSeq *ts) Set a variable to a constant value. Definition: trans_seq.c:723 void SimplifyTransSeq(TTransSeq *ts) Reduces the complexity of the tranform sequence. Definition: trans_seq.c:846 boolean HTransformIsIdentity(THTransform *t) Identify the identity matrix. Definition: htransform.c:91 |
Follow us!