[][src]Enum mshio::mshfile::ElementType

pub enum ElementType {
    Lin2,
    Tri3,
    Qua4,
    Tet4,
    Hex8,
    Pri6,
    Pyr5,
    Lin3,
    Tri6,
    Qua9,
    Tet10,
    Hex27,
    Pri18,
    Pyr14,
    Pnt,
    Qua8,
    Hex20,
    Pri15,
    Pyr13,
    Tri9,
    Tri10,
    Tri12,
    Tri15,
    Tri15i,
    Tri21,
    Lin4,
    Lin5,
    Lin6,
    Tet20,
    Tet35,
    Tet56,
    Tet22,
    Tet28,
    Polyg,
    Polyh,
    Qua16,
    Qua25,
    Qua36,
    Qua12,
    Qua16i,
    Qua20,
    Tri28,
    Tri36,
    Tri45,
    Tri55,
    Tri66,
    Qua49,
    Qua64,
    Qua81,
    Qua100,
    Qua121,
    Tri18,
    Tri21i,
    Tri24,
    Tri27,
    Tri30,
    Qua24,
    Qua28,
    Qua32,
    Qua36i,
    Qua40,
    Lin7,
    Lin8,
    Lin9,
    Lin10,
    Lin11,
    LinB,
    TriB,
    PolygB,
    LinC,
    Tet84,
    Tet120,
    Tet165,
    Tet220,
    Tet286,
    Tet34,
    Tet40,
    Tet46,
    Tet52,
    Tet58,
    Lin1,
    Tri1,
    Qua1,
    Tet1,
    Hex1,
    Pri1,
    Pri40,
    Pri75,
    Hex64,
    Hex125,
    Hex216,
    Hex343,
    Hex512,
    Hex729,
    Hex1000,
    Hex32,
    Hex44,
    Hex56,
    Hex68,
    Hex80,
    Hex92,
    Hex104,
    Pri126,
    Pri196,
    Pri288,
    Pri405,
    Pri550,
    Pri24,
    Pri33,
    Pri42,
    Pri51,
    Pri60,
    Pri69,
    Pri78,
    Pyr30,
    Pyr55,
    Pyr91,
    Pyr140,
    Pyr204,
    Pyr285,
    Pyr385,
    Pyr21,
    Pyr29,
    Pyr37,
    Pyr45,
    Pyr53,
    Pyr61,
    Pyr69,
    Pyr1,
    PntSub,
    LinSub,
    TriSub,
    TetSub,
    Tet16,
    TriMini,
    TetMini,
    Trih4,
}

Element types supported by the MSH file format

Based on Gmsh's GmshDefines.h header.

use mshio::mshfile::ElementType;
use num_traits::FromPrimitive;
use nom::lib::std::collections::HashMap;

assert_eq!(ElementType::from_u8(1).unwrap(), ElementType::Lin2);
assert_eq!(ElementType::from_u8(4).unwrap(), ElementType::Tet4);
assert!(ElementType::from_u8(0).is_none());
assert!(ElementType::from_u8(141).is_none());
let elems: HashMap<_,_> = vec![(ElementType::Tet4, 2),(ElementType::Tri3, 10)].into_iter().collect();

Variants

Lin2
Tri3
Qua4
Tet4
Hex8
Pri6
Pyr5
Lin3
Tri6
Qua9
Tet10
Hex27
Pri18
Pyr14
Pnt
Qua8
Hex20
Pri15
Pyr13
Tri9
Tri10
Tri12
Tri15
Tri15i
Tri21
Lin4
Lin5
Lin6
Tet20
Tet35
Tet56
Tet22
Tet28
Polyg
Polyh
Qua16
Qua25
Qua36
Qua12
Qua16i
Qua20
Tri28
Tri36
Tri45
Tri55
Tri66
Qua49
Qua64
Qua81
Qua100
Qua121
Tri18
Tri21i
Tri24
Tri27
Tri30
Qua24
Qua28
Qua32
Qua36i
Qua40
Lin7
Lin8
Lin9
Lin10
Lin11
LinB
TriB
PolygB
LinC
Tet84
Tet120
Tet165
Tet220
Tet286
Tet34
Tet40
Tet46
Tet52
Tet58
Lin1
Tri1
Qua1
Tet1
Hex1
Pri1
Pri40
Pri75
Hex64
Hex125
Hex216
Hex343
Hex512
Hex729
Hex1000
Hex32
Hex44
Hex56
Hex68
Hex80
Hex92
Hex104
Pri126
Pri196
Pri288
Pri405
Pri550
Pri24
Pri33
Pri42
Pri51
Pri60
Pri69
Pri78
Pyr30
Pyr55
Pyr91
Pyr140
Pyr204
Pyr285
Pyr385
Pyr21
Pyr29
Pyr37
Pyr45
Pyr53
Pyr61
Pyr69
Pyr1
PntSub
LinSub
TriSub
TetSub
Tet16
TriMini
TetMini
Trih4

Implementations

impl ElementType[src]

pub fn nodes(&self) -> Result<usize, ()>[src]

Returns the number of nodes per element of the given type

Not that for some Gmsh supported element types there is no fixed number of nodes per elements. This crate currently does not support parsing of such elements.

Trait Implementations

impl Clone for ElementType[src]

impl Copy for ElementType[src]

impl Debug for ElementType[src]

impl Eq for ElementType[src]

impl FromPrimitive for ElementType[src]

impl Hash for ElementType[src]

impl PartialEq<ElementType> for ElementType[src]

impl StructuralEq for ElementType[src]

impl StructuralPartialEq for ElementType[src]

Auto Trait Implementations

Blanket Implementations

impl<T> Any for T where
    T: 'static + ?Sized
[src]

impl<T> Borrow<T> for T where
    T: ?Sized
[src]

impl<T> BorrowMut<T> for T where
    T: ?Sized
[src]

impl<T> From<T> for T[src]

impl<T, U> Into<U> for T where
    U: From<T>, 
[src]

impl<T> ToOwned for T where
    T: Clone
[src]

type Owned = T

The resulting type after obtaining ownership.

impl<T, U> TryFrom<U> for T where
    U: Into<T>, 
[src]

type Error = Infallible

The type returned in the event of a conversion error.

impl<T, U> TryInto<U> for T where
    U: TryFrom<T>, 
[src]

type Error = <U as TryFrom<T>>::Error

The type returned in the event of a conversion error.