VIP: Volume Image Processing


topology.h File Reference
#include <math.h>
#include <vip/volume.h>
#include <vip/alloc.h>
#include <vip/connex.h>
#include <vip/topology/topology_gen.h>
#include <vip/topology/wellcomposed_gen.h>
Include dependency graph for topology.h:
This graph shows which files directly or indirectly include this file:

Go to the source code of this file.

Data Structures

struct  topology26
 

Macros

#define TOPO_A   10
 
#define TOPO_VOLUME_POINT   10
 
#define TOPO_B   20
 
#define TOPO_ISOLATED_POINT   20
 
#define TOPO_C   30
 
#define TOPO_BORDER_POINT   30
 
#define TOPO_D   40
 
#define TOPO_CURVE_POINT   40
 
#define TOPO_E   50
 
#define TOPO_JUNCTION_CURVES_POINT   50
 
#define TOPO_F   60
 
#define TOPO_SURFACE_POINT   60
 
#define TOPO_G   70
 
#define TOPO_JUNCTION_SURFACE_CURVES_POINT   70
 
#define TOPO_H   80
 
#define TOPO_JUNCTION_SURFACES_POINT   80
 
#define TOPO_I   90
 
#define TOPO_JUNCTION_SURFACES_CURVES_POINT   90
 
#define CC_6_ADJACENT   77
 
#define CC_18_ADJACENT   78
 
#define CC_26_ADJACENT   79
 

Typedefs

typedef struct topology26 Topology26Neighborhood
 

Enumerations

enum  { WELL_COMPOSED_CRITICAL_NONE = 0 , WELL_COMPOSED_CRITICAL_C1 = 1 , WELL_COMPOSED_CRITICAL_C2 = 2 }
 

Functions

int IsRealSurfacePoint (Topology26Neighborhood *topo26)
 
Topology26NeighborhoodVipCreateTopology26Neighborhood (Volume *vol)
 
int VipGetNumberOfComponentsIn26Neighborhood (Topology26Neighborhood *topo, int connectivity, int adjacency_to_central)
 
int VipGetNumberOfComponentsIn18Neighborhood (Topology26Neighborhood *topo, int connectivity, int adjacency_to_central)
 
int VipSwitchTopology26NeighborhoodValueTable (Topology26Neighborhood *topo)
 
void VipFreeTopology26Neighborhood (Topology26Neighborhood *topo)
 
void VipDisplayTopologySingularityType (int C18, int C26)
 
VolumeVipCreateTopologyTestVolume (int type)
 
void VipDisplayTopologyTestVolume (Volume *t)
 
long * VipGetTopologyTypeTable (Topology26Neighborhood *topo)
 
void VipDisplayTopologyTypeTable (char *filename, long *typeTable)
 
void VipDisplayTopologyTypeTableInFile (char *filename, long *typeTable)
 
int VipTopologicalClassificationForLabel (Volume *vol, int label)
 
int VipTopologicalClassificationForLabelComplement (Volume *vol, int label)
 
int VipTopologicalClassificationForTwoLabelComplement (Volume *vol, int inside, int outside)
 
char * VipTopologicalStringFromDefine (int def)
 
int VipIsCurvesPoint (int Cbar, int Cstar)
 
int VipIsSimplePoint (int Cbar, int Cstar)
 
int VipFlipTopology26NeighborhoodValueTable (Topology26Neighborhood *topo)
 
int VipFillSSComponent (VipS16BITPtrBucket *comp1, VipS16BITPtrBucket *comp2, Topology26Neighborhood *top, Vip_S16BIT *adresse)
 
int VipSurfaceSimpleEquivalence (VipS16BITPtrBucket *comp1, VipS16BITPtrBucket *comp2, VipS16BITPtrBucket *comp1bis, VipS16BITPtrBucket *comp2bis)
 

Variables

const char vip_well_composed_critical_configuration_n8lookup [256]
 

Macro Definition Documentation

◆ CC_18_ADJACENT

#define CC_18_ADJACENT   78

Definition at line 95 of file topology.h.

◆ CC_26_ADJACENT

#define CC_26_ADJACENT   79

Definition at line 96 of file topology.h.

◆ CC_6_ADJACENT

#define CC_6_ADJACENT   77

Definition at line 94 of file topology.h.

◆ TOPO_A

#define TOPO_A   10

Definition at line 65 of file topology.h.

◆ TOPO_B

#define TOPO_B   20

Definition at line 68 of file topology.h.

◆ TOPO_BORDER_POINT

#define TOPO_BORDER_POINT   30

Definition at line 72 of file topology.h.

◆ TOPO_C

#define TOPO_C   30

Definition at line 71 of file topology.h.

◆ TOPO_CURVE_POINT

#define TOPO_CURVE_POINT   40

Definition at line 75 of file topology.h.

◆ TOPO_D

#define TOPO_D   40

Definition at line 74 of file topology.h.

◆ TOPO_E

#define TOPO_E   50

Definition at line 77 of file topology.h.

◆ TOPO_F

#define TOPO_F   60

Definition at line 80 of file topology.h.

◆ TOPO_G

#define TOPO_G   70

Definition at line 83 of file topology.h.

