Commit Graph

39 Commits

Author SHA1 Message Date
839f366174 Compile fixes for Linux.
Added SWIG files to make bindings build.
2013-06-28 15:07:19 +02:00
f98959f92a Add a new pickVoxel function.
Hopefully this pickVoxel function will fulfil most most need with
raycasting which aren't covered by the existing raycast functions.

It's essentially a wrapper around the current functions, using a custom
functor to store the position of a solid voxel as well as the previous
empty voxel. It doesn't require the user to provide a functor of their own,
just the value that they've assigned to empty voxels.

As well as the function itself, we also have a unit test as well as it
being built in the bindings.
2013-05-01 22:28:46 +01:00
66bdf0e5a9 Add Compressor and subclasses to the bindings
This relates to issue 20 and should fix the compilation error mentioned
there.
2013-02-08 14:27:11 +00:00
d50e9dfebc Start enabling the CubicSurfaceExtractors 2013-01-19 14:19:26 +00:00
a5d55d4415 We ignore these operators since they don't exist in C# 2013-01-04 12:03:38 +00:00
74f25eac23 Merge branch 'develop' into feature/cmake-cxx11-detect
Conflicts:
	examples/Basic/CMakeLists.txt
	examples/OpenGL/CMakeLists.txt
	examples/Paging/CMakeLists.txt
	examples/SmoothLOD/CMakeLists.txt
	library/PolyVoxCore/include/PolyVoxCore/Impl/TypeDef.h
2012-12-24 20:08:31 +00:00
79cc521666 Remove Density and Material tyes from bindings
We now only have the bindings for (u)int{8,16,32}_t and float. This will
hopefully simplify things.
2012-11-26 13:58:51 +00:00
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
fd3ce69187 Wrap the correct class..but disable it since it needs more work. 2012-11-25 10:30:58 +00:00
e048f7c2f6 Clean up in interface files and CubicExtractor bindings 2012-11-24 15:42:02 +00:00
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
e7daab5bbc Simplify macro by assuming PolyVox:: in front of all classes 2012-11-24 15:20:34 +00:00
edf2bf87d4 Add LargeVolume binding 2012-11-24 14:23:52 +00:00
63e0298fbf Add a VOLUMETYPES macro to avoid repeating ourselves. 2012-11-24 14:16:52 +00:00
a932d060f2 Add RawVolume wrapper 2012-11-24 14:07:13 +00:00
7fbe92e1e7 Separate out the BaseVolume definitions into their own file 2012-11-24 14:06:31 +00:00
989e6ea589 Fix SWIG complaining about redefining uint8_t etc. 2012-11-23 15:41:26 +00:00
27f943adb3 Silence all the SWIG warning hopefully 2012-11-17 13:44:27 +00:00
b534811477 Explicitly include the TypeDef.h header in SWIG
This time the bindings really should be fixed.
2012-11-09 13:27:44 +00:00
5c88f2e49f Inform SWIG of the meaning of the POLYVOX_DEPRECATED command in Linux
If the bindings fail to build on Windows, we might need to add an
equivalent there too.
2012-11-08 10:10:01 +00:00
b140e16083 Renamed MarchingCubesController to DefaultMarchingCubesController. 2012-07-15 23:07:00 +02:00
9a498bad7b Renamed SurfaceExtractionController to MarchingCubesController. 2012-07-15 17:53:37 +02:00
679d98735a Renamed SurfaceExtractor to MarchingCubesSurfaceExtractor. 2012-07-15 17:40:37 +02:00
c09335dbd0 Added SWIG interface for SurfaceExtractionController 2012-07-15 11:57:23 +02:00
23145f12e1 Use SWIG's autodoc command for simple docstrings with type information 2012-07-10 11:24:31 +01:00
85c5b7abf0 Add all the Material, Density and MaterialDensityPair typedefs 2012-06-22 00:18:04 +01:00
869d1a8d6a Re-enable more of the bindings
This should enable enough of the bindings to be able to extract a surface
mesh.
2012-06-21 22:24:04 +01:00
5985aa5ec2 Re-enable SWIG compilation
For now only enable Vector, although some other
may work but will need testing.
2012-06-15 00:19:49 +02:00
acd3c3c791 Fix SWIG bindings
The bindings now compile and in Python a mesh can be extracted from a volume.
The only extractor currently bound is SurfaceExtractor<SimpleVolume, Material8>.

The bindings are still commented out in library/CMakeLists.txt by default.
2011-06-07 20:33:01 +02:00
cb0a746b6f Update include paths for bindings to new layout. 2011-05-22 21:33:32 +02:00
c1ebed678e More SWIG bindings. 2011-01-18 21:59:21 +00:00
36f8dc0296 More SWIG changes. 2011-01-16 20:22:49 +00:00
513b1878f1 Updated SWIG bindings, especially for C#. 2011-01-16 20:09:59 +00:00
f7573e7660 Work on SWIG bindings for PolyVox. 2010-12-28 11:14:55 +00:00
89df1c8824 Work on SWIG bindings for PolyVox. 2010-12-28 09:49:18 +00:00
26081fd4ba Got the Vector class working in Python through SWIG. 2010-12-27 11:54:49 +00:00
69751dc084 To bind a template, you must bind a specific instantiation of it. I'm binding the instantiations defined by the typedefs in Vector.h (though I have to specify them manually in SWIG).
The uint8 etc. typedefs aren't working for now though.
2009-03-29 15:36:41 +00:00
58355da40b A few more tiny steps in the right direction
Getting templates to work is the next thing
2009-03-28 13:08:29 +00:00
c65c23acf4 Use correct file extensions for python dlls
Build it as  'PolyVoxCore' module
2009-03-27 23:00:37 +00:00