Image Component Library (ICL)
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Friends Defines
GeomDefs.h
Go to the documentation of this file.
00001 /********************************************************************
00002 **                Image Component Library (ICL)                    **
00003 **                                                                 **
00004 ** Copyright (C) 2006-2013 CITEC, University of Bielefeld          **
00005 **                         Neuroinformatics Group                  **
00006 ** Website: www.iclcv.org and                                      **
00007 **          http://opensource.cit-ec.de/projects/icl               **
00008 **                                                                 **
00009 ** File   : ICLGeom/src/ICLGeom/GeomDefs.h                         **
00010 ** Module : ICLGeom                                                **
00011 ** Authors: Christof Elbrechter                                    **
00012 **                                                                 **
00013 **                                                                 **
00014 ** GNU LESSER GENERAL PUBLIC LICENSE                               **
00015 ** This file may be used under the terms of the GNU Lesser General **
00016 ** Public License version 3.0 as published by the                  **
00017 **                                                                 **
00018 ** Free Software Foundation and appearing in the file LICENSE.LGPL **
00019 ** included in the packaging of this file.  Please review the      **
00020 ** following information to ensure the license requirements will   **
00021 ** be met: http://www.gnu.org/licenses/lgpl-3.0.txt                **
00022 **                                                                 **
00023 ** The development of this software was supported by the           **
00024 ** Excellence Cluster EXC 277 Cognitive Interaction Technology.    **
00025 ** The Excellence Cluster EXC 277 is a grant of the Deutsche       **
00026 ** Forschungsgemeinschaft (DFG) in the context of the German       **
00027 ** Excellence Initiative.                                          **
00028 **                                                                 **
00029 ********************************************************************/
00030 
00031 #pragma once
00032 
00033 #include <ICLUtils/CompatMacros.h>
00034 #include <ICLCore/Types.h>
00035 #include <ICLMath/FixedMatrix.h>
00036 #include <ICLMath/FixedVector.h>
00037 #include <ICLMath/HomogeneousMath.h>
00038 #include <vector>
00039 #include <ICLCore/Color.h>
00040 #include <ICLUtils/Point32f.h>
00041 
00042 namespace icl{
00043   namespace geom{
00045     typedef core::Color4D32f GeomColor;
00046   
00048     inline GeomColor geom_white(float alpha=255) { return GeomColor(255,255,255,alpha); }
00049   
00051     inline GeomColor geom_red(float alpha=255) { return GeomColor(255,0,0,alpha); }
00052   
00054     inline GeomColor geom_blue(float alpha=255) { return GeomColor(0,100,255,alpha); }
00055   
00057     inline GeomColor geom_green(float alpha=255) { return GeomColor(0,255,0,alpha); }
00058   
00060     inline GeomColor geom_yellow(float alpha=255) { return GeomColor(255,255,0,alpha); }
00061   
00063     inline GeomColor geom_magenta(float alpha=255) { return GeomColor(255,0,255,alpha); }
00064   
00066     inline GeomColor geom_cyan(float alpha=255) { return GeomColor(0,255,255,alpha); }
00067   
00069     inline GeomColor geom_black(float alpha=255) { return GeomColor(0,0,0,alpha); }
00070   
00072     inline GeomColor geom_invisible() { return GeomColor(0,0,0,0); }
00073   
00075     typedef math::FixedMatrix<icl32f,4,4> Mat4D32f;
00076   
00078     typedef math::FixedMatrix<icl64f,4,4> Mat4D64f;
00079   
00081     typedef math::FixedColVector<icl32f,4> Vec4D32f;
00082   
00084     typedef math::FixedColVector<icl64f,4> Vec4D64f;
00085   
00087     typedef Vec4D32f Vec;
00088   
00090     typedef Mat4D32f Mat;
00091 
00093     typedef std::vector<Vec> VecArray;
00094     
00095   } // namespace geom
00096 }
00097 
00098 
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Friends Defines