vtf-logo

cpt_f.h

Go to the documentation of this file.
00001 // -*- C++ -*-
00002 
00009 #include "f77_bindings.h"
00010 
00011 #if defined(__cplusplus)
00012 extern "C" {
00013 #endif
00014 
00015 
00016   //-------------------------------------------------------------------------
00017   //                         Set the parameters.
00018   //-------------------------------------------------------------------------
00019 
00021   void 
00022   cptSetParameters3F(double* domain,
00023                      double *maximumDistance);
00024 
00026   void 
00027   cptSetParameters2F(double* domain,
00028                      double* maximumDistance,
00029                      int* localClipping,
00030                      int* globalClipping,
00031                      int* decimationFactor);
00032 
00033   //-------------------------------------------------------------------------
00034   //                       Set the lattice.
00035   //-------------------------------------------------------------------------
00036 
00038   void 
00039   cptSetLattice3F(int* extents, double* domain);
00040 
00042   void 
00043   cptSetLattice2F(int* extents, double* domain);
00044 
00045   //-------------------------------------------------------------------------
00046   //                            Add grids.
00047   //-------------------------------------------------------------------------
00048 
00050 
00073   void 
00074   cptInsertGrid3F(int* indexLowerBounds, 
00075                   int* indexUpperBounds,
00076                   double* distance,
00077                   int* computeGradientDistance,
00078                   double* gradientDistance,
00079                   int* computeClosestPoint,
00080                   double* closestPoint,
00081                   int* computeClosestFace,
00082                   int* closestFace);
00083   
00085 
00108   void 
00109   cptInsertGrid2F(int* indexLowerBounds, 
00110                   int* indexUpperBounds,
00111                   double* distance,
00112                   int* computeGradientDistance,
00113                   double* gradientDistance,
00114                   int* computeClosestPoint,
00115                   double* closestPoint,
00116                   int* computeClosestFace,
00117                   int* closestFace);
00118   
00119   //-------------------------------------------------------------------------
00120   //                         Clear the grids.
00121   //-------------------------------------------------------------------------
00122 
00124   void 
00125   cptClearGrids3F();
00126   
00128   void 
00129   cptClearGrids2F();
00130   
00131   //-------------------------------------------------------------------------
00132   //                          Set the b-rep.
00133   //-------------------------------------------------------------------------
00134 
00136   void 
00137   cptSetBRepWithNoClipping3F(int *verticesSize,
00138                              const double* vertices,
00139                              int *facesSize,
00140                              const int* faces);
00141 
00143   void 
00144   cptSetBRepWithNoClipping2F(int *verticesSize,
00145                              const double* vertices,
00146                              int *facesSize,
00147                              const int* faces);
00148 
00149   //-------------------------------------------------------------------------
00150   //                       Initialize the b-rep.  
00151   //    Clip the mesh to use only points that affect the cartesian domain.
00152   //-------------------------------------------------------------------------
00153 
00155   void 
00156   cptSetBRep3F(int *verticesSize,
00157                const double* vertices,
00158                int *facesSize,
00159                const int* faces);
00160 
00162   void 
00163   cptSetBRep2F(int *verticesSize,
00164                const double* vertices,
00165                int *facesSize,
00166                const int* faces);
00167 
00168   //-------------------------------------------------------------------------
00169   //                      Closest Point Transform.
00170   //-------------------------------------------------------------------------
00171 
00173   void 
00174   cptComputeClosestPointTransform3F();
00175 
00177   void 
00178   cptComputeClosestPointTransformUnsigned3F();
00179 
00180 
00182   void 
00183   cptComputeClosestPointTransformUsingBBox3F();
00184 
00186   void 
00187   cptComputeClosestPointTransformUnsignedUsingBBox3F();
00188 
00189 
00191   void 
00192   cptComputeClosestPointTransformUsingBruteForce3F();
00193 
00195   void 
00196   cptComputeClosestPointTransformUnsignedUsingBruteForce3F();
00197 
00198 
00200   void 
00201   cptComputeClosestPointTransform2F();
00202 
00204   void 
00205   cptComputeClosestPointTransformUnsigned2F();
00206 
00207 
00209   void 
00210   cptComputeClosestPointTransformUsingBBox2F();
00211 
00213   void 
00214   cptComputeClosestPointTransformUnsignedUsingBBox2F();
00215 
00216 
00218   void 
00219   cptComputeClosestPointTransformUsingBruteForce2F();
00220 
00222   void 
00223   cptComputeClosestPointTransformUnsignedUsingBruteForce2F();
00224 
00225 
00226   //-------------------------------------------------------------------------
00227   //    Flood fill the distance.
00228   //-------------------------------------------------------------------------
00229 
00231   void 
00232   cptFloodFillAtBoundary3F(double* farAway);
00233 
00235   void 
00236   cptFloodFillDetermineSign3F(double* farAway);
00237 
00239   void 
00240   cptFloodFillUnsigned3F(double* farAway);
00241 
00243   void 
00244   cptFloodFillAtBoundary2F(double* farAway);
00245 
00247   void 
00248   cptFloodFillDetermineSign2F(double* farAway);
00249 
00251   void 
00252   cptFloodFillUnsigned2F(double* farAway);
00253 
00254   //-------------------------------------------------------------------------
00255   //    Check if the grids are valid.
00256   //-------------------------------------------------------------------------
00257 
00259   int 
00260   cptAreGridsValid3F();
00261 
00263   int 
00264   cptAreGridsValidUnsigned3F();
00265 
00267   int 
00268   cptAreGridsValid2F();
00269 
00271   int 
00272   cptAreGridsValidUnsigned2F();
00273 
00274   //-------------------------------------------------------------------------
00275   //        Write information about the state of the variables.
00276   //-------------------------------------------------------------------------
00277 
00279   void 
00280   cptDisplayInformation3F();
00281 
00283   void 
00284   cptDisplayInformation2F();
00285 
00286 #if defined(__cplusplus)
00287 }
00288 #endif

Generated on Fri Aug 24 12:55:43 2007 for Closest Point Transform by  doxygen 1.4.7