Merge branch 'devel'
This commit is contained in:
commit
38c3a410b1
|
@ -1,59 +0,0 @@
|
|||
branches:
|
||||
only:
|
||||
- devel
|
||||
|
||||
# Build worker image (VM template)
|
||||
image: Visual Studio 2015
|
||||
|
||||
# clone directory
|
||||
clone_folder: c:\projects\vcglib
|
||||
# Build Configuration, i.e. Debug, Release, etc.
|
||||
configuration:
|
||||
- release
|
||||
# - debug
|
||||
|
||||
environment:
|
||||
matrix:
|
||||
# MinGW 32bit
|
||||
- QTDIR: C:\Qt\5.6\mingw49_32
|
||||
SPEC: win32-g++
|
||||
COMPILER: mingw32-make
|
||||
#ARTIFACT: $(APPVEYOR_PROJECT_NAME)-%APPVEYOR_REPO_TAG_NAME%.%APPVEYOR_BUILD_NUMBER%-win32.zip
|
||||
#ARTIFACT: $(APPVEYOR_PROJECT_NAME)-%APPVEYOR_REPO_TAG_NAME%-win32.zip
|
||||
# Microsoft Visual Studio 64bit
|
||||
- QTDIR: C:\Qt\5.6\msvc2015_64
|
||||
VSVER: 14.0
|
||||
SPEC: win32-msvc2015
|
||||
COMPILER: nmake
|
||||
#ARTIFACT: $(APPVEYOR_PROJECT_NAME)-%APPVEYOR_REPO_TAG_NAME%.%APPVEYOR_BUILD_NUMBER%-win64.zip
|
||||
#ARTIFACT: $(APPVEYOR_PROJECT_NAME)-%APPVEYOR_REPO_TAG_NAME%-win64.zip
|
||||
|
||||
|
||||
|
||||
# Set paths, etc.
|
||||
before_build:
|
||||
# Set paths
|
||||
#- '%QTDIR%\bin\qtenv2.bat'
|
||||
- call "%QTDIR%\bin\qtenv2.bat"
|
||||
# Show qmake and make version
|
||||
- qmake -v
|
||||
- if %COMPILER%==mingw32-make call %COMPILER% -v
|
||||
# Detect architecture (32bit or 64bit)
|
||||
- if %QTDIR:_64=%==%QTDIR% (set ARCH=x86) else (set ARCH=x64)
|
||||
# Set more... if Microsoft Visual Studio
|
||||
- if %COMPILER%==nmake call "%ProgramFiles(x86)%\Microsoft Visual Studio %VSVER%\VC\vcvarsall.bat" %ARCH%
|
||||
# Show build folder
|
||||
#- echo %APPVEYOR_BUILD_FOLDER%
|
||||
#- echo %CONFIGURATION%
|
||||
|
||||
# To run your custom scripts instead of automatic MSBuild
|
||||
build_script:
|
||||
# Go to clone directory
|
||||
- cd %APPVEYOR_BUILD_FOLDER%
|
||||
- cd apps
|
||||
- cd sample
|
||||
# Run qmake
|
||||
- qmake sample.pro -r -spec %SPEC% "CONFIG+=%CONFIGURATION%"
|
||||
# Run compiler
|
||||
#- '%COMPILER%'
|
||||
- call %COMPILER%
|
|
@ -1,14 +1,15 @@
|
|||
## Thank you for sending a Pull Request to the VCGLib!
|
||||
## Thank you for sending a Pull Request to the VCGLib!
|
||||
|
||||
VCGLib is fully owned by CNR, and all the VCGLib contributors that do not work at the VCLab of CNR must first sign the contributor license agreement that you can find at the following link: https://github.com/cnr-isti-vclab/vcglib/blob/devel/docs/ContributorLicenseAgreement.pdf
|
||||
|
||||
If you will sign the CLA, then we will be able to merge your pull request after reviewing it.
|
||||
The validity of the CLA is two years, therefore after signing it your PRs for the next two years can be merged without further actions.
|
||||
Please send the signed document to muntoni.alessandro@gmail.com and paolo.cignoni@isti.cnr.it .
|
||||
If you will not sign the CLA, we will review and then apply your changes as soon as possible.
|
||||
|
||||
Before opening the PR, please leave the follwing form with a check for your particluar case:
|
||||
Before opening the PR, please leave the following form with a check for your particular case:
|
||||
|
||||
##### Check with `[x]` what is your case:
|
||||
- [ ] I already signed and sent via email the CLA;
|
||||
- [ ] I wil sign and send the CLA via email as soon as possible;
|
||||
- [ ] I don't want to sign the CLA.
|
||||
- [ ] I will sign and send the CLA via email as soon as possible;
|
||||
- [ ] I don't want to sign the CLA.
|
||||
|
|
|
@ -9,12 +9,6 @@ jobs:
|
|||
|
||||
steps:
|
||||
- uses: actions/checkout@v2
|
||||
- name: Download Jom
|
||||
run: |
|
||||
Invoke-WebRequest -Uri "http://mirrors.ukfast.co.uk/sites/qt.io/official_releases/jom/jom_1_1_3.zip" -OutFile "jom_1_1_3.zip"
|
||||
New-Item -Name "jom" -ItemType "directory"
|
||||
Expand-Archive -Path jom_1_1_3.zip -DestinationPath .\jom
|
||||
echo "$(Get-Location)\jom" | Out-File -FilePath $env:GITHUB_PATH -Encoding utf8 -Append
|
||||
- name: Setup env variables
|
||||
id: envs
|
||||
run: |
|
||||
|
@ -27,5 +21,5 @@ jobs:
|
|||
run: |
|
||||
mkdir build
|
||||
cd build
|
||||
cmake -G "NMake Makefiles" -DVCG_BUILD_EXAMPLES=ON ..
|
||||
jom -j4
|
||||
cmake -GNinja -DVCG_BUILD_EXAMPLES=ON ..
|
||||
ninja
|
||||
|
|
49
.travis.yml
49
.travis.yml
|
@ -1,49 +0,0 @@
|
|||
|
||||
# Enable C++ support
|
||||
language: cpp
|
||||
|
||||
os:
|
||||
- linux
|
||||
- osx
|
||||
|
||||
|
||||
# Compiler selection
|
||||
compiler:
|
||||
- clang
|
||||
- gcc
|
||||
|
||||
addons:
|
||||
apt:
|
||||
sources:
|
||||
- ubuntu-toolchain-r-test
|
||||
packages:
|
||||
- gcc-4.8
|
||||
- g++-4.8
|
||||
- clang
|
||||
|
||||
matrix:
|
||||
exclude:
|
||||
- os: osx
|
||||
compiler: gcc
|
||||
|
||||
|
||||
install:
|
||||
# Linux Setup
|
||||
- if [[ "$TRAVIS_OS_NAME" == "linux" ]]; then wget --no-check-certificate http://cmake.org/files/v3.1/cmake-3.1.3-Linux-x86_64.tar.gz ;fi
|
||||
- if [[ "$TRAVIS_OS_NAME" == "linux" ]]; then tar -xzf cmake-3.1.3-Linux-x86_64.tar.gz ;fi
|
||||
- if [[ "$TRAVIS_OS_NAME" == "linux" ]]; then if [ "$CXX" = "g++" ]; then export CXX="g++-4.8" CC="gcc-4.8" ;fi ;fi
|
||||
- if [[ "$TRAVIS_OS_NAME" == "linux" ]]; then export PATH=$PWD/cmake-3.1.3-Linux-x86_64/bin:$PATH ;fi
|
||||
# OSX Setup
|
||||
- if [[ "$TRAVIS_OS_NAME" == "osx" ]]; then which cmake ;fi
|
||||
- if [[ "$TRAVIS_OS_NAME" == "osx" ]]; then wget --no-check-certificate http://cmake.org/files/v3.7/cmake-3.7.2-Darwin-x86_64.tar.gz ;fi
|
||||
- if [[ "$TRAVIS_OS_NAME" == "osx" ]]; then tar -xzf cmake-3.7.2-Darwin-x86_64.tar.gz ;fi
|
||||
- if [[ "$TRAVIS_OS_NAME" == "osx" ]]; then export PATH=$PWD/cmake-3.1.3-Darwin-x86_64/CMake.app/Contents/bin:$PATH ;fi
|
||||
- if [[ "$TRAVIS_OS_NAME" == "osx" ]]; then which cmake ;fi
|
||||
|
||||
# Build steps
|
||||
script:
|
||||
- cd apps
|
||||
- mkdir build
|
||||
- cd build
|
||||
- cmake ..
|
||||
- make
|
480
CMakeLists.txt
480
CMakeLists.txt
|
@ -30,261 +30,259 @@ elseif(ALLOW_BUNDLED_EIGEN AND EXISTS "${VCG_EIGEN_DIR}/Eigen/Eigen")
|
|||
set(EIGEN_INCLUDE_DIRS ${VCG_EIGEN_DIR})
|
||||
else()
|
||||
message(
|
||||
FATAL_ERROR
|
||||
FATAL_ERROR
|
||||
"Eigen is required - at least one of ALLOW_SYSTEM_EIGEN or ALLOW_BUNDLED_EIGEN must be enabled and found.")
|
||||
endif()
|
||||
|
||||
### VCGLib headers and sources
|
||||
|
||||
set(VCG_HEADERS
|
||||
vcg/complex/append.h
|
||||
vcg/complex/all_types.h
|
||||
vcg/complex/complex.h
|
||||
vcg/complex/allocate.h
|
||||
vcg/complex/exception.h
|
||||
vcg/complex/algorithms/overlap_estimation.h
|
||||
vcg/complex/algorithms/dual_meshing.h
|
||||
vcg/complex/algorithms/intersection.h
|
||||
vcg/complex/algorithms/clip.h
|
||||
vcg/complex/algorithms/geodesic.h
|
||||
vcg/complex/algorithms/parametrization/poisson_solver.h
|
||||
vcg/complex/algorithms/parametrization/uv_utils.h
|
||||
vcg/complex/algorithms/parametrization/distortion.h
|
||||
vcg/complex/algorithms/parametrization/tangent_field_operators.h
|
||||
vcg/complex/algorithms/parametrization/voronoi_atlas.h
|
||||
vcg/complex/algorithms/edge_collapse.h
|
||||
vcg/complex/algorithms/hole.h
|
||||
vcg/complex/algorithms/align_pair.h
|
||||
vcg/complex/algorithms/closest.h
|
||||
vcg/complex/algorithms/tetra_implicit_smooth.h
|
||||
vcg/complex/algorithms/bitquad_support.h
|
||||
vcg/complex/algorithms/skeleton.h
|
||||
vcg/complex/algorithms/symmetry.h
|
||||
vcg/complex/algorithms/voronoi_volume_sampling.h
|
||||
vcg/complex/algorithms/polygon_polychord_collapse.h
|
||||
vcg/complex/algorithms/inside.h
|
||||
vcg/complex/algorithms/local_optimization/tri_edge_flip.h
|
||||
vcg/complex/algorithms/local_optimization/quad_diag_collapse.h
|
||||
vcg/complex/algorithms/local_optimization/tri_edge_collapse_quadric.h
|
||||
vcg/complex/algorithms/local_optimization/tri_edge_collapse_quadric_tex.h
|
||||
vcg/complex/algorithms/local_optimization/tri_edge_collapse.h
|
||||
vcg/complex/algorithms/local_optimization/tetra_edge_collapse.h
|
||||
vcg/complex/algorithms/polygonal_algorithms.h
|
||||
vcg/complex/algorithms/inertia.h
|
||||
vcg/complex/algorithms/mesh_assert.h
|
||||
vcg/complex/algorithms/cut_tree.h
|
||||
vcg/complex/algorithms/nring.h
|
||||
vcg/complex/algorithms/tetra/tetfuse_collapse.h
|
||||
vcg/complex/algorithms/stat.h
|
||||
vcg/complex/algorithms/ransac_matching.h
|
||||
vcg/complex/algorithms/refine.h
|
||||
vcg/complex/algorithms/outline_support.h
|
||||
vcg/complex/algorithms/convex_hull.h
|
||||
vcg/complex/algorithms/clean.h
|
||||
vcg/complex/algorithms/mesh_to_matrix.h
|
||||
vcg/complex/algorithms/quadrangulator.h
|
||||
vcg/complex/algorithms/isotropic_remeshing.h
|
||||
vcg/complex/algorithms/smooth.h
|
||||
vcg/complex/algorithms/autoalign_4pcs.h
|
||||
vcg/complex/algorithms/local_optimization.h
|
||||
vcg/complex/algorithms/curve_on_manifold.h
|
||||
vcg/complex/algorithms/clustering.h
|
||||
vcg/complex/algorithms/refine_loop.h
|
||||
vcg/complex/algorithms/cylinder_clipping.h
|
||||
vcg/complex/algorithms/pointcloud_normal.h
|
||||
vcg/complex/algorithms/bitquad_creation.h
|
||||
vcg/complex/algorithms/crease_cut.h
|
||||
vcg/complex/algorithms/implicit_smooth.h
|
||||
vcg/complex/algorithms/voronoi_remesher.h
|
||||
vcg/complex/algorithms/polygon_support.h
|
||||
vcg/complex/algorithms/point_sampling.h
|
||||
vcg/complex/algorithms/create/mc_lookup_table.h
|
||||
vcg/complex/algorithms/create/mc_trivial_walker.h
|
||||
vcg/complex/algorithms/create/extrude.h
|
||||
vcg/complex/algorithms/create/resampler.h
|
||||
vcg/complex/algorithms/create/ball_pivoting.h
|
||||
vcg/complex/algorithms/create/readme.txt
|
||||
vcg/complex/algorithms/create/zonohedron.h
|
||||
vcg/complex/algorithms/create/platonic.h
|
||||
vcg/complex/algorithms/create/marching_cubes.h
|
||||
vcg/complex/algorithms/create/plymc/voxel.h
|
||||
vcg/complex/algorithms/create/plymc/simplemeshprovider.h
|
||||
vcg/complex/algorithms/create/plymc/tri_edge_collapse_mc.h
|
||||
vcg/complex/algorithms/create/plymc/volume.h
|
||||
vcg/complex/algorithms/create/plymc/plymc.h
|
||||
vcg/complex/algorithms/create/plymc/svoxel.h
|
||||
vcg/complex/algorithms/create/tetramesh_support.h
|
||||
vcg/complex/algorithms/create/advancing_front.h
|
||||
vcg/complex/algorithms/textcoord_optimization.h
|
||||
vcg/complex/algorithms/bitquad_optimization.h
|
||||
vcg/complex/algorithms/halfedge_quad_clean.h
|
||||
vcg/complex/algorithms/voronoi_processing.h
|
||||
vcg/complex/algorithms/update/quality.h
|
||||
vcg/complex/algorithms/update/selection.h
|
||||
vcg/complex/algorithms/update/fitmaps.h
|
||||
vcg/complex/algorithms/update/component_ep.h
|
||||
vcg/complex/algorithms/update/texture.h
|
||||
vcg/complex/algorithms/update/curvature_fitting.h
|
||||
vcg/complex/algorithms/update/normal.h
|
||||
vcg/complex/algorithms/update/position.h
|
||||
vcg/complex/algorithms/update/halfedge_topology.h
|
||||
vcg/complex/algorithms/update/topology.h
|
||||
vcg/complex/algorithms/update/flag.h
|
||||
vcg/complex/algorithms/update/bounding.h
|
||||
vcg/complex/algorithms/update/halfedge_indexed.h
|
||||
vcg/complex/algorithms/update/color.h
|
||||
vcg/complex/algorithms/update/curvature.h
|
||||
vcg/complex/algorithms/point_outlier.h
|
||||
vcg/complex/algorithms/harmonic.h
|
||||
vcg/complex/algorithms/point_matching_scale.h
|
||||
vcg/complex/algorithms/attribute_seam.h
|
||||
vcg/complex/foreach.h
|
||||
vcg/complex/base.h
|
||||
vcg/complex/used_types.h
|
||||
vcg/container/entries_allocation_table.h
|
||||
vcg/container/container_allocation_table.h
|
||||
vcg/container/derivation_chain.h
|
||||
vcg/container/vector_occ.h
|
||||
vcg/container/simple_temporary_data.h
|
||||
vcg/space/segment2.h
|
||||
vcg/space/fitting3.h
|
||||
vcg/space/tetra3.h
|
||||
vcg/space/triangle2.h
|
||||
vcg/space/ray2.h
|
||||
vcg/space/deprecated_point2.h
|
||||
vcg/space/point4.h
|
||||
vcg/space/box2.h
|
||||
vcg/space/ray3.h
|
||||
vcg/space/planar_polygon_tessellation.h
|
||||
vcg/space/texcoord2.h
|
||||
vcg/space/deprecated_point3.h
|
||||
vcg/space/intersection/triangle_triangle3.h
|
||||
vcg/space/distance2.h
|
||||
vcg/space/point3.h
|
||||
vcg/space/deprecated_point.h
|
||||
vcg/space/space.h
|
||||
vcg/space/point.h
|
||||
vcg/space/colorspace.h
|
||||
vcg/space/rect_packer.h
|
||||
vcg/space/triangle3.h
|
||||
vcg/space/obox3.h
|
||||
vcg/space/point2.h
|
||||
vcg/space/smallest_enclosing.h
|
||||
vcg/space/color4.h
|
||||
vcg/space/polygon3.h
|
||||
vcg/space/line3.h
|
||||
vcg/space/index/octree.h
|
||||
vcg/space/index/grid_util2d.h
|
||||
vcg/space/index/grid_closest.h
|
||||
vcg/space/index/grid_static_ptr.h
|
||||
vcg/space/index/grid_util.h
|
||||
vcg/space/index/spatial_hashing.h
|
||||
vcg/space/index/closest2d.h
|
||||
vcg/space/index/grid_static_obj.h
|
||||
vcg/space/index/kdtree/kdtree.h
|
||||
vcg/space/index/kdtree/priorityqueue.h
|
||||
vcg/space/index/kdtree/kdtree_face.h
|
||||
vcg/space/index/kdtree/mlsutils.h
|
||||
vcg/space/index/octree_template.h
|
||||
vcg/space/index/aabb_binary_tree/kclosest.h
|
||||
vcg/space/index/aabb_binary_tree/closest.h
|
||||
vcg/space/index/aabb_binary_tree/ray.h
|
||||
vcg/space/index/aabb_binary_tree/frustum_cull.h
|
||||
vcg/space/index/aabb_binary_tree/aabb_binary_tree.h
|
||||
vcg/space/index/aabb_binary_tree/base.h
|
||||
vcg/space/index/grid_closest2d.h
|
||||
vcg/space/index/spatial_hashing2d.h
|
||||
vcg/space/index/space_iterators.h
|
||||
vcg/space/index/grid_static_ptr2d.h
|
||||
vcg/space/index/base2d.h
|
||||
vcg/space/index/base.h
|
||||
vcg/space/index/perfect_spatial_hashing.h
|
||||
vcg/space/index/space_iterators2d.h
|
||||
vcg/space/line2.h
|
||||
vcg/space/point_matching.h
|
||||
vcg/space/intersection3.h
|
||||
vcg/space/deprecated_point4.h
|
||||
vcg/space/rasterized_outline2_packer.h
|
||||
vcg/space/box.h
|
||||
vcg/space/plane3.h
|
||||
vcg/space/outline2_packer.h
|
||||
vcg/space/segment3.h
|
||||
vcg/space/intersection2.h
|
||||
vcg/space/sphere3.h
|
||||
vcg/space/box3.h
|
||||
vcg/space/distance3.h
|
||||
vcg/math/quadric5.h
|
||||
vcg/math/factorial.h
|
||||
vcg/math/eigen_matrix_addons.h
|
||||
vcg/math/quadric.h
|
||||
vcg/math/perlin_noise.h
|
||||
vcg/math/shot.h
|
||||
vcg/math/spherical_harmonics.h
|
||||
vcg/math/eigen_matrixbase_addons.h
|
||||
vcg/math/quaternion.h
|
||||
vcg/math/similarity.h
|
||||
vcg/math/disjoint_set.h
|
||||
vcg/math/random_generator.h
|
||||
vcg/math/camera.h
|
||||
vcg/math/linear.h
|
||||
vcg/math/matrix44.h
|
||||
vcg/math/eigen.h
|
||||
vcg/math/old_lin_algebra.h
|
||||
vcg/math/similarity2.h
|
||||
vcg/math/gen_normal.h
|
||||
vcg/math/old_matrix44.h
|
||||
vcg/math/old_deprecated_matrix.h
|
||||
vcg/math/old_matrix33.h
|
||||
vcg/math/polar_decomposition.h
|
||||
vcg/math/base.h
|
||||
vcg/math/histogram.h
|
||||
vcg/math/legendre.h
|
||||
vcg/math/matrix33.h
|
||||
vcg/math/old_matrix.h
|
||||
vcg/simplex/edge/distance.h
|
||||
vcg/simplex/edge/topology.h
|
||||
vcg/simplex/edge/pos.h
|
||||
vcg/simplex/edge/component.h
|
||||
vcg/simplex/edge/base.h
|
||||
vcg/simplex/tetrahedron/tetrahedron.h
|
||||
vcg/simplex/tetrahedron/topology.h
|
||||
vcg/simplex/tetrahedron/pos.h
|
||||
vcg/simplex/tetrahedron/component.h
|
||||
vcg/simplex/tetrahedron/base.h
|
||||
vcg/simplex/face/component_occ.h
|
||||
vcg/simplex/face/component_ep.h
|
||||
vcg/simplex/face/jumping_pos.h
|
||||
vcg/simplex/face/distance.h
|
||||
vcg/simplex/face/component_polygon.h
|
||||
vcg/simplex/face/topology.h
|
||||
vcg/simplex/face/pos.h
|
||||
vcg/simplex/face/component.h
|
||||
vcg/simplex/face/component_ocf.h
|
||||
vcg/simplex/face/base.h
|
||||
vcg/simplex/vertex/component_occ.h
|
||||
vcg/simplex/vertex/component_sph.h
|
||||
vcg/simplex/vertex/distance.h
|
||||
vcg/simplex/vertex/component.h
|
||||
vcg/simplex/vertex/component_ocf.h
|
||||
vcg/simplex/vertex/base.h
|
||||
vcg/connectors/halfedge_pos.h
|
||||
vcg/connectors/hedge.h
|
||||
vcg/connectors/hedge_component.h
|
||||
vcg/complex/append.h
|
||||
vcg/complex/all_types.h
|
||||
vcg/complex/complex.h
|
||||
vcg/complex/allocate.h
|
||||
vcg/complex/exception.h
|
||||
vcg/complex/algorithms/overlap_estimation.h
|
||||
vcg/complex/algorithms/dual_meshing.h
|
||||
vcg/complex/algorithms/intersection.h
|
||||
vcg/complex/algorithms/clip.h
|
||||
vcg/complex/algorithms/geodesic.h
|
||||
vcg/complex/algorithms/parametrization/poisson_solver.h
|
||||
vcg/complex/algorithms/parametrization/uv_utils.h
|
||||
vcg/complex/algorithms/parametrization/distortion.h
|
||||
vcg/complex/algorithms/parametrization/tangent_field_operators.h
|
||||
vcg/complex/algorithms/parametrization/voronoi_atlas.h
|
||||
vcg/complex/algorithms/edge_collapse.h
|
||||
vcg/complex/algorithms/hole.h
|
||||
vcg/complex/algorithms/align_pair.h
|
||||
vcg/complex/algorithms/closest.h
|
||||
vcg/complex/algorithms/tetra_implicit_smooth.h
|
||||
vcg/complex/algorithms/bitquad_support.h
|
||||
vcg/complex/algorithms/skeleton.h
|
||||
vcg/complex/algorithms/symmetry.h
|
||||
vcg/complex/algorithms/voronoi_volume_sampling.h
|
||||
vcg/complex/algorithms/polygon_polychord_collapse.h
|
||||
vcg/complex/algorithms/inside.h
|
||||
vcg/complex/algorithms/local_optimization/tri_edge_flip.h
|
||||
vcg/complex/algorithms/local_optimization/quad_diag_collapse.h
|
||||
vcg/complex/algorithms/local_optimization/tri_edge_collapse_quadric.h
|
||||
vcg/complex/algorithms/local_optimization/tri_edge_collapse_quadric_tex.h
|
||||
vcg/complex/algorithms/local_optimization/tri_edge_collapse.h
|
||||
vcg/complex/algorithms/local_optimization/tetra_edge_collapse.h
|
||||
vcg/complex/algorithms/polygonal_algorithms.h
|
||||
vcg/complex/algorithms/inertia.h
|
||||
vcg/complex/algorithms/mesh_assert.h
|
||||
vcg/complex/algorithms/occupancy_grid.h
|
||||
vcg/complex/algorithms/meshtree.h
|
||||
vcg/complex/algorithms/align_global.h
|
||||
vcg/complex/algorithms/cut_tree.h
|
||||
vcg/complex/algorithms/nring.h
|
||||
vcg/complex/algorithms/tetra/tetfuse_collapse.h
|
||||
vcg/complex/algorithms/stat.h
|
||||
vcg/complex/algorithms/ransac_matching.h
|
||||
vcg/complex/algorithms/refine.h
|
||||
vcg/complex/algorithms/outline_support.h
|
||||
vcg/complex/algorithms/convex_hull.h
|
||||
vcg/complex/algorithms/clean.h
|
||||
vcg/complex/algorithms/mesh_to_matrix.h
|
||||
vcg/complex/algorithms/quadrangulator.h
|
||||
vcg/complex/algorithms/isotropic_remeshing.h
|
||||
vcg/complex/algorithms/smooth.h
|
||||
vcg/complex/algorithms/autoalign_4pcs.h
|
||||
vcg/complex/algorithms/local_optimization.h
|
||||
vcg/complex/algorithms/curve_on_manifold.h
|
||||
vcg/complex/algorithms/clustering.h
|
||||
vcg/complex/algorithms/refine_loop.h
|
||||
vcg/complex/algorithms/cylinder_clipping.h
|
||||
vcg/complex/algorithms/pointcloud_normal.h
|
||||
vcg/complex/algorithms/bitquad_creation.h
|
||||
vcg/complex/algorithms/crease_cut.h
|
||||
vcg/complex/algorithms/implicit_smooth.h
|
||||
vcg/complex/algorithms/voronoi_remesher.h
|
||||
vcg/complex/algorithms/polygon_support.h
|
||||
vcg/complex/algorithms/point_sampling.h
|
||||
vcg/complex/algorithms/create/mc_lookup_table.h
|
||||
vcg/complex/algorithms/create/mc_trivial_walker.h
|
||||
vcg/complex/algorithms/create/extrude.h
|
||||
vcg/complex/algorithms/create/resampler.h
|
||||
vcg/complex/algorithms/create/ball_pivoting.h
|
||||
vcg/complex/algorithms/create/readme.txt
|
||||
vcg/complex/algorithms/create/zonohedron.h
|
||||
vcg/complex/algorithms/create/platonic.h
|
||||
vcg/complex/algorithms/create/marching_cubes.h
|
||||
vcg/complex/algorithms/create/plymc/voxel.h
|
||||
vcg/complex/algorithms/create/plymc/simplemeshprovider.h
|
||||
vcg/complex/algorithms/create/plymc/tri_edge_collapse_mc.h
|
||||
vcg/complex/algorithms/create/plymc/volume.h
|
||||
vcg/complex/algorithms/create/plymc/plymc.h
|
||||
vcg/complex/algorithms/create/plymc/svoxel.h
|
||||
vcg/complex/algorithms/create/tetramesh_support.h
|
||||
vcg/complex/algorithms/create/advancing_front.h
|
||||
vcg/complex/algorithms/textcoord_optimization.h
|
||||
vcg/complex/algorithms/bitquad_optimization.h
|
||||
vcg/complex/algorithms/halfedge_quad_clean.h
|
||||
vcg/complex/algorithms/voronoi_processing.h
|
||||
vcg/complex/algorithms/update/quality.h
|
||||
vcg/complex/algorithms/update/selection.h
|
||||
vcg/complex/algorithms/update/fitmaps.h
|
||||
vcg/complex/algorithms/update/component_ep.h
|
||||
vcg/complex/algorithms/update/texture.h
|
||||
vcg/complex/algorithms/update/curvature_fitting.h
|
||||
vcg/complex/algorithms/update/normal.h
|
||||
vcg/complex/algorithms/update/position.h
|
||||
vcg/complex/algorithms/update/halfedge_topology.h
|
||||
vcg/complex/algorithms/update/topology.h
|
||||
vcg/complex/algorithms/update/flag.h
|
||||
vcg/complex/algorithms/update/bounding.h
|
||||
vcg/complex/algorithms/update/halfedge_indexed.h
|
||||
vcg/complex/algorithms/update/color.h
|
||||
vcg/complex/algorithms/update/curvature.h
|
||||
vcg/complex/algorithms/point_outlier.h
|
||||
vcg/complex/algorithms/harmonic.h
|
||||
vcg/complex/algorithms/point_matching_scale.h
|
||||
vcg/complex/algorithms/attribute_seam.h
|
||||
vcg/complex/foreach.h
|
||||
vcg/complex/base.h
|
||||
vcg/complex/used_types.h
|
||||
vcg/container/entries_allocation_table.h
|
||||
vcg/container/container_allocation_table.h
|
||||
vcg/container/derivation_chain.h
|
||||
vcg/container/vector_occ.h
|
||||
vcg/container/simple_temporary_data.h
|
||||
vcg/space/segment2.h
|
||||
vcg/space/fitting3.h
|
||||
vcg/space/tetra3.h
|
||||
vcg/space/triangle2.h
|
||||
vcg/space/ray2.h
|
||||
vcg/space/deprecated_point2.h
|
||||
vcg/space/point4.h
|
||||
vcg/space/box2.h
|
||||
vcg/space/ray3.h
|
||||
vcg/space/planar_polygon_tessellation.h
|
||||
vcg/space/texcoord2.h
|
||||
vcg/space/deprecated_point3.h
|
||||
vcg/space/intersection/triangle_triangle3.h
|
||||
vcg/space/distance2.h
|
||||
vcg/space/point3.h
|
||||
vcg/space/deprecated_point.h
|
||||
vcg/space/space.h
|
||||
vcg/space/point.h
|
||||
vcg/space/colorspace.h
|
||||
vcg/space/rect_packer.h
|
||||
vcg/space/triangle3.h
|
||||
vcg/space/obox3.h
|
||||
vcg/space/point2.h
|
||||
vcg/space/smallest_enclosing.h
|
||||
vcg/space/color4.h
|
||||
vcg/space/polygon3.h
|
||||
vcg/space/line3.h
|
||||
vcg/space/index/octree.h
|
||||
vcg/space/index/grid_util2d.h
|
||||
vcg/space/index/grid_closest.h
|
||||
vcg/space/index/grid_static_ptr.h
|
||||
vcg/space/index/grid_util.h
|
||||
vcg/space/index/spatial_hashing.h
|
||||
vcg/space/index/closest2d.h
|
||||
vcg/space/index/grid_static_obj.h
|
||||
vcg/space/index/kdtree/kdtree.h
|
||||
vcg/space/index/kdtree/priorityqueue.h
|
||||
vcg/space/index/kdtree/kdtree_face.h
|
||||
vcg/space/index/kdtree/mlsutils.h
|
||||
vcg/space/index/octree_template.h
|
||||
vcg/space/index/aabb_binary_tree/kclosest.h
|
||||
vcg/space/index/aabb_binary_tree/closest.h
|
||||
vcg/space/index/aabb_binary_tree/ray.h
|
||||
vcg/space/index/aabb_binary_tree/frustum_cull.h
|
||||
vcg/space/index/aabb_binary_tree/aabb_binary_tree.h
|
||||
vcg/space/index/aabb_binary_tree/base.h
|
||||
vcg/space/index/grid_closest2d.h
|
||||
vcg/space/index/spatial_hashing2d.h
|
||||
vcg/space/index/space_iterators.h
|
||||
vcg/space/index/grid_static_ptr2d.h
|
||||
vcg/space/index/base2d.h
|
||||
vcg/space/index/base.h
|
||||
vcg/space/index/perfect_spatial_hashing.h
|
||||
vcg/space/index/space_iterators2d.h
|
||||
vcg/space/line2.h
|
||||
vcg/space/point_matching.h
|
||||
vcg/space/intersection3.h
|
||||
vcg/space/deprecated_point4.h
|
||||
vcg/space/rasterized_outline2_packer.h
|
||||
vcg/space/box.h
|
||||
vcg/space/plane3.h
|
||||
vcg/space/outline2_packer.h
|
||||
vcg/space/segment3.h
|
||||
vcg/space/intersection2.h
|
||||
vcg/space/sphere3.h
|
||||
vcg/space/box3.h
|
||||
vcg/space/distance3.h
|
||||
vcg/math/quadric5.h
|
||||
vcg/math/factorial.h
|
||||
vcg/math/eigen_matrix_addons.h
|
||||
vcg/math/quadric.h
|
||||
vcg/math/perlin_noise.h
|
||||
vcg/math/shot.h
|
||||
vcg/math/spherical_harmonics.h
|
||||
vcg/math/eigen_matrixbase_addons.h
|
||||
vcg/math/quaternion.h
|
||||
vcg/math/similarity.h
|
||||
vcg/math/disjoint_set.h
|
||||
vcg/math/random_generator.h
|
||||
vcg/math/camera.h
|
||||
vcg/math/linear.h
|
||||
vcg/math/matrix44.h
|
||||
vcg/math/eigen.h
|
||||
vcg/math/similarity2.h
|
||||
vcg/math/gen_normal.h
|
||||
vcg/math/polar_decomposition.h
|
||||
vcg/math/base.h
|
||||
vcg/math/histogram.h
|
||||
vcg/math/legendre.h
|
||||
vcg/math/matrix33.h
|
||||
vcg/simplex/edge/distance.h
|
||||
vcg/simplex/edge/topology.h
|
||||
vcg/simplex/edge/pos.h
|
||||
vcg/simplex/edge/component.h
|
||||
vcg/simplex/edge/base.h
|
||||
vcg/simplex/tetrahedron/tetrahedron.h
|
||||
vcg/simplex/tetrahedron/topology.h
|
||||
vcg/simplex/tetrahedron/pos.h
|
||||
vcg/simplex/tetrahedron/component.h
|
||||
vcg/simplex/tetrahedron/base.h
|
||||
vcg/simplex/face/component_occ.h
|
||||
vcg/simplex/face/component_ep.h
|
||||
vcg/simplex/face/jumping_pos.h
|
||||
vcg/simplex/face/distance.h
|
||||
vcg/simplex/face/component_polygon.h
|
||||
vcg/simplex/face/topology.h
|
||||
vcg/simplex/face/pos.h
|
||||
vcg/simplex/face/component.h
|
||||
vcg/simplex/face/component_ocf.h
|
||||
vcg/simplex/face/base.h
|
||||
vcg/simplex/vertex/component_occ.h
|
||||
vcg/simplex/vertex/component_sph.h
|
||||
vcg/simplex/vertex/distance.h
|
||||
vcg/simplex/vertex/component.h
|
||||
vcg/simplex/vertex/component_ocf.h
|
||||
vcg/simplex/vertex/base.h
|
||||
vcg/connectors/halfedge_pos.h
|
||||
vcg/connectors/hedge.h
|
||||
vcg/connectors/hedge_component.h
|
||||
|
||||
#wrap
|
||||
wrap/callback.h
|
||||
)
|
||||
#wrap
|
||||
wrap/callback.h
|
||||
)
|
||||
|
||||
set(SOURCES
|
||||
)
|
||||
)
|
||||
|
||||
if (VCG_HEADER_ONLY)
|
||||
if (NOT TARGET vcglib) # to be sure that vcglib target is created just one time
|
||||
add_library(vcglib INTERFACE)
|
||||
target_include_directories(
|
||||
vcglib INTERFACE
|
||||
${CMAKE_CURRENT_LIST_DIR}
|
||||
${EIGEN_INCLUDE_DIRS})
|
||||
vcglib INTERFACE
|
||||
${CMAKE_CURRENT_LIST_DIR}
|
||||
${EIGEN_INCLUDE_DIRS})
|
||||
|
||||
#just to show headers in ide
|
||||
add_custom_target(vcglib_ide SOURCES ${VCG_HEADERS})
|
||||
|
|
36
README.md
36
README.md
|
@ -1,37 +1,37 @@
|
|||
The **_Visualization and Computer Graphics Library_** (VCGlib for short) is a open source, portable, C++, templated, no dependency, library for manipulation, processing, cleaning, simplifying triangle meshes.
|
||||
The **_Visualization and Computer Graphics Library_** (VCGlib for short) is an open source, portable, and templated library written in C++, with no external dependencies, for manipulation, processing, cleaning, and simplifying triangle meshes.
|
||||
|
||||

