This routine computes the minimum distance of a given link and all the geometries in a given node:\n the link is given by a vector and a origin point.\n the node is given by the node position in the protoTree.\n If there is no intersection, qVal returns -1.0
| Type | Intent | Optional | Attributes | Name | ||
|---|---|---|---|---|---|---|
| type(sdr_protoTree_type), | intent(in) | :: | proto | preliminary tree |
||
| type(sdr_geometry_type), | intent(in) | :: | geometry | contains all geometrical objects |
||
| real(kind=rk), | intent(in) | :: | dx | dx of current level |
||
| integer, | intent(in) | :: | iDir | Direction |
||
| real(kind=rk), | intent(in) | :: | origin(3) | current element barycenter |
||
| integer | :: | node_pos | position of node to find the geometries |
|||
| real(kind=rk), | intent(out) | :: | qVal | distance from boundary for all 26 neighbor directions |
| Type | Visibility | Attributes | Name | Initial | |||
|---|---|---|---|---|---|---|---|
| integer, | private | :: | iSpatialObj | ||||
| integer, | private | :: | obj_pos | ||||
| integer, | private | :: | geom_prim | ||||
| integer, | private | :: | atb_pos | ||||
| integer, | private | :: | prim_pos | ||||
| logical, | private | :: | intersected | ||||
| type(tem_line_type), | private | :: | line | ||||
| type(tem_point_type), | private | :: | intersect_p | ||||
| real(kind=rk), | private | :: | qVal_t | ||||
| integer, | private | :: | intersected_first | ||||
| integer, | private | :: | intersected_last |