tem_shape_type Derived Type

type, public :: tem_shape_type

Complete shape definitions


Inherits

type~~tem_shape_type~~InheritsGraph type~tem_shape_type tem_shape_type type~tem_canonicalnd_type tem_canonicalND_type type~tem_shape_type->type~tem_canonicalnd_type canoND type~tem_cylinder_type tem_cylinder_type type~tem_shape_type->type~tem_cylinder_type cylinder type~tem_ellipsoid_type tem_ellipsoid_type type~tem_shape_type->type~tem_ellipsoid_type ellipsoid type~tem_sphere_type tem_sphere_type type~tem_shape_type->type~tem_sphere_type sphere type~tem_stldata_type tem_stlData_type type~tem_shape_type->type~tem_stldata_type stl_data type~tem_triangle_type tem_triangle_type type~tem_shape_type->type~tem_triangle_type triangle type~tem_box_type tem_box_type type~tem_canonicalnd_type->type~tem_box_type box type~tem_line_type tem_line_type type~tem_canonicalnd_type->type~tem_line_type line type~tem_plane_type tem_plane_type type~tem_canonicalnd_type->type~tem_plane_type plane type~tem_point_type tem_point_type type~tem_canonicalnd_type->type~tem_point_type point type~tem_stlhead_type tem_stlHead_type type~tem_stldata_type->type~tem_stlhead_type head type~tem_box_type->type~tem_plane_type plane type~tem_plane_type->type~tem_triangle_type triangle

Inherited by

type~~tem_shape_type~~InheritedByGraph type~tem_shape_type tem_shape_type type~spatial_parabol_type spatial_parabol_type type~spatial_parabol_type->type~tem_shape_type geometry type~tem_convergenceheader_type tem_convergenceHeader_type type~tem_convergenceheader_type->type~tem_shape_type geometry type~tem_spacetime_fun_type tem_spacetime_fun_type type~tem_spacetime_fun_type->type~tem_shape_type geom type~tem_spatial_type tem_spatial_type type~tem_spacetime_fun_type->type~tem_spatial_type spatial type~tem_tracking_config_type tem_tracking_config_type type~tem_tracking_config_type->type~tem_shape_type geometry type~tem_convergence_type tem_convergence_type type~tem_convergence_type->type~tem_convergenceheader_type header type~tem_spatial_type->type~spatial_parabol_type parabol type~tem_st_fun_listelem_type tem_st_fun_listElem_type type~tem_st_fun_listelem_type->type~tem_spacetime_fun_type val type~tem_st_fun_listelem_type->type~tem_st_fun_listelem_type next type~tem_tracking_type tem_tracking_type type~tem_tracking_type->type~tem_tracking_config_type config type~tem_variable_type tem_variable_type type~tem_variable_type->type~tem_spacetime_fun_type st_fun type~tem_abortcriteria_type tem_abortCriteria_type type~tem_abortcriteria_type->type~tem_convergence_type convergence type~tem_ini_condition_type tem_ini_condition_type type~tem_ini_condition_type->type~tem_spatial_type ini_state type~tem_st_fun_linkedlist_type tem_st_fun_linkedList_type type~tem_st_fun_linkedlist_type->type~tem_st_fun_listelem_type head type~tem_simcontrol_type tem_simControl_type type~tem_simcontrol_type->type~tem_abortcriteria_type abortCriteria

Components

Type Visibility Attributes Name Initial
character(len=labelLen), public :: kind

a kind of the shape defined.

integer, public :: shapeID = 0

a identification for the shape

type(tem_canonicalND_type), public, allocatable :: canoND(:)

canonical definition

type(tem_triangle_type), public, allocatable :: triangle(:)

triangle definition

type(tem_stlData_type), public :: stl_data

STL definition

type(tem_sphere_type), public, allocatable :: sphere(:)

spheres definition

type(tem_ellipsoid_type), public, allocatable :: ellipsoid(:)

ellipsoid definition

type(tem_cylinder_type), public, allocatable :: cylinder(:)

cylinder definition

integer(kind=long_k), public :: propBits = 0_long_k

property bits

character(len=labelLen), public, allocatable :: bcLabels(:)

boundary labels, used to identify elements belong to these boundaries It is allocated and set in routine: tem_shape_load_bcLabels

real(kind=rk), public :: cutOffQVal

boundary elements below this threshold are omitted

integer, public :: minLevel = 1

level range for level shape type

integer, public :: maxLevel = globalMaxLevels
logical, public :: inverted = .false.

If true then subTree is created for inverted shape i.e nonintersected


Source Code

  type tem_shape_type

    !> a kind of the shape defined.
    character(len=labelLen) :: kind

    !> a identification for the shape
    integer :: shapeID = 0

    !> canonical definition
    type(tem_canonicalND_type), allocatable :: canoND(:)

    !> triangle definition
    type(tem_triangle_type), allocatable :: triangle(:)

    !> STL definition
    type(tem_stlData_type) :: stl_data

    !> spheres definition
    type(tem_sphere_type), allocatable :: sphere(:)

    !> ellipsoid definition
    type(tem_ellipsoid_type), allocatable :: ellipsoid(:)

    !> cylinder definition
    type(tem_cylinder_type), allocatable :: cylinder(:)

    !> property bits
    integer(kind=long_k) :: propBits = 0_long_k

    !> boundary labels, used to identify elements belong to these boundaries
    !! It is allocated and set in routine: tem_shape_load_bcLabels
    character(len=labelLen), allocatable :: bcLabels(:)

    !> boundary elements below this threshold are omitted
    real(kind=rk) :: cutOffQVal

    !> level range for level shape type
    integer :: minLevel = 1
    integer :: maxLevel = globalMaxLevels

    !> If true then subTree is created for inverted shape i.e nonintersected
    logical :: inverted = .false.
  end type tem_shape_type