Changeset 22476
- Timestamp:
- Jun 1, 2011, 4:36:41 PM (13 years ago)
- Location:
- trunk/gdal/alg
- Files:
-
- 2 added
- 4 edited
-
GNUmakefile (modified) (1 diff)
-
fpolygonize.cpp (added)
-
gdal_alg.h (modified) (1 diff)
-
gdal_alg_priv.h (modified) (2 diffs)
-
gdalrasterfpolygonenumerator.cpp (added)
-
makefile.vc (modified) (1 diff)
Legend:
- Unmodified
- Added
- Removed
-
trunk/gdal/alg/GNUmakefile
r21236 r22476 7 7 thinplatespline.o llrasterize.o gdalrasterize.o gdalgeoloc.o \ 8 8 gdalgrid.o gdalcutline.o gdalproximity.o rasterfill.o \ 9 gdalrasterpolygonenumerator.o gdalsievefilter.o \ 10 gdalwarpkernel_opencl.o polygonize.o contour.o 9 gdalrasterpolygonenumerator.o \ 10 gdalsievefilter.o gdalwarpkernel_opencl.o polygonize.o \ 11 gdalrasterfpolygonenumerator.o fpolygonize.o \ 12 contour.o 11 13 12 14 ifeq ($(HAVE_GEOS),yes) -
trunk/gdal/alg/gdal_alg.h
r18227 r22476 88 88 char **papszOptions, 89 89 GDALProgressFunc pfnProgress, 90 void * pProgressArg ); 91 92 CPLErr CPL_DLL CPL_STDCALL 93 GDALFPolygonize( GDALRasterBandH hSrcBand, 94 GDALRasterBandH hMaskBand, 95 OGRLayerH hOutLayer, int iPixValField, 96 char **papszOptions, 97 GDALProgressFunc pfnProgress, 90 98 void * pProgressArg ); 91 99 -
trunk/gdal/alg/gdal_alg_priv.h
r20078 r22476 118 118 }; 119 119 120 /************************************************************************/ 121 /* Polygon Enumerator */ 122 /* */ 123 /* Buffers has float values instead og GInt32 */ 124 /************************************************************************/ 125 class GDALRasterFPolygonEnumerator 126 127 { 128 private: 129 void MergePolygon( int nSrcId, int nDstId ); 130 int NewPolygon( float fValue ); 131 132 public: // these are intended to be readonly. 133 134 GInt32 *panPolyIdMap; 135 float *pafPolyValue; 136 137 int nNextPolygonId; 138 int nPolyAlloc; 139 140 int nConnectedness; 141 142 public: 143 GDALRasterFPolygonEnumerator( int nConnectedness=4 ); 144 ~GDALRasterFPolygonEnumerator(); 145 146 void ProcessLine( float *pafLastLineVal, float *pafThisLineVal, 147 GInt32 *panLastLineId, GInt32 *panThisLineId, 148 int nXSize ); 149 150 void CompleteMerges(); 151 152 void Clear(); 153 }; 120 154 121 155 typedef void* (*GDALTransformDeserializeFunc)( CPLXMLNode *psTree ); … … 126 160 void GDALUnregisterTransformDeserializer(void* pData); 127 161 162 /************************************************************************/ 163 /* Float comparison function. */ 164 /************************************************************************/ 165 166 /** 167 * Units in the Last Place. This specifies how big an error we are willing to 168 * accept in terms of the value of the least significant digit of the floating 169 * point number’s representation. MAX_ULPS can also be interpreted in terms of 170 * how many representable floats we are willing to accept between A and B. 171 */ 172 #define MAX_ULPS 10 173 174 GBool equals(float A, float B); 175 128 176 #endif /* ndef GDAL_ALG_PRIV_H_INCLUDED */ -
trunk/gdal/alg/makefile.vc
r21236 r22476 20 20 gdalgrid.obj gdalcutline.obj gdalproximity.obj rasterfill.obj \ 21 21 gdalsievefilter.obj gdalrasterpolygonenumerator.obj polygonize.obj \ 22 contour.obj 22 gdalrasterfpolygonenumerator.o fpolygonize.o \ 23 gdalrasterdpolygonenumerator.obj dpolygonize.obj contour.obj 23 24 24 25 default: $(OBJ)
Note:
See TracChangeset
for help on using the changeset viewer.
