libigl 2.5.4.dev0__cp313-abi3-win_amd64.whl

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (408) hide show
  1. bin/msvcp140.dll +0 -0
  2. bin/vcruntime140.dll +0 -0
  3. bin/vcruntime140_1.dll +0 -0
  4. igl/__init__.py +1 -0
  5. igl/copyleft/__init__.py +1 -0
  6. igl/copyleft/cgal/__init__.py +1 -0
  7. igl/copyleft/cgal/pyigl_copyleft_cgal.cp313-win_amd64.pyd +0 -0
  8. igl/copyleft/cgal/pyigl_copyleft_cgal.pyi +154 -0
  9. igl/copyleft/pyigl_copyleft_core.cp313-win_amd64.pyd +0 -0
  10. igl/copyleft/pyigl_copyleft_core.pyi +16 -0
  11. igl/copyleft/tetgen/__init__.py +1 -0
  12. igl/copyleft/tetgen/pyigl_copyleft_tetgen.cp313-win_amd64.pyd +0 -0
  13. igl/copyleft/tetgen/pyigl_copyleft_tetgen.pyi +29 -0
  14. igl/embree/__init__.py +1 -0
  15. igl/embree/pyigl_embree.cp313-win_amd64.pyd +0 -0
  16. igl/embree/pyigl_embree.pyi +82 -0
  17. igl/pyigl_core.cp313-win_amd64.pyd +0 -0
  18. igl/pyigl_core.pyi +2186 -0
  19. igl/triangle/__init__.py +1 -0
  20. igl/triangle/pyigl_restricted_triangle.cp313-win_amd64.pyd +0 -0
  21. igl/triangle/pyigl_restricted_triangle.pyi +56 -0
  22. include/Eigen/Cholesky +45 -0
  23. include/Eigen/CholmodSupport +48 -0
  24. include/Eigen/Core +384 -0
  25. include/Eigen/Dense +7 -0
  26. include/Eigen/Eigen +2 -0
  27. include/Eigen/Eigenvalues +60 -0
  28. include/Eigen/Geometry +59 -0
  29. include/Eigen/Householder +29 -0
  30. include/Eigen/IterativeLinearSolvers +48 -0
  31. include/Eigen/Jacobi +32 -0
  32. include/Eigen/KLUSupport +41 -0
  33. include/Eigen/LU +47 -0
  34. include/Eigen/MetisSupport +35 -0
  35. include/Eigen/OrderingMethods +70 -0
  36. include/Eigen/PaStiXSupport +49 -0
  37. include/Eigen/PardisoSupport +35 -0
  38. include/Eigen/QR +50 -0
  39. include/Eigen/QtAlignedMalloc +39 -0
  40. include/Eigen/SPQRSupport +34 -0
  41. include/Eigen/SVD +50 -0
  42. include/Eigen/Sparse +34 -0
  43. include/Eigen/SparseCholesky +37 -0
  44. include/Eigen/SparseCore +69 -0
  45. include/Eigen/SparseLU +50 -0
  46. include/Eigen/SparseQR +36 -0
  47. include/Eigen/StdDeque +27 -0
  48. include/Eigen/StdList +26 -0
  49. include/Eigen/StdVector +27 -0
  50. include/Eigen/SuperLUSupport +64 -0
  51. include/Eigen/UmfPackSupport +40 -0
  52. include/Eigen/src/Cholesky/LDLT.h +688 -0
  53. include/Eigen/src/Cholesky/LLT.h +558 -0
  54. include/Eigen/src/Cholesky/LLT_LAPACKE.h +99 -0
  55. include/Eigen/src/CholmodSupport/CholmodSupport.h +682 -0
  56. include/Eigen/src/Core/ArithmeticSequence.h +413 -0
  57. include/Eigen/src/Core/Array.h +417 -0
  58. include/Eigen/src/Core/ArrayBase.h +226 -0
  59. include/Eigen/src/Core/ArrayWrapper.h +209 -0
  60. include/Eigen/src/Core/Assign.h +90 -0
  61. include/Eigen/src/Core/AssignEvaluator.h +1010 -0
  62. include/Eigen/src/Core/Assign_MKL.h +178 -0
  63. include/Eigen/src/Core/BandMatrix.h +353 -0
  64. include/Eigen/src/Core/Block.h +448 -0
  65. include/Eigen/src/Core/BooleanRedux.h +162 -0
  66. include/Eigen/src/Core/CommaInitializer.h +164 -0
  67. include/Eigen/src/Core/ConditionEstimator.h +175 -0
  68. include/Eigen/src/Core/CoreEvaluators.h +1741 -0
  69. include/Eigen/src/Core/CoreIterators.h +132 -0
  70. include/Eigen/src/Core/CwiseBinaryOp.h +183 -0
  71. include/Eigen/src/Core/CwiseNullaryOp.h +1001 -0
  72. include/Eigen/src/Core/CwiseTernaryOp.h +197 -0
  73. include/Eigen/src/Core/CwiseUnaryOp.h +103 -0
  74. include/Eigen/src/Core/CwiseUnaryView.h +132 -0
  75. include/Eigen/src/Core/DenseBase.h +701 -0
  76. include/Eigen/src/Core/DenseCoeffsBase.h +685 -0
  77. include/Eigen/src/Core/DenseStorage.h +652 -0
  78. include/Eigen/src/Core/Diagonal.h +258 -0
  79. include/Eigen/src/Core/DiagonalMatrix.h +391 -0
  80. include/Eigen/src/Core/DiagonalProduct.h +28 -0
  81. include/Eigen/src/Core/Dot.h +318 -0
  82. include/Eigen/src/Core/EigenBase.h +160 -0
  83. include/Eigen/src/Core/ForceAlignedAccess.h +150 -0
  84. include/Eigen/src/Core/Fuzzy.h +155 -0
  85. include/Eigen/src/Core/GeneralProduct.h +465 -0
  86. include/Eigen/src/Core/GenericPacketMath.h +1040 -0
  87. include/Eigen/src/Core/GlobalFunctions.h +194 -0
  88. include/Eigen/src/Core/IO.h +258 -0
  89. include/Eigen/src/Core/IndexedView.h +237 -0
  90. include/Eigen/src/Core/Inverse.h +117 -0
  91. include/Eigen/src/Core/Map.h +171 -0
  92. include/Eigen/src/Core/MapBase.h +310 -0
  93. include/Eigen/src/Core/MathFunctions.h +2057 -0
  94. include/Eigen/src/Core/MathFunctionsImpl.h +200 -0
  95. include/Eigen/src/Core/Matrix.h +565 -0
  96. include/Eigen/src/Core/MatrixBase.h +547 -0
  97. include/Eigen/src/Core/NestByValue.h +85 -0
  98. include/Eigen/src/Core/NoAlias.h +109 -0
  99. include/Eigen/src/Core/NumTraits.h +335 -0
  100. include/Eigen/src/Core/PartialReduxEvaluator.h +232 -0
  101. include/Eigen/src/Core/PermutationMatrix.h +605 -0
  102. include/Eigen/src/Core/PlainObjectBase.h +1128 -0
  103. include/Eigen/src/Core/Product.h +191 -0
  104. include/Eigen/src/Core/ProductEvaluators.h +1179 -0
  105. include/Eigen/src/Core/Random.h +218 -0
  106. include/Eigen/src/Core/Redux.h +515 -0
  107. include/Eigen/src/Core/Ref.h +381 -0
  108. include/Eigen/src/Core/Replicate.h +142 -0
  109. include/Eigen/src/Core/Reshaped.h +454 -0
  110. include/Eigen/src/Core/ReturnByValue.h +119 -0
  111. include/Eigen/src/Core/Reverse.h +217 -0
  112. include/Eigen/src/Core/Select.h +164 -0
  113. include/Eigen/src/Core/SelfAdjointView.h +365 -0
  114. include/Eigen/src/Core/SelfCwiseBinaryOp.h +47 -0
  115. include/Eigen/src/Core/Solve.h +188 -0
  116. include/Eigen/src/Core/SolveTriangular.h +235 -0
  117. include/Eigen/src/Core/SolverBase.h +168 -0
  118. include/Eigen/src/Core/StableNorm.h +251 -0
  119. include/Eigen/src/Core/StlIterators.h +463 -0
  120. include/Eigen/src/Core/Stride.h +116 -0
  121. include/Eigen/src/Core/Swap.h +68 -0
  122. include/Eigen/src/Core/Transpose.h +464 -0
  123. include/Eigen/src/Core/Transpositions.h +386 -0
  124. include/Eigen/src/Core/TriangularMatrix.h +1001 -0
  125. include/Eigen/src/Core/VectorBlock.h +96 -0
  126. include/Eigen/src/Core/VectorwiseOp.h +784 -0
  127. include/Eigen/src/Core/Visitor.h +381 -0
  128. include/Eigen/src/Core/arch/AVX/Complex.h +372 -0
  129. include/Eigen/src/Core/arch/AVX/MathFunctions.h +228 -0
  130. include/Eigen/src/Core/arch/AVX/PacketMath.h +1574 -0
  131. include/Eigen/src/Core/arch/AVX/TypeCasting.h +115 -0
  132. include/Eigen/src/Core/arch/AVX512/Complex.h +422 -0
  133. include/Eigen/src/Core/arch/AVX512/MathFunctions.h +362 -0
  134. include/Eigen/src/Core/arch/AVX512/PacketMath.h +2303 -0
  135. include/Eigen/src/Core/arch/AVX512/TypeCasting.h +89 -0
  136. include/Eigen/src/Core/arch/AltiVec/Complex.h +417 -0
  137. include/Eigen/src/Core/arch/AltiVec/MathFunctions.h +90 -0
  138. include/Eigen/src/Core/arch/AltiVec/MatrixProduct.h +2937 -0
  139. include/Eigen/src/Core/arch/AltiVec/MatrixProductCommon.h +221 -0
  140. include/Eigen/src/Core/arch/AltiVec/MatrixProductMMA.h +629 -0
  141. include/Eigen/src/Core/arch/AltiVec/PacketMath.h +2711 -0
  142. include/Eigen/src/Core/arch/CUDA/Complex.h +258 -0
  143. include/Eigen/src/Core/arch/Default/BFloat16.h +700 -0
  144. include/Eigen/src/Core/arch/Default/ConjHelper.h +117 -0
  145. include/Eigen/src/Core/arch/Default/GenericPacketMathFunctions.h +1649 -0
  146. include/Eigen/src/Core/arch/Default/GenericPacketMathFunctionsFwd.h +110 -0
  147. include/Eigen/src/Core/arch/Default/Half.h +942 -0
  148. include/Eigen/src/Core/arch/Default/Settings.h +49 -0
  149. include/Eigen/src/Core/arch/Default/TypeCasting.h +120 -0
  150. include/Eigen/src/Core/arch/GPU/MathFunctions.h +103 -0
  151. include/Eigen/src/Core/arch/GPU/PacketMath.h +1685 -0
  152. include/Eigen/src/Core/arch/GPU/TypeCasting.h +80 -0
  153. include/Eigen/src/Core/arch/HIP/hcc/math_constants.h +23 -0
  154. include/Eigen/src/Core/arch/MSA/Complex.h +648 -0
  155. include/Eigen/src/Core/arch/MSA/MathFunctions.h +387 -0
  156. include/Eigen/src/Core/arch/MSA/PacketMath.h +1233 -0
  157. include/Eigen/src/Core/arch/NEON/Complex.h +584 -0
  158. include/Eigen/src/Core/arch/NEON/GeneralBlockPanelKernel.h +183 -0
  159. include/Eigen/src/Core/arch/NEON/MathFunctions.h +75 -0
  160. include/Eigen/src/Core/arch/NEON/PacketMath.h +4587 -0
  161. include/Eigen/src/Core/arch/NEON/TypeCasting.h +1419 -0
  162. include/Eigen/src/Core/arch/SSE/Complex.h +351 -0
  163. include/Eigen/src/Core/arch/SSE/MathFunctions.h +199 -0
  164. include/Eigen/src/Core/arch/SSE/PacketMath.h +1505 -0
  165. include/Eigen/src/Core/arch/SSE/TypeCasting.h +142 -0
  166. include/Eigen/src/Core/arch/SVE/MathFunctions.h +44 -0
  167. include/Eigen/src/Core/arch/SVE/PacketMath.h +752 -0
  168. include/Eigen/src/Core/arch/SVE/TypeCasting.h +49 -0
  169. include/Eigen/src/Core/arch/SYCL/InteropHeaders.h +232 -0
  170. include/Eigen/src/Core/arch/SYCL/MathFunctions.h +301 -0
  171. include/Eigen/src/Core/arch/SYCL/PacketMath.h +670 -0
  172. include/Eigen/src/Core/arch/SYCL/SyclMemoryModel.h +694 -0
  173. include/Eigen/src/Core/arch/SYCL/TypeCasting.h +85 -0
  174. include/Eigen/src/Core/arch/ZVector/Complex.h +426 -0
  175. include/Eigen/src/Core/arch/ZVector/MathFunctions.h +233 -0
  176. include/Eigen/src/Core/arch/ZVector/PacketMath.h +1060 -0
  177. include/Eigen/src/Core/functors/AssignmentFunctors.h +177 -0
  178. include/Eigen/src/Core/functors/BinaryFunctors.h +541 -0
  179. include/Eigen/src/Core/functors/NullaryFunctors.h +189 -0
  180. include/Eigen/src/Core/functors/StlFunctors.h +166 -0
  181. include/Eigen/src/Core/functors/TernaryFunctors.h +25 -0
  182. include/Eigen/src/Core/functors/UnaryFunctors.h +1131 -0
  183. include/Eigen/src/Core/products/GeneralBlockPanelKernel.h +2645 -0
  184. include/Eigen/src/Core/products/GeneralMatrixMatrix.h +517 -0
  185. include/Eigen/src/Core/products/GeneralMatrixMatrixTriangular.h +317 -0
  186. include/Eigen/src/Core/products/GeneralMatrixMatrixTriangular_BLAS.h +145 -0
  187. include/Eigen/src/Core/products/GeneralMatrixMatrix_BLAS.h +124 -0
  188. include/Eigen/src/Core/products/GeneralMatrixVector.h +518 -0
  189. include/Eigen/src/Core/products/GeneralMatrixVector_BLAS.h +136 -0
  190. include/Eigen/src/Core/products/Parallelizer.h +180 -0
  191. include/Eigen/src/Core/products/SelfadjointMatrixMatrix.h +544 -0
  192. include/Eigen/src/Core/products/SelfadjointMatrixMatrix_BLAS.h +295 -0
  193. include/Eigen/src/Core/products/SelfadjointMatrixVector.h +262 -0
  194. include/Eigen/src/Core/products/SelfadjointMatrixVector_BLAS.h +118 -0
  195. include/Eigen/src/Core/products/SelfadjointProduct.h +133 -0
  196. include/Eigen/src/Core/products/SelfadjointRank2Update.h +94 -0
  197. include/Eigen/src/Core/products/TriangularMatrixMatrix.h +472 -0
  198. include/Eigen/src/Core/products/TriangularMatrixMatrix_BLAS.h +317 -0
  199. include/Eigen/src/Core/products/TriangularMatrixVector.h +350 -0
  200. include/Eigen/src/Core/products/TriangularMatrixVector_BLAS.h +255 -0
  201. include/Eigen/src/Core/products/TriangularSolverMatrix.h +337 -0
  202. include/Eigen/src/Core/products/TriangularSolverMatrix_BLAS.h +167 -0
  203. include/Eigen/src/Core/products/TriangularSolverVector.h +148 -0
  204. include/Eigen/src/Core/util/BlasUtil.h +583 -0
  205. include/Eigen/src/Core/util/ConfigureVectorization.h +512 -0
  206. include/Eigen/src/Core/util/Constants.h +563 -0
  207. include/Eigen/src/Core/util/DisableStupidWarnings.h +106 -0
  208. include/Eigen/src/Core/util/ForwardDeclarations.h +322 -0
  209. include/Eigen/src/Core/util/IndexedViewHelper.h +186 -0
  210. include/Eigen/src/Core/util/IntegralConstant.h +272 -0
  211. include/Eigen/src/Core/util/MKL_support.h +137 -0
  212. include/Eigen/src/Core/util/Macros.h +1464 -0
  213. include/Eigen/src/Core/util/Memory.h +1163 -0
  214. include/Eigen/src/Core/util/Meta.h +812 -0
  215. include/Eigen/src/Core/util/NonMPL2.h +3 -0
  216. include/Eigen/src/Core/util/ReenableStupidWarnings.h +31 -0
  217. include/Eigen/src/Core/util/ReshapedHelper.h +51 -0
  218. include/Eigen/src/Core/util/StaticAssert.h +221 -0
  219. include/Eigen/src/Core/util/SymbolicIndex.h +293 -0
  220. include/Eigen/src/Core/util/XprHelper.h +856 -0
  221. include/Eigen/src/Eigenvalues/ComplexEigenSolver.h +346 -0
  222. include/Eigen/src/Eigenvalues/ComplexSchur.h +462 -0
  223. include/Eigen/src/Eigenvalues/ComplexSchur_LAPACKE.h +91 -0
  224. include/Eigen/src/Eigenvalues/EigenSolver.h +622 -0
  225. include/Eigen/src/Eigenvalues/GeneralizedEigenSolver.h +418 -0
  226. include/Eigen/src/Eigenvalues/GeneralizedSelfAdjointEigenSolver.h +226 -0
  227. include/Eigen/src/Eigenvalues/HessenbergDecomposition.h +374 -0
  228. include/Eigen/src/Eigenvalues/MatrixBaseEigenvalues.h +158 -0
  229. include/Eigen/src/Eigenvalues/RealQZ.h +657 -0
  230. include/Eigen/src/Eigenvalues/RealSchur.h +558 -0
  231. include/Eigen/src/Eigenvalues/RealSchur_LAPACKE.h +77 -0
  232. include/Eigen/src/Eigenvalues/SelfAdjointEigenSolver.h +904 -0
  233. include/Eigen/src/Eigenvalues/SelfAdjointEigenSolver_LAPACKE.h +87 -0
  234. include/Eigen/src/Eigenvalues/Tridiagonalization.h +561 -0
  235. include/Eigen/src/Geometry/AlignedBox.h +486 -0
  236. include/Eigen/src/Geometry/AngleAxis.h +247 -0
  237. include/Eigen/src/Geometry/EulerAngles.h +114 -0
  238. include/Eigen/src/Geometry/Homogeneous.h +501 -0
  239. include/Eigen/src/Geometry/Hyperplane.h +282 -0
  240. include/Eigen/src/Geometry/OrthoMethods.h +235 -0
  241. include/Eigen/src/Geometry/ParametrizedLine.h +232 -0
  242. include/Eigen/src/Geometry/Quaternion.h +870 -0
  243. include/Eigen/src/Geometry/Rotation2D.h +199 -0
  244. include/Eigen/src/Geometry/RotationBase.h +206 -0
  245. include/Eigen/src/Geometry/Scaling.h +188 -0
  246. include/Eigen/src/Geometry/Transform.h +1563 -0
  247. include/Eigen/src/Geometry/Translation.h +202 -0
  248. include/Eigen/src/Geometry/Umeyama.h +166 -0
  249. include/Eigen/src/Geometry/arch/Geometry_SIMD.h +168 -0
  250. include/Eigen/src/Householder/BlockHouseholder.h +110 -0
  251. include/Eigen/src/Householder/Householder.h +176 -0
  252. include/Eigen/src/Householder/HouseholderSequence.h +545 -0
  253. include/Eigen/src/IterativeLinearSolvers/BasicPreconditioners.h +226 -0
  254. include/Eigen/src/IterativeLinearSolvers/BiCGSTAB.h +212 -0
  255. include/Eigen/src/IterativeLinearSolvers/ConjugateGradient.h +229 -0
  256. include/Eigen/src/IterativeLinearSolvers/IncompleteCholesky.h +394 -0
  257. include/Eigen/src/IterativeLinearSolvers/IncompleteLUT.h +453 -0
  258. include/Eigen/src/IterativeLinearSolvers/IterativeSolverBase.h +444 -0
  259. include/Eigen/src/IterativeLinearSolvers/LeastSquareConjugateGradient.h +198 -0
  260. include/Eigen/src/IterativeLinearSolvers/SolveWithGuess.h +117 -0
  261. include/Eigen/src/Jacobi/Jacobi.h +483 -0
  262. include/Eigen/src/KLUSupport/KLUSupport.h +358 -0
  263. include/Eigen/src/LU/Determinant.h +117 -0
  264. include/Eigen/src/LU/FullPivLU.h +877 -0
  265. include/Eigen/src/LU/InverseImpl.h +432 -0
  266. include/Eigen/src/LU/PartialPivLU.h +624 -0
  267. include/Eigen/src/LU/PartialPivLU_LAPACKE.h +83 -0
  268. include/Eigen/src/LU/arch/InverseSize4.h +351 -0
  269. include/Eigen/src/MetisSupport/MetisSupport.h +137 -0
  270. include/Eigen/src/OrderingMethods/Amd.h +435 -0
  271. include/Eigen/src/OrderingMethods/Eigen_Colamd.h +1863 -0
  272. include/Eigen/src/OrderingMethods/Ordering.h +153 -0
  273. include/Eigen/src/PaStiXSupport/PaStiXSupport.h +678 -0
  274. include/Eigen/src/PardisoSupport/PardisoSupport.h +545 -0
  275. include/Eigen/src/QR/ColPivHouseholderQR.h +674 -0
  276. include/Eigen/src/QR/ColPivHouseholderQR_LAPACKE.h +97 -0
  277. include/Eigen/src/QR/CompleteOrthogonalDecomposition.h +635 -0
  278. include/Eigen/src/QR/FullPivHouseholderQR.h +713 -0
  279. include/Eigen/src/QR/HouseholderQR.h +434 -0
  280. include/Eigen/src/QR/HouseholderQR_LAPACKE.h +68 -0
  281. include/Eigen/src/SPQRSupport/SuiteSparseQRSupport.h +335 -0
  282. include/Eigen/src/SVD/BDCSVD.h +1366 -0
  283. include/Eigen/src/SVD/JacobiSVD.h +812 -0
  284. include/Eigen/src/SVD/JacobiSVD_LAPACKE.h +91 -0
  285. include/Eigen/src/SVD/SVDBase.h +376 -0
  286. include/Eigen/src/SVD/UpperBidiagonalization.h +414 -0
  287. include/Eigen/src/SparseCholesky/SimplicialCholesky.h +697 -0
  288. include/Eigen/src/SparseCholesky/SimplicialCholesky_impl.h +174 -0
  289. include/Eigen/src/SparseCore/AmbiVector.h +378 -0
  290. include/Eigen/src/SparseCore/CompressedStorage.h +274 -0
  291. include/Eigen/src/SparseCore/ConservativeSparseSparseProduct.h +352 -0
  292. include/Eigen/src/SparseCore/MappedSparseMatrix.h +67 -0
  293. include/Eigen/src/SparseCore/SparseAssign.h +270 -0
  294. include/Eigen/src/SparseCore/SparseBlock.h +571 -0
  295. include/Eigen/src/SparseCore/SparseColEtree.h +206 -0
  296. include/Eigen/src/SparseCore/SparseCompressedBase.h +370 -0
  297. include/Eigen/src/SparseCore/SparseCwiseBinaryOp.h +722 -0
  298. include/Eigen/src/SparseCore/SparseCwiseUnaryOp.h +150 -0
  299. include/Eigen/src/SparseCore/SparseDenseProduct.h +342 -0
  300. include/Eigen/src/SparseCore/SparseDiagonalProduct.h +138 -0
  301. include/Eigen/src/SparseCore/SparseDot.h +98 -0
  302. include/Eigen/src/SparseCore/SparseFuzzy.h +29 -0
  303. include/Eigen/src/SparseCore/SparseMap.h +305 -0
  304. include/Eigen/src/SparseCore/SparseMatrix.h +1518 -0
  305. include/Eigen/src/SparseCore/SparseMatrixBase.h +398 -0
  306. include/Eigen/src/SparseCore/SparsePermutation.h +178 -0
  307. include/Eigen/src/SparseCore/SparseProduct.h +181 -0
  308. include/Eigen/src/SparseCore/SparseRedux.h +49 -0
  309. include/Eigen/src/SparseCore/SparseRef.h +397 -0
  310. include/Eigen/src/SparseCore/SparseSelfAdjointView.h +659 -0
  311. include/Eigen/src/SparseCore/SparseSolverBase.h +124 -0
  312. include/Eigen/src/SparseCore/SparseSparseProductWithPruning.h +198 -0
  313. include/Eigen/src/SparseCore/SparseTranspose.h +92 -0
  314. include/Eigen/src/SparseCore/SparseTriangularView.h +189 -0
  315. include/Eigen/src/SparseCore/SparseUtil.h +186 -0
  316. include/Eigen/src/SparseCore/SparseVector.h +478 -0
  317. include/Eigen/src/SparseCore/SparseView.h +254 -0
  318. include/Eigen/src/SparseCore/TriangularSolver.h +315 -0
  319. include/Eigen/src/SparseLU/SparseLU.h +923 -0
  320. include/Eigen/src/SparseLU/SparseLUImpl.h +66 -0
  321. include/Eigen/src/SparseLU/SparseLU_Memory.h +226 -0
  322. include/Eigen/src/SparseLU/SparseLU_Structs.h +110 -0
  323. include/Eigen/src/SparseLU/SparseLU_SupernodalMatrix.h +375 -0
  324. include/Eigen/src/SparseLU/SparseLU_Utils.h +80 -0
  325. include/Eigen/src/SparseLU/SparseLU_column_bmod.h +181 -0
  326. include/Eigen/src/SparseLU/SparseLU_column_dfs.h +179 -0
  327. include/Eigen/src/SparseLU/SparseLU_copy_to_ucol.h +107 -0
  328. include/Eigen/src/SparseLU/SparseLU_gemm_kernel.h +280 -0
  329. include/Eigen/src/SparseLU/SparseLU_heap_relax_snode.h +126 -0
  330. include/Eigen/src/SparseLU/SparseLU_kernel_bmod.h +130 -0
  331. include/Eigen/src/SparseLU/SparseLU_panel_bmod.h +223 -0
  332. include/Eigen/src/SparseLU/SparseLU_panel_dfs.h +258 -0
  333. include/Eigen/src/SparseLU/SparseLU_pivotL.h +137 -0
  334. include/Eigen/src/SparseLU/SparseLU_pruneL.h +136 -0
  335. include/Eigen/src/SparseLU/SparseLU_relax_snode.h +83 -0
  336. include/Eigen/src/SparseQR/SparseQR.h +758 -0
  337. include/Eigen/src/StlSupport/StdDeque.h +116 -0
  338. include/Eigen/src/StlSupport/StdList.h +106 -0
  339. include/Eigen/src/StlSupport/StdVector.h +131 -0
  340. include/Eigen/src/StlSupport/details.h +84 -0
  341. include/Eigen/src/SuperLUSupport/SuperLUSupport.h +1025 -0
  342. include/Eigen/src/UmfPackSupport/UmfPackSupport.h +642 -0
  343. include/Eigen/src/misc/Image.h +82 -0
  344. include/Eigen/src/misc/Kernel.h +79 -0
  345. include/Eigen/src/misc/RealSvd2x2.h +55 -0
  346. include/Eigen/src/misc/blas.h +440 -0
  347. include/Eigen/src/misc/lapack.h +152 -0
  348. include/Eigen/src/misc/lapacke.h +16292 -0
  349. include/Eigen/src/misc/lapacke_mangling.h +17 -0
  350. include/Eigen/src/plugins/ArrayCwiseBinaryOps.h +358 -0
  351. include/Eigen/src/plugins/ArrayCwiseUnaryOps.h +696 -0
  352. include/Eigen/src/plugins/BlockMethods.h +1442 -0
  353. include/Eigen/src/plugins/CommonCwiseBinaryOps.h +115 -0
  354. include/Eigen/src/plugins/CommonCwiseUnaryOps.h +177 -0
  355. include/Eigen/src/plugins/IndexedViewMethods.h +262 -0
  356. include/Eigen/src/plugins/MatrixCwiseBinaryOps.h +152 -0
  357. include/Eigen/src/plugins/MatrixCwiseUnaryOps.h +95 -0
  358. include/Eigen/src/plugins/ReshapedMethods.h +149 -0
  359. include/embree3/rtcore.h +14 -0
  360. include/embree3/rtcore.isph +16 -0
  361. include/embree3/rtcore_buffer.h +51 -0
  362. include/embree3/rtcore_buffer.isph +50 -0
  363. include/embree3/rtcore_builder.h +125 -0
  364. include/embree3/rtcore_common.h +326 -0
  365. include/embree3/rtcore_common.isph +306 -0
  366. include/embree3/rtcore_config.h +56 -0
  367. include/embree3/rtcore_device.h +87 -0
  368. include/embree3/rtcore_device.isph +85 -0
  369. include/embree3/rtcore_geometry.h +383 -0
  370. include/embree3/rtcore_geometry.isph +406 -0
  371. include/embree3/rtcore_quaternion.h +101 -0
  372. include/embree3/rtcore_quaternion.isph +163 -0
  373. include/embree3/rtcore_ray.h +378 -0
  374. include/embree3/rtcore_ray.isph +203 -0
  375. include/embree3/rtcore_scene.h +163 -0
  376. include/embree3/rtcore_scene.isph +203 -0
  377. lib/cmake/eigen/EigenTargets.cmake +107 -0
  378. lib/cmake/embree-3.13.3/embree-config-version.cmake +16 -0
  379. lib/cmake/embree-3.13.3/embree-config.cmake +76 -0
  380. lib/cmake/embree-3.13.3/embree-targets-release.cmake +19 -0
  381. lib/cmake/embree-3.13.3/embree-targets.cmake +124 -0
  382. lib/cmake/embree-3.13.3/lexers-targets-release.cmake +19 -0
  383. lib/cmake/embree-3.13.3/lexers-targets.cmake +122 -0
  384. lib/cmake/embree-3.13.3/math-targets-release.cmake +19 -0
  385. lib/cmake/embree-3.13.3/math-targets.cmake +102 -0
  386. lib/cmake/embree-3.13.3/simd-targets-release.cmake +19 -0
  387. lib/cmake/embree-3.13.3/simd-targets.cmake +102 -0
  388. lib/cmake/embree-3.13.3/sys-targets-release.cmake +19 -0
  389. lib/cmake/embree-3.13.3/sys-targets.cmake +102 -0
  390. lib/cmake/embree-3.13.3/tasking-targets-release.cmake +19 -0
  391. lib/cmake/embree-3.13.3/tasking-targets.cmake +102 -0
  392. lib/embree3.lib +0 -0
  393. lib/lexers.lib +0 -0
  394. lib/math.lib +0 -0
  395. lib/simd.lib +0 -0
  396. lib/sys.lib +0 -0
  397. lib/tasking.lib +0 -0
  398. libigl-2.5.4.dev0.dist-info/METADATA +56 -0
  399. libigl-2.5.4.dev0.dist-info/RECORD +408 -0
  400. libigl-2.5.4.dev0.dist-info/WHEEL +5 -0
  401. libigl-2.5.4.dev0.dist-info/licenses/LICENSE.GPL +674 -0
  402. libigl-2.5.4.dev0.dist-info/licenses/LICENSE.MPL2 +373 -0
  403. share/doc/libigl/CHANGELOG.md +817 -0
  404. share/doc/libigl/LICENSE.txt +202 -0
  405. share/doc/libigl/README.md +8402 -0
  406. share/doc/libigl/readme.pdf +0 -0
  407. share/doc/libigl/third-party-programs-TBB.txt +350 -0
  408. share/doc/libigl/third-party-programs.txt +349 -0
