pub fn edge_node_id(&self, e: usize, i: usize) -> usize {
        match self {
            // Lin
            GeoKind::Lin2 => 0,
            GeoKind::Lin3 => 0,
            GeoKind::Lin4 => 0,
            GeoKind::Lin5 => 0,
            // Tri
            GeoKind::Tri3 => Tri3::EDGE_NODE_IDS[e][i],
            GeoKind::Tri6 => Tri6::EDGE_NODE_IDS[e][i],
            GeoKind::Tri10 => Tri10::EDGE_NODE_IDS[e][i],
            GeoKind::Tri15 => Tri15::EDGE_NODE_IDS[e][i],
            // Qua
            GeoKind::Qua4 => Qua4::EDGE_NODE_IDS[e][i],
            GeoKind::Qua8 => Qua8::EDGE_NODE_IDS[e][i],
            GeoKind::Qua9 => Qua9::EDGE_NODE_IDS[e][i],
            GeoKind::Qua12 => Qua12::EDGE_NODE_IDS[e][i],
            GeoKind::Qua16 => Qua16::EDGE_NODE_IDS[e][i],
            GeoKind::Qua17 => Qua17::EDGE_NODE_IDS[e][i],
            // Tet
            GeoKind::Tet4 => Tet4::EDGE_NODE_IDS[e][i],
            GeoKind::Tet10 => Tet10::EDGE_NODE_IDS[e][i],
            GeoKind::Tet20 => Tet20::EDGE_NODE_IDS[e][i],
            // Hex
            GeoKind::Hex8 => Hex8::EDGE_NODE_IDS[e][i],
            GeoKind::Hex20 => Hex20::EDGE_NODE_IDS[e][i],
            GeoKind::Hex32 => Hex32::EDGE_NODE_IDS[e][i],
        }
    }
/// Returns the local id of node on edge
///
/// # Input
///
/// * `e` -- index of edge in [0, nedge-1]
/// * `i` -- index of local node [0, edge_nnode-1]
///
/// # Examples
///
/// ```
/// use gemlab::shapes::GeoKind;
///
/// //          .4-----[7]------7
/// //        ,' |            ,'|
/// //      [4] [8]         [6] |  [#] indicates local
/// //    ,'     |        ,'    |      edge number "e"
/// //  5'========[5]===6'     [11]
/// //  |               |       |
/// //  |        |      |       |
/// // [9]      ,0-[3]- | - - - 3
/// //  |     ,'       [10]  [2]
/// //  |   [0]         |   ,'
/// //  | ,'            | ,'
/// //  1'-----[1]------2'
/// let kind = GeoKind::Hex8;
/// let edges: Vec<_> = (0..kind.nedge())
///     .map(|e| (kind.edge_node_id(e, 0), kind.edge_node_id(e, 1)))
///     .collect();
/// assert_eq!(
///     edges,
///     &[(0, 1), (1, 2), (2, 3), (3, 0),
///       (4, 5), (5, 6), (6, 7), (7, 4),
///       (0, 4), (1, 5), (2, 6), (3, 7),
///     ]
/// );
/// ```
Returns the local id of node on edge
Returns the local id of node on edge
pub fn edge_node_id(&self, e: usize, i: usize) -> usize {
        match self {
            // Lin
            GeoKind::Lin2 => 0,
            GeoKind::Lin3 => 0,
            GeoKind::Lin4 => 0,
            GeoKind::Lin5 => 0,
            // Tri
            GeoKind::Tri3 => Tri3::EDGE_NODE_IDS[e][i],
            GeoKind::Tri6 => Tri6::EDGE_NODE_IDS[e][i],
            GeoKind::Tri10 => Tri10::EDGE_NODE_IDS[e][i],
            GeoKind::Tri15 => Tri15::EDGE_NODE_IDS[e][i],
            // Qua
            GeoKind::Qua4 => Qua4::EDGE_NODE_IDS[e][i],
            GeoKind::Qua8 => Qua8::EDGE_NODE_IDS[e][i],
            GeoKind::Qua9 => Qua9::EDGE_NODE_IDS[e][i],
            GeoKind::Qua12 => Qua12::EDGE_NODE_IDS[e][i],
            GeoKind::Qua16 => Qua16::EDGE_NODE_IDS[e][i],
            GeoKind::Qua17 => Qua17::EDGE_NODE_IDS[e][i],
            // Tet
            GeoKind::Tet4 => Tet4::EDGE_NODE_IDS[e][i],
            GeoKind::Tet10 => Tet10::EDGE_NODE_IDS[e][i],
            GeoKind::Tet20 => Tet20::EDGE_NODE_IDS[e][i],
            // Hex
            GeoKind::Hex8 => Hex8::EDGE_NODE_IDS[e][i],
            GeoKind::Hex20 => Hex20::EDGE_NODE_IDS[e][i],
            GeoKind::Hex32 => Hex32::EDGE_NODE_IDS[e][i],
        }
    }
pub fn edge_node_id ( & self , e : usize , i : usize ) -> usize { match self { // Lin GeoKind :: Lin2 => 0 , GeoKind :: Lin3 => 0 , GeoKind :: Lin4 => 0 , GeoKind :: Lin5 => 0 , // Tri GeoKind :: Tri3 => Tri3 :: EDGE_NODE_IDS [ e ] [ i ] , GeoKind :: Tri6 => Tri6 :: EDGE_NODE_IDS [ e ] [ i ] , GeoKind :: Tri10 => Tri10 :: EDGE_NODE_IDS [ e ] [ i ] , GeoKind :: Tri15 => Tri15 :: EDGE_NODE_IDS [ e ] [ i ] , // Qua GeoKind :: Qua4 => Qua4 :: EDGE_NODE_IDS [ e ] [ i ] , GeoKind :: Qua8 => Qua8 :: EDGE_NODE_IDS [ e ] [ i ] , GeoKind :: Qua9 => Qua9 :: EDGE_NODE_IDS [ e ] [ i ] , GeoKind :: Qua12 => Qua12 :: EDGE_NODE_IDS [ e ] [ i ] , GeoKind :: Qua16 => Qua16 :: EDGE_NODE_IDS [ e ] [ i ] , GeoKind :: Qua17 => Qua17 :: EDGE_NODE_IDS [ e ] [ i ] , // Tet GeoKind :: Tet4 => Tet4 :: EDGE_NODE_IDS [ e ] [ i ] , GeoKind :: Tet10 => Tet10 :: EDGE_NODE_IDS [ e ] [ i ] , GeoKind :: Tet20 => Tet20 :: EDGE_NODE_IDS [ e ] [ i ] , // Hex GeoKind :: Hex8 => Hex8 :: EDGE_NODE_IDS [ e ] [ i ] , GeoKind :: Hex20 => Hex20 :: EDGE_NODE_IDS [ e ] [ i ] , GeoKind :: Hex32 => Hex32 :: EDGE_NODE_IDS [ e ] [ i ] , } }
Returns the local id of node on edge
Returns the local id of node on edge
&self
e
usize
i
usize
&self
e
usize
i
usize
input
`e` -- index of edge in [0, nedge-1]
`i` -- index of local node [0, edge_nnode-1]
` e ` -- index of edge in [ 0 nedge - 1 ] ` i ` -- index of local node [ 0 edge_nnode - 1 ]
examples
```
use gemlab::shapes::GeoKind.


` ` ` use gemlab :: shapes :: GeoKind .