Merge branch 'master' of git@gitorious.org:polyvox/polyvox.git
This commit is contained in:
commit
67526bae71
@ -12,4 +12,8 @@ Because algorithms now know nothing about the structure of the underlying voxels
|
||||
|
||||
We have continued to provide the Density, Material, and MaterialDensityPair classes to ease the transition into the new system, but really they should just be considered as examples of how you might create your own voxel types.
|
||||
|
||||
Some algothms assume that basic mathematical operations can be applied to voxel types. For example, the LowPassFilter needs to compute the average of a set of voxels, and to do this it need to be possible to add voxels together and divide by an integer. Obviously these operations are provided by primitive types, but it means that if you want to use the LowPassfilter on custom voxel types then these types need to provide operator+=, operator/=, etc. These have been added to the Density and MaterialDensityPair classes, but not to the Material class. This reflects the fact that applying a low pass filter to a material volume does not make conceptual sense.
|
||||
Some algothms assume that basic mathematical operations can be applied to voxel types. For example, the LowPassFilter needs to compute the average of a set of voxels, and to do this it need to be possible to add voxels together and divide by an integer. Obviously these operations are provided by primitive types, but it means that if you want to use the LowPassfilter on custom voxel types then these types need to provide operator+=, operator/=, etc. These have been added to the Density and MaterialDensityPair classes, but not to the Material class. This reflects the fact that applying a low pass filter to a material volume does not make conceptual sense.
|
||||
|
||||
Changes to build system
|
||||
-----------------------
|
||||
In order to make the build system easier to use, a number of CMake variables were changed to be more consistent. See :doc:`install` for details on the new variable naming.
|
||||
|
@ -11,7 +11,6 @@ MARK_AS_ADVANCED(FORCE POLYVOX_VERSION)
|
||||
include(FeatureSummary)
|
||||
|
||||
FIND_PACKAGE(Doxygen)
|
||||
set_package_properties(Doxygen PROPERTIES URL http://www.doxygen.org DESCRIPTION "API documentation generator" TYPE OPTIONAL PURPOSE "Building the API documentation")
|
||||
OPTION(ENABLE_EXAMPLES "Should the examples be built" ON)
|
||||
|
||||
SET(LIBRARY_TYPE "DYNAMIC" CACHE STRING "Should the library be STATIC or DYNAMIC")
|
||||
@ -23,9 +22,15 @@ ENDIF()
|
||||
# Qt is required for building the tests, the example and optionally for bundling the documentation
|
||||
FIND_PACKAGE(Qt4 COMPONENTS QtCore QtGui QtOpenGL QtTest)
|
||||
INCLUDE(${QT_USE_FILE})
|
||||
set_package_properties(Qt4 PROPERTIES DESCRIPTION "C++ framework" URL http://qt-project.org)
|
||||
set_package_properties(Qt4 PROPERTIES TYPE RECOMMENDED PURPOSE "Building the examples")
|
||||
set_package_properties(Qt4 PROPERTIES TYPE OPTIONAL PURPOSE "Building the tests")
|
||||
if(CMAKE_VERSION VERSION_LESS "2.8.6")
|
||||
set_package_info(Doxygen "API documentation generator" http://www.doxygen.org "Building the API documentation")
|
||||
set_package_info(Qt4 "C++ framework" http://qt-project.org "Building the examples and tests")
|
||||
else()
|
||||
set_package_properties(Doxygen PROPERTIES URL http://www.doxygen.org DESCRIPTION "API documentation generator" TYPE OPTIONAL PURPOSE "Building the API documentation")
|
||||
set_package_properties(Qt4 PROPERTIES DESCRIPTION "C++ framework" URL http://qt-project.org)
|
||||
set_package_properties(Qt4 PROPERTIES TYPE RECOMMENDED PURPOSE "Building the examples")
|
||||
set_package_properties(Qt4 PROPERTIES TYPE OPTIONAL PURPOSE "Building the tests")
|
||||
endif()
|
||||
|
||||
if(MSVC AND (MSVC_VERSION LESS 1600))
|
||||
# Require boost for older (pre-vc2010) Visual Studio compilers
|
||||
|
@ -1,3 +1,3 @@
|
||||
David Williams - Lead programmer.
|
||||
Matthew Williams - Linux port, build system, support and maintainence.
|
||||
Matthew Williams - Linux port, build system, support and maintenance.
|
||||
Oliver Schneider - Very large Volumes
|
4
README.rst
Normal file
4
README.rst
Normal file
@ -0,0 +1,4 @@
|
||||
PolyVox - The voxel management and manipulation library
|
||||
=======================================================
|
||||
|
||||
For installation instructions, please see INSTALL.txt
|
@ -220,7 +220,7 @@ man_pages = [
|
||||
#intersphinx_mapping = {'http://docs.python.org/': None}
|
||||
|
||||
doxylink = {
|
||||
'polyvox' : ('@CMAKE_CURRENT_BINARY_DIR@/../library/PolyVox.tag', '../library/doc/html/')
|
||||
'polyvox' : ('@CMAKE_CURRENT_BINARY_DIR@/../library/PolyVox.tag', '../library/doc/html/') #Make this '../api/' for uploading
|
||||
}
|
||||
|
||||
#This must be lowercase for QtHelp
|
||||
|
@ -1,3 +1,14 @@
|
||||
**********************
|
||||
Principles of PolyVox
|
||||
**********************
|
||||
**********************
|
||||
|
||||
.. warning ::
|
||||
This section is being written and is just a skeleton for now
|
||||
|
||||
PolyVox provides a library for managing 3D arrays (volumes) of data (voxels). It gives you the tools to iterate through, randomly access, read and write volumes. It supports any type you'd like to represent each voxel whether it's just an ``int`` or a class which encapsulates both density and colour.
|
||||
|
||||
Once you have a volume, PolyVox provides a number of tools for turning it into something that you can pass to your rendering engine. These are called `surface extractors`.
|
||||
|
||||
Each surface extractor needs to be told how to interperet your voxel type and that is done using...
|
||||
|
||||
Link to a page describing how to write your own voxel type and link it to a surface extractor...
|
||||
|
@ -2,9 +2,14 @@ option(ENABLE_BINDINGS "Build Python bindings" ON)
|
||||
if(ENABLE_BINDINGS)
|
||||
find_package(SWIG)
|
||||
mark_as_advanced(SWIG_DIR SWIG_VERSION)
|
||||
set_package_properties(SWIG PROPERTIES DESCRIPTION "Bindings generator" URL http://www.swig.org)
|
||||
find_package(PythonLibs)
|
||||
set_package_properties(PythonLibs PROPERTIES DESCRIPTION "Programming language" URL http://www.python.org)
|
||||
if(CMAKE_VERSION VERSION_LESS "2.8.6")
|
||||
set_package_info(SWIG "Bindings generator" http://www.swig.org)
|
||||
set_package_info(PythonLibs "Programming language" http://www.python.org)
|
||||
else()
|
||||
set_package_properties(SWIG PROPERTIES DESCRIPTION "Bindings generator" URL http://www.swig.org)
|
||||
set_package_properties(PythonLibs PROPERTIES DESCRIPTION "Programming language" URL http://www.python.org)
|
||||
endif()
|
||||
if(SWIG_FOUND AND PYTHONLIBS_FOUND)
|
||||
set(BUILD_BINDINGS ON CACHE BOOL "Will the bindings be built" FORCE )
|
||||
include(${SWIG_USE_FILE})
|
||||
@ -20,6 +25,8 @@ if(ENABLE_BINDINGS)
|
||||
swig_add_module(PolyVoxCore python PolyVoxCore.i)
|
||||
swig_link_libraries(PolyVoxCore ${PYTHON_LIBRARIES} PolyVoxCore)
|
||||
#set_target_properties(${SWIG_MODULE_PolyVoxCore_REAL_NAME} PROPERTIES SUFFIX ".pyd")
|
||||
else()
|
||||
set(BUILD_BINDINGS OFF CACHE BOOL "Will the bindings be built" FORCE)
|
||||
endif()
|
||||
else()
|
||||
set(BUILD_BINDINGS OFF CACHE BOOL "Will the bindings be built" FORCE)
|
||||
|
Loading…
x
Reference in New Issue
Block a user