bin/msvcp140.dll ADDED
Binary file
bin/vcruntime140.dll ADDED
Binary file
bin/vcruntime140_1.dll ADDED
Binary file
igl/__init__.py ADDED
@@ -0,0 +1 @@
1
+ from .pyigl_core import *
@@ -0,0 +1 @@
1
+ from .pyigl_copyleft_core import *
@@ -0,0 +1 @@
1
+ from .pyigl_copyleft_cgal import *
@@ -0,0 +1,154 @@
1
+ from typing import Annotated, overload
2
+
3
+ from numpy.typing import ArrayLike
4
+
5
+
6
+ def convex_hull(V: Annotated[ArrayLike, dict(dtype='float64', shape=(None, None), writable=False)]) -> Annotated[ArrayLike, dict(dtype='int64', shape=(None, None), order='C')]:
7
+ """
8
+ Compute the convex hull of a set of points, returning only the triangular faces of the hull.
9
+
10
+ @param[in] V #V by 3 matrix of input points
11
+ @return F: #F by 3 matrix of triangle indices into V
12
+ """
13
+
14
+ def fast_winding_number(P: Annotated[ArrayLike, dict(dtype='float64', shape=(None, None), writable=False)], N: Annotated[ArrayLike, dict(dtype='float64', shape=(None, None), writable=False)], Q: Annotated[ArrayLike, dict(dtype='float64', shape=(None, None), writable=False)], expansion_order: int = 2, beta: float = 2.0) -> Annotated[ArrayLike, dict(dtype='float64', shape=(None), order='C')]:
15
+ """
16
+ Evaluate the fast winding number for point data with adjustable accuracy.
17
+
18
+ @param[in] P #P by 3 list of point locations
19
+ @param[in] N #P by 3 list of point normals
20
+ @param[in] Q #Q by 3 list of query points for the winding number
21
+ @param[in] expansion_order Order of the Taylor expansion (0, 1, or 2)
22
+ @param[in] beta Barnes-Hut style accuracy parameter (recommended: 2)
23
+ @return Vector of winding number values for each query point
24
+ """
25
+
26
+ def intersect_other(VA: Annotated[ArrayLike, dict(dtype='float64', shape=(None, None), writable=False)], FA: Annotated[ArrayLike, dict(dtype='int64', shape=(None, None), writable=False)], VB: Annotated[ArrayLike, dict(dtype='float64', shape=(None, None), writable=False)], FB: Annotated[ArrayLike, dict(dtype='int64', shape=(None, None), writable=False)], detect_only: bool = False, first_only: bool = False, stitch_all: bool = False, slow_and_more_precise_rounding: bool = False, cutoff: int = 1000) -> tuple[Annotated[ArrayLike, dict(dtype='int64', shape=(None, None), order='C')], Annotated[ArrayLike, dict(dtype='float64', shape=(None, None), order='C')], Annotated[ArrayLike, dict(dtype='int64', shape=(None, None), order='C')], Annotated[ArrayLike, dict(dtype='int64', shape=(None), order='C')], Annotated[ArrayLike, dict(dtype='int64', shape=(None), order='C')]]:
27
+ """
28
+ Detect intersecting faces between two triangle meshes, providing detailed output.
29
+
30
+ @param[in] VA #V by 3 list of vertices for first mesh
31
+ @param[in] FA #F by 3 list of faces for first mesh
32
+ @param[in] VB #V by 3 list of vertices for second mesh
33
+ @param[in] FB #F by 3 list of faces for second mesh
34
+ @param[in] detect_only only detect intersections, do not resolve
35
+ @param[in] first_only only return first intersection
36
+ @param[in] stitch_all stitch all intersections
37
+ @param[in] slow_and_more_precise_rounding use slow and more precise rounding
38
+ @param[in] cutoff maximum number of intersections to resolve
39
+ @return Tuple containing:
40
+ - success: bool indicating if the operation succeeded
41
+ - IF: # intersecting face pairs
42
+ - VVAB: list of intersection vertex positions
43
+ - FFAB: list of triangle indices into VVAB
44
+ - JAB: list of indices into [FA;FB] denoting the birth triangle
45
+ - IMAB: indices stitching duplicates from intersections
46
+ """
47
+
48
+ @overload
49
+ def intersect_with_half_space(V: Annotated[ArrayLike, dict(dtype='float64', shape=(None, None), writable=False)], F: Annotated[ArrayLike, dict(dtype='int64', shape=(None, None), writable=False)], p: Annotated[ArrayLike, dict(dtype='float64', shape=(None), writable=False)], n: Annotated[ArrayLike, dict(dtype='float64', shape=(None), writable=False)]) -> tuple[Annotated[ArrayLike, dict(dtype='float64', shape=(None, None), order='C')], Annotated[ArrayLike, dict(dtype='int64', shape=(None, None), order='C')], Annotated[ArrayLike, dict(dtype='int64', shape=(None), order='C')]]:
50
+ """
51
+ Intersect a PWN mesh with a half-space using a point and normal.
52
+
53
+ @param[in] V #V by 3 list of mesh vertex positions
54
+ @param[in] F #F by 3 list of triangle indices
55
+ @param[in] p 3D point on plane
56
+ @param[in] n 3D normal vector
57
+ @return Tuple containing:
58
+ - success: bool, true if successful
59
+ - VC: vertices of resulting mesh
60
+ - FC: face indices of resulting mesh
61
+ - J: birth facet indices
62
+ """
63
+
64
+ @overload
65
+ def intersect_with_half_space(V: Annotated[ArrayLike, dict(dtype='float64', shape=(None, None), writable=False)], F: Annotated[ArrayLike, dict(dtype='int64', shape=(None, None), writable=False)], equ: Annotated[ArrayLike, dict(dtype='float64', shape=(None), writable=False)]) -> tuple[Annotated[ArrayLike, dict(dtype='float64', shape=(None, None), order='C')], Annotated[ArrayLike, dict(dtype='int64', shape=(None, None), order='C')], Annotated[ArrayLike, dict(dtype='int64', shape=(None), order='C')]]:
66
+ """
67
+ Intersect a PWN mesh with a half-space using the plane equation.
68
+
69
+ @param[in] V #V by 3 list of mesh vertex positions
70
+ @param[in] F #F by 3 list of triangle indices
71
+ @param[in] equ Plane equation coefficients (a, b, c, d)
72
+ @return Tuple containing:
73
+ - success: bool, true if successful
74
+ - VC: vertices of resulting mesh
75
+ - FC: face indices of resulting mesh
76
+ - J: birth facet indices
77
+ """
78
+
79
+ def mesh_boolean(VA: Annotated[ArrayLike, dict(dtype='float64', shape=(None, None), writable=False)], FA: Annotated[ArrayLike, dict(dtype='int64', shape=(None, None), writable=False)], VB: Annotated[ArrayLike, dict(dtype='float64', shape=(None, None), writable=False)] = ..., FB: Annotated[ArrayLike, dict(dtype='int64', shape=(None, None), writable=False)] = ..., type_str: str) -> tuple[Annotated[ArrayLike, dict(dtype='float64', shape=(None, None), order='C')], Annotated[ArrayLike, dict(dtype='int64', shape=(None, None), order='C')], Annotated[ArrayLike, dict(dtype='int64', shape=(None), order='C')]]:
80
+ """
81
+ Compute the boolean operation (union, intersection, difference, etc.) between two meshes.
82
+
83
+ @param[in] VA #VA by dim matrix of mesh A vertices
84
+ @param[in] FA #FA by simplex_size matrix of mesh A faces
85
+ @param[in] VB #VB by dim matrix of mesh B vertices
86
+ @param[in] FB #FB by simplex_size matrix of mesh B faces
87
+ @param[in] type_str Type of boolean operation: "union", "intersection", "difference", etc.
88
+ @param[out] VC #VC by dim matrix of result vertices
89
+ @param[out] FC #FC by simplex_size matrix of result faces
90
+ @param[out] J #FC list of indices indicating which input face contributed to each result face
91
+ @return Tuple containing:
92
+ - VC: Result vertices
93
+ - FC: Result faces
94
+ - J: Face origin indices
95
+ """
96
+
97
+ def point_areas(P: Annotated[ArrayLike, dict(dtype='float64', shape=(None, None), writable=False)], I: Annotated[ArrayLike, dict(dtype='int64', shape=(None, None), writable=False)], N: Annotated[ArrayLike, dict(dtype='float64', shape=(None, None), writable=False)]) -> tuple[Annotated[ArrayLike, dict(dtype='float64', shape=(None), order='C')], Annotated[ArrayLike, dict(dtype='float64', shape=(None, None), order='C')]]:
98
+ r"""
99
+ Given a 3D set of points P, each with a list of k-nearest-neighbours,
100
+ estimate the geodesic voronoi area associated with each point.
101
+
102
+ The k nearest neighbours may be known from running igl::knn_octree on
103
+ the output data from igl::octree. We reccomend using a k value
104
+ between 15 and 20 inclusive for accurate area estimation.
105
+
106
+ N is used filter the neighbours, to ensure area estimation only occurs
107
+ using neighbors that are on the same side of the surface (ie for thin
108
+ sheets), as well as to solve the orientation ambiguity of the tangent
109
+ plane normal.
110
+
111
+ \note This function *should* be implemented by pre-filtering I, rather
112
+ than filtering in this function using N. In this case, the function
113
+ would only take P and I as input.
114
+
115
+ @param[in] P #P by 3 list of point locations
116
+ @param[in] I #P by k list of k-nearest-neighbor indices into P
117
+ @param[in] N #P by 3 list of point normals
118
+ @param[out] A #P list of estimated areas
119
+ @param[out] T #P by 3 list of tangent plane normals for each point
120
+
121
+ \see igl::knn
122
+ """
123
+
124
+ def remesh_self_intersections(V: Annotated[ArrayLike, dict(dtype='float64', shape=(None, None), writable=False)], F: Annotated[ArrayLike, dict(dtype='int64', shape=(None, None), writable=False)], detect_only: bool = False, first_only: bool = False, stitch_all: bool = False, slow_and_more_precise_rounding: bool = False, cutoff: int = 1000) -> tuple[Annotated[ArrayLike, dict(dtype='float64', shape=(None, None), order='C')], Annotated[ArrayLike, dict(dtype='int64', shape=(None, None), order='C')], Annotated[ArrayLike, dict(dtype='int64', shape=(None, None), order='C')], Annotated[ArrayLike, dict(dtype='int64', shape=(None), order='C')], Annotated[ArrayLike, dict(dtype='int64', shape=(None), order='C')]]:
125
+ """
126
+ Resolve self-intersections in a mesh, without returning unique vertex indices (IM).
127
+
128
+ @param[in] V #V by 3 list of vertex positions
129
+ @param[in] F #F by 3 list of face indices
130
+ @param[in] detect_only only detect intersections, do not resolve
131
+ @param[in] first_only only return first intersection
132
+ @param[in] stitch_all stitch all intersections
133
+ @param[in] slow_and_more_precise_rounding use slow and more precise rounding
134
+ @param[in] cutoff maximum number of intersections to resolve
135
+ @return Tuple containing:
136
+ - VV: remeshed vertex positions
137
+ - FF: remeshed face indices
138
+ - IF: intersecting face pairs
139
+ - J: birth triangle indices
140
+ """
141
+
142
+ def trim_with_solid(VA: Annotated[ArrayLike, dict(dtype='float64', shape=(None, None), writable=False)], FA: Annotated[ArrayLike, dict(dtype='int64', shape=(None, None), writable=False)], VB: Annotated[ArrayLike, dict(dtype='float64', shape=(None, None), writable=False)], FB: Annotated[ArrayLike, dict(dtype='int64', shape=(None, None), writable=False)]) -> tuple[Annotated[ArrayLike, dict(dtype='float64', shape=(None, None), order='C')], Annotated[ArrayLike, dict(dtype='int64', shape=(None, None), order='C')], Annotated[ArrayLike, dict(dtype='bool', shape=(None), order='C')], Annotated[ArrayLike, dict(dtype='int64', shape=(None), order='C')]]:
143
+ """
144
+ Trim a mesh with another solid mesh, determining which faces lie inside or outside.
145
+
146
+ @param[in] VA Vertex positions of mesh A
147
+ @param[in] FA Triangle indices of mesh A
148
+ @param[in] VB Vertex positions of mesh B (solid)
149
+ @param[in] FB Triangle indices of mesh B
150
+ @param[out] V Output vertex positions
151
+ @param[out] F Output triangle indices
152
+ @param[out] D Boolean vector indicating if each face is inside B
153
+ @param[out] J Indices into FA showing parent triangle
154
+ """
@@ -0,0 +1,16 @@
1
+ from typing import Annotated
2
+
3
+ from numpy.typing import ArrayLike
4
+
5
+
6
+ def progressive_hulls(V: Annotated[ArrayLike, dict(dtype='float64', shape=(None, None), order='F')], F: Annotated[ArrayLike, dict(dtype='int32', shape=(None, None), order='F')], max_m: int = 0) -> tuple[Annotated[ArrayLike, dict(dtype='float64', shape=(None, None), order='F')], Annotated[ArrayLike, dict(dtype='int64', shape=(None, None), order='F')], Annotated[ArrayLike, dict(dtype='int64', shape=(None), order='C')]]:
7
+ """
8
+ Performs progressive hull simplification on a mesh, collapsing edges until a target number of faces is reached.
9
+
10
+ @param[in] V #V by dim list of vertex positions
11
+ @param[in] F #F by 3 list of face indices into V
12
+ @param[in] max_m Target number of output faces
13
+ @param[out] U Output vertex positions
14
+ @param[out] G Output face indices into U
15
+ @param[out] J Indices into F indicating the birth face for each face in G
16
+ """
@@ -0,0 +1 @@
1
+ from .pyigl_copyleft_tetgen import *
@@ -0,0 +1,29 @@
1
+ from typing import Annotated
2
+
3
+ from numpy.typing import ArrayLike
4
+
5
+
6
+ def tetrahedralize(V: Annotated[ArrayLike, dict(dtype='float64', shape=(None, None), writable=False)], F: Annotated[ArrayLike, dict(dtype='int64', shape=(None, None), writable=False)] = ..., H: Annotated[ArrayLike, dict(dtype='float64', shape=(None, None), writable=False)] = ..., VM: Annotated[ArrayLike, dict(dtype='int64', shape=(None), writable=False)] = ..., FM: Annotated[ArrayLike, dict(dtype='int64', shape=(None), writable=False)] = ..., R: Annotated[ArrayLike, dict(dtype='float64', shape=(None, None), writable=False)] = ..., flags: str = '') -> tuple[Annotated[ArrayLike, dict(dtype='float64', shape=(None, None), order='C')], Annotated[ArrayLike, dict(dtype='int64', shape=(None, None), order='C')], Annotated[ArrayLike, dict(dtype='int64', shape=(None, None), order='C')], Annotated[ArrayLike, dict(dtype='int64', shape=(None), order='C')], Annotated[ArrayLike, dict(dtype='int64', shape=(None), order='C')], Annotated[ArrayLike, dict(dtype='int64', shape=(None, None), order='C')], Annotated[ArrayLike, dict(dtype='int64', shape=(None), order='C')], Annotated[ArrayLike, dict(dtype='int64', shape=(None, None), order='C')], int]:
7
+ """
8
+ Mesh the interior of a surface mesh (V,F) using tetgen
9
+
10
+ @param[in] V #V by 3 vertex position list
11
+ @param[in] F #F list of polygon face indices into V (0-indexed)
12
+ @param[in] H #H by 3 list of seed points inside holes
13
+ @param[in] VM #VM list of vertex markers
14
+ @param[in] FM #FM list of face markers
15
+ @param[in] R #R by 5 list of region attributes
16
+ @param[in] flags string of tetgen options (See tetgen documentation) e.g.
17
+ "pq1.414a0.01" tries to mesh the interior of a given surface with
18
+ quality and area constraints
19
+ "" will mesh the convex hull constrained to pass through V (ignores F)
20
+ @param[out] TV #TV by 3 vertex position list
21
+ @param[out] TT #TT by 4 list of tet face indices
22
+ @param[out] TF #TF by 3 list of triangle face indices ('f', else
23
+ `boundary_facets` is called on TT)
24
+ @param[out] TR #TT list of region ID for each tetrahedron
25
+ @param[out] TN #TT by 4 list of indices neighbors for each tetrahedron ('n')
26
+ @param[out] PT #TV list of incident tetrahedron for a vertex ('m')
27
+ @param[out] FT #TF by 2 list of tetrahedrons sharing a triface ('nn')
28
+ @param[out] num_regions Number of regions in output mesh
29
+ """
igl/embree/__init__.py ADDED
@@ -0,0 +1 @@
1
+ from .pyigl_embree import *
@@ -0,0 +1,82 @@
1
+ from typing import Annotated, overload
2
+
3
+ from numpy.typing import ArrayLike
4
+
5
+
6
+ class EmbreeIntersector:
7
+ def __init__(self) -> None: ...
8
+
9
+ def init(self, V: Annotated[ArrayLike, dict(dtype='float32', shape=(None, 3), order='F')], F: Annotated[ArrayLike, dict(dtype='int32', shape=(None, 3), order='F')], isStatic: bool = False) -> None: ...
10
+
11
+ def intersectRay_first(self, origin: Annotated[ArrayLike, dict(dtype='float32', shape=(3), order='C')], direction: Annotated[ArrayLike, dict(dtype='float32', shape=(3), order='C')], tnear: float = 0, tfar: float = float('inf')) -> tuple[int, float, float, float]: ...
12
+
13
+ def intersectRay(self, origin: Annotated[ArrayLike, dict(dtype='float32', shape=(3), order='C')], direction: Annotated[ArrayLike, dict(dtype='float32', shape=(3), order='C')], tnear: float = 0, tfar: float = float('inf')) -> tuple[list[tuple[int, float, float, float]], int]: ...
14
+
15
+ @overload
16
+ def ambient_occlusion(V: Annotated[ArrayLike, dict(dtype='float64', shape=(None, None), writable=False)], F: Annotated[ArrayLike, dict(dtype='int64', shape=(None, None), writable=False)], P: Annotated[ArrayLike, dict(dtype='float64', shape=(None, None), writable=False)], N: Annotated[ArrayLike, dict(dtype='float64', shape=(None, None), writable=False)], num_samples: int) -> Annotated[ArrayLike, dict(dtype='float64', shape=(None), order='C')]:
17
+ """
18
+ Compute ambient occlusion per given point
19
+
20
+ @param[in] V #V by 3 list of mesh vertex positiosn
21
+ @param[in] F #F by 3 list of mesh triangle indices into rows of V
22
+ @param[in] P #P by 3 list of origin points
23
+ @param[in] N #P by 3 list of origin normals
24
+ @param[out] S #P list of ambient occlusion values between 1 (fully occluded) and
25
+ 0 (not occluded)
26
+ """
27
+
28
+ @overload
29
+ def ambient_occlusion(ei: EmbreeIntersector, P: Annotated[ArrayLike, dict(dtype='float64', shape=(None, None), writable=False)], N: Annotated[ArrayLike, dict(dtype='float64', shape=(None, None), writable=False)], num_samples: int) -> Annotated[ArrayLike, dict(dtype='float64', shape=(None), order='C')]:
30
+ """
31
+ Compute ambient occlusion per given point
32
+
33
+ @param[in] ei EmbreeIntersector containing (V,F)
34
+ @param[in] P #P by 3 list of origin points
35
+ @param[in] N #P by 3 list of origin normals
36
+ @param[out] S #P list of ambient occlusion values between 1 (fully occluded) and
37
+ 0 (not occluded)
38
+ """
39
+
40
+ def reorient_facets_raycast(V: Annotated[ArrayLike, dict(dtype='float64', shape=(None, None), writable=False)], F: Annotated[ArrayLike, dict(dtype='int64', shape=(None, None), writable=False)], rays_total: int = -1, rays_minimum: int = 10, facet_wise: bool = False, use_parity: bool = False, is_verbose: bool = False) -> tuple[Annotated[ArrayLike, dict(dtype='bool', shape=(None), order='C')], Annotated[ArrayLike, dict(dtype='int64', shape=(None), order='C')]]:
41
+ """
42
+ Orient each component (identified by C) of a mesh (V,F) using ambient
43
+ occlusion such that the front side is less occluded than back side, as
44
+ described in "A Simple Method for Correcting Facet Orientations in
45
+ Polygon Meshes Based on Ray Casting" [Takayama et al. 2014].
46
+
47
+ @param[in] V #V by 3 list of vertex positions
48
+ @param[in] F #F by 3 list of triangle indices
49
+ @param[in] rays_total Total number of rays that will be shot
50
+ @param[in] rays_minimum Minimum number of rays that each patch should receive
51
+ @param[in] facet_wise Decision made for each face independently, no use of patches
52
+ (i.e., each face is treated as a patch)
53
+ @param[in] use_parity Use parity mode
54
+ @param[in] is_verbose Verbose output to cout
55
+ @param[out] I #F list of whether face has been flipped
56
+ @param[out] C #F list of patch ID (output of bfs_orient > manifold patches)
57
+ """
58
+
59
+ @overload
60
+ def shape_diameter_function(V: Annotated[ArrayLike, dict(dtype='float64', shape=(None, None), writable=False)], F: Annotated[ArrayLike, dict(dtype='int64', shape=(None, None), writable=False)], P: Annotated[ArrayLike, dict(dtype='float64', shape=(None, None), writable=False)], N: Annotated[ArrayLike, dict(dtype='float64', shape=(None, None), writable=False)], num_samples: int) -> Annotated[ArrayLike, dict(dtype='float64', shape=(None), order='C')]:
61
+ """
62
+ Compute shape diameter function per given point
63
+
64
+ @param[in] V #V by 3 list of mesh vertex positiosn
65
+ @param[in] F #F by 3 list of mesh triangle indices into rows of V
66
+ @param[in] P #P by 3 list of origin points
67
+ @param[in] N #P by 3 list of origin normals
68
+ @param[out] S #P list of ambient occlusion values between 1 (fully occluded) and
69
+ 0 (not occluded)
70
+ """
71
+
72
+ @overload
73
+ def shape_diameter_function(ei: EmbreeIntersector, P: Annotated[ArrayLike, dict(dtype='float64', shape=(None, None), writable=False)], N: Annotated[ArrayLike, dict(dtype='float64', shape=(None, None), writable=False)], num_samples: int) -> Annotated[ArrayLike, dict(dtype='float64', shape=(None), order='C')]:
74
+ """
75
+ Compute shape diameter function per given point
76
+
77
+ @param[in] ei EmbreeIntersector containing (V,F)
78
+ @param[in] P #P by 3 list of origin points
79
+ @param[in] N #P by 3 list of origin normals
80
+ @param[out] S #P list of ambient occlusion values between 1 (fully occluded) and
81
+ 0 (not occluded)
82
+ """
Binary file