Appearance
fossil_aabb_object
Source: src/lib/fossil_aabb_object.f90
Dependencies
Contents
- aabb_object
- add_facets
- compute_octants
- compute_vertices_nearby
- destroy
- get_aabb_facets
- initialize
- save_geometry_tecplot_ascii
- save_facets_into_file_stl
- translate
- union
- update_extents
- aabb_assign_aabb
- compute_bb_from_facets
- closest_point
- distance
- distance_from_facets
- do_ray_intersect
- has_facets
- is_inside
- median
- ray_intersections_number
- vertex
Derived Types
aabb_object
Components
| Name | Type | Attributes | Description |
|---|---|---|---|
bmin | type(vector_R8P) | ||
bmax | type(vector_R8P) | ||
facet_id | type(list_id_object) |
Type-Bound Procedures
| Name | Attributes | Description |
|---|---|---|
add_facets | pass(self) | |
closest_point | pass(self) | |
compute_octants | pass(self) | |
compute_vertices_nearby | pass(self) | |
destroy | pass(self) | |
distance | pass(self) | |
distance_from_facets | pass(self) | |
do_ray_intersect | pass(self) | |
get_aabb_facets | pass(self) | |
has_facets | pass(self) | |
initialize | pass(self) | |
is_inside | pass(self) | |
median | pass(self) | |
ray_intersections_number | pass(self) | |
save_geometry_tecplot_ascii | pass(self) | |
save_facets_into_file_stl | pass(self) | |
translate | pass(self) | |
union | pass(self) | |
update_extents | pass(self) | |
vertex | pass(self) | |
assignment(=) | ||
aabb_assign_aabb | pass(lhs) |
Subroutines
add_facets
Attributes: pure
fortran
subroutine add_facets(self, facet_id, facet, is_exclusive)Arguments
| Name | Type | Intent | Attributes | Description |
|---|---|---|---|---|
self | class(aabb_object) | inout | ||
facet_id | type(list_id_object) | inout | ||
facet | type(facet_object) | in | ||
is_exclusive | logical | in | optional |
Call graph
compute_octants
Attributes: pure
fortran
subroutine compute_octants(self, octant)Arguments
| Name | Type | Intent | Attributes | Description |
|---|---|---|---|---|
self | class(aabb_object) | in | ||
octant | type(aabb_object) | out |
Call graph
compute_vertices_nearby
Attributes: pure
fortran
subroutine compute_vertices_nearby(self, facet, tolerance_to_be_identical, tolerance_to_be_nearby)Arguments
| Name | Type | Intent | Attributes | Description |
|---|---|---|---|---|
self | class(aabb_object) | in | ||
facet | type(facet_object) | inout | ||
tolerance_to_be_identical | real(kind=R8P) | in | ||
tolerance_to_be_nearby | real(kind=R8P) | in |
Call graph
destroy
Attributes: elemental
fortran
subroutine destroy(self)Arguments
| Name | Type | Intent | Attributes | Description |
|---|---|---|---|---|
self | class(aabb_object) | inout |
Call graph
get_aabb_facets
Attributes: pure
fortran
subroutine get_aabb_facets(self, facet, aabb_facet)Arguments
| Name | Type | Intent | Attributes | Description |
|---|---|---|---|---|
self | class(aabb_object) | in | ||
facet | type(facet_object) | in | ||
aabb_facet | type(facet_object) | out | allocatable |
Call graph
initialize
Attributes: pure
fortran
subroutine initialize(self, facet, bmin, bmax)Arguments
| Name | Type | Intent | Attributes | Description |
|---|---|---|---|---|
self | class(aabb_object) | inout | ||
facet | type(facet_object) | in | optional | |
bmin | type(vector_R8P) | in | optional | |
bmax | type(vector_R8P) | in | optional |
Call graph
save_geometry_tecplot_ascii
fortran
subroutine save_geometry_tecplot_ascii(self, file_unit, aabb_name)Arguments
| Name | Type | Intent | Attributes | Description |
|---|---|---|---|---|
self | class(aabb_object) | in | ||
file_unit | integer(kind=I4P) | in | ||
aabb_name | character(len=*) | in | optional |
Call graph
save_facets_into_file_stl
fortran
subroutine save_facets_into_file_stl(self, facet, file_name, is_ascii)Arguments
| Name | Type | Intent | Attributes | Description |
|---|---|---|---|---|
self | class(aabb_object) | in | ||
facet | type(facet_object) | in | ||
file_name | character(len=*) | in | ||
is_ascii | logical | in |
Call graph
translate
Attributes: elemental
fortran
subroutine translate(self, delta)Arguments
| Name | Type | Intent | Attributes | Description |
|---|---|---|---|---|
self | class(aabb_object) | inout | ||
delta | type(vector_R8P) | in |
Call graph
union
Attributes: pure
fortran
subroutine union(self, other)Arguments
| Name | Type | Intent | Attributes | Description |
|---|---|---|---|---|
self | class(aabb_object) | inout | ||
other | type(aabb_object) | in |
Call graph
update_extents
Attributes: pure
fortran
subroutine update_extents(self, facet)Arguments
| Name | Type | Intent | Attributes | Description |
|---|---|---|---|---|
self | class(aabb_object) | inout | ||
facet | type(facet_object) | in |
Call graph
aabb_assign_aabb
Attributes: pure
fortran
subroutine aabb_assign_aabb(lhs, rhs)Arguments
| Name | Type | Intent | Attributes | Description |
|---|---|---|---|---|
lhs | class(aabb_object) | inout | ||
rhs | type(aabb_object) | in |
compute_bb_from_facets
Attributes: pure
fortran
subroutine compute_bb_from_facets(facet, bmin, bmax)Arguments
| Name | Type | Intent | Attributes | Description |
|---|---|---|---|---|
facet | type(facet_object) | in | ||
bmin | type(vector_R8P) | inout | ||
bmax | type(vector_R8P) | inout |
Call graph
Functions
closest_point
Attributes: pure
Returns: type(vector_R8P)
fortran
function closest_point(self, point) result(closest)Arguments
| Name | Type | Intent | Attributes | Description |
|---|---|---|---|---|
self | class(aabb_object) | in | ||
point | type(vector_R8P) | in |
Call graph
distance
Attributes: pure
Returns: real(kind=R8P)
fortran
function distance(self, point)Arguments
| Name | Type | Intent | Attributes | Description |
|---|---|---|---|---|
self | class(aabb_object) | in | ||
point | type(vector_R8P) | in |
Call graph
distance_from_facets
Attributes: pure
Returns: real(kind=R8P)
fortran
function distance_from_facets(self, facet, point) result(distance)Arguments
| Name | Type | Intent | Attributes | Description |
|---|---|---|---|---|
self | class(aabb_object) | in | ||
facet | type(facet_object) | in | ||
point | type(vector_R8P) | in |
Call graph
do_ray_intersect
Attributes: pure
Returns: logical
fortran
function do_ray_intersect(self, ray_origin, ray_direction) result(do_intersect)Arguments
| Name | Type | Intent | Attributes | Description |
|---|---|---|---|---|
self | class(aabb_object) | in | ||
ray_origin | type(vector_R8P) | in | ||
ray_direction | type(vector_R8P) | in |
Call graph
has_facets
Attributes: pure
Returns: logical
fortran
function has_facets(self)Arguments
| Name | Type | Intent | Attributes | Description |
|---|---|---|---|---|
self | class(aabb_object) | in |
Call graph
is_inside
Attributes: pure
Returns: logical
fortran
function is_inside(self, point)Arguments
| Name | Type | Intent | Attributes | Description |
|---|---|---|---|---|
self | class(aabb_object) | in | ||
point | type(vector_R8P) | in |
Call graph
median
Attributes: pure
Returns: real(kind=R8P)
fortran
function median(self)Arguments
| Name | Type | Intent | Attributes | Description |
|---|---|---|---|---|
self | class(aabb_object) | in |
Call graph
ray_intersections_number
Attributes: pure
Returns: integer(kind=I4P)
fortran
function ray_intersections_number(self, facet, ray_origin, ray_direction) result(intersections_number)Arguments
| Name | Type | Intent | Attributes | Description |
|---|---|---|---|---|
self | class(aabb_object) | in | ||
facet | type(facet_object) | in | ||
ray_origin | type(vector_R8P) | in | ||
ray_direction | type(vector_R8P) | in |
Call graph
vertex
Attributes: pure
Returns: type(vector_R8P)
fortran
function vertex(self)Arguments
| Name | Type | Intent | Attributes | Description |
|---|---|---|---|---|
self | class(aabb_object) | in |
Call graph