MeVisLabToolboxReference
FMEwork/VTK/Sources/VTK/MLVTK/VTKSupport/mlVTKSpecialFieldsSupport.h
Go to the documentation of this file.
00001 // **InsertLicense** code
00002 //----------------------------------------------------------------------------------
00005 
00010 //----------------------------------------------------------------------------------
00011 #ifndef __mlVTKSpecialFieldsSupport_H
00012 #define __mlVTKSpecialFieldsSupport_H
00013 
00015 // Include dll-specific settings.
00016 #include "mlInitSystemVTKSupport.h"
00017 
00019 #ifndef __mlModuleIncludes_H
00020 #include "mlModuleIncludes.h"
00021 #endif
00022 
00024 #ifndef __mlMultiFields_H
00025 #include "mlMultiFields.h"
00026 #endif
00027 
00029 #include <vtkMatrix4x4.h>
00030 
00031 ML_START_NAMESPACE
00032 
00033 #define ML_VTK_CHAR_ENUMS \
00034 { \
00035     "0",   "1",   "2",   "3",   "4",   "5",   "6",   "7",   "8",   "9", \
00036    "10",  "11",  "12",  "13",  "14",  "15",  "16",  "17",  "18",  "19", \
00037    "20",  "21",  "22",  "23",  "24",  "25",  "26",  "27",  "28",  "29", \
00038    "30",  "31",  "32",  "33",  "34",  "35",  "36",  "37",  "38",  "39", \
00039    "40",  "41",  "42",  "43",  "44",  "45",  "46",  "47",  "48",  "49", \
00040    "50",  "51",  "52",  "53",  "54",  "55",  "56",  "57",  "58",  "59", \
00041    "60",  "61",  "62",  "63",  "64",  "65",  "66",  "67",  "68",  "69", \
00042    "70",  "71",  "72",  "73",  "74",  "75",  "76",  "77",  "78",  "79", \
00043    "80",  "81",  "82",  "83",  "84",  "85",  "86",  "87",  "88",  "89", \
00044    "90",  "91",  "92",  "93",  "94",  "95",  "96",  "97",  "98",  "99", \
00045   \
00046   "100", "101", "102", "103", "104", "105", "106", "107", "108", "109", \
00047   "110", "111", "112", "113", "114", "115", "116", "117", "118", "119", \
00048   "120", "121", "122", "123", "124", "125", "126", "127", "128", "129", \
00049   "130", "131", "132", "133", "134", "135", "136", "137", "138", "139", \
00050   "140", "141", "142", "143", "144", "145", "146", "147", "148", "149", \
00051   "150", "151", "152", "153", "154", "155", "156", "157", "158", "159", \
00052   "160", "161", "162", "163", "164", "165", "166", "167", "168", "169", \
00053   "170", "171", "172", "173", "174", "175", "176", "177", "178", "179", \
00054   "180", "181", "182", "183", "184", "185", "186", "187", "188", "189", \
00055   "190", "191", "192", "193", "194", "195", "196", "197", "198", "199", \
00056   \
00057   "200", "201", "202", "203", "204", "205", "206", "207", "208", "209", \
00058   "210", "211", "212", "213", "214", "215", "216", "217", "218", "219", \
00059   "220", "221", "222", "223", "224", "225", "226", "227", "228", "229", \
00060   "230", "231", "232", "233", "234", "235", "236", "237", "238", "239", \
00061   "240", "241", "242", "243", "244", "245", "246", "247", "248", "249", \
00062   "250", "251", "252", "253", "254", "255" };
00063 
00064 
00065 //---------------------------------------------------------------------------
00068 //---------------------------------------------------------------------------
00069 inline vtkMatrix4x4* VTKMatrix4x4FromMLMatrix(const Matrix4 &mat)
00070 {
00071   vtkMatrix4x4 *resultMat=vtkMatrix4x4::New();
00072   for (int i=0; i < 4; ++i){
00073     for (int j=0; j < 4; ++j){
00074       (*resultMat)[i][j] = mat[i][j];
00075     }
00076   }
00077   return resultMat;
00078 }
00079 
00080 //---------------------------------------------------------------------------
00082 //---------------------------------------------------------------------------
00083 inline Matrix4 MLMatrixFromVTKMatrix4x4(const vtkMatrix4x4* mat)
00084 {
00085   Matrix4 resultMat;
00086   if (mat){
00087     for (int i=0; i < 4; ++i){
00088       for (int j=0; j < 4; ++j){
00089         resultMat[i][j] = (*mat)[i][j];
00090       }
00091     }
00092   }
00093   else{
00094     // Initialize as identity.
00095     resultMat = Matrix4::getIdentity();
00096   }
00097   return resultMat;
00098 }
00099 
00100 ML_END_NAMESPACE
00101 
00102 #endif // __mlVTKSpecialFieldsSupport_H
00103