diff options
Diffstat (limited to 'tests')
-rw-r--r-- | tests/CMakeLists.txt | 24 | ||||
-rw-r--r-- | tests/OffscreenView.cc | 2 | ||||
-rw-r--r-- | tests/OffscreenView.h | 8 | ||||
-rw-r--r-- | tests/cgalpngtest.cc | 18 | ||||
-rw-r--r-- | tests/cgaltest.cc | 2 | ||||
-rw-r--r-- | tests/csgtestcore.cc | 2 | ||||
-rw-r--r-- | tests/imageutils.cc | 4 |
7 files changed, 46 insertions, 14 deletions
diff --git a/tests/CMakeLists.txt b/tests/CMakeLists.txt index 9e6640e..d102f6b 100644 --- a/tests/CMakeLists.txt +++ b/tests/CMakeLists.txt @@ -8,6 +8,16 @@ if(NOT CMAKE_BUILD_TYPE) set(CMAKE_BUILD_TYPE Debug) endif() +# Disable some warnings in Windows +if(WIN32) + # too long decorated names + set(CMAKE_CXX_FLAGS "${CMAKE_CXX_FLAGS} /wd4503") + # int cast to bool in CGAL + set(CMAKE_CXX_FLAGS "${CMAKE_CXX_FLAGS} /wd4800") + # unreferenced parameters in CGAL + set(CMAKE_CXX_FLAGS "${CMAKE_CXX_FLAGS} /wd4100") +endif() + # # Build test apps # @@ -59,7 +69,7 @@ include_directories(${OPENCSG_INCLUDE_DIR}) # GLEW -if (NOT $ENV{MACOSX_DEPLOY_DIR} STREQUAL "") +if () set(GLEW_DIR "$ENV{MACOSX_DEPLOY_DIR}") endif() find_package(GLEW REQUIRED) @@ -69,7 +79,10 @@ include_directories(${GLEW_INCLUDE_PATH}) find_package(BISON) find_package(FLEX) # The COMPILE_FLAGS and forced C++ compiler is just to be compatible with qmake -FLEX_TARGET(OpenSCADlexer ../src/lexer.l ${CMAKE_CURRENT_BINARY_DIR}/lexer.cpp COMPILE_FLAGS "-Plexer") +if (WIN32) + set(FLEX_UNISTD_FLAG "-DYY_NO_UNISTD_H") +endif() +FLEX_TARGET(OpenSCADlexer ../src/lexer.l ${CMAKE_CURRENT_BINARY_DIR}/lexer.cpp COMPILE_FLAGS "-Plexer ${FLEX_UNISTD_FLAG}") BISON_TARGET(OpenSCADparser ../src/parser.y ${CMAKE_CURRENT_BINARY_DIR}/parser_yacc.c COMPILE_FLAGS "-p parser") ADD_FLEX_BISON_DEPENDENCY(OpenSCADlexer OpenSCADparser) set_source_files_properties(${CMAKE_CURRENT_BINARY_DIR}/parser_yacc.c PROPERTIES LANGUAGE "CXX") @@ -81,6 +94,7 @@ include_directories(../src) add_definitions(-DOPENSCAD_VERSION=test -DOPENSCAD_YEAR=2011 -DOPENSCAD_MONTH=10) set(COMMON_SOURCES + ../src/mathc99.cc ../src/handle_dep.cc ../src/qhash.cc ../src/export.cc @@ -121,10 +135,12 @@ set(COMMON_SOURCES # # Offscreen OpenGL context source code # -if (NOT $ENV{MACOSX_DEPLOY_DIR} STREQUAL "") +if(${CMAKE_SYSTEM_NAME} MATCHES "Darwin") set(OFFSCREEN_CTX_SOURCE "OffscreenContext.mm") -else() +elseif(UNIX) set(OFFSCREEN_CTX_SOURCE "OffscreenContext.cc") +elseif(WIN32) + set(OFFSCREEN_CTX_SOURCE "OffscreenContextWGL.cc") endif() # diff --git a/tests/OffscreenView.cc b/tests/OffscreenView.cc index d188d0d..e34fbce 100644 --- a/tests/OffscreenView.cc +++ b/tests/OffscreenView.cc @@ -186,7 +186,7 @@ void OffscreenView::paintGL() glMatrixMode(GL_MODELVIEW); glLoadIdentity(); - glClearColor(1.0, 1.0, 0.92, 1.0); + glClearColor(1.0f, 1.0f, 0.92f, 1.0f); glClear(GL_COLOR_BUFFER_BIT | GL_DEPTH_BUFFER_BIT | GL_STENCIL_BUFFER_BIT); diff --git a/tests/OffscreenView.h b/tests/OffscreenView.h index dd52a81..c57f07e 100644 --- a/tests/OffscreenView.h +++ b/tests/OffscreenView.h @@ -1,15 +1,21 @@ #ifndef OFFSCREENVIEW_H_ #define OFFSCREENVIEW_H_ -#ifndef __APPLE__ // Eigen SIMD alignment +// workaround Eigen SIMD alignment problems +#ifndef __APPLE__ #define EIGEN_DONT_VECTORIZE 1 #define EIGEN_DISABLE_UNALIGNED_ARRAY_ASSERT 1 #endif +#ifdef _MSC_VER +#define EIGEN_DONT_ALIGN +#endif #include "OffscreenContext.h" #include <Eigen/Core> #include <Eigen/Geometry> +#ifndef _MSC_VER #include <stdint.h> +#endif class OffscreenView { diff --git a/tests/cgalpngtest.cc b/tests/cgalpngtest.cc index 447df45..fee44e8 100644 --- a/tests/cgalpngtest.cc +++ b/tests/cgalpngtest.cc @@ -23,6 +23,10 @@ * */ +#ifdef _MSC_VER +#define EIGEN_DONT_ALIGN +#endif + #include "myqhash.h" #include "openscad.h" #include "node.h" @@ -47,7 +51,9 @@ #include <QDir> #include <QSet> #include <QTextStream> +#ifndef _MSC_VER #include <getopt.h> +#endif #include <iostream> #include <assert.h> #include <sstream> @@ -182,7 +188,7 @@ int main(int argc, char **argv) try { csgInfo.glview = new OffscreenView(512,512); } catch (int error) { - fprintf(stderr,"Can't create OpenGL OffscreenView. exiting.\n"); + fprintf(stderr,"Can't create OpenGL OffscreenView. Code: %i. Exiting.\n", error); exit(1); } @@ -211,19 +217,21 @@ int main(int argc, char **argv) CGALRenderer cgalRenderer(N); - BoundingBox bbox; +/* Eigen::AlignedBox<double, 3> bbox; if (cgalRenderer.polyhedron) { CGAL::Bbox_3 cgalbbox = cgalRenderer.polyhedron->bbox(); bbox = BoundingBox(Vector3d(cgalbbox.xmin(), cgalbbox.ymin(), cgalbbox.zmin()), - Vector3d(cgalbbox.xmax(), cgalbbox.ymax(), cgalbbox.zmax())); + Vector3d(cgalbbox.xmax(), cgalbbox.ymax(), cgalbbox.zmax())); } else if (cgalRenderer.polyset) { bbox = cgalRenderer.polyset->getBoundingBox(); } + Vector3d center = (bbox.min() + bbox.max()) / 2; double radius = (bbox.max() - bbox.min()).norm() / 2; - - +*/ + Vector3d center(0,0,0); + double radius = 5.0; Vector3d cameradir(1, 1, -0.5); Vector3d camerapos = center - radius*2*cameradir; csgInfo.glview->setCamera(camerapos, center); diff --git a/tests/cgaltest.cc b/tests/cgaltest.cc index 8dfb63c..2c83cc8 100644 --- a/tests/cgaltest.cc +++ b/tests/cgaltest.cc @@ -42,7 +42,9 @@ #include <QDir> #include <QSet> #include <QTextStream> +#ifndef _MSC_VER #include <getopt.h> +#endif #include <iostream> #include <assert.h> #include <sstream> diff --git a/tests/csgtestcore.cc b/tests/csgtestcore.cc index 2e28bf6..11ff695 100644 --- a/tests/csgtestcore.cc +++ b/tests/csgtestcore.cc @@ -221,7 +221,7 @@ int csgtestcore(int argc, char *argv[], test_type_e test_type) try { csgInfo.glview = new OffscreenView(512,512); } catch (int error) { - fprintf(stderr,"Can't create OpenGL OffscreenView. exiting.\n"); + fprintf(stderr,"Can't create OpenGL OffscreenView. Code: %i. Exiting.\n", error); exit(1); } BoundingBox bbox = csgInfo.root_chain->getBoundingBox(); diff --git a/tests/imageutils.cc b/tests/imageutils.cc index 7358674..e15ba2b 100644 --- a/tests/imageutils.cc +++ b/tests/imageutils.cc @@ -1,11 +1,11 @@ #include "imageutils.h" -#include <strings.h> +#include <string.h> void flip_image(const unsigned char *src, unsigned char *dst, size_t pixelsize, size_t width, size_t height) { size_t rowBytes = pixelsize * width; for (size_t i = 0 ; i < height ; i++) { - bcopy(src + i * rowBytes, dst + (height - i - 1) * rowBytes, rowBytes); + memmove(dst + (height - i - 1) * rowBytes, src + i * rowBytes, rowBytes); } } |