Skip to content

fossil_arrangement ​

Source: src/lib/fossil_arrangement.f90

Dependencies

Contents ​

Variables ​

NameTypeAttributesDescription
MAX_CHILDRENinteger(kind=I4P)parameter
ARR_STATUS_OKinteger(kind=I4P)parameter
ARR_STATUS_CDT_FAILEDinteger(kind=I4P)parameter

Derived Types ​

cut_list_t ​

Components ​

NameTypeAttributesDescription
n_segmentsinteger(kind=I4P)
seginteger(kind=I4P)allocatable
srcinteger(kind=I4P)allocatable
n_steinerinteger(kind=I4P)
steinerinteger(kind=I4P)allocatable
n_coplanarinteger(kind=I4P)
coplanarinteger(kind=I4P)allocatable

arrangement_t ​

Components ​

NameTypeAttributesDescription
n_ainteger(kind=I4P)
n_binteger(kind=I4P)
facettype(facet_object)allocatable
ownerinteger(kind=I4P)allocatable
cuttype(cut_list_t)allocatable
tree_atype(aabb_tree_object)pointer
tree_btype(aabb_tree_object)pointer
n_ptsinteger(kind=I4P)
ptstype(implicit_point_t)allocatable
xyzreal(kind=R8P)allocatable
cornerinteger(kind=I4P)allocatable

Subroutines ​

arrangement_initialize ​

fortran
subroutine arrangement_initialize(arr, facet_a, tree_a, facet_b, tree_b)

Arguments

NameTypeIntentAttributesDescription
arrtype(arrangement_t)out
facet_atype(facet_object)intarget
tree_atype(aabb_tree_object)intarget
facet_btype(facet_object)intarget
tree_btype(aabb_tree_object)intarget

Call graph

arrangement_collect_intersections ​

fortran
subroutine arrangement_collect_intersections(arr)

Arguments

NameTypeIntentAttributesDescription
arrtype(arrangement_t)inout

Call graph

collect_brute_force ​

fortran
subroutine collect_brute_force(arr)

Arguments

NameTypeIntentAttributesDescription
arrtype(arrangement_t)inout

Call graph

traverse_cross_pair ​

Attributes: recursive

fortran
subroutine traverse_cross_pair(arr, na, nb)

Arguments

NameTypeIntentAttributesDescription
arrtype(arrangement_t)inout
nainteger(kind=I4P)in
nbinteger(kind=I4P)in

Call graph

enumerate_leaf_cross_pair ​

fortran
subroutine enumerate_leaf_cross_pair(arr, na, nb)

Arguments

NameTypeIntentAttributesDescription
arrtype(arrangement_t)inout
nainteger(kind=I4P)in
nbinteger(kind=I4P)in

Call graph

register_point ​

fortran
subroutine register_point(arr, x, id)

Arguments

NameTypeIntentAttributesDescription
arrtype(arrangement_t)inout
xtype(implicit_point_t)in
idinteger(kind=I4P)out

Call graph

merge_points ​

fortran
subroutine merge_points(arr)

Arguments

NameTypeIntentAttributesDescription
arrtype(arrangement_t)inout

Call graph

separate_rounded ​

fortran
subroutine separate_rounded(arr)

Arguments

NameTypeIntentAttributesDescription
arrtype(arrangement_t)inout

Call graph

sort_xyz ​

fortran
subroutine sort_xyz(xyz, key)

Arguments

NameTypeIntentAttributesDescription
xyzreal(kind=R8P)in
keyinteger(kind=I4P)inout

Call graph

sort_points ​

fortran
subroutine sort_points(pts, key, mode)

Arguments

NameTypeIntentAttributesDescription
ptstype(implicit_point_t)in
keyinteger(kind=I4P)inout
modeinteger(kind=I4P)in

Call graph

propagate_edge_points ​

fortran
subroutine propagate_edge_points(arr)

Arguments

NameTypeIntentAttributesDescription
arrtype(arrangement_t)inout

Call graph

unique_ids ​

fortran
subroutine unique_ids(cut, ids, n, with_steiner)

Arguments

