22#ifndef VIP_TALAIRACH_H
23#define VIP_TALAIRACH_H
47#define TALAIRACH_SIZEX 157.
48#define TALAIRACH_SIZEY 189.
49#define TALAIRACH_SIZEZ 136.
91 int xCA,
int yCA,
int zCA,
92 int xCP,
int yCP,
int zCP,
93 int xP,
int yP,
int zP,
Vip3DPoint_VFLOAT MinCoronal
Maximum sagittal plane coordinates.
int MaxBox[3]
Talairach box minimum (X,Y,Z) coordinates.
Vip3DPoint_VFLOAT MinAxial
Inter-hemispheric point coordinates.
float Rotation[3][3]
Talairach translation vector.
int MinBox[3]
Talairach rotation matrix.
Vip3DPoint_VFLOAT MaxCoronal
Minimum coronal plane coordinates.
Vip3DPoint_VFLOAT MaxAxial
Minimum axial plane coordinates.
VipPlane Plane[10]
Talairach box maximum (X,Y,Z) coordinates.
Vip3DPoint_VFLOAT VoxelGeometry
10 Talairach planes
Vip3DPoint_VFLOAT MinSagittal
Maximim axial plane coordinates.
Vip3DPoint_VFLOAT Cross_vector
Inter-hemispheric plane vector.
Vip3DPoint_VFLOAT PC
AC point coordinates.
Vip3DPoint_VFLOAT MaxSagittal
Minimum sagittal plane coordinates.
Vip3DPoint_VFLOAT Hemi
PC point coordinates.
Vip3DPoint_VFLOAT Hemi_vector
AC-PC plane vector.
Vip3DPoint_VFLOAT Scale
Third plane vector.
Vip3DPoint_VFLOAT ACPC_vector
Maximum coronal plane coordinates.
float Translation[3]
Talairach scale factor.
void VipTalairachInverseRotation(float *pt, VipTalairach *tal, float *res)
void VipTalairachInverseTranslation(float *pt, VipTalairach *tal, float *res)
void VipTalairachInverseTransformation(float *pt, VipTalairach *tal, float *res)
int VipWriteTalairachRefFile(char *filename, VipTalairach *tal)
void VipFillTalairachPlane(VipTalairach *tal, int num, float AA, float BB, float CC, float DD)
void Vip3PlanesIntersection(VipTalairach *tal, int num1, int num2, int num3, float *ptInter)
int VipWriteTalairachFiles(char *filename, VipTalairach *tal)
int VipWriteTalairachTalFile(char *filename, VipTalairach *tal)
void Vip3DPlanesResolution(float *a, float *b, float *c, float *d, float *x, float *y, float *z)
void VipTalairachTransformation(float *pt, VipTalairach *tal, float *res)
void VipTalairachRotation(float *pt, VipTalairach *tal, float *res)
void VipTalairachRotationAndTranslation(VipTalairach *tal)
void VipComputeDeterminant(float *A, float *B, float *C, float *sol)
void VipTalairachTranslation(float *pt, VipTalairach *tal, float *res)
void VipTalairachBox(Volume *vol, VipTalairach *tal)
int VipReadTalairachTalFile(char *filename, VipTalairach *tal)
void VipPrintTalairach(VipTalairach *tal)
void VipInitTalairachVectors(VipTalairach *tal)
int VipReadTalairachFiles(char *filename, VipTalairach *tal)
int GetCommissureCoordinates(Volume *vol, char *point_filename, VipTalairach *tal, int xCA, int yCA, int zCA, int xCP, int yCP, int zCP, int xP, int yP, int zP, int coord_provided)
void VipComputeTalairachTransformation(Volume *vol, VipTalairach *tal)
void VipInitTalairachPlanes(VipTalairach *tal, float *minA, float *maxA, float *minS, float *maxS, float *minC, float *maxC)
int VipReadTalairachRefFile(char *filename, VipTalairach *tal)