Normalized line endings
This commit is contained in:
@ -1,10 +1,10 @@
|
||||
%module Array
|
||||
%{
|
||||
#include "PolyVoxImpl\SubArray.h"
|
||||
#include "Array.h"
|
||||
%}
|
||||
|
||||
%include "PolyVoxImpl\SubArray.h"
|
||||
%include "Array.h"
|
||||
|
||||
%template(Array3IndexAndMaterial) PolyVox::Array<3, PolyVox::IndexAndMaterial>;
|
||||
%module Array
|
||||
%{
|
||||
#include "PolyVoxImpl\SubArray.h"
|
||||
#include "Array.h"
|
||||
%}
|
||||
|
||||
%include "PolyVoxImpl\SubArray.h"
|
||||
%include "Array.h"
|
||||
|
||||
%template(Array3IndexAndMaterial) PolyVox::Array<3, PolyVox::IndexAndMaterial>;
|
||||
|
@ -1,65 +1,65 @@
|
||||
# Copyright (c) 2009-2013 Matt Williams
|
||||
#
|
||||
# This software is provided 'as-is', without any express or implied
|
||||
# warranty. In no event will the authors be held liable for any damages
|
||||
# arising from the use of this software.
|
||||
#
|
||||
# Permission is granted to anyone to use this software for any purpose,
|
||||
# including commercial applications, and to alter it and redistribute it
|
||||
# freely, subject to the following restrictions:
|
||||
#
|
||||
# 1. The origin of this software must not be misrepresented; you must not
|
||||
# claim that you wrote the original software. If you use this software
|
||||
# in a product, an acknowledgment in the product documentation would be
|
||||
# appreciated but is not required.
|
||||
#
|
||||
# 2. Altered source versions must be plainly marked as such, and must not be
|
||||
# misrepresented as being the original software.
|
||||
#
|
||||
# 3. This notice may not be removed or altered from any source
|
||||
# distribution.
|
||||
|
||||
option(ENABLE_BINDINGS "Build bindings" ON)
|
||||
if(ENABLE_BINDINGS)
|
||||
find_package(SWIG)
|
||||
mark_as_advanced(SWIG_DIR SWIG_VERSION)
|
||||
find_package(PythonLibs 3)
|
||||
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)
|
||||
set(BUILD_BINDINGS ON CACHE BOOL "Will the bindings be built" FORCE)
|
||||
include(${SWIG_USE_FILE})
|
||||
|
||||
set(CMAKE_SWIG_FLAGS "")
|
||||
set_source_files_properties(PolyVoxCore.i PROPERTIES CPLUSPLUS ON)
|
||||
|
||||
include_directories(${PolyVoxCore_BINARY_DIR}/include ${PolyVoxCore_SOURCE_DIR}/include ${PolyVoxCore_SOURCE_DIR}/include/PolyVoxCore)
|
||||
if(PYTHONLIBS_FOUND)
|
||||
include_directories(${PYTHON_INCLUDE_PATH})
|
||||
link_directories(${PolyVoxCore_BINARY_DIR})
|
||||
|
||||
#set_source_files_properties(PolyVoxCore.i PROPERTIES SWIG_FLAGS "-builtin")
|
||||
set(SWIG_MODULE_PolyVoxCorePython_EXTRA_FLAGS "-py3")
|
||||
swig_add_module(PolyVoxCorePython python PolyVoxCore.i)
|
||||
swig_link_libraries(PolyVoxCorePython ${PYTHON_LIBRARIES} PolyVoxCore)
|
||||
set_target_properties(${SWIG_MODULE_PolyVoxCorePython_REAL_NAME} PROPERTIES OUTPUT_NAME _PolyVoxCore)
|
||||
#set_target_properties(${SWIG_MODULE_PolyVoxCore_REAL_NAME} PROPERTIES SUFFIX ".pyd")
|
||||
SET_PROPERTY(TARGET ${SWIG_MODULE_PolyVoxCorePython_REAL_NAME} PROPERTY FOLDER "Bindings")
|
||||
endif()
|
||||
|
||||
set(SWIG_MODULE_PolyVoxCoreCSharp_EXTRA_FLAGS "-dllimport;PolyVoxCoreCSharp") #This _should_ be inside UseSWIG.cmake - http://www.cmake.org/Bug/view.php?id=13814
|
||||
swig_add_module(PolyVoxCoreCSharp csharp PolyVoxCore.i)
|
||||
swig_link_libraries(PolyVoxCoreCSharp PolyVoxCore)
|
||||
SET_PROPERTY(TARGET ${SWIG_MODULE_PolyVoxCoreCSharp_REAL_NAME} PROPERTY FOLDER "Bindings")
|
||||
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)
|
||||
endif()
|
||||
mark_as_advanced(FORCE BUILD_BINDINGS)
|
||||
# Copyright (c) 2009-2013 Matt Williams
|
||||
#
|
||||
# This software is provided 'as-is', without any express or implied
|
||||
# warranty. In no event will the authors be held liable for any damages
|
||||
# arising from the use of this software.
|
||||
#
|
||||
# Permission is granted to anyone to use this software for any purpose,
|
||||
# including commercial applications, and to alter it and redistribute it
|
||||
# freely, subject to the following restrictions:
|
||||
#
|
||||
# 1. The origin of this software must not be misrepresented; you must not
|
||||
# claim that you wrote the original software. If you use this software
|
||||
# in a product, an acknowledgment in the product documentation would be
|
||||
# appreciated but is not required.
|
||||
#
|
||||
# 2. Altered source versions must be plainly marked as such, and must not be
|
||||
# misrepresented as being the original software.
|
||||
#
|
||||
# 3. This notice may not be removed or altered from any source
|
||||
# distribution.
|
||||
|
||||
option(ENABLE_BINDINGS "Build bindings" ON)
|
||||
if(ENABLE_BINDINGS)
|
||||
find_package(SWIG)
|
||||
mark_as_advanced(SWIG_DIR SWIG_VERSION)
|
||||
find_package(PythonLibs 3)
|
||||
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)
|
||||
set(BUILD_BINDINGS ON CACHE BOOL "Will the bindings be built" FORCE)
|
||||
include(${SWIG_USE_FILE})
|
||||
|
||||
set(CMAKE_SWIG_FLAGS "")
|
||||
set_source_files_properties(PolyVoxCore.i PROPERTIES CPLUSPLUS ON)
|
||||
|
||||
include_directories(${PolyVoxCore_BINARY_DIR}/include ${PolyVoxCore_SOURCE_DIR}/include ${PolyVoxCore_SOURCE_DIR}/include/PolyVoxCore)
|
||||
if(PYTHONLIBS_FOUND)
|
||||
include_directories(${PYTHON_INCLUDE_PATH})
|
||||
link_directories(${PolyVoxCore_BINARY_DIR})
|
||||
|
||||
#set_source_files_properties(PolyVoxCore.i PROPERTIES SWIG_FLAGS "-builtin")
|
||||
set(SWIG_MODULE_PolyVoxCorePython_EXTRA_FLAGS "-py3")
|
||||
swig_add_module(PolyVoxCorePython python PolyVoxCore.i)
|
||||
swig_link_libraries(PolyVoxCorePython ${PYTHON_LIBRARIES} PolyVoxCore)
|
||||
set_target_properties(${SWIG_MODULE_PolyVoxCorePython_REAL_NAME} PROPERTIES OUTPUT_NAME _PolyVoxCore)
|
||||
#set_target_properties(${SWIG_MODULE_PolyVoxCore_REAL_NAME} PROPERTIES SUFFIX ".pyd")
|
||||
SET_PROPERTY(TARGET ${SWIG_MODULE_PolyVoxCorePython_REAL_NAME} PROPERTY FOLDER "Bindings")
|
||||
endif()
|
||||
|
||||
set(SWIG_MODULE_PolyVoxCoreCSharp_EXTRA_FLAGS "-dllimport;PolyVoxCoreCSharp") #This _should_ be inside UseSWIG.cmake - http://www.cmake.org/Bug/view.php?id=13814
|
||||
swig_add_module(PolyVoxCoreCSharp csharp PolyVoxCore.i)
|
||||
swig_link_libraries(PolyVoxCoreCSharp PolyVoxCore)
|
||||
SET_PROPERTY(TARGET ${SWIG_MODULE_PolyVoxCoreCSharp_REAL_NAME} PROPERTY FOLDER "Bindings")
|
||||
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)
|
||||
endif()
|
||||
mark_as_advanced(FORCE BUILD_BINDINGS)
|
||||
|
@ -1,9 +1,9 @@
|
||||
%module CubicSurfaceExtractor
|
||||
%{
|
||||
#include "CubicSurfaceExtractor.h"
|
||||
%}
|
||||
|
||||
%include "CubicSurfaceExtractor.h"
|
||||
|
||||
%template(CubicSurfaceExtractorSimpleVolumeuint8) PolyVox::CubicSurfaceExtractor<PolyVox::SimpleVolume<uint8_t>, PolyVox::DefaultIsQuadNeeded<uint8_t> >;
|
||||
//EXTRACTORS(CubicSurfaceExtractor)
|
||||
%module CubicSurfaceExtractor
|
||||
%{
|
||||
#include "CubicSurfaceExtractor.h"
|
||||
%}
|
||||
|
||||
%include "CubicSurfaceExtractor.h"
|
||||
|
||||
%template(CubicSurfaceExtractorSimpleVolumeuint8) PolyVox::CubicSurfaceExtractor<PolyVox::SimpleVolume<uint8_t>, PolyVox::DefaultIsQuadNeeded<uint8_t> >;
|
||||
//EXTRACTORS(CubicSurfaceExtractor)
|
||||
|
@ -1,8 +1,8 @@
|
||||
%module CubicSurfaceExtractorWithNormals
|
||||
%{
|
||||
#include "CubicSurfaceExtractorWithNormals.h"
|
||||
%}
|
||||
|
||||
%include "CubicSurfaceExtractorWithNormals.h"
|
||||
|
||||
%template(CubicSurfaceExtractorWithNormalsSimpleVolumeuint8) PolyVox::CubicSurfaceExtractorWithNormals<PolyVox::SimpleVolume<uint8_t>, PolyVox::DefaultIsQuadNeeded<uint8_t> >;
|
||||
%module CubicSurfaceExtractorWithNormals
|
||||
%{
|
||||
#include "CubicSurfaceExtractorWithNormals.h"
|
||||
%}
|
||||
|
||||
%include "CubicSurfaceExtractorWithNormals.h"
|
||||
|
||||
%template(CubicSurfaceExtractorWithNormalsSimpleVolumeuint8) PolyVox::CubicSurfaceExtractorWithNormals<PolyVox::SimpleVolume<uint8_t>, PolyVox::DefaultIsQuadNeeded<uint8_t> >;
|
||||
|
@ -5,5 +5,5 @@
|
||||
|
||||
%include "MeshDecimator.h"
|
||||
|
||||
%template(MeshDecimatorMaterial8) PolyVox::MeshDecimator<PolyVox::Material8>;
|
||||
%template(MeshDecimatorMaterial8) PolyVox::MeshDecimator<PolyVox::Material8>;
|
||||
%template(MeshDecimatorDensity8) PolyVox::MeshDecimator<PolyVox::Density8>;
|
@ -1,98 +1,98 @@
|
||||
%module PolyVoxCore
|
||||
|
||||
#define POLYVOX_API
|
||||
%include "Impl/TypeDef.h"
|
||||
#define __attribute__(x) //Silence DEPRECATED errors
|
||||
|
||||
//This macro allows us to use Python properties on our classes
|
||||
%define PROPERTY(type,name,getter,setter)
|
||||
%extend type {
|
||||
%pythoncode %{
|
||||
__swig_getmethods__["name"] = getter
|
||||
__swig_setmethods__["name"] = setter
|
||||
if _newclass: name = property(getter, setter)
|
||||
%}
|
||||
};
|
||||
%enddef
|
||||
|
||||
//Put this in an %extend section to wrap operator<< as __str__
|
||||
%define STR()
|
||||
const char* __str__() {
|
||||
std::ostringstream out;
|
||||
out << *$self;
|
||||
return out.str().c_str();
|
||||
}
|
||||
%enddef
|
||||
|
||||
//Centralise this to avoid repeating ourselves
|
||||
//This macro will be called in the volume interface files to define the various volume types.
|
||||
%define VOLUMETYPES(class)
|
||||
%template(class ## int8) PolyVox::class<int8_t>;
|
||||
%template(class ## int16) PolyVox::class<int16_t>;
|
||||
%template(class ## int32) PolyVox::class<int32_t>;
|
||||
%template(class ## uint8) PolyVox::class<uint8_t>;
|
||||
%template(class ## uint16) PolyVox::class<uint16_t>;
|
||||
%template(class ## uint32) PolyVox::class<uint32_t>;
|
||||
%template(class ## float) PolyVox::class<float>;
|
||||
%enddef
|
||||
|
||||
//Template based on voxel type
|
||||
%define EXTRACTOR(class, volumetype)
|
||||
%template(class ## volumetype ## int8) PolyVox::class<PolyVox::volumetype<int8_t> >;
|
||||
%template(class ## volumetype ## int16) PolyVox::class<PolyVox::volumetype<int16_t> >;
|
||||
%template(class ## volumetype ## int32) PolyVox::class<PolyVox::volumetype<int32_t> >;
|
||||
%template(class ## volumetype ## uint8) PolyVox::class<PolyVox::volumetype<uint8_t> >;
|
||||
%template(class ## volumetype ## uint16) PolyVox::class<PolyVox::volumetype<uint16_t> >;
|
||||
%template(class ## volumetype ## uint32) PolyVox::class<PolyVox::volumetype<uint32_t> >;
|
||||
%template(class ## volumetype ## float) PolyVox::class<PolyVox::volumetype<float> >;
|
||||
%enddef
|
||||
|
||||
//Template based on volume type
|
||||
%define EXTRACTORS(shortname)
|
||||
EXTRACTOR(shortname, SimpleVolume)
|
||||
EXTRACTOR(shortname, RawVolume)
|
||||
EXTRACTOR(shortname, LargeVolume)
|
||||
%enddef
|
||||
|
||||
%feature("autodoc", "1");
|
||||
|
||||
#ifdef SWIGPYTHON
|
||||
//This will rename "operator=" to "assign" since Python doesn't have assignment
|
||||
%rename(assign) *::operator=;
|
||||
#endif
|
||||
#ifdef SWIGCSHARP
|
||||
//These operators are not wrappable in C# and their function is provided by other means
|
||||
%ignore *::operator=;
|
||||
%ignore *::operator+=;
|
||||
%ignore *::operator-=;
|
||||
%ignore *::operator*=;
|
||||
%ignore *::operator/=;
|
||||
%ignore *::operator<<; //This is covered by STR()
|
||||
#endif
|
||||
|
||||
%include "stdint.i"
|
||||
%include "std_vector.i"
|
||||
%include "Vector.i"
|
||||
%include "DefaultMarchingCubesController.i"
|
||||
%include "Region.i"
|
||||
%include "Block.i"
|
||||
%include "CompressedBlock.i"
|
||||
%include "UncompressedBlock.i"
|
||||
%include "BlockCompressor.i"
|
||||
%include "Pager.i"
|
||||
%include "FilePager.i"
|
||||
%include "MinizBlockCompressor.i"
|
||||
%include "RLEBlockCompressor.i"
|
||||
%include "BaseVolume.i"
|
||||
%include "SimpleVolume.i"
|
||||
%include "RawVolume.i"
|
||||
%include "LargeVolume.i"
|
||||
//%include "SubArray.i"
|
||||
//%include "Array.i"
|
||||
%include "VertexTypes.i"
|
||||
%include "SurfaceMesh.i"
|
||||
%include "MarchingCubesSurfaceExtractor.i"
|
||||
%include "CubicSurfaceExtractor.i"
|
||||
%include "CubicSurfaceExtractorWithNormals.i"
|
||||
%include "Raycast.i"
|
||||
%include "Picking.i"
|
||||
%module PolyVoxCore
|
||||
|
||||
#define POLYVOX_API
|
||||
%include "Impl/TypeDef.h"
|
||||
#define __attribute__(x) //Silence DEPRECATED errors
|
||||
|
||||
//This macro allows us to use Python properties on our classes
|
||||
%define PROPERTY(type,name,getter,setter)
|
||||
%extend type {
|
||||
%pythoncode %{
|
||||
__swig_getmethods__["name"] = getter
|
||||
__swig_setmethods__["name"] = setter
|
||||
if _newclass: name = property(getter, setter)
|
||||
%}
|
||||
};
|
||||
%enddef
|
||||
|
||||
//Put this in an %extend section to wrap operator<< as __str__
|
||||
%define STR()
|
||||
const char* __str__() {
|
||||
std::ostringstream out;
|
||||
out << *$self;
|
||||
return out.str().c_str();
|
||||
}
|
||||
%enddef
|
||||
|
||||
//Centralise this to avoid repeating ourselves
|
||||
//This macro will be called in the volume interface files to define the various volume types.
|
||||
%define VOLUMETYPES(class)
|
||||
%template(class ## int8) PolyVox::class<int8_t>;
|
||||
%template(class ## int16) PolyVox::class<int16_t>;
|
||||
%template(class ## int32) PolyVox::class<int32_t>;
|
||||
%template(class ## uint8) PolyVox::class<uint8_t>;
|
||||
%template(class ## uint16) PolyVox::class<uint16_t>;
|
||||
%template(class ## uint32) PolyVox::class<uint32_t>;
|
||||
%template(class ## float) PolyVox::class<float>;
|
||||
%enddef
|
||||
|
||||
//Template based on voxel type
|
||||
%define EXTRACTOR(class, volumetype)
|
||||
%template(class ## volumetype ## int8) PolyVox::class<PolyVox::volumetype<int8_t> >;
|
||||
%template(class ## volumetype ## int16) PolyVox::class<PolyVox::volumetype<int16_t> >;
|
||||
%template(class ## volumetype ## int32) PolyVox::class<PolyVox::volumetype<int32_t> >;
|
||||
%template(class ## volumetype ## uint8) PolyVox::class<PolyVox::volumetype<uint8_t> >;
|
||||
%template(class ## volumetype ## uint16) PolyVox::class<PolyVox::volumetype<uint16_t> >;
|
||||
%template(class ## volumetype ## uint32) PolyVox::class<PolyVox::volumetype<uint32_t> >;
|
||||
%template(class ## volumetype ## float) PolyVox::class<PolyVox::volumetype<float> >;
|
||||
%enddef
|
||||
|
||||
//Template based on volume type
|
||||
%define EXTRACTORS(shortname)
|
||||
EXTRACTOR(shortname, SimpleVolume)
|
||||
EXTRACTOR(shortname, RawVolume)
|
||||
EXTRACTOR(shortname, LargeVolume)
|
||||
%enddef
|
||||
|
||||
%feature("autodoc", "1");
|
||||
|
||||
#ifdef SWIGPYTHON
|
||||
//This will rename "operator=" to "assign" since Python doesn't have assignment
|
||||
%rename(assign) *::operator=;
|
||||
#endif
|
||||
#ifdef SWIGCSHARP
|
||||
//These operators are not wrappable in C# and their function is provided by other means
|
||||
%ignore *::operator=;
|
||||
%ignore *::operator+=;
|
||||
%ignore *::operator-=;
|
||||
%ignore *::operator*=;
|
||||
%ignore *::operator/=;
|
||||
%ignore *::operator<<; //This is covered by STR()
|
||||
#endif
|
||||
|
||||
%include "stdint.i"
|
||||
%include "std_vector.i"
|
||||
%include "Vector.i"
|
||||
%include "DefaultMarchingCubesController.i"
|
||||
%include "Region.i"
|
||||
%include "Block.i"
|
||||
%include "CompressedBlock.i"
|
||||
%include "UncompressedBlock.i"
|
||||
%include "BlockCompressor.i"
|
||||
%include "Pager.i"
|
||||
%include "FilePager.i"
|
||||
%include "MinizBlockCompressor.i"
|
||||
%include "RLEBlockCompressor.i"
|
||||
%include "BaseVolume.i"
|
||||
%include "SimpleVolume.i"
|
||||
%include "RawVolume.i"
|
||||
%include "LargeVolume.i"
|
||||
//%include "SubArray.i"
|
||||
//%include "Array.i"
|
||||
%include "VertexTypes.i"
|
||||
%include "SurfaceMesh.i"
|
||||
%include "MarchingCubesSurfaceExtractor.i"
|
||||
%include "CubicSurfaceExtractor.i"
|
||||
%include "CubicSurfaceExtractorWithNormals.i"
|
||||
%include "Raycast.i"
|
||||
%include "Picking.i"
|
||||
|
@ -1,9 +1,9 @@
|
||||
%module SimpleVolumeSampler
|
||||
%{
|
||||
#include "SimpleVolume.h"
|
||||
%}
|
||||
|
||||
%include "SimpleVolume.h"
|
||||
|
||||
%template(SimpleVolumeSamplerMaterial8) PolyVox::SimpleVolume::Sampler<PolyVox::Material8>;
|
||||
%module SimpleVolumeSampler
|
||||
%{
|
||||
#include "SimpleVolume.h"
|
||||
%}
|
||||
|
||||
%include "SimpleVolume.h"
|
||||
|
||||
%template(SimpleVolumeSamplerMaterial8) PolyVox::SimpleVolume::Sampler<PolyVox::Material8>;
|
||||
%template(SimpleVolumeSamplerDensity8) PolyVox::SimpleVolume::Sampler<PolyVox::Density8>;
|
@ -1,9 +1,9 @@
|
||||
%module SubArray
|
||||
%{
|
||||
#include "PolyVoxImpl\SubArray.h"
|
||||
%}
|
||||
|
||||
%include "PolyVoxImpl\SubArray.h"
|
||||
|
||||
//%template(SubArray) PolyVox::SubArray<uint32_t, PolyVox::IndexAndMaterial>;
|
||||
%module SubArray
|
||||
%{
|
||||
#include "PolyVoxImpl\SubArray.h"
|
||||
%}
|
||||
|
||||
%include "PolyVoxImpl\SubArray.h"
|
||||
|
||||
//%template(SubArray) PolyVox::SubArray<uint32_t, PolyVox::IndexAndMaterial>;
|
||||
//%template(SubArray) PolyVox::SubArray<uint32_t, PolyVox::IndexAndMaterial>;
|
@ -1,20 +1,20 @@
|
||||
%module SurfaceMesh
|
||||
%{
|
||||
#include "Region.h"
|
||||
#include "VertexTypes.h"
|
||||
#include "SurfaceMesh.h"
|
||||
%}
|
||||
|
||||
%include "Region.h"
|
||||
%include "VertexTypes.h"
|
||||
%include "SurfaceMesh.h"
|
||||
|
||||
//%template(VertexTypeVector) std::vector<PolyVox::VertexType>;
|
||||
%template(PositionMaterialVector) std::vector<PolyVox::PositionMaterial>;
|
||||
%template(PositionMaterialNormalVector) std::vector<PolyVox::PositionMaterialNormal>;
|
||||
%template(LodRecordVector) std::vector<PolyVox::LodRecord>;
|
||||
%template(uint8Vector) std::vector<uint8_t>;
|
||||
%template(uint32Vector) std::vector<uint32_t>;
|
||||
|
||||
%template(SurfaceMeshPositionMaterial) PolyVox::SurfaceMesh<PolyVox::PositionMaterial>;
|
||||
%module SurfaceMesh
|
||||
%{
|
||||
#include "Region.h"
|
||||
#include "VertexTypes.h"
|
||||
#include "SurfaceMesh.h"
|
||||
%}
|
||||
|
||||
%include "Region.h"
|
||||
%include "VertexTypes.h"
|
||||
%include "SurfaceMesh.h"
|
||||
|
||||
//%template(VertexTypeVector) std::vector<PolyVox::VertexType>;
|
||||
%template(PositionMaterialVector) std::vector<PolyVox::PositionMaterial>;
|
||||
%template(PositionMaterialNormalVector) std::vector<PolyVox::PositionMaterialNormal>;
|
||||
%template(LodRecordVector) std::vector<PolyVox::LodRecord>;
|
||||
%template(uint8Vector) std::vector<uint8_t>;
|
||||
%template(uint32Vector) std::vector<uint32_t>;
|
||||
|
||||
%template(SurfaceMeshPositionMaterial) PolyVox::SurfaceMesh<PolyVox::PositionMaterial>;
|
||||
%template(SurfaceMeshPositionMaterialNormal) PolyVox::SurfaceMesh<PolyVox::PositionMaterialNormal>;
|
@ -1,6 +1,6 @@
|
||||
%module TypeDef
|
||||
%{
|
||||
#include "PolyVoxImpl/TypeDef.h"
|
||||
%}
|
||||
|
||||
%module TypeDef
|
||||
%{
|
||||
#include "PolyVoxImpl/TypeDef.h"
|
||||
%}
|
||||
|
||||
%include "PolyVoxImpl/TypeDef.h"
|
@ -1,121 +1,121 @@
|
||||
%module Vector
|
||||
%{
|
||||
#include "Vector.h"
|
||||
#include <sstream>
|
||||
%}
|
||||
|
||||
%include "Vector.h"
|
||||
|
||||
#ifdef SWIGPYTHON
|
||||
PROPERTY(PolyVox::Vector, x, getX, setX)
|
||||
PROPERTY(PolyVox::Vector, y, getY, setY)
|
||||
PROPERTY(PolyVox::Vector, z, getZ, setZ)
|
||||
#endif
|
||||
|
||||
%rename(Plus) operator +;
|
||||
%rename(Minus) operator -;
|
||||
%rename(Multiply) operator *;
|
||||
%rename(Divide) operator /;
|
||||
%rename(Equal) operator ==;
|
||||
%rename(NotEqual) operator !=;
|
||||
|
||||
%extend PolyVox::Vector {
|
||||
#ifdef SWIGPYTHON
|
||||
PolyVox::Vector __add__(const PolyVox::Vector& rhs) {
|
||||
return *$self + rhs;
|
||||
}
|
||||
PolyVox::Vector __sub__(const PolyVox::Vector& rhs) {
|
||||
return *$self - rhs;
|
||||
}
|
||||
PolyVox::Vector __div__(const PolyVox::Vector& rhs) {
|
||||
return *$self / rhs;
|
||||
}
|
||||
PolyVox::Vector __div__(const StorageType& rhs) {
|
||||
return *$self / rhs;
|
||||
}
|
||||
PolyVox::Vector __mul__(const PolyVox::Vector& rhs) {
|
||||
return *$self * rhs;
|
||||
}
|
||||
PolyVox::Vector __mul__(const StorageType& rhs) {
|
||||
return *$self * rhs;
|
||||
}
|
||||
#endif
|
||||
STR()
|
||||
};
|
||||
|
||||
%feature("pythonprepend") PolyVox::Vector::operator< %{
|
||||
import warnings
|
||||
warnings.warn("deprecated", DeprecationWarning)
|
||||
%}
|
||||
|
||||
//%csattributes PolyVox::Vector::operator< "[System.Obsolete(\"deprecated\")]"
|
||||
|
||||
%define VECTOR3(StorageType,OperationType,ReducedStorageType)
|
||||
#if SWIGCSHARP
|
||||
%extend PolyVox::Vector<3,StorageType,OperationType> {
|
||||
PolyVox::Vector<3,StorageType,OperationType> operator+(const PolyVox::Vector<3,StorageType,OperationType>& rhs) {return *$self + rhs;}
|
||||
PolyVox::Vector<3,StorageType,OperationType> operator-(const PolyVox::Vector<3,StorageType,OperationType>& rhs) {return *$self - rhs;}
|
||||
PolyVox::Vector<3,StorageType,OperationType> operator*(const PolyVox::Vector<3,StorageType,OperationType>& rhs) {return *$self * rhs;}
|
||||
PolyVox::Vector<3,StorageType,OperationType> operator/(const PolyVox::Vector<3,StorageType,OperationType>& rhs) {return *$self / rhs;}
|
||||
PolyVox::Vector<3,StorageType,OperationType> operator*(const StorageType& rhs) {return *$self * rhs;}
|
||||
PolyVox::Vector<3,StorageType,OperationType> operator/(const StorageType& rhs) {return *$self / rhs;}
|
||||
};
|
||||
%typemap(cscode) PolyVox::Vector<3,StorageType,OperationType> %{
|
||||
public static Vector3D##StorageType operator+(Vector3D##StorageType lhs, Vector3D##StorageType rhs) {
|
||||
Vector3D##StorageType newVec = new Vector3D##StorageType();
|
||||
newVec = lhs.Plus(rhs);
|
||||
return newVec;
|
||||
}
|
||||
public static Vector3D##StorageType operator-(Vector3D##StorageType lhs, Vector3D##StorageType rhs) {
|
||||
Vector3D##StorageType newVec = new Vector3D##StorageType();
|
||||
newVec = lhs.Minus(rhs);
|
||||
return newVec;
|
||||
}
|
||||
public static Vector3D##StorageType operator*(Vector3D##StorageType lhs, Vector3D##StorageType rhs) {
|
||||
Vector3D##StorageType newVec = new Vector3D##StorageType();
|
||||
newVec = lhs.Multiply(rhs);
|
||||
return newVec;
|
||||
}
|
||||
public static Vector3D##StorageType operator/(Vector3D##StorageType lhs, Vector3D##StorageType rhs) {
|
||||
Vector3D##StorageType newVec = new Vector3D##StorageType();
|
||||
newVec = lhs.Divide(rhs);
|
||||
return newVec;
|
||||
}
|
||||
public static Vector3D##StorageType operator*(Vector3D##StorageType lhs, $typemap(cstype, StorageType) rhs) {
|
||||
Vector3D##StorageType newVec = new Vector3D##StorageType();
|
||||
newVec = lhs.Multiply(rhs);
|
||||
return newVec;
|
||||
}
|
||||
public static Vector3D##StorageType operator/(Vector3D##StorageType lhs, $typemap(cstype, StorageType) rhs) {
|
||||
Vector3D##StorageType newVec = new Vector3D##StorageType();
|
||||
newVec = lhs.Divide(rhs);
|
||||
return newVec;
|
||||
}
|
||||
public bool Equals(Vector3D##StorageType rhs) {
|
||||
if ((object)rhs == null)
|
||||
{
|
||||
return false;
|
||||
}
|
||||
return Equal(rhs);
|
||||
}
|
||||
%}
|
||||
%ignore PolyVox::Vector<3,StorageType,OperationType>::operator<; //This is deprecated
|
||||
#endif
|
||||
%ignore PolyVox::Vector<3,StorageType,OperationType>::Vector(ReducedStorageType,ReducedStorageType,ReducedStorageType,ReducedStorageType);
|
||||
%ignore PolyVox::Vector<3,StorageType,OperationType>::Vector(ReducedStorageType,ReducedStorageType);
|
||||
%ignore PolyVox::Vector<3,StorageType,OperationType>::getW() const;
|
||||
%ignore PolyVox::Vector<3,StorageType,OperationType>::setW(ReducedStorageType);
|
||||
%ignore PolyVox::Vector<3,StorageType,OperationType>::setElements(ReducedStorageType,ReducedStorageType,ReducedStorageType,ReducedStorageType);
|
||||
%template(Vector3D ## StorageType) PolyVox::Vector<3,StorageType,OperationType>;
|
||||
%enddef
|
||||
|
||||
VECTOR3(float,float,float)
|
||||
VECTOR3(double,double,double)
|
||||
VECTOR3(int8_t,int32_t,signed char)
|
||||
VECTOR3(uint8_t,int32_t,unsigned char)
|
||||
VECTOR3(int16_t,int32_t,signed short)
|
||||
VECTOR3(uint16_t,int32_t,unsigned short)
|
||||
VECTOR3(int32_t,int32_t,signed int)
|
||||
VECTOR3(uint32_t,int32_t,unsigned int)
|
||||
|
||||
//%rename(assign) Vector3DFloat::operator=;
|
||||
%module Vector
|
||||
%{
|
||||
#include "Vector.h"
|
||||
#include <sstream>
|
||||
%}
|
||||
|
||||
%include "Vector.h"
|
||||
|
||||
#ifdef SWIGPYTHON
|
||||
PROPERTY(PolyVox::Vector, x, getX, setX)
|
||||
PROPERTY(PolyVox::Vector, y, getY, setY)
|
||||
PROPERTY(PolyVox::Vector, z, getZ, setZ)
|
||||
#endif
|
||||
|
||||
%rename(Plus) operator +;
|
||||
%rename(Minus) operator -;
|
||||
%rename(Multiply) operator *;
|
||||
%rename(Divide) operator /;
|
||||
%rename(Equal) operator ==;
|
||||
%rename(NotEqual) operator !=;
|
||||
|
||||
%extend PolyVox::Vector {
|
||||
#ifdef SWIGPYTHON
|
||||
PolyVox::Vector __add__(const PolyVox::Vector& rhs) {
|
||||
return *$self + rhs;
|
||||
}
|
||||
PolyVox::Vector __sub__(const PolyVox::Vector& rhs) {
|
||||
return *$self - rhs;
|
||||
}
|
||||
PolyVox::Vector __div__(const PolyVox::Vector& rhs) {
|
||||
return *$self / rhs;
|
||||
}
|
||||
PolyVox::Vector __div__(const StorageType& rhs) {
|
||||
return *$self / rhs;
|
||||
}
|
||||
PolyVox::Vector __mul__(const PolyVox::Vector& rhs) {
|
||||
return *$self * rhs;
|
||||
}
|
||||
PolyVox::Vector __mul__(const StorageType& rhs) {
|
||||
return *$self * rhs;
|
||||
}
|
||||
#endif
|
||||
STR()
|
||||
};
|
||||
|
||||
%feature("pythonprepend") PolyVox::Vector::operator< %{
|
||||
import warnings
|
||||
warnings.warn("deprecated", DeprecationWarning)
|
||||
%}
|
||||
|
||||
//%csattributes PolyVox::Vector::operator< "[System.Obsolete(\"deprecated\")]"
|
||||
|
||||
%define VECTOR3(StorageType,OperationType,ReducedStorageType)
|
||||
#if SWIGCSHARP
|
||||
%extend PolyVox::Vector<3,StorageType,OperationType> {
|
||||
PolyVox::Vector<3,StorageType,OperationType> operator+(const PolyVox::Vector<3,StorageType,OperationType>& rhs) {return *$self + rhs;}
|
||||
PolyVox::Vector<3,StorageType,OperationType> operator-(const PolyVox::Vector<3,StorageType,OperationType>& rhs) {return *$self - rhs;}
|
||||
PolyVox::Vector<3,StorageType,OperationType> operator*(const PolyVox::Vector<3,StorageType,OperationType>& rhs) {return *$self * rhs;}
|
||||
PolyVox::Vector<3,StorageType,OperationType> operator/(const PolyVox::Vector<3,StorageType,OperationType>& rhs) {return *$self / rhs;}
|
||||
PolyVox::Vector<3,StorageType,OperationType> operator*(const StorageType& rhs) {return *$self * rhs;}
|
||||
PolyVox::Vector<3,StorageType,OperationType> operator/(const StorageType& rhs) {return *$self / rhs;}
|
||||
};
|
||||
%typemap(cscode) PolyVox::Vector<3,StorageType,OperationType> %{
|
||||
public static Vector3D##StorageType operator+(Vector3D##StorageType lhs, Vector3D##StorageType rhs) {
|
||||
Vector3D##StorageType newVec = new Vector3D##StorageType();
|
||||
newVec = lhs.Plus(rhs);
|
||||
return newVec;
|
||||
}
|
||||
public static Vector3D##StorageType operator-(Vector3D##StorageType lhs, Vector3D##StorageType rhs) {
|
||||
Vector3D##StorageType newVec = new Vector3D##StorageType();
|
||||
newVec = lhs.Minus(rhs);
|
||||
return newVec;
|
||||
}
|
||||
public static Vector3D##StorageType operator*(Vector3D##StorageType lhs, Vector3D##StorageType rhs) {
|
||||
Vector3D##StorageType newVec = new Vector3D##StorageType();
|
||||
newVec = lhs.Multiply(rhs);
|
||||
return newVec;
|
||||
}
|
||||
public static Vector3D##StorageType operator/(Vector3D##StorageType lhs, Vector3D##StorageType rhs) {
|
||||
Vector3D##StorageType newVec = new Vector3D##StorageType();
|
||||
newVec = lhs.Divide(rhs);
|
||||
return newVec;
|
||||
}
|
||||
public static Vector3D##StorageType operator*(Vector3D##StorageType lhs, $typemap(cstype, StorageType) rhs) {
|
||||
Vector3D##StorageType newVec = new Vector3D##StorageType();
|
||||
newVec = lhs.Multiply(rhs);
|
||||
return newVec;
|
||||
}
|
||||
public static Vector3D##StorageType operator/(Vector3D##StorageType lhs, $typemap(cstype, StorageType) rhs) {
|
||||
Vector3D##StorageType newVec = new Vector3D##StorageType();
|
||||
newVec = lhs.Divide(rhs);
|
||||
return newVec;
|
||||
}
|
||||
public bool Equals(Vector3D##StorageType rhs) {
|
||||
if ((object)rhs == null)
|
||||
{
|
||||
return false;
|
||||
}
|
||||
return Equal(rhs);
|
||||
}
|
||||
%}
|
||||
%ignore PolyVox::Vector<3,StorageType,OperationType>::operator<; //This is deprecated
|
||||
#endif
|
||||
%ignore PolyVox::Vector<3,StorageType,OperationType>::Vector(ReducedStorageType,ReducedStorageType,ReducedStorageType,ReducedStorageType);
|
||||
%ignore PolyVox::Vector<3,StorageType,OperationType>::Vector(ReducedStorageType,ReducedStorageType);
|
||||
%ignore PolyVox::Vector<3,StorageType,OperationType>::getW() const;
|
||||
%ignore PolyVox::Vector<3,StorageType,OperationType>::setW(ReducedStorageType);
|
||||
%ignore PolyVox::Vector<3,StorageType,OperationType>::setElements(ReducedStorageType,ReducedStorageType,ReducedStorageType,ReducedStorageType);
|
||||
%template(Vector3D ## StorageType) PolyVox::Vector<3,StorageType,OperationType>;
|
||||
%enddef
|
||||
|
||||
VECTOR3(float,float,float)
|
||||
VECTOR3(double,double,double)
|
||||
VECTOR3(int8_t,int32_t,signed char)
|
||||
VECTOR3(uint8_t,int32_t,unsigned char)
|
||||
VECTOR3(int16_t,int32_t,signed short)
|
||||
VECTOR3(uint16_t,int32_t,unsigned short)
|
||||
VECTOR3(int32_t,int32_t,signed int)
|
||||
VECTOR3(uint32_t,int32_t,unsigned int)
|
||||
|
||||
//%rename(assign) Vector3DFloat::operator=;
|
||||
|
@ -1,13 +1,13 @@
|
||||
%module VertexTypes
|
||||
%{
|
||||
#include "Impl/TypeDef.h"
|
||||
#include "Vector.h"
|
||||
#include "VertexTypes.h"
|
||||
%}
|
||||
|
||||
%include "Impl/TypeDef.h"
|
||||
%include "Vector.h"
|
||||
%include "VertexTypes.h"
|
||||
|
||||
//%template (PositionMaterial) PolyVox::PositionMaterial;
|
||||
%module VertexTypes
|
||||
%{
|
||||
#include "Impl/TypeDef.h"
|
||||
#include "Vector.h"
|
||||
#include "VertexTypes.h"
|
||||
%}
|
||||
|
||||
%include "Impl/TypeDef.h"
|
||||
%include "Vector.h"
|
||||
%include "VertexTypes.h"
|
||||
|
||||
//%template (PositionMaterial) PolyVox::PositionMaterial;
|
||||
//%template (PositionMaterialNormal) PolyVox::PositionMaterialNormal;
|
Reference in New Issue
Block a user