Herror ::junctions_skeleton (
    Hobject Region,
    Hobject *EndPoints,
    Hobject *JuncPoints
)
HRegion HRegion::JunctionsSkeleton (
    HRegion *JuncPoints
) const
HRegionArray HRegionArray::JunctionsSkeleton (
    HRegionArray *JuncPoints
) const

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.


Parameters

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


Example
/* non-connected branches of a skeleton */
skeleton(Region,&Skeleton) ;
junctions_skeleton(Skeleton,&EPoints,&JPoints) ;
difference(S,JPoints,&Rows) ;
connection(Rows,&Parts) ;

Complexity

Let F be the area of the input region. Then the runtime complexity is O(F).


Result

::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.


Possible Predecessors

::skeleton


Possible Successors

::area_center, ::connection, ::get_region_points, ::difference


See also

::pruning, ::split_skeleton_region


Module

Region processing



Copyright © 1996-2002 MVTec Software GmbH