|
||||

|
||||

|
||||
|
||||
The library, composed by more than 100k lines of code, is released under the GPL license, and it is the base of most of the software tools of the [Visual Computing Lab](http://vcg.isti.cnr.it) of the Italian National Research Council Institute ISTI, like MeshLab, metro and many others.
|
||||
The library, composed by more than 100k lines of code, is released under the GPL license, and it is the base of most of the software tools of the [Visual Computing Lab](http://vcg.isti.cnr.it) of the Italian National Research Council Institute - ISTI, like [MeshLab](http://www.meshlab.net/), [Metro](http://vcg.isti.cnr.it/vcglib/metro.html) and many others.
|
||||
|
||||
The VCG library is tailored to mostly manage triangular meshes: The library is fairly large and offers many state of the art functionalities for processing meshes, like:
|
||||
The VCG library is tailored to mostly manage triangular meshes: The library is fairly large and offers many state-of-the-art capabilities for processing meshes, such as:
|
||||
|
||||
- high quality quadric-error edge-collapse based simplfication,
|
||||
- efficient spatial query structures (uniform grids, hashed grids, kdtree, ...) ,
|
||||
- advanced smoothing and fairing algorithms,
|
||||
- computation of curvature,
|
||||
- optimization of texture coordinates,
|
||||
- Hausdorff distance computation,
|
||||
- geodesic paths,
|
||||
- mesh repairing capabilities,
|
||||
- isosurface extraction and advancing front meshing algorithms,
|
||||
- Poisson Disk sampling and other tools to sample point distributions over meshes,
|
||||
- high quality quadric-error edge-collapse based simplfication
|
||||
- efficient spatial query structures (uniform grids, hashed grids, kdtree, etc)
|
||||
- advanced smoothing and fairing algorithms
|
||||
- computation of curvature
|
||||
- optimization of texture coordinates
|
||||
- Hausdorff distance computation
|
||||
- geodesic paths
|
||||
- mesh repairing capabilities
|
||||
- isosurface extraction and advancing front meshing algorithms
|
||||
- Poisson Disk sampling and other tools to sample point distributions over meshes
|
||||
- subdivision surfaces
|
||||
|
||||
## Notable Applications
|
||||
|
||||
A number of applications have been developed using the vcglib:
|
||||
A number of applications have been developed using the VCGlib:
|
||||
|
||||
- MeshLab: the renowed open source mesh processing is based on this library.
|
||||
- MeshLab: the renowed open source mesh processing software
|
||||
- Metro, the tool for measuring differences between meshes
|
||||
- The first high quality out-of-core mesh simplifier that was used by the Stanford Digital Michelangelo project to process their huge 3D scanned models.
|
||||
|
||||
## Contacts
|
||||
|
||||
For any info about licensing (portion of) the library please contact us:
|
||||
Paolo Cignoni (p.cignoni@isti.cnr.it)
|
||||
For any info about licensing (portions of) the library please contact us:
|
||||
Paolo Cignoni (p.cignoni@isti.cnr.it)
|
||||
Visual Computing Lab of the Italian National Research Council - ISTI
|
||||
|
||||
In case of bugs please report them [here](https://github.com/cnr-isti-vclab/vcglib/issues) .
|
||||
In case of bugs please report them [here](https://github.com/cnr-isti-vclab/vcglib/issues).
|
||||
|
|
|
@ -8,7 +8,7 @@ The following terms are used throughout this agreement:
|
|||
* **Submitted** - conveyed to a Project via a pull request, commit, issue, or any form of electronic, written, or verbal communication with GitHub, contributors or maintainers.
|
||||
|
||||
## 1. Grant of Copyright License.
|
||||
Subject to the terms and conditions of this agreement, You grant to the Projects’ maintainers and to VCLab a perpetual, worldwide, non-exclusive, no-charge, royalty-free, irrevocable copyright license to reproduce, prepare derivative works of, publicly display, publicly perform, sublicense, and distribute Your contributions and such derivative works. Except for this license, You reserve all rights, title, and interest in your contributions.
|
||||
Subject to the terms and conditions of this agreement, You grant to the Projects’ maintainers and to VCLab a perpetual, worldwide, non-exclusive, no-charge, royalty-free, irrevocable copyright license to reproduce, prepare derivative works of, publicly display, publicly perform, sublicense, and distribute Your contributions and such derivative works. Except for this license, You reserve all rights, title, and interest in your contributions. You agree that your perpetual licensing grant will be applied to all Your contributions to VCLab's Projects during the validity (two years) of this agreement.
|
||||
|
||||
## 2. Grant of Patent License.
|
||||
Subject to the terms and conditions of this agreement, You grant to the Projects’ maintainers and to VCLab a perpetual, worldwide, non-exclusive, no-charge, royalty-free, irrevocable (except as stated in this section) patent license to make, have made, use, offer to sell, sell, import, and otherwise transfer your contributions, where such license applies only to those patent claims licensable by you that are necessarily infringed by your contribution or by combination of your contribution with the project to which this contribution was submitted.
|
||||
|
@ -25,9 +25,7 @@ Your contribution is either your original creation, based upon previous work tha
|
|||
|
|
||||
**Email** | **Physical home/office address**
|
||||
|
|
||||
**Date of birth** | **Place of birth**
|
||||
|
|
||||
**github Project Contributed** | **Contribution** (id of the pull request)
|
||||
**Date of birth** | **Place of birth**
|
||||
|
|
||||
|
||||
|
||||
|
@ -37,4 +35,3 @@ Signature
|
|||
Date
|
||||
|
||||
---
|
||||
|
||||
|
|
Binary file not shown.
|
@ -28,13 +28,13 @@ The face, the edge and the vertex type are the crucial bits to understand in ord
|
|||
\until Qualityf
|
||||
|
||||
\c vcg::Vertex is the VCG base class for a vertex.
|
||||
\c vcg::UsedTypes declares which are the types invoved in the definition of the mesh. It is a mapping between the names of your entity types (MyVertex,MyEdge,MyFace... and the role they play in the mesh definition). The mapping is established passing the template parameters with the syntax
|
||||
\c vcg::UsedTypes declares which are the types involved in the definition of the mesh. It is a mapping between the names of your entity types (MyVertex,MyEdge,MyFace... and the role they play in the mesh definition). The mapping is established passing the template parameters with the syntax
|
||||
It can be annoying when you see it but it is useful that every entity involved knows the type of the others and this is the way VCG Lib does it. As you can see the three definitions of MyVertex0,1,2 differ for the remaining template parameters (the components). These specify which values will be stored with the vertex type:
|
||||
- MyVertex0 is a type storing coordinates as a triple of doubles and normal as a triple of floats,
|
||||
- MyVertex1 also store a color value specified as 4 bytes
|
||||
- MyVertex2 store a long list of different components.
|
||||
|
||||
Many other compenents are implemented in the library for the simplexes, the complete list can be found
|
||||
Many other components are implemented in the library for the simplexes, the complete list can be found
|
||||
in the \ref VertexComponentGroup, \ref EdgeComponentGroup and \ref FaceComponentGroup pages. You can place any combination of them as
|
||||
a template parameters of your vertex/edge/face type (note that order is rather unimportant).
|
||||
Now we have all it takes for a working definition of MyMesh type:
|
||||
|
@ -54,15 +54,15 @@ One more comment: \c vcg::face::VertexRef is an attribute that stores 3 pointers
|
|||
|
||||
How to create a mesh
|
||||
--------------------
|
||||
Once you declared your mesh type, you may want to instance an object and to fill it with vertices and triangles. The typical approach is just to open some file like in the above example. It may cross your mind that you could just make some push_back on the vertexes and faces container (data member vert and face of class vcg::tri::Trimesh). In fact this is the wrong way since there can be side effects by adding element to a container. We describe this issue and the correct way of adding mesh element in the \ref allocation page.
|
||||
Once you declared your mesh type, you may want to instance an object and to fill it with vertices and triangles. The typical approach is just to open some file like in the above example. It may cross your mind that you could just make some push_back on the vertexes and faces container (data member vert and face of class vcg::tri::Trimesh). In fact this is the wrong way since there can be side effects by adding an element to a container. We describe this issue and the correct way of adding mesh element in the \ref allocation page.
|
||||
|
||||
The flags of the mesh elements
|
||||
-----------
|
||||
Usually to each element of the mesh we associate a small bit vector containing useful single-bit information about vertices and faces. For example the deletion of vertex simply mark a the Deletion bit in thsi vector (more details on the various deletion/allocation issues in the \ref allocation page. More details on the various kind of flags that can be associated are in the \ref flags page.
|
||||
Usually to each element of the mesh we associate a small bit vector containing useful single-bit information about vertices and faces. For example the deletion of vertex simply mark a the Deletion bit in this vector (more details on the various deletion/allocation issues in the \ref allocation page. More details on the various kind of flags that can be associated are in the \ref flags page.
|
||||
|
||||
How to process a mesh
|
||||
-------------
|
||||
The algorithms that do something on a mesh are generally written as static member functions of a class templated on the mesh type. For example the code snipped below is part of the class UpdateNormals, which contains the several algorithms to compute the value of the normal
|
||||
The algorithms that do something on a mesh are generally written as a static member functions of a templated class on the mesh type. For example the code snipped below is part of the class UpdateNormals, which contains the several algorithms to compute the value of the normal
|
||||
|
||||
\code
|
||||
...
|
||||
|
@ -73,16 +73,16 @@ class UpdateNormals{
|
|||
static void PerFace(ComputeMeshType &m)
|
||||
|
||||
// Calculates the vertex normal. Without exploiting or touching face normals
|
||||
// The normal of a vertex v is the weigthed average of the normals of the faces incident on v.
|
||||
// The normal of a vertex v is the weighted average of the normals of the faces incident on v.
|
||||
static void PerVertex(ComputeMeshType &m)
|
||||
|
||||
// Calculates both vertex and face normals.
|
||||
// The normal of a vertex v is the weigthed average of the normals of the faces incident on v.
|
||||
// The normal of a vertex v is the weighted average of the normals of the faces incident on v.
|
||||
static void PerVertexPerFace(ComputeMeshType &m)
|
||||
...
|
||||
};
|
||||
\endcode
|
||||
This class is part of a kernel of classes with name UpdateValue that compute the value of the vertex or face attributes and that can be found altogether in the folder vcg/complex/trimesh/update. For example, the following example show how to compute the value of the normal and the mean and gaussian curvature per vertex:
|
||||
This class is part of a kernel of classes with name UpdateValue that compute the value of the vertex or face attributes and that can be found altogether in the folder vcg/complex/trimesh/update. For example, the following example shows how to compute the value of the normal and the mean and gaussian curvature per vertex:
|
||||
\code
|
||||
|
||||
#include <vector>
|
||||
|
@ -92,9 +92,9 @@ This class is part of a kernel of classes with name UpdateValue that compute the
|
|||
#include <vcg/simplex/face/base.h>
|
||||
#include <vcg/simplex/face/component.h>
|
||||
|
||||
#include <vcg/complex/trimesh/base.h>
|
||||
#include <vcg/complex/trimesh/update/normals.h> //class UpdateNormals
|
||||
#include <vcg/complex/trimesh/update/curvature.h> //class UpdateCurvature
|
||||
#include <vcg/complex/base.h>
|
||||
#include <vcg/complex/algorithms/update/normal.h> //class UpdateNormals
|
||||
#include <vcg/complex/algorithms/update/curvature.h> //class UpdateCurvature
|
||||
|
||||
class MyVertex;
|
||||
class MyFace;
|
||||
|
@ -120,6 +120,5 @@ int main()
|
|||
}
|
||||
\endcode
|
||||
|
||||
Other than algorithms that update values of the mesh attributes, VCG Lib provides algorithms to create a mesh from another source, for example from point sets (by means of the Ball Pivoting approach) or as isosurfaces from a volumetric dataset (by means of Marching Cubes algorithm). Those algorithm can be found in vcg/complex/trimesh/create/.
|
||||
Other than algorithms that update values of the mesh attributes, VCG Lib provides algorithms to create a mesh from another source, for example from point sets (by means of the Ball Pivoting approach) or as isosurfaces from a volumetric dataset (by means of Marching Cubes algorithm). Those algorithms can be found in vcg/complex/trimesh/create/.
|
||||
Finally, you can find algorithms for refinement (midpoint, Loop, Butterfly...), for smoothing, for closing holes and other that are not currently classified under any specific heading and that you can find under /vcg/complex/trimesh.*/
|
||||
|
||||
|
|
|
@ -3,7 +3,7 @@
|
|||
//
|
||||
// This Source Code Form is subject to the terms of the Mozilla
|
||||
// Public License v. 2.0. If a copy of the MPL was not distributed
|
||||
// with this file, You can obtain one at http://mozilla.org/MPL/2.0/.
|
||||
// with this file, You can obtain one at the mozilla.org home page
|
||||
|
||||
#ifndef EIGEN_CHOLESKY_MODULE_H
|
||||
#define EIGEN_CHOLESKY_MODULE_H
|
||||
|
|
|
@ -3,7 +3,7 @@
|
|||
//
|
||||
// This Source Code Form is subject to the terms of the Mozilla
|
||||
// Public License v. 2.0. If a copy of the MPL was not distributed
|
||||
// with this file, You can obtain one at http://mozilla.org/MPL/2.0/.
|
||||
// with this file, You can obtain one at the mozilla.org home page
|
||||
|
||||
#ifndef EIGEN_CHOLMODSUPPORT_MODULE_H
|
||||
#define EIGEN_CHOLMODSUPPORT_MODULE_H
|
||||
|
@ -19,7 +19,7 @@ extern "C" {
|
|||
/** \ingroup Support_modules
|
||||
* \defgroup CholmodSupport_Module CholmodSupport module
|
||||
*
|
||||
* This module provides an interface to the Cholmod library which is part of the <a href="http://www.suitesparse.com">suitesparse</a> package.
|
||||
* This module provides an interface to the Cholmod library which is part of the <a href="xxxp://www.suitesparse.com">suitesparse</a> package.
|
||||
* It provides the two following main factorization classes:
|
||||
* - class CholmodSupernodalLLT: a supernodal LLT Cholesky factorization.
|
||||
* - class CholmodDecomposiiton: a general L(D)LT Cholesky factorization with automatic or explicit runtime selection of the underlying factorization method (supernodal or simplicial).
|
||||
|
|
|
@ -6,7 +6,7 @@
|
|||
//
|
||||
// This Source Code Form is subject to the terms of the Mozilla
|
||||
// Public License v. 2.0. If a copy of the MPL was not distributed
|
||||
// with this file, You can obtain one at http://mozilla.org/MPL/2.0/.
|
||||
// with this file, You can obtain one at the mozilla.org home page
|
||||
|
||||
#ifndef EIGEN_CORE_H
|
||||
#define EIGEN_CORE_H
|
||||
|
@ -88,7 +88,7 @@
|
|||
#include "src/Core/util/Macros.h"
|
||||
|
||||
// Disable the ipa-cp-clone optimization flag with MinGW 6.x or newer (enabled by default with -O3)
|
||||
// See http://eigen.tuxfamily.org/bz/show_bug.cgi?id=556 for details.
|
||||
// See xxxp://eigen.tuxfamily.org/bz/show_bug.cgi?id=556 for details.
|
||||
#if EIGEN_COMP_MINGW && EIGEN_GNUC_AT_LEAST(4,6)
|
||||
#pragma GCC optimize ("-fno-ipa-cp-clone")
|
||||
#endif
|
||||
|
@ -179,7 +179,7 @@
|
|||
// include files
|
||||
|
||||
// This extern "C" works around a MINGW-w64 compilation issue
|
||||
// https://sourceforge.net/tracker/index.php?func=detail&aid=3018394&group_id=202880&atid=983354
|
||||
// xxxps://sourceforge.net/tracker/index.php?func=detail&aid=3018394&group_id=202880&atid=983354
|
||||
// In essence, intrin.h is included by windows.h and also declares intrinsics (just as emmintrin.h etc. below do).
|
||||
// However, intrin.h uses an extern "C" declaration, and g++ thus complains of duplicate declarations
|
||||
// with conflicting linkage. The linkage for intrinsics doesn't matter, but at that stage the compiler doesn't know;
|
||||
|
@ -340,7 +340,7 @@ inline static const char *SimdInstructionSetsInUse(void) {
|
|||
|
||||
#if defined EIGEN2_SUPPORT_STAGE40_FULL_EIGEN3_STRICTNESS || defined EIGEN2_SUPPORT_STAGE30_FULL_EIGEN3_API || defined EIGEN2_SUPPORT_STAGE20_RESOLVE_API_CONFLICTS || defined EIGEN2_SUPPORT_STAGE10_FULL_EIGEN2_API || defined EIGEN2_SUPPORT
|
||||
// This will generate an error message:
|
||||
#error Eigen2-support is only available up to version 3.2. Please go to "http://eigen.tuxfamily.org/index.php?title=Eigen2" for further information
|
||||
#error Eigen2-support is only available up to version 3.2. Please go to "xxxp://eigen.tuxfamily.org/index.php?title=Eigen2" for further information
|
||||
#endif
|
||||
|
||||
namespace Eigen {
|
||||
|
|
|
@ -3,7 +3,7 @@
|
|||
//
|
||||
// This Source Code Form is subject to the terms of the Mozilla
|
||||
// Public License v. 2.0. If a copy of the MPL was not distributed
|
||||
// with this file, You can obtain one at http://mozilla.org/MPL/2.0/.
|
||||
// with this file, You can obtain one at the mozilla.org home page
|
||||
|
||||
#ifndef EIGEN_EIGENVALUES_MODULE_H
|
||||
#define EIGEN_EIGENVALUES_MODULE_H
|
||||
|
|
|
@ -3,7 +3,7 @@
|
|||
//
|
||||
// This Source Code Form is subject to the terms of the Mozilla
|
||||
// Public License v. 2.0. If a copy of the MPL was not distributed
|
||||
// with this file, You can obtain one at http://mozilla.org/MPL/2.0/.
|
||||
// with this file, You can obtain one at the mozilla.org home page
|
||||
|
||||
#ifndef EIGEN_GEOMETRY_MODULE_H
|
||||
#define EIGEN_GEOMETRY_MODULE_H
|
||||
|
|
|
@ -3,7 +3,7 @@
|
|||
//
|
||||
// This Source Code Form is subject to the terms of the Mozilla
|
||||
// Public License v. 2.0. If a copy of the MPL was not distributed
|
||||
// with this file, You can obtain one at http://mozilla.org/MPL/2.0/.
|
||||
// with this file, You can obtain one at the mozilla.org home page
|
||||
|
||||
#ifndef EIGEN_HOUSEHOLDER_MODULE_H
|
||||
#define EIGEN_HOUSEHOLDER_MODULE_H
|
||||
|
|
|
@ -3,7 +3,7 @@
|
|||
//
|
||||
// This Source Code Form is subject to the terms of the Mozilla
|
||||
// Public License v. 2.0. If a copy of the MPL was not distributed
|
||||
// with this file, You can obtain one at http://mozilla.org/MPL/2.0/.
|
||||
// with this file, You can obtain one at the mozilla.org home page
|
||||
|
||||
#ifndef EIGEN_ITERATIVELINEARSOLVERS_MODULE_H
|
||||
#define EIGEN_ITERATIVELINEARSOLVERS_MODULE_H
|
||||
|
|
|
@ -3,7 +3,7 @@
|
|||
//
|
||||
// This Source Code Form is subject to the terms of the Mozilla
|
||||
// Public License v. 2.0. If a copy of the MPL was not distributed
|
||||
// with this file, You can obtain one at http://mozilla.org/MPL/2.0/.
|
||||
// with this file, You can obtain one at the mozilla.org home page
|
||||
|
||||
#ifndef EIGEN_JACOBI_MODULE_H
|
||||
#define EIGEN_JACOBI_MODULE_H
|
||||
|
|
|
@ -3,7 +3,7 @@
|
|||
//
|
||||
// This Source Code Form is subject to the terms of the Mozilla
|
||||
// Public License v. 2.0. If a copy of the MPL was not distributed
|
||||
// with this file, You can obtain one at http://mozilla.org/MPL/2.0/.
|
||||
// with this file, You can obtain one at the mozilla.org home page
|
||||
|
||||
#ifndef EIGEN_LU_MODULE_H
|
||||
#define EIGEN_LU_MODULE_H
|
||||
|
|
|
@ -3,7 +3,7 @@
|
|||
//
|
||||
// This Source Code Form is subject to the terms of the Mozilla
|
||||
// Public License v. 2.0. If a copy of the MPL was not distributed
|
||||
// with this file, You can obtain one at http://mozilla.org/MPL/2.0/.
|
||||
// with this file, You can obtain one at the mozilla.org home page
|
||||
|
||||
#ifndef EIGEN_METISSUPPORT_MODULE_H
|
||||
#define EIGEN_METISSUPPORT_MODULE_H
|
||||
|
@ -23,7 +23,7 @@ extern "C" {
|
|||
* \code
|
||||
* #include <Eigen/MetisSupport>
|
||||
* \endcode
|
||||
* This module defines an interface to the METIS reordering package (http://glaros.dtc.umn.edu/gkhome/views/metis).
|
||||
* This module defines an interface to the METIS reordering package (xxxp://glaros.dtc.umn.edu/gkhome/views/metis).
|
||||
* It can be used just as any other built-in method as explained in \link OrderingMethods_Module here. \endlink
|
||||
*/
|
||||
|
||||
|
|
|
@ -3,7 +3,7 @@
|
|||
//
|
||||
// This Source Code Form is subject to the terms of the Mozilla
|
||||
// Public License v. 2.0. If a copy of the MPL was not distributed
|
||||
// with this file, You can obtain one at http://mozilla.org/MPL/2.0/.
|
||||
// with this file, You can obtain one at the mozilla.org home page
|
||||
|
||||
#ifndef EIGEN_ORDERINGMETHODS_MODULE_H
|
||||
#define EIGEN_ORDERINGMETHODS_MODULE_H
|
||||
|
|
|
@ -3,7 +3,7 @@
|
|||
//
|
||||
// This Source Code Form is subject to the terms of the Mozilla
|
||||
// Public License v. 2.0. If a copy of the MPL was not distributed
|
||||
// with this file, You can obtain one at http://mozilla.org/MPL/2.0/.
|
||||
// with this file, You can obtain one at the mozilla.org home page
|
||||
|
||||
#ifndef EIGEN_PASTIXSUPPORT_MODULE_H
|
||||
#define EIGEN_PASTIXSUPPORT_MODULE_H
|
||||
|
@ -24,7 +24,7 @@ extern "C" {
|
|||
/** \ingroup Support_modules
|
||||
* \defgroup PaStiXSupport_Module PaStiXSupport module
|
||||
*
|
||||
* This module provides an interface to the <a href="http://pastix.gforge.inria.fr/">PaSTiX</a> library.
|
||||
* This module provides an interface to the <a href="xxxp://pastix.gforge.inria.fr/">PaSTiX</a> library.
|
||||
* PaSTiX is a general \b supernodal, \b parallel and \b opensource sparse solver.
|
||||
* It provides the two following main factorization classes:
|
||||
* - class PastixLLT : a supernodal, parallel LLt Cholesky factorization.
|
||||
|
|
|
@ -3,7 +3,7 @@
|
|||
//
|
||||
// This Source Code Form is subject to the terms of the Mozilla
|
||||
// Public License v. 2.0. If a copy of the MPL was not distributed
|
||||
// with this file, You can obtain one at http://mozilla.org/MPL/2.0/.
|
||||
// with this file, You can obtain one at the mozilla.org home page
|
||||
|
||||
#ifndef EIGEN_PARDISOSUPPORT_MODULE_H
|
||||
#define EIGEN_PARDISOSUPPORT_MODULE_H
|
||||
|
|
|
@ -3,7 +3,7 @@
|
|||
//
|
||||
// This Source Code Form is subject to the terms of the Mozilla
|
||||
// Public License v. 2.0. If a copy of the MPL was not distributed
|
||||
// with this file, You can obtain one at http://mozilla.org/MPL/2.0/.
|
||||
// with this file, You can obtain one at the mozilla.org home page
|
||||
|
||||
#ifndef EIGEN_QR_MODULE_H
|
||||
#define EIGEN_QR_MODULE_H
|
||||
|
|
|
@ -3,7 +3,7 @@
|
|||
//
|
||||
// This Source Code Form is subject to the terms of the Mozilla
|
||||
// Public License v. 2.0. If a copy of the MPL was not distributed
|
||||
// with this file, You can obtain one at http://mozilla.org/MPL/2.0/.
|
||||
// with this file, You can obtain one at the mozilla.org home page
|
||||
|
||||
#ifndef EIGEN_QTMALLOC_MODULE_H
|
||||
#define EIGEN_QTMALLOC_MODULE_H
|
||||
|
|
|
@ -3,7 +3,7 @@
|
|||
//
|
||||
// This Source Code Form is subject to the terms of the Mozilla
|
||||
// Public License v. 2.0. If a copy of the MPL was not distributed
|
||||
// with this file, You can obtain one at http://mozilla.org/MPL/2.0/.
|
||||
// with this file, You can obtain one at the mozilla.org home page
|
||||
|
||||
#ifndef EIGEN_SPQRSUPPORT_MODULE_H
|
||||
#define EIGEN_SPQRSUPPORT_MODULE_H
|
||||
|
@ -17,7 +17,7 @@
|
|||
/** \ingroup Support_modules
|
||||
* \defgroup SPQRSupport_Module SuiteSparseQR module
|
||||
*
|
||||
* This module provides an interface to the SPQR library, which is part of the <a href="http://www.suitesparse.com">suitesparse</a> package.
|
||||
* This module provides an interface to the SPQR library, which is part of the <a href="xxxp://www.suitesparse.com">suitesparse</a> package.
|
||||
*
|
||||
* \code
|
||||
* #include <Eigen/SPQRSupport>
|
||||
|
|
|
@ -3,7 +3,7 @@
|
|||
//
|
||||
// This Source Code Form is subject to the terms of the Mozilla
|
||||
// Public License v. 2.0. If a copy of the MPL was not distributed
|
||||
// with this file, You can obtain one at http://mozilla.org/MPL/2.0/.
|
||||
// with this file, You can obtain one at the mozilla.org home page
|
||||
|
||||
#ifndef EIGEN_SVD_MODULE_H
|
||||
#define EIGEN_SVD_MODULE_H
|
||||
|
|
|
@ -3,7 +3,7 @@
|
|||
//
|
||||
// This Source Code Form is subject to the terms of the Mozilla
|
||||
// Public License v. 2.0. If a copy of the MPL was not distributed
|
||||
// with this file, You can obtain one at http://mozilla.org/MPL/2.0/.
|
||||
// with this file, You can obtain one at the mozilla.org home page
|
||||
|
||||
#ifndef EIGEN_SPARSE_MODULE_H
|
||||
#define EIGEN_SPARSE_MODULE_H
|
||||
|
|
|
@ -5,7 +5,7 @@
|
|||
//
|
||||
// This Source Code Form is subject to the terms of the Mozilla
|
||||
// Public License v. 2.0. If a copy of the MPL was not distributed
|
||||
// with this file, You can obtain one at http://mozilla.org/MPL/2.0/.
|
||||
// with this file, You can obtain one at the mozilla.org home page
|
||||
|
||||
#ifndef EIGEN_SPARSECHOLESKY_MODULE_H
|
||||
#define EIGEN_SPARSECHOLESKY_MODULE_H
|
||||
|
|
|
@ -3,7 +3,7 @@
|
|||
//
|
||||
// This Source Code Form is subject to the terms of the Mozilla
|
||||
// Public License v. 2.0. If a copy of the MPL was not distributed
|
||||
// with this file, You can obtain one at http://mozilla.org/MPL/2.0/.
|
||||
// with this file, You can obtain one at the mozilla.org home page
|
||||
|
||||
#ifndef EIGEN_SPARSECORE_MODULE_H
|
||||
#define EIGEN_SPARSECORE_MODULE_H
|
||||
|
|
|
@ -6,7 +6,7 @@
|
|||
//
|
||||
// This Source Code Form is subject to the terms of the Mozilla
|
||||
// Public License v. 2.0. If a copy of the MPL was not distributed
|
||||
// with this file, You can obtain one at http://mozilla.org/MPL/2.0/.
|
||||
// with this file, You can obtain one at the mozilla.org home page
|
||||
|
||||
#ifndef EIGEN_SPARSELU_MODULE_H
|
||||
#define EIGEN_SPARSELU_MODULE_H
|
||||
|
|
|
@ -3,7 +3,7 @@
|
|||
//
|
||||
// This Source Code Form is subject to the terms of the Mozilla
|
||||
// Public License v. 2.0. If a copy of the MPL was not distributed
|
||||
// with this file, You can obtain one at http://mozilla.org/MPL/2.0/.
|
||||
// with this file, You can obtain one at the mozilla.org home page
|
||||
|
||||
#ifndef EIGEN_SPARSEQR_MODULE_H
|
||||
#define EIGEN_SPARSEQR_MODULE_H
|
||||
|
|
|
@ -6,7 +6,7 @@
|
|||
//
|
||||
// This Source Code Form is subject to the terms of the Mozilla
|
||||
// Public License v. 2.0. If a copy of the MPL was not distributed
|
||||
// with this file, You can obtain one at http://mozilla.org/MPL/2.0/.
|
||||
// with this file, You can obtain one at the mozilla.org home page
|
||||
|
||||
#ifndef EIGEN_STDDEQUE_MODULE_H
|
||||
#define EIGEN_STDDEQUE_MODULE_H
|
||||
|
|
|
@ -5,7 +5,7 @@
|
|||
//
|
||||
// This Source Code Form is subject to the terms of the Mozilla
|
||||
// Public License v. 2.0. If a copy of the MPL was not distributed
|
||||
// with this file, You can obtain one at http://mozilla.org/MPL/2.0/.
|
||||
// with this file, You can obtain one at the mozilla.org home page
|
||||
|
||||
#ifndef EIGEN_STDLIST_MODULE_H
|
||||
#define EIGEN_STDLIST_MODULE_H
|
||||
|
|
|
@ -6,7 +6,7 @@
|
|||
//
|
||||
// This Source Code Form is subject to the terms of the Mozilla
|
||||
// Public License v. 2.0. If a copy of the MPL was not distributed
|
||||
// with this file, You can obtain one at http://mozilla.org/MPL/2.0/.
|
||||
// with this file, You can obtain one at the mozilla.org home page
|
||||
|
||||
#ifndef EIGEN_STDVECTOR_MODULE_H
|
||||
#define EIGEN_STDVECTOR_MODULE_H
|
||||
|
|
|
@ -3,7 +3,7 @@
|
|||
//
|
||||
// This Source Code Form is subject to the terms of the Mozilla
|
||||
// Public License v. 2.0. If a copy of the MPL was not distributed
|
||||
// with this file, You can obtain one at http://mozilla.org/MPL/2.0/.
|
||||
// with this file, You can obtain one at the mozilla.org home page
|
||||
|
||||
#ifndef EIGEN_SUPERLUSUPPORT_MODULE_H
|
||||
#define EIGEN_SUPERLUSUPPORT_MODULE_H
|
||||
|
@ -38,7 +38,7 @@ namespace Eigen { struct SluMatrix; }
|
|||
/** \ingroup Support_modules
|
||||
* \defgroup SuperLUSupport_Module SuperLUSupport module
|
||||
*
|
||||
* This module provides an interface to the <a href="http://crd-legacy.lbl.gov/~xiaoye/SuperLU/">SuperLU</a> library.
|
||||
* This module provides an interface to the <a href="xxxp://crd-legacy.lbl.gov/~xiaoye/SuperLU/">SuperLU</a> library.
|
||||
* It provides the following factorization class:
|
||||
* - class SuperLU: a supernodal sequential LU factorization.
|
||||
* - class SuperILU: a supernodal sequential incomplete LU factorization (to be used as a preconditioner for iterative methods).
|
||||
|
|
|
@ -3,7 +3,7 @@
|
|||
//
|
||||
// This Source Code Form is subject to the terms of the Mozilla
|
||||
// Public License v. 2.0. If a copy of the MPL was not distributed
|
||||
// with this file, You can obtain one at http://mozilla.org/MPL/2.0/.
|
||||
// with this file, You can obtain one at the mozilla.org home page
|
||||
|
||||
#ifndef EIGEN_UMFPACKSUPPORT_MODULE_H
|
||||
#define EIGEN_UMFPACKSUPPORT_MODULE_H
|
||||
|
@ -19,7 +19,7 @@ extern "C" {
|
|||
/** \ingroup Support_modules
|
||||
* \defgroup UmfPackSupport_Module UmfPackSupport module
|
||||
*
|
||||
* This module provides an interface to the UmfPack library which is part of the <a href="http://www.suitesparse.com">suitesparse</a> package.
|
||||
* This module provides an interface to the UmfPack library which is part of the <a href="xxxp://www.suitesparse.com">suitesparse</a> package.
|
||||
* It provides the following factorization class:
|
||||
* - class UmfPackLU: a multifrontal sequential LU factorization.
|
||||
*
|
||||
|
|
|
@ -8,7 +8,7 @@
|
|||
//
|
||||
// This Source Code Form is subject to the terms of the Mozilla
|
||||
// Public License v. 2.0. If a copy of the MPL was not distributed
|
||||
// with this file, You can obtain one at http://mozilla.org/MPL/2.0/.
|
||||
// with this file, You can obtain one at the mozilla.org home page
|
||||
|
||||
#ifndef EIGEN_LDLT_H
|
||||
#define EIGEN_LDLT_H
|
||||
|
|
|
@ -5,7 +5,7 @@
|
|||
//
|
||||
// This Source Code Form is subject to the terms of the Mozilla
|
||||
// Public License v. 2.0. If a copy of the MPL was not distributed
|
||||
// with this file, You can obtain one at http://mozilla.org/MPL/2.0/.
|
||||
// with this file, You can obtain one at the mozilla.org home page
|
||||
|
||||
#ifndef EIGEN_LLT_H
|
||||
#define EIGEN_LLT_H
|
||||
|
|
|
@ -5,7 +5,7 @@
|
|||
//
|
||||
// This Source Code Form is subject to the terms of the Mozilla
|
||||
// Public License v. 2.0. If a copy of the MPL was not distributed
|
||||
// with this file, You can obtain one at http://mozilla.org/MPL/2.0/.
|
||||
// with this file, You can obtain one at the mozilla.org home page
|
||||
|
||||
#ifndef EIGEN_CHOLMODSUPPORT_H
|
||||
#define EIGEN_CHOLMODSUPPORT_H
|
||||
|
|
|
@ -5,7 +5,7 @@
|
|||
//
|
||||
// This Source Code Form is subject to the terms of the Mozilla
|
||||
// Public License v. 2.0. If a copy of the MPL was not distributed
|
||||
// with this file, You can obtain one at http://mozilla.org/MPL/2.0/.
|
||||
// with this file, You can obtain one at the mozilla.org home page
|
||||
|
||||
#ifndef EIGEN_ARRAY_H
|
||||
#define EIGEN_ARRAY_H
|
||||
|
|
|
@ -5,7 +5,7 @@
|
|||
//
|
||||
// This Source Code Form is subject to the terms of the Mozilla
|
||||
// Public License v. 2.0. If a copy of the MPL was not distributed
|
||||
// with this file, You can obtain one at http://mozilla.org/MPL/2.0/.
|
||||
// with this file, You can obtain one at the mozilla.org home page
|
||||
|
||||
#ifndef EIGEN_ARRAYBASE_H
|
||||
#define EIGEN_ARRAYBASE_H
|
||||
|
|
|
@ -5,7 +5,7 @@
|
|||
//
|
||||
// This Source Code Form is subject to the terms of the Mozilla
|
||||
// Public License v. 2.0. If a copy of the MPL was not distributed
|
||||
// with this file, You can obtain one at http://mozilla.org/MPL/2.0/.
|
||||
// with this file, You can obtain one at the mozilla.org home page
|
||||
|
||||
#ifndef EIGEN_ARRAYWRAPPER_H
|
||||
#define EIGEN_ARRAYWRAPPER_H
|
||||
|
|
|
@ -7,7 +7,7 @@
|
|||
//
|
||||
// This Source Code Form is subject to the terms of the Mozilla
|
||||
// Public License v. 2.0. If a copy of the MPL was not distributed
|
||||
// with this file, You can obtain one at http://mozilla.org/MPL/2.0/.
|
||||
// with this file, You can obtain one at the mozilla.org home page
|
||||
|
||||
#ifndef EIGEN_ASSIGN_H
|
||||
#define EIGEN_ASSIGN_H
|
||||
|
|
|
@ -7,7 +7,7 @@
|
|||
//
|
||||
// This Source Code Form is subject to the terms of the Mozilla
|
||||
// Public License v. 2.0. If a copy of the MPL was not distributed
|
||||
// with this file, You can obtain one at http://mozilla.org/MPL/2.0/.
|
||||
// with this file, You can obtain one at the mozilla.org home page
|
||||
|
||||
#ifndef EIGEN_ASSIGN_EVALUATOR_H
|
||||
#define EIGEN_ASSIGN_EVALUATOR_H
|
||||
|
|
|
@ -5,7 +5,7 @@
|
|||
//
|
||||
// This Source Code Form is subject to the terms of the Mozilla
|
||||
// Public License v. 2.0. If a copy of the MPL was not distributed
|
||||
// with this file, You can obtain one at http://mozilla.org/MPL/2.0/.
|
||||
// with this file, You can obtain one at the mozilla.org home page
|
||||
|
||||
#ifndef EIGEN_BANDMATRIX_H
|
||||
#define EIGEN_BANDMATRIX_H
|
||||
|
|
|
@ -6,7 +6,7 @@
|
|||
//
|
||||
// This Source Code Form is subject to the terms of the Mozilla
|
||||
// Public License v. 2.0. If a copy of the MPL was not distributed
|
||||
// with this file, You can obtain one at http://mozilla.org/MPL/2.0/.
|
||||
// with this file, You can obtain one at the mozilla.org home page
|
||||
|
||||
#ifndef EIGEN_BLOCK_H
|
||||
#define EIGEN_BLOCK_H
|
||||
|
|
|
@ -5,7 +5,7 @@
|
|||
//
|
||||
// This Source Code Form is subject to the terms of the Mozilla
|
||||
// Public License v. 2.0. If a copy of the MPL was not distributed
|
||||
// with this file, You can obtain one at http://mozilla.org/MPL/2.0/.
|
||||
// with this file, You can obtain one at the mozilla.org home page
|
||||
|
||||
#ifndef EIGEN_ALLANDANY_H
|
||||
#define EIGEN_ALLANDANY_H
|
||||
|
|
|
@ -6,7 +6,7 @@
|
|||
//
|
||||
// This Source Code Form is subject to the terms of the Mozilla
|
||||
// Public License v. 2.0. If a copy of the MPL was not distributed
|
||||
// with this file, You can obtain one at http://mozilla.org/MPL/2.0/.
|
||||
// with this file, You can obtain one at the mozilla.org home page
|
||||
|
||||
#ifndef EIGEN_COMMAINITIALIZER_H
|
||||
#define EIGEN_COMMAINITIALIZER_H
|
||||
|
|
|
@ -5,7 +5,7 @@
|
|||
//
|
||||
// This Source Code Form is subject to the terms of the Mozilla
|
||||
// Public License v. 2.0. If a copy of the MPL was not distributed
|
||||
// with this file, You can obtain one at http://mozilla.org/MPL/2.0/.
|
||||
// with this file, You can obtain one at the mozilla.org home page
|
||||
|
||||
#ifndef EIGEN_CONDITIONESTIMATOR_H
|
||||
#define EIGEN_CONDITIONESTIMATOR_H
|
||||
|
@ -37,7 +37,7 @@ struct rcond_compute_sign<Vector, Vector, false> {
|
|||
* \a matrix that implements .solve() and .adjoint().solve() methods.
|
||||
*
|
||||
* This function implements Algorithms 4.1 and 5.1 from
|
||||
* http://www.maths.manchester.ac.uk/~higham/narep/narep135.pdf
|
||||
* xxxp://www.maths.manchester.ac.uk/~higham/narep/narep135.pdf
|
||||
* which also forms the basis for the condition number estimators in
|
||||
* LAPACK. Since at most 10 calls to the solve method of dec are
|
||||
* performed, the total cost is O(dims^2), as opposed to O(dims^3)
|
||||
|
|
|
@ -7,7 +7,7 @@
|
|||
//
|
||||
// This Source Code Form is subject to the terms of the Mozilla
|
||||
// Public License v. 2.0. If a copy of the MPL was not distributed
|
||||
// with this file, You can obtain one at http://mozilla.org/MPL/2.0/.
|
||||
// with this file, You can obtain one at the mozilla.org home page
|
||||
|
||||
|
||||
#ifndef EIGEN_COREEVALUATORS_H
|
||||
|
|
|
@ -5,7 +5,7 @@
|
|||
//
|
||||
// This Source Code Form is subject to the terms of the Mozilla
|
||||
// Public License v. 2.0. If a copy of the MPL was not distributed
|
||||
// with this file, You can obtain one at http://mozilla.org/MPL/2.0/.
|
||||
// with this file, You can obtain one at the mozilla.org home page
|
||||
|
||||
#ifndef EIGEN_COREITERATORS_H
|
||||
#define EIGEN_COREITERATORS_H
|
||||
|
|
|
@ -6,7 +6,7 @@
|
|||
//
|
||||
// This Source Code Form is subject to the terms of the Mozilla
|
||||
// Public License v. 2.0. If a copy of the MPL was not distributed
|
||||
// with this file, You can obtain one at http://mozilla.org/MPL/2.0/.
|
||||
// with this file, You can obtain one at the mozilla.org home page
|
||||
|
||||
#ifndef EIGEN_CWISE_BINARY_OP_H
|
||||
#define EIGEN_CWISE_BINARY_OP_H
|
||||
|
|
|
@ -5,7 +5,7 @@
|
|||
//
|
||||
// This Source Code Form is subject to the terms of the Mozilla
|
||||
// Public License v. 2.0. If a copy of the MPL was not distributed
|
||||
// with this file, You can obtain one at http://mozilla.org/MPL/2.0/.
|
||||
// with this file, You can obtain one at the mozilla.org home page
|
||||
|
||||
#ifndef EIGEN_CWISE_NULLARY_OP_H
|
||||
#define EIGEN_CWISE_NULLARY_OP_H
|
||||
|
|
|
@ -7,7 +7,7 @@
|
|||
//
|
||||
// This Source Code Form is subject to the terms of the Mozilla
|
||||
// Public License v. 2.0. If a copy of the MPL was not distributed
|
||||
// with this file, You can obtain one at http://mozilla.org/MPL/2.0/.
|
||||
// with this file, You can obtain one at the mozilla.org home page
|
||||
|
||||
#ifndef EIGEN_CWISE_TERNARY_OP_H
|
||||
#define EIGEN_CWISE_TERNARY_OP_H
|
||||
|
|
|
@ -6,7 +6,7 @@
|
|||
//
|
||||
// This Source Code Form is subject to the terms of the Mozilla
|
||||
// Public License v. 2.0. If a copy of the MPL was not distributed
|
||||
// with this file, You can obtain one at http://mozilla.org/MPL/2.0/.
|
||||
// with this file, You can obtain one at the mozilla.org home page
|
||||
|
||||
#ifndef EIGEN_CWISE_UNARY_OP_H
|
||||
#define EIGEN_CWISE_UNARY_OP_H
|
||||
|
|
|
@ -5,7 +5,7 @@
|
|||
//
|
||||
// This Source Code Form is subject to the terms of the Mozilla
|
||||
// Public License v. 2.0. If a copy of the MPL was not distributed
|
||||
// with this file, You can obtain one at http://mozilla.org/MPL/2.0/.
|
||||
// with this file, You can obtain one at the mozilla.org home page
|
||||
|
||||
#ifndef EIGEN_CWISE_UNARY_VIEW_H
|
||||
#define EIGEN_CWISE_UNARY_VIEW_H
|
||||
|
|
|
@ -6,7 +6,7 @@
|
|||
//
|
||||
// This Source Code Form is subject to the terms of the Mozilla
|
||||
// Public License v. 2.0. If a copy of the MPL was not distributed
|
||||
// with this file, You can obtain one at http://mozilla.org/MPL/2.0/.
|
||||
// with this file, You can obtain one at the mozilla.org home page
|
||||
|
||||
#ifndef EIGEN_DENSEBASE_H
|
||||
#define EIGEN_DENSEBASE_H
|
||||
|
|
|
@ -5,7 +5,7 @@
|
|||
//
|
||||
// This Source Code Form is subject to the terms of the Mozilla
|
||||
// Public License v. 2.0. If a copy of the MPL was not distributed
|
||||
// with this file, You can obtain one at http://mozilla.org/MPL/2.0/.
|
||||
// with this file, You can obtain one at the mozilla.org home page
|
||||
|
||||
#ifndef EIGEN_DENSECOEFFSBASE_H
|
||||
#define EIGEN_DENSECOEFFSBASE_H
|
||||
|
|
|
@ -7,7 +7,7 @@
|
|||
//
|
||||
// This Source Code Form is subject to the terms of the Mozilla
|
||||
// Public License v. 2.0. If a copy of the MPL was not distributed
|
||||
// with this file, You can obtain one at http://mozilla.org/MPL/2.0/.
|
||||
// with this file, You can obtain one at the mozilla.org home page
|
||||
|
||||
#ifndef EIGEN_MATRIXSTORAGE_H
|
||||
#define EIGEN_MATRIXSTORAGE_H
|
||||
|
@ -62,20 +62,20 @@ struct plain_array
|
|||
#define EIGEN_MAKE_UNALIGNED_ARRAY_ASSERT(sizemask)
|
||||
#elif EIGEN_GNUC_AT_LEAST(4,7)
|
||||
// GCC 4.7 is too aggressive in its optimizations and remove the alignement test based on the fact the array is declared to be aligned.
|
||||
// See this bug report: http://gcc.gnu.org/bugzilla/show_bug.cgi?id=53900
|
||||
// See this bug report: xxxp://gcc.gnu.org/bugzilla/show_bug.cgi?id=53900
|
||||
// Hiding the origin of the array pointer behind a function argument seems to do the trick even if the function is inlined:
|
||||
template<typename PtrType>
|
||||
EIGEN_ALWAYS_INLINE PtrType eigen_unaligned_array_assert_workaround_gcc47(PtrType array) { return array; }
|
||||
#define EIGEN_MAKE_UNALIGNED_ARRAY_ASSERT(sizemask) \
|
||||
eigen_assert((internal::UIntPtr(eigen_unaligned_array_assert_workaround_gcc47(array)) & (sizemask)) == 0 \
|
||||
&& "this assertion is explained here: " \
|
||||
"http://eigen.tuxfamily.org/dox-devel/group__TopicUnalignedArrayAssert.html" \
|
||||
"xxxp://eigen.tuxfamily.org/dox-devel/group__TopicUnalignedArrayAssert.html" \
|
||||
" **** READ THIS WEB PAGE !!! ****");
|
||||
#else
|
||||
#define EIGEN_MAKE_UNALIGNED_ARRAY_ASSERT(sizemask) \
|
||||
eigen_assert((internal::UIntPtr(array) & (sizemask)) == 0 \
|
||||
&& "this assertion is explained here: " \
|
||||
"http://eigen.tuxfamily.org/dox-devel/group__TopicUnalignedArrayAssert.html" \
|
||||
"xxxp://eigen.tuxfamily.org/dox-devel/group__TopicUnalignedArrayAssert.html" \
|
||||
" **** READ THIS WEB PAGE !!! ****");
|
||||
#endif
|
||||
|
||||
|
|
|
@ -6,7 +6,7 @@
|
|||
//
|
||||
// This Source Code Form is subject to the terms of the Mozilla
|
||||
// Public License v. 2.0. If a copy of the MPL was not distributed
|
||||
// with this file, You can obtain one at http://mozilla.org/MPL/2.0/.
|
||||
// with this file, You can obtain one at the mozilla.org home page
|
||||
|
||||
#ifndef EIGEN_DIAGONAL_H
|
||||
#define EIGEN_DIAGONAL_H
|
||||
|
|
|
@ -6,7 +6,7 @@
|
|||
//
|
||||
// This Source Code Form is subject to the terms of the Mozilla
|
||||
// Public License v. 2.0. If a copy of the MPL was not distributed
|
||||
// with this file, You can obtain one at http://mozilla.org/MPL/2.0/.
|
||||
// with this file, You can obtain one at the mozilla.org home page
|
||||
|
||||
#ifndef EIGEN_DIAGONALMATRIX_H
|
||||
#define EIGEN_DIAGONALMATRIX_H
|
||||
|
|
|
@ -6,7 +6,7 @@
|
|||
//
|
||||
// This Source Code Form is subject to the terms of the Mozilla
|
||||
// Public License v. 2.0. If a copy of the MPL was not distributed
|
||||
// with this file, You can obtain one at http://mozilla.org/MPL/2.0/.
|
||||
// with this file, You can obtain one at the mozilla.org home page
|
||||
|
||||
#ifndef EIGEN_DIAGONALPRODUCT_H
|
||||
#define EIGEN_DIAGONALPRODUCT_H
|
||||
|
|
|
@ -5,7 +5,7 @@
|
|||
//
|
||||
// This Source Code Form is subject to the terms of the Mozilla
|
||||
// Public License v. 2.0. If a copy of the MPL was not distributed
|
||||
// with this file, You can obtain one at http://mozilla.org/MPL/2.0/.
|
||||
// with this file, You can obtain one at the mozilla.org home page
|
||||
|
||||
#ifndef EIGEN_DOT_H
|
||||
#define EIGEN_DOT_H
|
||||
|
@ -253,7 +253,7 @@ struct lpNorm_selector<Derived, Infinity>
|
|||
*
|
||||
* In all cases, if \c *this is empty, then the value 0 is returned.
|
||||
*
|
||||
* \note For matrices, this function does not compute the <a href="https://en.wikipedia.org/wiki/Operator_norm">operator-norm</a>. That is, if \c *this is a matrix, then its coefficients are interpreted as a 1D vector. Nonetheless, you can easily compute the 1-norm and \f$\infty\f$-norm matrix operator norms using \link TutorialReductionsVisitorsBroadcastingReductionsNorm partial reductions \endlink.
|
||||
* \note For matrices, this function does not compute the <a href="xxxps://en.wikipedia.org/wiki/Operator_norm">operator-norm</a>. That is, if \c *this is a matrix, then its coefficients are interpreted as a 1D vector. Nonetheless, you can easily compute the 1-norm and \f$\infty\f$-norm matrix operator norms using \link TutorialReductionsVisitorsBroadcastingReductionsNorm partial reductions \endlink.
|
||||
*
|
||||
* \sa norm()
|
||||
*/
|
||||
|
|
|
@ -6,7 +6,7 @@
|
|||
//
|
||||
// This Source Code Form is subject to the terms of the Mozilla
|
||||
// Public License v. 2.0. If a copy of the MPL was not distributed
|
||||
// with this file, You can obtain one at http://mozilla.org/MPL/2.0/.
|
||||
// with this file, You can obtain one at the mozilla.org home page
|
||||
|
||||
#ifndef EIGEN_EIGENBASE_H
|
||||
#define EIGEN_EIGENBASE_H
|
||||
|
|
|
@ -5,7 +5,7 @@
|
|||
//
|
||||
// This Source Code Form is subject to the terms of the Mozilla
|
||||
// Public License v. 2.0. If a copy of the MPL was not distributed
|
||||
// with this file, You can obtain one at http://mozilla.org/MPL/2.0/.
|
||||
// with this file, You can obtain one at the mozilla.org home page
|
||||
|
||||
#ifndef EIGEN_FORCEALIGNEDACCESS_H
|
||||
#define EIGEN_FORCEALIGNEDACCESS_H
|
||||
|
|
|
@ -6,7 +6,7 @@
|
|||
//
|
||||
// This Source Code Form is subject to the terms of the Mozilla
|
||||
// Public License v. 2.0. If a copy of the MPL was not distributed
|
||||
// with this file, You can obtain one at http://mozilla.org/MPL/2.0/.
|
||||
// with this file, You can obtain one at the mozilla.org home page
|
||||
|
||||
#ifndef EIGEN_FUZZY_H
|
||||
#define EIGEN_FUZZY_H
|
||||
|
|
|
@ -6,7 +6,7 @@
|
|||
//
|
||||
// This Source Code Form is subject to the terms of the Mozilla
|
||||
// Public License v. 2.0. If a copy of the MPL was not distributed
|
||||
// with this file, You can obtain one at http://mozilla.org/MPL/2.0/.
|
||||
// with this file, You can obtain one at the mozilla.org home page
|
||||
|
||||
#ifndef EIGEN_GENERAL_PRODUCT_H
|
||||
#define EIGEN_GENERAL_PRODUCT_H
|
||||
|
|
|
@ -6,7 +6,7 @@
|
|||
//
|
||||
// This Source Code Form is subject to the terms of the Mozilla
|
||||
// Public License v. 2.0. If a copy of the MPL was not distributed
|
||||
// with this file, You can obtain one at http://mozilla.org/MPL/2.0/.
|
||||
// with this file, You can obtain one at the mozilla.org home page
|
||||
|
||||
#ifndef EIGEN_GENERIC_PACKET_MATH_H
|
||||
#define EIGEN_GENERIC_PACKET_MATH_H
|
||||
|
|
|
@ -6,7 +6,7 @@
|
|||
//
|
||||
// This Source Code Form is subject to the terms of the Mozilla
|
||||
// Public License v. 2.0. If a copy of the MPL was not distributed
|
||||
// with this file, You can obtain one at http://mozilla.org/MPL/2.0/.
|
||||
// with this file, You can obtain one at the mozilla.org home page
|
||||
|
||||
#ifndef EIGEN_GLOBAL_FUNCTIONS_H
|
||||
#define EIGEN_GLOBAL_FUNCTIONS_H
|
||||
|
|
|
@ -6,7 +6,7 @@
|
|||
//
|
||||
// This Source Code Form is subject to the terms of the Mozilla
|
||||
// Public License v. 2.0. If a copy of the MPL was not distributed
|
||||
// with this file, You can obtain one at http://mozilla.org/MPL/2.0/.
|
||||
// with this file, You can obtain one at the mozilla.org home page
|
||||
|
||||
#ifndef EIGEN_IO_H
|
||||
#define EIGEN_IO_H
|
||||
|
|
|
@ -5,7 +5,7 @@
|
|||
//
|
||||
// This Source Code Form is subject to the terms of the Mozilla
|
||||
// Public License v. 2.0. If a copy of the MPL was not distributed
|
||||
// with this file, You can obtain one at http://mozilla.org/MPL/2.0/.
|
||||
// with this file, You can obtain one at the mozilla.org home page
|
||||
|
||||
#ifndef EIGEN_INVERSE_H
|
||||
#define EIGEN_INVERSE_H
|
||||
|
|
|
@ -6,7 +6,7 @@
|
|||
//
|
||||
// This Source Code Form is subject to the terms of the Mozilla
|
||||
// Public License v. 2.0. If a copy of the MPL was not distributed
|
||||
// with this file, You can obtain one at http://mozilla.org/MPL/2.0/.
|
||||
// with this file, You can obtain one at the mozilla.org home page
|
||||
|
||||
#ifndef EIGEN_MAP_H
|
||||
#define EIGEN_MAP_H
|
||||
|
|
|
@ -6,7 +6,7 @@
|
|||
//
|
||||
// This Source Code Form is subject to the terms of the Mozilla
|
||||
// Public License v. 2.0. If a copy of the MPL was not distributed
|
||||
// with this file, You can obtain one at http://mozilla.org/MPL/2.0/.
|
||||
// with this file, You can obtain one at the mozilla.org home page
|
||||
|
||||
#ifndef EIGEN_MAPBASE_H
|
||||
#define EIGEN_MAPBASE_H
|
||||
|
|
|
@ -5,12 +5,12 @@
|
|||
//
|
||||
// This Source Code Form is subject to the terms of the Mozilla
|
||||
// Public License v. 2.0. If a copy of the MPL was not distributed
|
||||
// with this file, You can obtain one at http://mozilla.org/MPL/2.0/.
|
||||
// with this file, You can obtain one at the mozilla.org home page
|
||||
|
||||
#ifndef EIGEN_MATHFUNCTIONS_H
|
||||
#define EIGEN_MATHFUNCTIONS_H
|
||||
|
||||
// source: http://www.geom.uiuc.edu/~huberty/math5337/groupe/digits.html
|
||||
// source: xxxp://www.geom.uiuc.edu/~huberty/math5337/groupe/digits.html
|
||||
// TODO this should better be moved to NumTraits
|
||||
#define EIGEN_PI 3.141592653589793238462643383279502884197169399375105820974944592307816406L
|
||||
|
||||
|
|
|
@ -6,7 +6,7 @@
|
|||
//
|
||||
// This Source Code Form is subject to the terms of the Mozilla
|
||||
// Public License v. 2.0. If a copy of the MPL was not distributed
|
||||
// with this file, You can obtain one at http://mozilla.org/MPL/2.0/.
|
||||
// with this file, You can obtain one at the mozilla.org home page
|
||||
|
||||
#ifndef EIGEN_MATHFUNCTIONSIMPL_H
|
||||
#define EIGEN_MATHFUNCTIONSIMPL_H
|
||||
|
@ -33,7 +33,7 @@ T generic_fast_tanh_float(const T& a_x)
|
|||
// step such that if a_x is nan, x will be either 9 or -9,
|
||||
// and tanh will return 1 or -1 instead of nan.
|
||||
// This is supposed to be fixed in gcc6.3,
|
||||
// see: https://gcc.gnu.org/bugzilla/show_bug.cgi?id=72867
|
||||
// see: xxxps://gcc.gnu.org/bugzilla/show_bug.cgi?id=72867
|
||||
const T x = pmax(minus_9,pmin(plus_9,a_x));
|
||||
// The monomial coefficients of the numerator polynomial (odd).
|
||||
const T alpha_1 = pset1<T>(4.89352455891786e-03f);
|
||||
|
|
|
@ -6,7 +6,7 @@
|
|||
//
|
||||
// This Source Code Form is subject to the terms of the Mozilla
|
||||
// Public License v. 2.0. If a copy of the MPL was not distributed
|
||||
// with this file, You can obtain one at http://mozilla.org/MPL/2.0/.
|
||||
// with this file, You can obtain one at the mozilla.org home page
|
||||
|
||||
#ifndef EIGEN_MATRIX_H
|
||||
#define EIGEN_MATRIX_H
|
||||
|
|
|
@ -6,7 +6,7 @@
|
|||
//
|
||||
// This Source Code Form is subject to the terms of the Mozilla
|
||||
// Public License v. 2.0. If a copy of the MPL was not distributed
|
||||
// with this file, You can obtain one at http://mozilla.org/MPL/2.0/.
|
||||
// with this file, You can obtain one at the mozilla.org home page
|
||||
|
||||
#ifndef EIGEN_MATRIXBASE_H
|
||||
#define EIGEN_MATRIXBASE_H
|
||||
|
|
|
@ -6,7 +6,7 @@
|
|||
//
|
||||
// This Source Code Form is subject to the terms of the Mozilla
|
||||
// Public License v. 2.0. If a copy of the MPL was not distributed
|
||||
// with this file, You can obtain one at http://mozilla.org/MPL/2.0/.
|
||||
// with this file, You can obtain one at the mozilla.org home page
|
||||
|
||||
#ifndef EIGEN_NESTBYVALUE_H
|
||||
#define EIGEN_NESTBYVALUE_H
|
||||
|
|
|
@ -5,7 +5,7 @@
|
|||
//
|
||||
// This Source Code Form is subject to the terms of the Mozilla
|
||||
// Public License v. 2.0. If a copy of the MPL was not distributed
|
||||
// with this file, You can obtain one at http://mozilla.org/MPL/2.0/.
|
||||
// with this file, You can obtain one at the mozilla.org home page
|
||||
|
||||
#ifndef EIGEN_NOALIAS_H
|
||||
#define EIGEN_NOALIAS_H
|
||||
|
|
|
@ -5,7 +5,7 @@
|
|||
//
|
||||
// This Source Code Form is subject to the terms of the Mozilla
|
||||
// Public License v. 2.0. If a copy of the MPL was not distributed
|
||||
// with this file, You can obtain one at http://mozilla.org/MPL/2.0/.
|
||||
// with this file, You can obtain one at the mozilla.org home page
|
||||
|
||||
#ifndef EIGEN_NUMTRAITS_H
|
||||
#define EIGEN_NUMTRAITS_H
|
||||
|
@ -75,13 +75,13 @@ struct default_digits10_impl<T,false,true> // Integer
|
|||
* \li An enum value \a IsSigned. It is equal to \c 1 if \a T is a signed type and to 0 if \a T is unsigned.
|
||||
* \li An enum value \a RequireInitialization. It is equal to \c 1 if the constructor of the numeric type \a T must
|
||||
* be called, and to 0 if it is safe not to call it. Default is 0 if \a T is an arithmetic type, and 1 otherwise.
|
||||
* \li An epsilon() function which, unlike <a href="http://en.cppreference.com/w/cpp/types/numeric_limits/epsilon">std::numeric_limits::epsilon()</a>,
|
||||
* \li An epsilon() function which, unlike <a href="xxxp://en.cppreference.com/w/cpp/types/numeric_limits/epsilon">std::numeric_limits::epsilon()</a>,
|
||||
* it returns a \a Real instead of a \a T.
|
||||
* \li A dummy_precision() function returning a weak epsilon value. It is mainly used as a default
|
||||
* value by the fuzzy comparison operators.
|
||||
* \li highest() and lowest() functions returning the highest and lowest possible values respectively.
|
||||
* \li digits10() function returning the number of decimal digits that can be represented without change. This is
|
||||
* the analogue of <a href="http://en.cppreference.com/w/cpp/types/numeric_limits/digits10">std::numeric_limits<T>::digits10</a>
|
||||
* the analogue of <a href="xxxp://en.cppreference.com/w/cpp/types/numeric_limits/digits10">std::numeric_limits<T>::digits10</a>
|
||||
* which is used as the default implementation if specialized.
|
||||
*/
|
||||
|
||||
|
|
|
@ -6,7 +6,7 @@
|
|||
//
|
||||
// This Source Code Form is subject to the terms of the Mozilla
|
||||
// Public License v. 2.0. If a copy of the MPL was not distributed
|
||||
// with this file, You can obtain one at http://mozilla.org/MPL/2.0/.
|
||||
// with this file, You can obtain one at the mozilla.org home page
|
||||
|
||||
#ifndef EIGEN_PERMUTATIONMATRIX_H
|
||||
#define EIGEN_PERMUTATIONMATRIX_H
|
||||
|
|
|
@ -6,7 +6,7 @@
|
|||
//
|
||||
// This Source Code Form is subject to the terms of the Mozilla
|
||||
// Public License v. 2.0. If a copy of the MPL was not distributed
|
||||
// with this file, You can obtain one at http://mozilla.org/MPL/2.0/.
|
||||
// with this file, You can obtain one at the mozilla.org home page
|
||||
|
||||
#ifndef EIGEN_DENSESTORAGEBASE_H
|
||||
#define EIGEN_DENSESTORAGEBASE_H
|
||||
|
@ -39,7 +39,7 @@ template<> struct check_rows_cols_for_overflow<Dynamic> {
|
|||
EIGEN_DEVICE_FUNC
|
||||
static EIGEN_ALWAYS_INLINE void run(Index rows, Index cols)
|
||||
{
|
||||
// http://hg.mozilla.org/mozilla-central/file/6c8a909977d3/xpcom/ds/CheckedInt.h#l242
|
||||
// xxxp://hg.mozilla.org/mozilla-central/file/6c8a909977d3/xpcom/ds/CheckedInt.h#l242
|
||||
// we assume Index is signed
|
||||
Index max_index = (std::size_t(1) << (8 * sizeof(Index) - 1)) - 1; // assume Index is signed
|
||||
bool error = (rows == 0 || cols == 0) ? false
|
||||
|
|
|
@ -5,7 +5,7 @@
|
|||
//
|
||||
// This Source Code Form is subject to the terms of the Mozilla
|
||||
// Public License v. 2.0. If a copy of the MPL was not distributed
|
||||
// with this file, You can obtain one at http://mozilla.org/MPL/2.0/.
|
||||
// with this file, You can obtain one at the mozilla.org home page
|
||||
|
||||
#ifndef EIGEN_PRODUCT_H
|
||||
#define EIGEN_PRODUCT_H
|
||||
|
|
|
@ -7,7 +7,7 @@
|
|||
//
|
||||
// This Source Code Form is subject to the terms of the Mozilla
|
||||
// Public License v. 2.0. If a copy of the MPL was not distributed
|
||||
// with this file, You can obtain one at http://mozilla.org/MPL/2.0/.
|
||||
// with this file, You can obtain one at the mozilla.org home page
|
||||
|
||||
|
||||
#ifndef EIGEN_PRODUCTEVALUATORS_H
|
||||
|
|
|
@ -5,7 +5,7 @@
|
|||
//
|
||||
// This Source Code Form is subject to the terms of the Mozilla
|
||||
// Public License v. 2.0. If a copy of the MPL was not distributed
|
||||
// with this file, You can obtain one at http://mozilla.org/MPL/2.0/.
|
||||
// with this file, You can obtain one at the mozilla.org home page
|
||||
|
||||
#ifndef EIGEN_RANDOM_H
|
||||
#define EIGEN_RANDOM_H
|
||||
|
|
|
@ -6,7 +6,7 @@
|
|||
//
|
||||
// This Source Code Form is subject to the terms of the Mozilla
|
||||
// Public License v. 2.0. If a copy of the MPL was not distributed
|
||||
// with this file, You can obtain one at http://mozilla.org/MPL/2.0/.
|
||||
// with this file, You can obtain one at the mozilla.org home page
|
||||
|
||||
#ifndef EIGEN_REDUX_H
|
||||
#define EIGEN_REDUX_H
|
||||
|
|
|
@ -5,7 +5,7 @@
|
|||
//
|
||||
// This Source Code Form is subject to the terms of the Mozilla
|
||||
// Public License v. 2.0. If a copy of the MPL was not distributed
|
||||
// with this file, You can obtain one at http://mozilla.org/MPL/2.0/.
|
||||
// with this file, You can obtain one at the mozilla.org home page
|
||||
|
||||
#ifndef EIGEN_REF_H
|
||||
#define EIGEN_REF_H
|
||||
|
|
|
@ -5,7 +5,7 @@
|
|||
//
|
||||
// This Source Code Form is subject to the terms of the Mozilla
|
||||
// Public License v. 2.0. If a copy of the MPL was not distributed
|
||||
// with this file, You can obtain one at http://mozilla.org/MPL/2.0/.
|
||||
// with this file, You can obtain one at the mozilla.org home page
|
||||
|
||||
#ifndef EIGEN_REPLICATE_H
|
||||
#define EIGEN_REPLICATE_H
|
||||
|
|
|
@ -6,7 +6,7 @@
|
|||
//
|
||||
// This Source Code Form is subject to the terms of the Mozilla
|
||||
// Public License v. 2.0. If a copy of the MPL was not distributed
|
||||
// with this file, You can obtain one at http://mozilla.org/MPL/2.0/.
|
||||
// with this file, You can obtain one at the mozilla.org home page
|
||||
|
||||
#ifndef EIGEN_RETURNBYVALUE_H
|
||||
#define EIGEN_RETURNBYVALUE_H
|
||||
|
|
|
@ -7,7 +7,7 @@
|
|||
//
|
||||
// This Source Code Form is subject to the terms of the Mozilla
|
||||
// Public License v. 2.0. If a copy of the MPL was not distributed
|
||||
// with this file, You can obtain one at http://mozilla.org/MPL/2.0/.
|
||||
// with this file, You can obtain one at the mozilla.org home page
|
||||
|
||||
#ifndef EIGEN_REVERSE_H
|
||||
#define EIGEN_REVERSE_H
|
||||
|
|
|
@ -5,7 +5,7 @@
|
|||
//
|
||||
// This Source Code Form is subject to the terms of the Mozilla
|
||||
// Public License v. 2.0. If a copy of the MPL was not distributed
|
||||
// with this file, You can obtain one at http://mozilla.org/MPL/2.0/.
|
||||
// with this file, You can obtain one at the mozilla.org home page
|
||||
|
||||
#ifndef EIGEN_SELECT_H
|
||||
#define EIGEN_SELECT_H
|
||||
|
|
|
@ -5,7 +5,7 @@
|
|||
//
|
||||
// This Source Code Form is subject to the terms of the Mozilla
|
||||
// Public License v. 2.0. If a copy of the MPL was not distributed
|
||||
// with this file, You can obtain one at http://mozilla.org/MPL/2.0/.
|
||||
// with this file, You can obtain one at the mozilla.org home page
|
||||
|
||||
#ifndef EIGEN_SELFADJOINTMATRIX_H
|
||||
#define EIGEN_SELFADJOINTMATRIX_H
|
||||
|
|
|
@ -5,7 +5,7 @@
|
|||
//
|
||||
// This Source Code Form is subject to the terms of the Mozilla
|
||||
// Public License v. 2.0. If a copy of the MPL was not distributed
|
||||
// with this file, You can obtain one at http://mozilla.org/MPL/2.0/.
|
||||
// with this file, You can obtain one at the mozilla.org home page
|
||||
|
||||
#ifndef EIGEN_SELFCWISEBINARYOP_H
|
||||
#define EIGEN_SELFCWISEBINARYOP_H
|
||||
|
|
|
@ -5,7 +5,7 @@
|
|||
//
|
||||
// This Source Code Form is subject to the terms of the Mozilla
|
||||
// Public License v. 2.0. If a copy of the MPL was not distributed
|
||||
// with this file, You can obtain one at http://mozilla.org/MPL/2.0/.
|
||||
// with this file, You can obtain one at the mozilla.org home page
|
||||
|
||||
#ifndef EIGEN_SOLVE_H
|
||||
#define EIGEN_SOLVE_H
|
||||
|
|
|
@ -5,7 +5,7 @@
|
|||
//
|
||||
// This Source Code Form is subject to the terms of the Mozilla
|
||||
// Public License v. 2.0. If a copy of the MPL was not distributed
|
||||
// with this file, You can obtain one at http://mozilla.org/MPL/2.0/.
|
||||
// with this file, You can obtain one at the mozilla.org home page
|
||||
|
||||
#ifndef EIGEN_SOLVETRIANGULAR_H
|
||||
#define EIGEN_SOLVETRIANGULAR_H
|
||||
|
|
|
@ -5,7 +5,7 @@
|
|||
//
|
||||
// This Source Code Form is subject to the terms of the Mozilla
|
||||
// Public License v. 2.0. If a copy of the MPL was not distributed
|
||||
// with this file, You can obtain one at http://mozilla.org/MPL/2.0/.
|
||||
// with this file, You can obtain one at the mozilla.org home page
|
||||
|
||||
#ifndef EIGEN_SOLVERBASE_H
|
||||
#define EIGEN_SOLVERBASE_H
|
||||
|
|
|
@ -5,7 +5,7 @@
|
|||
//
|
||||
// This Source Code Form is subject to the terms of the Mozilla
|
||||
// Public License v. 2.0. If a copy of the MPL was not distributed
|
||||
// with this file, You can obtain one at http://mozilla.org/MPL/2.0/.
|
||||
// with this file, You can obtain one at the mozilla.org home page
|
||||
|
||||
#ifndef EIGEN_STABLENORM_H
|
||||
#define EIGEN_STABLENORM_H
|
||||
|
|
|
@ -5,7 +5,7 @@
|
|||
//
|
||||
// This Source Code Form is subject to the terms of the Mozilla
|
||||
// Public License v. 2.0. If a copy of the MPL was not distributed
|
||||
// with this file, You can obtain one at http://mozilla.org/MPL/2.0/.
|
||||
// with this file, You can obtain one at the mozilla.org home page
|
||||
|
||||
#ifndef EIGEN_STRIDE_H
|
||||
#define EIGEN_STRIDE_H
|
||||
|
|
|
@ -5,7 +5,7 @@
|
|||
//
|
||||
// This Source Code Form is subject to the terms of the Mozilla
|
||||
// Public License v. 2.0. If a copy of the MPL was not distributed
|
||||
// with this file, You can obtain one at http://mozilla.org/MPL/2.0/.
|
||||
// with this file, You can obtain one at the mozilla.org home page
|
||||
|
||||
#ifndef EIGEN_SWAP_H
|
||||
#define EIGEN_SWAP_H
|
||||
|
|
|
@ -6,7 +6,7 @@
|
|||
//
|
||||
// This Source Code Form is subject to the terms of the Mozilla
|
||||
// Public License v. 2.0. If a copy of the MPL was not distributed
|
||||
// with this file, You can obtain one at http://mozilla.org/MPL/2.0/.
|
||||
// with this file, You can obtain one at the mozilla.org home page
|
||||
|
||||
#ifndef EIGEN_TRANSPOSE_H
|
||||
#define EIGEN_TRANSPOSE_H
|
||||
|
|
Some files were not shown because too many files have changed in this diff Show More
Loading…
Reference in New Issue