◆ TOPO_H

#define TOPO_H   80

Definition at line 86 of file topology.h.

◆ TOPO_I

#define TOPO_I   90

Definition at line 89 of file topology.h.

◆ TOPO_ISOLATED_POINT

#define TOPO_ISOLATED_POINT   20

Definition at line 69 of file topology.h.

◆ TOPO_JUNCTION_CURVES_POINT

#define TOPO_JUNCTION_CURVES_POINT   50

Definition at line 78 of file topology.h.

◆ TOPO_JUNCTION_SURFACE_CURVES_POINT

#define TOPO_JUNCTION_SURFACE_CURVES_POINT   70

Definition at line 84 of file topology.h.

◆ TOPO_JUNCTION_SURFACES_CURVES_POINT

#define TOPO_JUNCTION_SURFACES_CURVES_POINT   90

Definition at line 90 of file topology.h.

◆ TOPO_JUNCTION_SURFACES_POINT

#define TOPO_JUNCTION_SURFACES_POINT   80

Definition at line 87 of file topology.h.

◆ TOPO_SURFACE_POINT

#define TOPO_SURFACE_POINT   60

Definition at line 81 of file topology.h.

◆ TOPO_VOLUME_POINT

#define TOPO_VOLUME_POINT   10

Definition at line 66 of file topology.h.

Typedef Documentation

◆ Topology26Neighborhood

Enumeration Type Documentation

◆ anonymous enum

anonymous enum
Enumerator
WELL_COMPOSED_CRITICAL_NONE 
WELL_COMPOSED_CRITICAL_C1 
WELL_COMPOSED_CRITICAL_C2 

Definition at line 116 of file topology.h.

Function Documentation

◆ IsRealSurfacePoint()

int IsRealSurfacePoint ( Topology26Neighborhood * topo26)
extern

◆ VipCreateTopology26Neighborhood()

Topology26Neighborhood * VipCreateTopology26Neighborhood ( Volume * vol)
extern

◆ VipCreateTopologyTestVolume()

Volume * VipCreateTopologyTestVolume ( int type)
extern

◆ VipDisplayTopologySingularityType()

void VipDisplayTopologySingularityType ( int C18,
int C26 )
extern

◆ VipDisplayTopologyTestVolume()

void VipDisplayTopologyTestVolume ( Volume * t)
extern

◆ VipDisplayTopologyTypeTable()

void VipDisplayTopologyTypeTable ( char * filename,
long * typeTable )
extern

◆ VipDisplayTopologyTypeTableInFile()

void VipDisplayTopologyTypeTableInFile ( char * filename,
long * typeTable )
extern

◆ VipFillSSComponent()

int VipFillSSComponent ( VipS16BITPtrBucket * comp1,
VipS16BITPtrBucket * comp2,
Topology26Neighborhood * top,
Vip_S16BIT * adresse )

◆ VipFlipTopology26NeighborhoodValueTable()

int VipFlipTopology26NeighborhoodValueTable ( Topology26Neighborhood * topo)
extern

◆ VipFreeTopology26Neighborhood()

void VipFreeTopology26Neighborhood ( Topology26Neighborhood * topo)
extern

◆ VipGetNumberOfComponentsIn18Neighborhood()

int VipGetNumberOfComponentsIn18Neighborhood ( Topology26Neighborhood * topo,
int connectivity,
int adjacency_to_central )
extern

◆ VipGetNumberOfComponentsIn26Neighborhood()

int VipGetNumberOfComponentsIn26Neighborhood ( Topology26Neighborhood * topo,
int connectivity,
int adjacency_to_central )
extern

◆ VipGetTopologyTypeTable()

long * VipGetTopologyTypeTable ( Topology26Neighborhood * topo)
extern

◆ VipIsCurvesPoint()

int VipIsCurvesPoint ( int Cbar,
int Cstar )
extern

◆ VipIsSimplePoint()

int VipIsSimplePoint ( int Cbar,
int Cstar )
extern

◆ VipSurfaceSimpleEquivalence()

int VipSurfaceSimpleEquivalence ( VipS16BITPtrBucket * comp1,
VipS16BITPtrBucket * comp2,
VipS16BITPtrBucket * comp1bis,
VipS16BITPtrBucket * comp2bis )

◆ VipSwitchTopology26NeighborhoodValueTable()

int VipSwitchTopology26NeighborhoodValueTable ( Topology26Neighborhood * topo)
extern

◆ VipTopologicalClassificationForLabel()

int VipTopologicalClassificationForLabel ( Volume * vol,
int label )
extern

◆ VipTopologicalClassificationForLabelComplement()

int VipTopologicalClassificationForLabelComplement ( Volume * vol,
int label )
extern

◆ VipTopologicalClassificationForTwoLabelComplement()

int VipTopologicalClassificationForTwoLabelComplement ( Volume * vol,
int inside,
int outside )
extern

◆ VipTopologicalStringFromDefine()

char * VipTopologicalStringFromDefine ( int def)
extern

Variable Documentation

◆ vip_well_composed_critical_configuration_n8lookup

const char vip_well_composed_critical_configuration_n8lookup[256]
extern