Woolz Image Processing
Version 1.7.5
|
Performs a proper interval-domain skeletonisation Hilditch's method. More...
Data Structures | |
struct | _WlzSkIntvLn |
struct | _WlzExtIntv |
Typedefs | |
typedef struct _WlzSkIntvLn | WlzSkIntvLn |
typedef struct _WlzExtIntv | WlzExtIntv |
Functions | |
static WlzErrorNum | WlzSkStrip4 (WlzObject *, WlzObject *, WlzObject *, WlzInterval *, int, int *, int) |
static WlzObject * | WlzSkeleton3D (WlzObject *, int, WlzConnectType, WlzErrorNum *) |
WlzObject * | WlzSkeleton (WlzObject *srcObj, int smoothpasses, WlzConnectType minCon, WlzErrorNum *dstErr) |
Computes the skeleton of the given object using Hilditch's method. See detail. More... | |
Performs a proper interval-domain skeletonisation Hilditch's method.
This program is free software; you can redistribute it and/or modify it under the terms of the GNU General Public License as published by the Free Software Foundation; either version 2 of the License, or (at your option) any later version.
This program is distributed in the hope that it will be useful but WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License for more details.
You should have received a copy of the GNU General Public License along with this program; if not, write to the Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
typedef struct _WlzSkIntvLn WlzSkIntvLn |
typedef struct _WlzExtIntv WlzExtIntv |
static WlzErrorNum WlzSkStrip4 | ( | WlzObject * | skObj, |
WlzObject * | potDelObj, | ||
WlzObject * | delObj, | ||
WlzInterval * | delItvBase, | ||
int | itvSpace, | ||
int * | delArea, | ||
int | smPass | ||
) |
References _WlzObject::domain, _WlzDomain::i, _WlzSkIntvLn::ijleft, _WlzSkIntvLn::ijntpos, _WlzSkIntvLn::ijright, _WlzInterval::ileft, _WlzSkIntvLn::intcount, _WlzSkIntvLn::intp, _WlzIntervalWSpace::intrmn, _WlzIntervalDomain::intvlines, _WlzIntervalLine::intvs, _WlzInterval::iright, _WlzIntervalDomain::kol1, _WlzIntervalDomain::lastln, _WlzIntervalWSpace::lftpos, _WlzIntervalDomain::line1, _WlzIntervalWSpace::linpos, _WlzIntervalLine::nintvs, _WlzIntervalWSpace::nwlpos, _WlzSkIntvLn::prevright, _WlzIntervalWSpace::rgtpos, WLZ_ERR_DOMAIN_DATA, WLZ_ERR_EOO, WLZ_ERR_NONE, WLZ_MIN, WLZ_RASTERDIR_ILIC, WlzInitRasterScan(), WlzMakeInterval(), and WlzNextInterval().
Referenced by WlzSkeleton3D().
static WlzObject * WlzSkeleton3D | ( | WlzObject * | srcObj, |
int | smoothpasses, | ||
WlzConnectType | minCon, | ||
WlzErrorNum * | dstErr | ||
) |
References ALC_ER_NONE, AlcFreeStackPush(), AlcMalloc(), _WlzValues::core, _WlzDomain::core, _WlzObject::domain, _WlzIntervalDomain::freeptr, _WlzDomain::i, _WlzIntervalDomain::kol1, _WlzIntervalDomain::lastkl, _WlzIntervalDomain::lastln, _WlzIntervalDomain::line1, _WlzCoreDomain::type, WLZ_18_CONNECTED, WLZ_26_CONNECTED, WLZ_2D_DOMAINOBJ, WLZ_4_CONNECTED, WLZ_6_CONNECTED, WLZ_8_CONNECTED, WLZ_ERR_DOMAIN_DATA, WLZ_ERR_DOMAIN_TYPE, WLZ_ERR_MEM_ALLOC, WLZ_ERR_NONE, WLZ_ERR_OBJECT_TYPE, WLZ_ERR_PARAM_DATA, WLZ_INTERVALDOMAIN_INTVL, WLZ_INTERVALDOMAIN_RECT, WlzAssignDomain(), WlzDiffDomain(), WlzFreeDomain(), WlzFreeObj(), WlzIntervalCount(), WlzMakeIntervalDomain(), WlzMakeMain(), WlzNewIDomain(), and WlzSkStrip4().
Referenced by WlzSkeleton().