NameTypeIntentAttributesDescription
cuttype(cut_list_t)in
idsinteger(kind=I4P)outallocatable
ninteger(kind=I4P)out
with_steinerlogicalin

Call graph

append_steiner ​

fortran
subroutine append_steiner(cut, id)

Arguments

NameTypeIntentAttributesDescription
cuttype(cut_list_t)inout
idinteger(kind=I4P)in

Call graph

append_partner ​

fortran
subroutine append_partner(cut, g)

Arguments

NameTypeIntentAttributesDescription
cuttype(cut_list_t)inout
ginteger(kind=I4P)in

Call graph

cut_sources ​

fortran
subroutine cut_sources(arr, gi, ip, iq, g, ng)

Arguments

NameTypeIntentAttributesDescription
arrtype(arrangement_t)in
giinteger(kind=I4P)in
ipinteger(kind=I4P)in
iqinteger(kind=I4P)in
ginteger(kind=I4P)out
nginteger(kind=I4P)out

Call graph

collect_pair ​

fortran
subroutine collect_pair(arr, gi, gj)

Arguments

NameTypeIntentAttributesDescription
arrtype(arrangement_t)inout
giinteger(kind=I4P)in
gjinteger(kind=I4P)in

Call graph

append_segment ​

fortran
subroutine append_segment(cut, ip, iq, g)

Arguments

NameTypeIntentAttributesDescription
cuttype(cut_list_t)inout
ipinteger(kind=I4P)in
iqinteger(kind=I4P)in
ginteger(kind=I4P)in

Call graph

project_to_plane ​

Attributes: pure

fortran
subroutine project_to_plane(facet, p3d, u, v)

Arguments

NameTypeIntentAttributesDescription
facettype(facet_object)in
p3dtype(vector_R8P)in
ureal(kind=R8P)out
vreal(kind=R8P)out

Call graph

lift_from_plane ​

Attributes: pure

fortran
subroutine lift_from_plane(facet, u, v, p3d)

Arguments

NameTypeIntentAttributesDescription
facettype(facet_object)in
ureal(kind=R8P)in
vreal(kind=R8P)in
p3dtype(vector_R8P)out

Call graph

arrangement_retriangulate ​

fortran
subroutine arrangement_retriangulate(arr, sub_facet, sub_owner, sub_source, status, sub_pid, sub_cut)

Arguments

NameTypeIntentAttributesDescription
arrtype(arrangement_t)in
sub_facettype(facet_object)outallocatable
sub_ownerinteger(kind=I4P)outallocatable
sub_sourceinteger(kind=I4P)outallocatable
statusinteger(kind=I4P)outoptional
sub_pidinteger(kind=I4P)outallocatable, optional
sub_cutlogicaloutallocatable, optional

Call graph

push ​

fortran
subroutine push(buf_facet, buf_owner, buf_source, used, cap, f, owner, source, buf_pid)

Arguments

NameTypeIntentAttributesDescription
buf_facettype(facet_object)inoutallocatable
buf_ownerinteger(kind=I4P)inoutallocatable
buf_sourceinteger(kind=I4P)inoutallocatable
usedinteger(kind=I4P)inout
capinteger(kind=I4P)inout
ftype(facet_object)in
ownerinteger(kind=I4P)in
sourceinteger(kind=I4P)in
buf_pidinteger(kind=I4P)inoutallocatable

Call graph

Functions ​

coplanar_partner ​

Returns: integer(kind=I4P)

fortran
function coplanar_partner(arr, gi, pid) result(partner)

Arguments

NameTypeIntentAttributesDescription
arrtype(arrangement_t)in
giinteger(kind=I4P)in
pidinteger(kind=I4P)in

Call graph

xyz_of ​

Attributes: pure

Returns: real(kind=R8P)

fortran
function xyz_of(a) result(r)

Arguments

NameTypeIntentAttributesDescription
atype(vector_R8P)in

Call graph

bboxes_overlap ​

Attributes: pure

Returns: logical

fortran
function bboxes_overlap(fa, fb) result(yes)

Arguments

NameTypeIntentAttributesDescription
fatype(facet_object)in
fbtype(facet_object)in

Call graph