Skip to content
Snippets Groups Projects
CellRule.h 1.03 KiB
Newer Older
  • Learn to ignore specific revisions
  • Lars Bilke's avatar
    Lars Bilke committed
     * \copyright
    
     * Copyright (c) 2012-2016, OpenGeoSys Community (http://www.opengeosys.org)
    
    Lars Bilke's avatar
    Lars Bilke committed
     *            Distributed under a Modified BSD License.
     *              See accompanying file LICENSE.txt or
    
    Lars Bilke's avatar
    Lars Bilke committed
     *              http://www.opengeosys.org/project/license
    
    Lars Bilke's avatar
    Lars Bilke committed
     *
    
    #ifndef CELLRULE_H_
    #define CELLRULE_H_
    
        /// Constant: Dimension of this mesh element
        static const unsigned dimension = 3u;
    
        /**
         * Checks if the node order of an element is correct by testing surface normals.
         * For 3D elements true is returned if the normals of all faces points away from the centre of
         * the element.
         * Note: This method might give wrong results if something else is wrong with the element
         * (non-planar faces, non-convex geometry, possibly zero volume) which causes the calculated
         * center of gravity to lie outside of the actual element
         */
        static bool testElementNodeOrder(const Element* /*e*/);
    
    #endif /* CELLRULE_H_ */