00001
00002
00008 #if !defined(__geom_mesh_iss_tile_h__)
00009 #define __geom_mesh_iss_tile_h__
00010
00011 #include "buildFromSimplices.h"
00012 #include "transform.h"
00013
00014 #include "../../../ads/functor/constant.h"
00015
00016 #include <iostream>
00017
00018 #include <cassert>
00019 #include <cmath>
00020
00021 BEGIN_NAMESPACE_GEOM
00022
00023
00034
00036
00053 template<typename T,
00054 typename V,
00055 typename IS,
00056 class LSF>
00057 void
00058 tile(const BBox<2,T>& domain, T length, const LSF& f,
00059 IndSimpSet<2,2,true,T,V,IS>* mesh);
00060
00061
00063
00080 template<typename T,
00081 typename V,
00082 typename IS>
00083 inline
00084 void
00085 tile(const BBox<2,T>& domain, const T length,
00086 IndSimpSet<2,2,true,T,V,IS>* mesh) {
00087 tile(domain, length, ads::constructUnaryConstant<V>(-1.0), mesh);
00088 }
00089
00090
00091
00092
00094
00114 template<typename T,
00115 typename V,
00116 typename IS,
00117 class LSF>
00118 void
00119 tile(const BBox<3,T>& domain, const T length, const LSF& f,
00120 IndSimpSet<3,3,true,T,V,IS>* mesh);
00121
00122
00124
00141 template<typename T,
00142 typename V,
00143 typename IS>
00144 inline
00145 void
00146 tile(const BBox<3,T>& domain, const T length,
00147 IndSimpSet<3,3,true,T,V,IS>* mesh) {
00148 tile(domain, length, ads::constructUnaryConstant<V>(-1.0), mesh);
00149 }
00150
00152
00153 END_NAMESPACE_GEOM
00154
00155 #define __geom_mesh_iss_tile_ipp__
00156 #include "tile.ipp"
00157 #undef __geom_mesh_iss_tile_ipp__
00158
00159 #endif