00001 #ifndef __JBXL_STL_H_
00002 #define __JBXL_STL_H_
00003 
00004 
00015 #include  "Brep.h"
00016 
00017 
00018 namespace jbxl {
00019 
00020 
00022 typedef struct {
00023     unsigned char tmp[50]; 
00024 } tmpSTLData;   
00025 
00026 
00027 
00034 typedef struct {
00035     float vect[12];
00036     unsigned short pad; 
00037 } STLData;      
00038 
00039 
00040 DllExport STLData* ReadSTLFile (char* fname,  long int* fno);
00041 DllExport int      WriteSTLFile(char* fname,  BREP_SOLID* solid, bool ascii=false);
00042 DllExport int      WriteSTLFile(char* fname,  BREP_SOLID_LIST solid_list, bool ascii=false);
00043 
00044 DllExport STLData* ReadSTLFileA (char* fname, long int* fno);
00045 DllExport STLData* ReadSTLFileB (char* fname, long int* fno);
00046 DllExport int      WriteSTLFileA(char* fname, BREP_SOLID* solid);
00047 DllExport int      WriteSTLFileB(char* fname, BREP_SOLID* solid);
00048 DllExport int      WriteSTLFileA(char* fname, BREP_SOLID_LIST solid_list);
00049 DllExport int      WriteSTLFileB(char* fname, BREP_SOLID_LIST solid_list);
00050 
00051 DllExport void     println_FacetAsciiSTL(BREP_CONTOUR* contour);
00052 
00053 DllExport void     freeSTL(STLData* stldata);
00054 
00055 
00056 }       
00057 
00058 #endif
00059