New tool: test_imageio.cpp.

Without parameter: displays supported image file formats
  With a parameter: displays informations about the file, if supported.

(reminder: demo/Surface_mesher/ is not submitted).
This commit is contained in:
Laurent Rineau 2007-03-15 11:01:53 +00:00
parent 47107d399e
commit 2cd5da66e7
2 changed files with 73 additions and 2 deletions

View File

@ -40,7 +40,8 @@ LDFLAGS = \
all: \
implicit_surface_mesher$(EXE_EXT) \
polyhedron_remesher$(EXE_EXT)
polyhedron_remesher$(EXE_EXT) \
test_imageio$(EXE_EXT)
implicit_surface_mesher$(EXE_EXT): implicit_surface_mesher$(OBJ_EXT) implicit_functions$(OBJ_EXT) parameters$(OBJ_EXT)
$(CGAL_CXX) $(LIBPATH) $(EXE_OPT)implicit_surface_mesher implicit_surface_mesher$(OBJ_EXT) implicit_functions$(OBJ_EXT) parameters$(OBJ_EXT) $(LDFLAGS)
@ -48,16 +49,24 @@ implicit_surface_mesher$(EXE_EXT): implicit_surface_mesher$(OBJ_EXT) implicit_fu
polyhedron_remesher$(EXE_EXT): polyhedron_remesher$(OBJ_EXT) implicit_functions$(OBJ_EXT) parameters$(OBJ_EXT)
$(CGAL_CXX) $(LIBPATH) $(EXE_OPT)polyhedron_remesher implicit_functions$(OBJ_EXT) parameters$(OBJ_EXT) polyhedron_remesher$(OBJ_EXT) $(LDFLAGS)
test_imageio$(EXE_EXT): test_imageio$(OBJ_EXT)
$(CGAL_CXX) $(LIBPATH) $(EXE_OPT)test_imageio test_imageio$(OBJ_EXT) $(LDFLAGS)
clean: \
implicit_functions.clean \
implicit_surface_mesher.clean \
parameters.clean \
polyhedron_remesher.clean
polyhedron_remesher.clean \
test_imageio.clean
#---------------------------------------------------------------------#
# suffix rules
#---------------------------------------------------------------------#
.C$(OBJ_EXT):
$(CGAL_CXX) $(CXXFLAGS) $(OBJ_OPT) $<
.cpp$(OBJ_EXT):
$(CGAL_CXX) $(CXXFLAGS) $(OBJ_OPT) $<

View File

@ -0,0 +1,62 @@
#include "../../../CGALimageIO/src/CGALimageIO/imageio/ImageIO.h"
#include <iostream>
#define SHOW(attribut) "\n "#attribut": " << image->attribut
#define SHOWENUM(enumitem) #enumitem"=" << enumitem
int main(int argc, char** argv)
{
::printSupportedFileFormat();
if(argc > 1)
{
_image* image = ::_readImage(argv[1]);
if(image)
{
std::cerr
<< "Image infos:"
<< "\ndimensions"
<< SHOW(xdim)
<< SHOW(ydim)
<< SHOW(zdim)
<< SHOW(vdim)
<< "\nvoxel size"
<< SHOW(vx)
<< SHOW(vy)
<< SHOW(vz)
<<"\nrotation vector"
<< SHOW(rx)
<< SHOW(ry)
<< SHOW(rz)
<<"\nimage center"
<< SHOW(cx)
<< SHOW(cy)
<< SHOW(cz)
<< "\nword size (in bytes)"
<< SHOW(wdim)
<< "\nimage format"
<< "\n " << image->imageFormat->realName
<< " (extension list: " << image->imageFormat->fileExtension << ")"
<< "\nvectors interlaced or not (internal code)"
<< SHOW(vectMode)
<< "\nword kind ("
<< SHOWENUM(WK_FIXED) << ", "
<< SHOWENUM(WK_FLOAT) << ", "
<< SHOWENUM(WK_UNKNOWN)
<< ")"
<< SHOW(wordKind)
<< "\nword sign ("
<< SHOWENUM(SGN_SIGNED) << ", "
<< SHOWENUM(SGN_UNSIGNED) << ", "
<< SHOWENUM(SGN_UNKNOWN)
<< ")"
<< SHOW(sign)
<< "\n";
::_freeImage(image);
}
}
}