vtf-logo

cpt_c.h

Go to the documentation of this file.
00001 // -*- C++ -*-
00002 
00008 #if defined(__cplusplus)
00009 extern "C" {
00010 #endif
00011 
00012   //-------------------------------------------------------------------------
00013   //                        Set the parameters.
00014   //-------------------------------------------------------------------------
00015 
00017   void 
00018   cptSetParameters3(const double* domain,
00019                     const double maximumDistance);
00020 
00022   void 
00023   cptSetParameters2(const double* domain,
00024                     const double maximumDistance,
00025                     const bool localClipping,
00026                     const int globalClipping,
00027                     const int decimationFactor);
00028 
00029   //-------------------------------------------------------------------------
00030   //                       Set the lattice.
00031   //-------------------------------------------------------------------------
00032 
00034   void 
00035   cptSetLattice3(const int* extents, const double* domain);
00036 
00038   void 
00039   cptSetLattice2(const int* extents, const double* domain);
00040 
00041   //-------------------------------------------------------------------------
00042   //                            Add grids.
00043   //-------------------------------------------------------------------------
00044 
00046   void 
00047   cptInsertGrid3(const int* indexLowerBounds, 
00048                  const int* indexUpperBounds,
00049                  double* distance,
00050                  double* gradientOfDistance,
00051                  double* closestPoint,
00052                  int* closestFace);
00053 
00055   void 
00056   cptInsertGrid2(const int* indexLowerBounds, 
00057                  const int* indexUpperBounds,
00058                  double* distance,
00059                  double* gradientOfDistance,
00060                  double* closestPoint,
00061                  int* closestFace);
00062 
00063 
00064   //-------------------------------------------------------------------------
00065   //                        Clear the grids.
00066   //-------------------------------------------------------------------------
00067 
00069   void 
00070   cptClearGrids3();
00071 
00073   void 
00074   cptClearGrids2();
00075 
00076 
00077   //-------------------------------------------------------------------------
00078   //                       Set the b-rep.
00079   //-------------------------------------------------------------------------
00080 
00082 
00095   void 
00096   cptSetBRepWithNoClipping3(const int verticesSize,
00097                             const double* vertices,
00098                             const int facesSize,
00099                             const int* faces);
00100 
00102 
00115   void 
00116   cptSetBRepWithNoClipping2(const int verticesSize,
00117                             const double* vertices,
00118                             const int facesSize,
00119                             const int* faces);
00120 
00121 
00122 
00123   //-------------------------------------------------------------------------
00124   //                       Initialize the b-rep.  
00125   //    Clip the mesh to use only points that affect the cartesian domain.
00126   //-------------------------------------------------------------------------
00127 
00129 
00142   void 
00143   cptSetBRep3(const int verticesSize,
00144               const double* vertices,
00145               const int facesSize,
00146               const int* faces);
00147 
00149 
00162   void 
00163   cptSetBRep2(const int verticesSize,
00164               const double* vertices,
00165               const int facesSize,
00166               const int* faces);
00167 
00168 
00169   //-------------------------------------------------------------------------
00170   //                      Closest Point Transform.
00171   //-------------------------------------------------------------------------
00172 
00174   void 
00175   cptComputeClosestPointTransform3();
00176 
00178   void 
00179   cptComputeClosestPointTransformUnsigned3();
00180 
00181 
00183   void 
00184   cptComputeClosestPointTransformUsingBBox3();
00185 
00187   void 
00188   cptComputeClosestPointTransformUnsignedUsingBBox3();
00189 
00190 
00192   void 
00193   cptComputeClosestPointTransformUsingBruteForce3();
00194 
00196   void 
00197   cptComputeClosestPointTransformUnsignedUsingBruteForce3();
00198 
00199 
00200 
00202   void 
00203   cptComputeClosestPointTransform2();
00204 
00206   void 
00207   cptComputeClosestPointTransformUnsigned2();
00208 
00209 
00211   void 
00212   cptComputeClosestPointTransformUsingBBox2();
00213 
00215   void 
00216   cptComputeClosestPointTransformUnsignedUsingBBox2();
00217 
00218 
00220   void 
00221   cptComputeClosestPointTransformUsingBruteForce2();
00222 
00224   void 
00225   cptComputeClosestPointTransformUnsignedUsingBruteForce2();
00226 
00227 
00228   //-------------------------------------------------------------------------
00229   //    Flood fill the distance.
00230   //-------------------------------------------------------------------------
00231 
00233   void 
00234   cptFloodFillAtBoundary3(double farAway);
00235 
00237   void 
00238   cptFloodFillDetermineSign3(double farAway);
00239 
00241   void 
00242   cptFloodFillUnsigned3(double farAway);
00243 
00245   void 
00246   cptFloodFillAtBoundary2(double farAway);
00247 
00249   void 
00250   cptFloodFillDetermineSign2(double farAway);
00251 
00253   void 
00254   cptFloodFillUnsigned2(double farAway);
00255 
00256 
00257   //-------------------------------------------------------------------------
00258   //    Check if the grids are valid.
00259   //-------------------------------------------------------------------------
00260 
00262   int
00263   cptAreGridsValid3();
00264 
00266   int
00267   cptAreGridsValidUnsigned3();
00268 
00270   int
00271   cptAreGridsValid2();
00272 
00274   int
00275   cptAreGridsValidUnsigned2();
00276 
00277 
00278   //-------------------------------------------------------------------------
00279   //        Write information about the state of the grid variables.
00280   //-------------------------------------------------------------------------
00281 
00283   void 
00284   cptDisplayInformation3();
00285 
00287   void 
00288   cptDisplayInformation2();
00289 
00290 #if defined(__cplusplus)
00291 }
00292 #endif

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