1351 Commits

Author SHA1 Message Date
Matt Williams
3ed3ac6998 Start Python bindings for Raycast
This is only beginning of the bindings here. It's starting to get more
complicated due to the use of callbacks. To be able to define a callback
function in Python which is then called by a C++ algorithm requires quite a
bit of wrapping boilerplate.

The class PyCallback here will wrap a Python callable and call it with the
density value of the voxel. It's not very generic and at present it can't
pass the sampler itself since it's not available in the Python bindings.

Regardless, the new test added here (TestRaycast.py) works as expected and
hopefully we will be able to build up from here.
2012-11-25 18:07:12 +00:00
Matt Williams
37fbe16939 Assert only takes one argument.
It was causing a compiler error on GCC.
2012-11-25 11:22:38 +00:00
Matt Williams
fd3ce69187 Wrap the correct class..but disable it since it needs more work. 2012-11-25 10:30:58 +00:00
David Williams
9960a757e5 Updated changelog. 2012-11-25 09:48:33 +01:00
David Williams
fbc39e1cc3 Merge branch 'feature/region-enhancements' into develop 2012-11-25 09:30:59 +01:00
David Williams
b2642ec5c6 More work on Region documentation. 2012-11-25 09:18:29 +01:00
David Williams
8f27c8fa9e Added accumulation functions. 2012-11-25 00:17:14 +01:00
David Williams
bd00c8e572 Added rounding functions. 2012-11-25 00:04:18 +01:00
David Williams
f5b638957c More Region documentation. 2012-11-24 23:36:46 +01:00
David Williams
e32d47ed8d Documentation of Region class. 2012-11-24 23:02:26 +01:00
David Williams
1b207325c4 Added documentation and new 'shift' functions. 2012-11-24 22:38:43 +01:00
David Williams
dec3f67a5a Inlined some functions. 2012-11-24 22:07:49 +01:00
David Williams
02b6421ab8 Reordered some functions. 2012-11-24 22:02:21 +01:00
David Williams
6d7246f907 More dilation and erosion functions for region. 2012-11-24 21:32:17 +01:00
Matt Williams
e048f7c2f6 Clean up in interface files and CubicExtractor bindings 2012-11-24 15:42:02 +00:00
Matt Williams
bb3d3c4b68 Add a EXTRACTORS macro to automate the generation of the extractors
Like with VOLUMETYPES it is centralising the definitions of the volume and
voxel types.
2012-11-24 15:37:46 +00:00
Matt Williams
e7daab5bbc Simplify macro by assuming PolyVox:: in front of all classes 2012-11-24 15:20:34 +00:00
Matt Williams
edf2bf87d4 Add LargeVolume binding 2012-11-24 14:23:52 +00:00
Matt Williams
63e0298fbf Add a VOLUMETYPES macro to avoid repeating ourselves. 2012-11-24 14:16:52 +00:00
Matt Williams
a932d060f2 Add RawVolume wrapper 2012-11-24 14:07:13 +00:00
Matt Williams
7fbe92e1e7 Separate out the BaseVolume definitions into their own file 2012-11-24 14:06:31 +00:00
David Williams
6e729ded56 Merge branch 'feature/region-enhancements' into develop 2012-11-24 12:52:52 +01:00
David Williams
cbddc9cba4 Added basic dilation and erosion functions. 2012-11-24 12:52:37 +01:00
David Williams
9671f19444 Added setters to region. 2012-11-24 12:42:45 +01:00
David Williams
c9df34336b Revert "Trivial change for testing."
This reverts commit 3d9f44af909fbe28853cf656c688a471c803a954.
2012-11-24 12:29:57 +01:00
David Williams
d2cc4da68d Merge branch 'feature/region-enhancements' into develop 2012-11-24 12:27:19 +01:00
David Williams
8bc10530d2 Merge branch 'develop' into feature/region-enhancements 2012-11-24 12:25:01 +01:00
David Williams
9226337756 Partially revert commit bef6a7746e9ecf0dc1bec6737273c19c7142ce71 as it was causing complier warnings in Visual Studio. 2012-11-24 10:57:51 +01:00
David Williams
beee8850e9 Added getters for upper corner (trivial commit - part of git testing). 2012-11-24 10:41:07 +01:00
David Williams
08ceb9df1d Merge branch 'feature/region-enhancements' into develop 2012-11-24 10:33:36 +01:00
David Williams
3d9f44af90 Trivial change for testing. 2012-11-24 10:24:45 +01:00
David Williams
cb992b7c34 Added getter methods for lower corner. (Trivial commit - part of Git testing) 2012-11-24 10:20:20 +01:00
David Williams
24dcdcb97d A simple testing change as I'm investigating Git problems. 2012-11-24 09:48:56 +01:00
David Williams
e56fd3ce4f Another code dump which was supposed to be a feature branch... having some Git issues at the moment. 2012-11-24 00:32:29 +01:00
Matt Williams
989cd453fe Consolidate glew into one location to speed up build. 2012-11-23 23:01:50 +00:00
Matt Williams
9f5fe452c9 Give shared_ptr the same treatment.
Here I have defined my own test for the feature. It's not an extensive test
but it checks for the presence of the class.
2012-11-23 15:41:27 +00:00
Matt Williams
989e6ea589 Fix SWIG complaining about redefining uint8_t etc. 2012-11-23 15:41:26 +00:00
Matt Williams
dbb5832d52 Move the cstdint detection to the new framework
Again, hopefully nothing will change but a test on MSVC 2008/2005 might be
needed.
2012-11-23 15:41:26 +00:00
Matt Williams
4b2c899dc6 Define static_assert in the same way
Hopefully this won't change anything as we already had a check for it.
However, it is now based compiler checks rather than version numbers.

