Find junctions and end points in a skeleton.
::junctions_skeleton detects junctions and end points in a skeleton (see ::skeleton). The junctions in the input region Region are output as a region in JuncPoints, while the end points are output as a region in EndPoints.
|
Region (input_object) |
region(-array) -> Hobject: HRegion(Array) |
| Input skeletons. | |
|
EndPoints (output_object) |
region(-array) -> Hobject * : HRegion(Array) |
| Extracted end points. | |
| Number of elements: EndPoints == Region | |
|
JuncPoints (output_object) |
region(-array) -> Hobject * : HRegion(Array) |
| Extracted junctions. | |
| Number of elements: JuncPoints == Region | |
/* non-connected branches of a skeleton */ skeleton(Region,&Skeleton) ; junctions_skeleton(Skeleton,&EPoints,&JPoints) ; difference(S,JPoints,&Rows) ; connection(Rows,&Parts) ;
Let F be the area of the input region. Then the runtime complexity is O(F).
::junctions_skeleton always returns the value H_MSG_TRUE. The behavior in case of empty input (no regions given) can be set via ::set_system('no_object_result',<Result>), the behavior in case of an empty input region via ::set_system('empty_region_result',<Result>), and the behavior in case of an empty result region via ::set_system('store_empty_region',<true/false>). If necessary, an exception handling is raised.
::area_center, ::connection, ::get_region_points, ::difference
::pruning, ::split_skeleton_region
Region processing