We haven't use static_assert anywhere in code yet anyway.
2012-11-23 15:41:26 +00:00
Matt Williams
c8657943c8 Create polyvox_constexpr macros based on the detected features
We now have a two new polyvox_ macros:

* polyvox_constexpr which is 'constexpr' is supported and '' otherwise
* polyvox_constexpr_const constexpr which is also 'constexpr' is supported
  but falls back to 'const' otherwise.

These macros should be safe to use liberally without worrying about which
compiler you're on.
2012-11-23 15:41:26 +00:00
Matt Williams
3902e00a0f Add a CompilerCapabilities.h.in file which is filled in by CMake
It will #define a each of the basic features detected by CMake which can
then be used by other headers (like TypeDef.h) to set things up for
PolyVox.

It is this file which you will have to manually edit and rename if you want
to skip using CMake.
2012-11-23 15:41:26 +00:00
Matt Williams
596bf12877 Run the feature detection at CMake time 2012-11-23 15:41:25 +00:00
Matt Williams
a24fcc0c03 Add C++11 compiler support detection feature
This is currently copied from http://quickgit.kde.org/index.php?p=scratch%2Fdakon%2Fcmake-cxx11.git
but there is a chance that in future it will be merged into CMake proper.
2012-11-23 15:41:25 +00:00
Matt Williams
c981ed2706 Add forward declaration for DefaultIsQuadNeeded 2012-11-23 15:40:51 +00:00
Daviw Williams
d28c2aa61d This is a collection of commits which were supposed to be part of a feature branch... but I got in a mess with Git and so am committing them all together. 2012-11-23 15:51:22 +01:00
Matt Williams
3e79e0bfaa Fix LowPassFilter test
The implicit default kernel size for the non-SAT version was 3 but the SAT
version was using an explicit kernel of 5 which caused a discrepancy.

Now just use a kernel of 3.
2012-11-22 22:23:07 +00:00
Matt Williams
0f838d54b6 Fix to correct method 2012-11-22 21:56:18 +00:00
Matt Williams
839e5374b6 Add required header and use const& in constructor 2012-11-22 20:43:53 +00:00
Matt Williams
88c8c4014a Fit off-by-one error in resampler by using available functions
It still doesn't work as expected but this is a step in the right
direction.
2012-11-22 20:43:00 +00:00
Matt Williams
3577a56eb3 Rename some SWIG stuff to prepare for C# bindings 2012-11-21 17:03:17 +00:00