warp-lang 1.3.3__py3-none-manylinux2014_x86_64.whl → 1.4.1__py3-none-manylinux2014_x86_64.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.
Potentially problematic release.
This version of warp-lang might be problematic. Click here for more details.
- warp/__init__.py +6 -0
- warp/autograd.py +59 -6
- warp/bin/warp.so +0 -0
- warp/build_dll.py +8 -10
- warp/builtins.py +103 -3
- warp/codegen.py +447 -53
- warp/config.py +1 -1
- warp/context.py +682 -405
- warp/dlpack.py +2 -0
- warp/examples/benchmarks/benchmark_cloth.py +10 -0
- warp/examples/core/example_render_opengl.py +12 -10
- warp/examples/fem/example_adaptive_grid.py +251 -0
- warp/examples/fem/example_apic_fluid.py +1 -1
- warp/examples/fem/example_diffusion_3d.py +2 -2
- warp/examples/fem/example_magnetostatics.py +1 -1
- warp/examples/fem/example_streamlines.py +1 -0
- warp/examples/fem/utils.py +25 -5
- warp/examples/sim/example_cloth.py +50 -6
- warp/fem/__init__.py +2 -0
- warp/fem/adaptivity.py +493 -0
- warp/fem/field/field.py +2 -1
- warp/fem/field/nodal_field.py +18 -26
- warp/fem/field/test.py +4 -4
- warp/fem/field/trial.py +4 -4
- warp/fem/geometry/__init__.py +1 -0
- warp/fem/geometry/adaptive_nanogrid.py +843 -0
- warp/fem/geometry/nanogrid.py +55 -28
- warp/fem/space/__init__.py +1 -1
- warp/fem/space/nanogrid_function_space.py +69 -35
- warp/fem/utils.py +118 -107
- warp/jax_experimental.py +28 -15
- warp/native/array.h +0 -1
- warp/native/builtin.h +103 -6
- warp/native/bvh.cu +4 -2
- warp/native/cuda_util.cpp +14 -0
- warp/native/cuda_util.h +2 -0
- warp/native/error.cpp +4 -2
- warp/native/exports.h +99 -0
- warp/native/mat.h +97 -0
- warp/native/mesh.cpp +36 -0
- warp/native/mesh.cu +52 -1
- warp/native/mesh.h +1 -0
- warp/native/quat.h +43 -0
- warp/native/range.h +11 -2
- warp/native/spatial.h +6 -0
- warp/native/vec.h +74 -0
- warp/native/warp.cpp +2 -1
- warp/native/warp.cu +10 -3
- warp/native/warp.h +8 -1
- warp/paddle.py +382 -0
- warp/sim/__init__.py +1 -0
- warp/sim/collide.py +519 -0
- warp/sim/integrator_euler.py +18 -5
- warp/sim/integrator_featherstone.py +5 -5
- warp/sim/integrator_vbd.py +1026 -0
- warp/sim/integrator_xpbd.py +2 -6
- warp/sim/model.py +50 -25
- warp/sparse.py +9 -7
- warp/stubs.py +459 -0
- warp/tape.py +2 -0
- warp/tests/aux_test_dependent.py +1 -0
- warp/tests/aux_test_name_clash1.py +32 -0
- warp/tests/aux_test_name_clash2.py +32 -0
- warp/tests/aux_test_square.py +1 -0
- warp/tests/test_array.py +188 -0
- warp/tests/test_async.py +3 -3
- warp/tests/test_atomic.py +6 -0
- warp/tests/test_closest_point_edge_edge.py +93 -1
- warp/tests/test_codegen.py +93 -15
- warp/tests/test_codegen_instancing.py +1457 -0
- warp/tests/test_collision.py +486 -0
- warp/tests/test_compile_consts.py +3 -28
- warp/tests/test_dlpack.py +170 -0
- warp/tests/test_examples.py +22 -8
- warp/tests/test_fast_math.py +10 -4
- warp/tests/test_fem.py +81 -1
- warp/tests/test_func.py +46 -0
- warp/tests/test_implicit_init.py +49 -0
- warp/tests/test_jax.py +58 -0
- warp/tests/test_mat.py +84 -0
- warp/tests/test_mesh_query_point.py +188 -0
- warp/tests/test_model.py +13 -0
- warp/tests/test_module_hashing.py +40 -0
- warp/tests/test_multigpu.py +3 -3
- warp/tests/test_overwrite.py +8 -0
- warp/tests/test_paddle.py +852 -0
- warp/tests/test_print.py +89 -0
- warp/tests/test_quat.py +111 -0
- warp/tests/test_reload.py +31 -1
- warp/tests/test_scalar_ops.py +2 -0
- warp/tests/test_static.py +568 -0
- warp/tests/test_streams.py +64 -3
- warp/tests/test_struct.py +4 -4
- warp/tests/test_torch.py +24 -0
- warp/tests/test_triangle_closest_point.py +137 -0
- warp/tests/test_types.py +1 -1
- warp/tests/test_vbd.py +386 -0
- warp/tests/test_vec.py +143 -0
- warp/tests/test_vec_scalar_ops.py +139 -0
- warp/tests/unittest_suites.py +12 -0
- warp/tests/unittest_utils.py +9 -5
- warp/thirdparty/dlpack.py +3 -1
- warp/types.py +167 -36
- warp/utils.py +37 -14
- {warp_lang-1.3.3.dist-info → warp_lang-1.4.1.dist-info}/METADATA +10 -8
- {warp_lang-1.3.3.dist-info → warp_lang-1.4.1.dist-info}/RECORD +109 -97
- warp/tests/test_point_triangle_closest_point.py +0 -143
- {warp_lang-1.3.3.dist-info → warp_lang-1.4.1.dist-info}/LICENSE.md +0 -0
- {warp_lang-1.3.3.dist-info → warp_lang-1.4.1.dist-info}/WHEEL +0 -0
- {warp_lang-1.3.3.dist-info → warp_lang-1.4.1.dist-info}/top_level.txt +0 -0
|
@@ -1,25 +1,26 @@
|
|
|
1
|
-
warp/__init__.py,sha256=
|
|
1
|
+
warp/__init__.py,sha256=m7w5_kWVrTm6s0tY8YclsZlu2xwiTM5TWjt0oTUmq6Q,4931
|
|
2
2
|
warp/__init__.pyi,sha256=Vxal9LM-q5ztScfRhrM4INpm5LJV6fN6B-H2NI5pkyU,21
|
|
3
|
-
warp/autograd.py,sha256=
|
|
3
|
+
warp/autograd.py,sha256=5-ClvT3AwDQfUcpgDlVN7D4tFFzqqjBJrEMTM_Ag4gk,35700
|
|
4
4
|
warp/build.py,sha256=N2-SDksxkffUkzV97dtLW2Wjqd5ERfgwpqzVoe8GNRw,3904
|
|
5
|
-
warp/build_dll.py,sha256=
|
|
6
|
-
warp/builtins.py,sha256=
|
|
7
|
-
warp/codegen.py,sha256=
|
|
8
|
-
warp/config.py,sha256=
|
|
5
|
+
warp/build_dll.py,sha256=jJYepplaVXRdLL_ug4QlR6w7TSjyHB8zr1EyfZROOgA,15801
|
|
6
|
+
warp/builtins.py,sha256=g1lDmyGZnFU_1jBPMzzYRdJPyPG9kbhbfuDicNBd21w,145755
|
|
7
|
+
warp/codegen.py,sha256=5MLNdPhHGrdxZCDsV1IgmssZ2LEBBd_lB66P4qvWECU,133887
|
|
8
|
+
warp/config.py,sha256=nmywCBQORl5fHziFpCqT17fYbqxDCUtM9hTDEPyQkJ4,2808
|
|
9
9
|
warp/constants.py,sha256=ckfEqwbg109RJDW98SILe_yfOBEFolOATVjt0mU2py4,1321
|
|
10
|
-
warp/context.py,sha256=
|
|
11
|
-
warp/dlpack.py,sha256=
|
|
10
|
+
warp/context.py,sha256=w0G-nmuzzg9XEina3ovCPijAr-A9PjG9XYXYuZCjT_Q,238071
|
|
11
|
+
warp/dlpack.py,sha256=jyQdL-2c6zM-r5P0DZBCTSkBoRpbmWChvcn3GvGBKIE,16853
|
|
12
12
|
warp/fabric.py,sha256=qWOomvuhM2y3EzScsgaj_Dxvdt0wJPfFu4jUUG1JALg,11439
|
|
13
13
|
warp/jax.py,sha256=QKJXfpz1jjaRD-Yp4C4wC4jUv8jHj0en3MW0VXKq0ZA,5280
|
|
14
|
-
warp/jax_experimental.py,sha256=
|
|
15
|
-
warp/
|
|
16
|
-
warp/
|
|
17
|
-
warp/
|
|
14
|
+
warp/jax_experimental.py,sha256=1WFrXcZk3U9SzqM5NJmpuCd1h29tWfvwZRA7b9JIecs,13930
|
|
15
|
+
warp/paddle.py,sha256=afh5f7n37IRaDiRimFlI4xqW6p7xTPx61wnTkotOUS8,14862
|
|
16
|
+
warp/sparse.py,sha256=tKF7IdiNZB9WpU9t5rFp5t2W4dVa8kacK6dFNA9RE00,64820
|
|
17
|
+
warp/stubs.py,sha256=vqSKm0q1ptkqhtq1iA1Yepn7Bzrde-tJsnE0P_YZ9wI,67864
|
|
18
|
+
warp/tape.py,sha256=X979fk8oSsJiv-VQyz2AMhAm2udDk2bngx-_zKHIJyo,49015
|
|
18
19
|
warp/torch.py,sha256=jv3SYQHVKsiCzenlWUVmVs5mLYfsWcdTW446IqvEwVA,14505
|
|
19
|
-
warp/types.py,sha256=
|
|
20
|
-
warp/utils.py,sha256=
|
|
20
|
+
warp/types.py,sha256=HIBjH5N1-n20oOkLUIHJX6rzGbeEFis-REKu2h1VxFY,181341
|
|
21
|
+
warp/utils.py,sha256=T07usjsWbggZTH1jvWd-W4ucWcWOEsLSdv8443LseJ8,35993
|
|
21
22
|
warp/bin/warp-clang.so,sha256=mKEvTDt6X2fkaD0XJUdTHcwUI-_18rtTls9z5nTYdKA,66199872
|
|
22
|
-
warp/bin/warp.so,sha256=
|
|
23
|
+
warp/bin/warp.so,sha256=kLORat0b9W24AT5Vev01o6ELv_ff_Pj-hNlpbNe_bFk,118135152
|
|
23
24
|
warp/examples/__init__.py,sha256=ul3vRFtQ17_zIZIWJaCnCY28KZTGOUHQA4wA_IW_qaw,606
|
|
24
25
|
warp/examples/browse.py,sha256=6v7F0vpZz5ZtYGkg8hIpxhbIZ2ECv46cIKAmKVtV1S4,848
|
|
25
26
|
warp/examples/assets/bear.usd,sha256=1SK7s-zpF3Ypzcc8Wt861o174Pe-xMuJpvosACXVNUk,226238
|
|
@@ -34,7 +35,7 @@ warp/examples/assets/rocks.nvdb,sha256=6jIrR2jk5dTIfhanMB_FiNI_vJOs7YCfzLXcFPGmV
|
|
|
34
35
|
warp/examples/assets/rocks.usd,sha256=Q3QrGmTIo4GcPc4BOxBdkRU0WCErM5eWBFU2NjWFnFs,428189
|
|
35
36
|
warp/examples/assets/sphere.usd,sha256=9nIhnmLIj-cS-PMTieVzMxsUAbpN-tMTavm-leUOfjI,2619
|
|
36
37
|
warp/examples/benchmarks/benchmark_api.py,sha256=tEhZhlCkWqbE1h5mtbbia1Q0MAkCcK8vJgfxmgOP_xk,9577
|
|
37
|
-
warp/examples/benchmarks/benchmark_cloth.py,sha256=
|
|
38
|
+
warp/examples/benchmarks/benchmark_cloth.py,sha256=AQkJqthsFVWWsRMC9pab0Uv_4sW-OLUZNwuD0jhuNHQ,8930
|
|
38
39
|
warp/examples/benchmarks/benchmark_cloth_cupy.py,sha256=o3S8F86qg_t-WnoXwudZLR8HB5hGvigw_DuqRCWOTQ4,2487
|
|
39
40
|
warp/examples/benchmarks/benchmark_cloth_jax.py,sha256=awt-YjnrvafCVkXy5LiCQaX1IFhUngOxwpfvgZ0jfqk,2683
|
|
40
41
|
warp/examples/benchmarks/benchmark_cloth_numba.py,sha256=vybcwvPyIc41t_QR4j1iC_CFsbMBuTQfk7BCceaKx8Q,4166
|
|
@@ -54,26 +55,27 @@ warp/examples/core/example_mesh_intersect.py,sha256=S7DNbCmFPcW68FIO2mJNGYlnWnib
|
|
|
54
55
|
warp/examples/core/example_nvdb.py,sha256=KJpt54H7GYmPEGiDVePZb_yqd26C0c-uze24YnpELJs,5682
|
|
55
56
|
warp/examples/core/example_raycast.py,sha256=j2xTugufoy5I_KIj6SHf90rwZVGIcFMrhQWpn8n6UPE,3434
|
|
56
57
|
warp/examples/core/example_raymarch.py,sha256=SucfNHMio9v6TQ4eQ_E4_fqZbhNXK0aVdM3E9_tq28M,5515
|
|
57
|
-
warp/examples/core/example_render_opengl.py,sha256=
|
|
58
|
+
warp/examples/core/example_render_opengl.py,sha256=f5pxUiHiGYuFQbvOmfhKIFVt-HPUvJZCCXok4H7z20E,7533
|
|
58
59
|
warp/examples/core/example_sph.py,sha256=yGftlLETVGJspLRuf332BZbwkhncc3eaaazlRg853RA,12623
|
|
59
60
|
warp/examples/core/example_torch.py,sha256=XLh-3BvJIstw6ILej5BF5My3Th9orp90VewuCg6j3XA,6777
|
|
60
61
|
warp/examples/core/example_wave.py,sha256=XvM1KedKhaT3kjcPj-yBREzdE15JrgLBVGyBMR5cHpo,8194
|
|
61
|
-
warp/examples/fem/
|
|
62
|
+
warp/examples/fem/example_adaptive_grid.py,sha256=PBqgE-8Dq4tOKCmP5WqTlmqkc3JkMfXYCqfMhcx_WCs,9242
|
|
63
|
+
warp/examples/fem/example_apic_fluid.py,sha256=IMvcJlpAxXWjwWQVDjUt5vqz3EDWlnjWlouHOd-uzA8,14507
|
|
62
64
|
warp/examples/fem/example_burgers.py,sha256=gCt5x3iXCoilVWv4WYA9pzh1nDQYnAARhr5PEdUhAjs,9509
|
|
63
65
|
warp/examples/fem/example_convection_diffusion.py,sha256=7iY4rlyzfu7i_CNgAS8UfHwkS4jIuyt7ESbTmkDuE4E,5956
|
|
64
66
|
warp/examples/fem/example_convection_diffusion_dg.py,sha256=batRNlRL9B2J7yJAAM2s8TYY5zNOG3m6yW6LHX-KMiU,7035
|
|
65
67
|
warp/examples/fem/example_deformed_geometry.py,sha256=BdMbUMjausU1m6tXTdJ7qQ96VlO_t4kRy5jSNMogMK8,5935
|
|
66
68
|
warp/examples/fem/example_diffusion.py,sha256=liFgksvn3pMGp-M8XVGLa0tlrLIUfUIxVNLtyAV3l1c,7112
|
|
67
|
-
warp/examples/fem/example_diffusion_3d.py,sha256=
|
|
69
|
+
warp/examples/fem/example_diffusion_3d.py,sha256=iQmM_mO2UoCMhWwybsU189rnR1W7wpuM07e36MWwgoc,6461
|
|
68
70
|
warp/examples/fem/example_diffusion_mgpu.py,sha256=YnXowP-UQvzlS0dvUa3_LlrmLwE8FMxu8uLrrShfcW8,7784
|
|
69
|
-
warp/examples/fem/example_magnetostatics.py,sha256=
|
|
71
|
+
warp/examples/fem/example_magnetostatics.py,sha256=wMeH7MiVJ0XvJl87k7aDPJr3bxgugQuOdA-xWVJtzp4,6964
|
|
70
72
|
warp/examples/fem/example_mixed_elasticity.py,sha256=o8RxBwbtwTgNyOQLui5oaEuZa1re9quL_lo-Mt6E62g,10512
|
|
71
73
|
warp/examples/fem/example_navier_stokes.py,sha256=m-Rr7BJ14I1awhrzuqU_ZWG7D-nO_8F45Z3yYLr7TiA,8696
|
|
72
74
|
warp/examples/fem/example_nonconforming_contact.py,sha256=APIbR11KU52zVe6_zgObukDyEnDYv2VG7afPqL-uEG0,10412
|
|
73
75
|
warp/examples/fem/example_stokes.py,sha256=7wM-bf1mjfj8r0urpBjH1Vm6bQfc2X8yUr9PnPph_n0,7154
|
|
74
76
|
warp/examples/fem/example_stokes_transfer.py,sha256=UhgR5f2yXVavVYhmuMoOzKApg--MXYCD0r5eeHJ3vDs,9366
|
|
75
|
-
warp/examples/fem/example_streamlines.py,sha256=
|
|
76
|
-
warp/examples/fem/utils.py,sha256=
|
|
77
|
+
warp/examples/fem/example_streamlines.py,sha256=a-RtZrpqngulgfc8MlJ010qZC7kW5iGKsCYT4HGBRlc,12266
|
|
78
|
+
warp/examples/fem/utils.py,sha256=jSS_3iQMTrtNP0b-a1wVmw4OBO9P_5X-wAmZNyjtbYo,32162
|
|
77
79
|
warp/examples/optim/example_bounce.py,sha256=V4t9pKXGXv91C-S9-e5YV6ENSgOpK2cyHmPl1q3-zKQ,8470
|
|
78
80
|
warp/examples/optim/example_cloth_throw.py,sha256=mj170UWAhWu4EGQwVgqp08ijoHvwZXlCC4WAa3sl0QE,7213
|
|
79
81
|
warp/examples/optim/example_diffray.py,sha256=GiSmgqlN_j33uFuJ8KChJJwYpABkhUvII-YeQrOmZqo,18545
|
|
@@ -84,7 +86,7 @@ warp/examples/optim/example_spring_cage.py,sha256=641CP6Be3aQza-7MOQlVkXVpAUEHCM
|
|
|
84
86
|
warp/examples/optim/example_trajectory.py,sha256=GC1UDRLhUrvAkpegIfa_FqxWKMXDHRzuXzRgqbbmBHA,7670
|
|
85
87
|
warp/examples/optim/example_walker.py,sha256=lTlcfT118zqLBYg8zPtsSEMl3Dz-SJ8gcAO_zcfIrF8,10731
|
|
86
88
|
warp/examples/sim/example_cartpole.py,sha256=CJdWfU11_BKitRb-ZF56sflf6dWUqz2IP1eRQHeOcCU,4496
|
|
87
|
-
warp/examples/sim/example_cloth.py,sha256=
|
|
89
|
+
warp/examples/sim/example_cloth.py,sha256=dKpuPRycwkRpyoZL_C5wiuR5COIYwyF3D-yERUVy0Tw,7743
|
|
88
90
|
warp/examples/sim/example_granular.py,sha256=993MpdUcBE_qUSRclaGYicynIjFiTia-wVyz8IlON_A,3907
|
|
89
91
|
warp/examples/sim/example_granular_collision_sdf.py,sha256=y0fmRhWyIT7aJExBaBIHHERjWfeJW2PV5GXmTIcYGsM,6556
|
|
90
92
|
warp/examples/sim/example_jacobian_ik.py,sha256=waEO4XKw46ifIYfYOEOKNRfP21JB9iC6q8XsmDa7e9w,8562
|
|
@@ -96,7 +98,8 @@ warp/examples/sim/example_rigid_force.py,sha256=00G1zIbfN6GM_7rpiuGEk1k91uxTDaxe
|
|
|
96
98
|
warp/examples/sim/example_rigid_gyroscopic.py,sha256=22NwdvS278KgkdKD29DTOVWLUtcyBfg35uuEObEF8uU,3348
|
|
97
99
|
warp/examples/sim/example_rigid_soft_contact.py,sha256=u-OdHBIVR4tForMoJYpsJjeLAMGAXXQU78cDQ6OXkY4,4264
|
|
98
100
|
warp/examples/sim/example_soft_body.py,sha256=Y_13OJEExPhe8Korhne9SlGmcfu88u5Vg8H3udcboSE,5820
|
|
99
|
-
warp/fem/__init__.py,sha256=
|
|
101
|
+
warp/fem/__init__.py,sha256=QTW0exTAlw4qfCjvUNQi-2iD_bwkvrTnGp7u3cbx_04,1769
|
|
102
|
+
warp/fem/adaptivity.py,sha256=zeeFOoy2QWCbhHoVaN5NsYRGHHPZAPepWXAi3SkNiDw,17046
|
|
100
103
|
warp/fem/cache.py,sha256=99D9zwn95N5VbALhFXy23XpE_mOMp8SBwlJbZpQ7_HI,18276
|
|
101
104
|
warp/fem/dirichlet.py,sha256=6Pl5Bu67WDDnX-XDip7esSRfaIaifugAohQjWX7u4RQ,6361
|
|
102
105
|
warp/fem/domain.py,sha256=CUdrn4alQBNp6qJfErP2bht0dZLjelgrwIVR1PjUMnc,11944
|
|
@@ -104,14 +107,15 @@ warp/fem/integrate.py,sha256=mLKHQMgTu8qbN4TOp7DWlV0kNTZBxhi5R2-XfaWMhCo,62264
|
|
|
104
107
|
warp/fem/operator.py,sha256=W57PueA32kXd8AFl89ra53LLwO19jsRpFDkclsnwPMI,6383
|
|
105
108
|
warp/fem/polynomial.py,sha256=feVKe3Yv8M53vCC57dhW7aq698DgnAilNOvvi_BnBY0,6565
|
|
106
109
|
warp/fem/types.py,sha256=TA6rsT61qIC0a62FEiNrNBPbjz1rhMqF8SqZgFKKcGk,2331
|
|
107
|
-
warp/fem/utils.py,sha256=
|
|
110
|
+
warp/fem/utils.py,sha256=4Io5rTsEt5Bokf3hAupLqXBO0wcqRWi_U6s-nlFQPA8,22899
|
|
108
111
|
warp/fem/field/__init__.py,sha256=WGklY2f5nuXLA9TstvWvHJq9AZRxb4kvPihxb1OZHcM,4020
|
|
109
|
-
warp/fem/field/field.py,sha256=
|
|
110
|
-
warp/fem/field/nodal_field.py,sha256=
|
|
112
|
+
warp/fem/field/field.py,sha256=zGA-nrkirNIBYH7umYT1gvI5sK6qudzhZkR6nIAhofc,21124
|
|
113
|
+
warp/fem/field/nodal_field.py,sha256=g-6zUAt3GKRAPBwt1ZcK38_7KblZwzKweSRJQJ-xQQY,12746
|
|
111
114
|
warp/fem/field/restriction.py,sha256=M_s2srnYUh3jG-GmEs3yg-MxO294jJgD6VKQdO7XshU,850
|
|
112
|
-
warp/fem/field/test.py,sha256=
|
|
113
|
-
warp/fem/field/trial.py,sha256=
|
|
114
|
-
warp/fem/geometry/__init__.py,sha256=
|
|
115
|
+
warp/fem/field/test.py,sha256=JU6d-ZR2no8bCIjAG-sDc9Ac-jwV8P0uUNIPDllpM_M,6922
|
|
116
|
+
warp/fem/field/trial.py,sha256=Amq6-OBj8b7SsNa1JHX71fDgGN7R5dEnV0JkQYayuKo,6846
|
|
117
|
+
warp/fem/geometry/__init__.py,sha256=LSDcAYhNpot86QjTQqZ8vCHmy5FxLqxH8NAlC5w_WYQ,509
|
|
118
|
+
warp/fem/geometry/adaptive_nanogrid.py,sha256=6Zv1d_7inFKbK_IPQXOzIm-0mNCabU96jozyYPVxntc,31132
|
|
115
119
|
warp/fem/geometry/closest_point.py,sha256=RhIsOi03VQk3aq6hrnkjKA8yz_Jzf5uTyFuiV4eeYeQ,2028
|
|
116
120
|
warp/fem/geometry/deformed_geometry.py,sha256=699TNK6LwwvEUOYgPN1IRZnlZmGQqd6Wwy9hv4YYfhs,12818
|
|
117
121
|
warp/fem/geometry/element.py,sha256=DMyHW-FPNnyWXvDlsew9mTQAWfqnsLvt5x5lqs50nnQ,34180
|
|
@@ -119,7 +123,7 @@ warp/fem/geometry/geometry.py,sha256=t2DtgJqnotdclZn97qgTsb_0fuDFty-FLPjf38pO_2M
|
|
|
119
123
|
warp/fem/geometry/grid_2d.py,sha256=bUdlCWWNcytF5S-md1ewIk9VYOzLlntZx7ZOGp_ON-4,11950
|
|
120
124
|
warp/fem/geometry/grid_3d.py,sha256=QnaNcg5R-IahfWb0hOVMcQ6i_0XdKzWZWOwFdbXuYRg,14466
|
|
121
125
|
warp/fem/geometry/hexmesh.py,sha256=i4Gy2vc8agxxHMTitkRItxeHGwK4V4Gnt3Js6pFFbRo,33961
|
|
122
|
-
warp/fem/geometry/nanogrid.py,sha256=
|
|
126
|
+
warp/fem/geometry/nanogrid.py,sha256=vhBzMqxSv6etafdelFHb7wjMAkYvkuqA4HPd5cQjknM,19510
|
|
123
127
|
warp/fem/geometry/partition.py,sha256=uI85pA7SV-b1--HIxGNsktSCey3An00Jj7bztmJ3Pxo,12705
|
|
124
128
|
warp/fem/geometry/quadmesh_2d.py,sha256=RrHR61aLNdJuKo3nsowkMaYNxhDuwckwF2tKw0gcTtU,19124
|
|
125
129
|
warp/fem/geometry/tetmesh.py,sha256=kLOeyOa1RjPu8PIXKnleMdwl4nBELtBXuK6g4VrUVqg,31173
|
|
@@ -127,7 +131,7 @@ warp/fem/geometry/trimesh_2d.py,sha256=H6B1VZPq-GL5ryGO2Jlgs7CwHSUpZt_sg8bVZPm16
|
|
|
127
131
|
warp/fem/quadrature/__init__.py,sha256=oy12FuB8Eip9ikACd8AGXLaqlAFPFDbseWF-C15_k9c,133
|
|
128
132
|
warp/fem/quadrature/pic_quadrature.py,sha256=IFiUYti3NzGUDaMviwwDF5lFnyaPXUYdH4qjkvs6LiM,10824
|
|
129
133
|
warp/fem/quadrature/quadrature.py,sha256=JYaObjRPBhXGqY5gD3zPEo6cYlVHQEKncGkts5CqS2E,12639
|
|
130
|
-
warp/fem/space/__init__.py,sha256=
|
|
134
|
+
warp/fem/space/__init__.py,sha256=ZMRsfMVaAZ8x22SpS_VTfvgYsaldA54dDg4xiWGDtWw,7880
|
|
131
135
|
warp/fem/space/basis_space.py,sha256=avuMTdaNE8tHN6k8rkYtj5A9FCr9u_JORsPN8-xIuLU,22348
|
|
132
136
|
warp/fem/space/collocated_function_space.py,sha256=m5nZXyujFA1IohbBCon6M4CtpLrJPjYAnAv4zKl3EtM,3812
|
|
133
137
|
warp/fem/space/dof_mapper.py,sha256=-QhOsAFsBayyzjq8e3-xyfqMlBGb0dankmR2mFgg8a4,6859
|
|
@@ -135,7 +139,7 @@ warp/fem/space/function_space.py,sha256=IrGWL6xLP5Rh0QfsCr97kNR5mmYWbgyH9sNtkmpC
|
|
|
135
139
|
warp/fem/space/grid_2d_function_space.py,sha256=eZKILDxLbdZE2sw5y2kqzWJhv8ykmr4SiYVq7yJOl7o,5249
|
|
136
140
|
warp/fem/space/grid_3d_function_space.py,sha256=5niAYi3Zq2afjqAbSOfdsu_78bjB8JSOGLEspF1yEwU,6059
|
|
137
141
|
warp/fem/space/hexmesh_function_space.py,sha256=suZtwRp3cnWaNa36yIlMNQJyxTGDLw85IPcq6mJmeFo,9407
|
|
138
|
-
warp/fem/space/nanogrid_function_space.py,sha256=
|
|
142
|
+
warp/fem/space/nanogrid_function_space.py,sha256=ScglGSGJpyIcO1XcvTec6TGwrqxPDHecaKBZHgr_Y2g,9037
|
|
139
143
|
warp/fem/space/partition.py,sha256=ERmo82Z4jeak7fNLf_DmR_IGqUx6XPXpW0vMnX8DAjI,13927
|
|
140
144
|
warp/fem/space/quadmesh_2d_function_space.py,sha256=YoM4Sfa9bplerGysOkhPTmoN-mPHr3jsOyhR5ym-VEk,9889
|
|
141
145
|
warp/fem/space/restriction.py,sha256=mjrNTXxwsFt4BmPT5WA00Y7kaKY7vgum1VVJ-rXIOJY,6648
|
|
@@ -148,21 +152,21 @@ warp/fem/space/shape/shape_function.py,sha256=x_cwZlt2BpXjwgKWc7E6y3pTmUDRo-M5Wq
|
|
|
148
152
|
warp/fem/space/shape/square_shape_function.py,sha256=wEiqG8RZWG4AqCK_UdmYN9ZrMsMqhXl7Wncvr3MG-zM,23229
|
|
149
153
|
warp/fem/space/shape/tet_shape_function.py,sha256=bRsLW7ClfcveRlplF3GokhYQxZ2VnwfwR7uzAL91muw,20489
|
|
150
154
|
warp/fem/space/shape/triangle_shape_function.py,sha256=XIH1-NFHaMmuFXlzNc07bAMlVHY1kTYHJwjosx2-mMg,15248
|
|
151
|
-
warp/native/array.h,sha256=
|
|
152
|
-
warp/native/builtin.h,sha256=
|
|
155
|
+
warp/native/array.h,sha256=vXJLJjo5nA-QW10y7T6TjVnBHM8utXv4OZEDL3cMj98,38984
|
|
156
|
+
warp/native/builtin.h,sha256=D-OzDu5QoCq3p0I_bPy9WVaYupO4VY5IRcB2_3zUAaM,50684
|
|
153
157
|
warp/native/bvh.cpp,sha256=PAETbl9RNUqVmJA25wNrg9_3wnGLkykaRubj2ExdKGY,10474
|
|
154
|
-
warp/native/bvh.cu,sha256=
|
|
158
|
+
warp/native/bvh.cu,sha256=G6LuuUVwULtOkhAL2mem8LENFP-dACv35SQu7bScaYY,19371
|
|
155
159
|
warp/native/bvh.h,sha256=GG0aPcT5p7xAJv7dK3MlE-C14ss7iepksAeIwintons,10188
|
|
156
160
|
warp/native/crt.cpp,sha256=_2AwFMh_1Q_XIP9lsbc6q74_3HQOl65YpCejKbZ_0aE,1167
|
|
157
161
|
warp/native/crt.h,sha256=HeMvgbN_8BlITJ2_JkmyGlGra3btP36_rF7K-bnwPuo,10788
|
|
158
162
|
warp/native/cuda_crt.h,sha256=BZ-ZDKgNnYJ-q_SQdyBFRPlWeFnx_4S3LcNuGsQIF_U,68657
|
|
159
|
-
warp/native/cuda_util.cpp,sha256=
|
|
160
|
-
warp/native/cuda_util.h,sha256
|
|
163
|
+
warp/native/cuda_util.cpp,sha256=zfKL2Dfww36tCNHUmSgXArFalmajMQP0v966FMlbhAs,22984
|
|
164
|
+
warp/native/cuda_util.h,sha256=kr_u5s27PwTib31Cc99IEAXt72MMqpabSDMmLjUChjs,11018
|
|
161
165
|
warp/native/cutlass_gemm.cpp,sha256=AlBnMgeO-veCYV-Y5NHEmOLnWKvzTQIPxSzg75Z7Tpk,1123
|
|
162
166
|
warp/native/cutlass_gemm.cu,sha256=0ReIwBKKp6S2TaPPAFKIg2pBHItF707NoPjXhwvdG54,21615
|
|
163
|
-
warp/native/error.cpp,sha256=
|
|
167
|
+
warp/native/error.cpp,sha256=vZPoPOWNZxYEhKckC8wTfnrMuZgGcog3uo2j1DprwSA,1907
|
|
164
168
|
warp/native/error.h,sha256=LL74-rb8cackiu7NvHdu8zezVOVsG-ERr8gyqvqIhwQ,934
|
|
165
|
-
warp/native/exports.h,sha256=
|
|
169
|
+
warp/native/exports.h,sha256=cyX7gP6hV8lPzUo5Jh932kmhGRkz7Mo4EjxAZAzYv44,182600
|
|
166
170
|
warp/native/fabric.h,sha256=XcTNQx0sbvfSYdVSDPhos9uhH1Z96zylzMFQLuOHSj4,5750
|
|
167
171
|
warp/native/hashgrid.cpp,sha256=xP3KzWKaE_6_5EQ72Abj-1jJ7ocYitQBXXX0zNgL37A,8429
|
|
168
172
|
warp/native/hashgrid.cu,sha256=LSHjbh5ehUBoqR1sFAvwGB0KBB3bBGIrF9c9cZnz89c,2259
|
|
@@ -174,15 +178,15 @@ warp/native/intersect_tri.h,sha256=Ss8koDQ3ZrilnTiuA8B0xGbS_JAMctEyUD-H_11qcI8,1
|
|
|
174
178
|
warp/native/marching.cpp,sha256=YTb-t18J9LjjqAfHLD3DMWaQnxqX0JMjrB0iFmfXaJc,24
|
|
175
179
|
warp/native/marching.cu,sha256=zD64fmxsdmxRR5yD2worEUBlW31SXLlI-42uQw6lRsI,21326
|
|
176
180
|
warp/native/marching.h,sha256=NukjDs_VrVC-BXDtIeFhOQFwztYbC9U80UCzr-KGhAg,14
|
|
177
|
-
warp/native/mat.h,sha256=
|
|
181
|
+
warp/native/mat.h,sha256=d4YuecbJIjCI8bh6O8ck4-GBYgm_srNL6rW5oQpEPrg,51348
|
|
178
182
|
warp/native/matnn.h,sha256=7PQLOe4cUuL5X7Fi6kVKAqORvz6JMXJHLsDviBMxOZQ,9617
|
|
179
|
-
warp/native/mesh.cpp,sha256=
|
|
180
|
-
warp/native/mesh.cu,sha256=
|
|
181
|
-
warp/native/mesh.h,sha256=
|
|
183
|
+
warp/native/mesh.cpp,sha256=dv1YzFlFxE3HXFWhLgqcHxwAn7JCipJ2jKvai1h90XU,6958
|
|
184
|
+
warp/native/mesh.cu,sha256=hKXK3hj5SqByV5TcTB2ugNpwAqc6CaQiylfagtBlFPk,11981
|
|
185
|
+
warp/native/mesh.h,sha256=zMcdlCop5VrEK7tIpCfYXnV5NqoTRUwz3PBY1x8Ex_Q,59646
|
|
182
186
|
warp/native/noise.h,sha256=fOH_JY0S9h-HSyYim6EdXWGncBIa8Tb0Ngwbkb4HUgw,29762
|
|
183
|
-
warp/native/quat.h,sha256=
|
|
187
|
+
warp/native/quat.h,sha256=yuC6qUbtUw96scTAbbk_O55eA1QNFLEq0luyCTFzPwc,42584
|
|
184
188
|
warp/native/rand.h,sha256=oAsX4qPmrgMoqG1ObtpU63leDPX6tIHTiR448aLGyKE,11781
|
|
185
|
-
warp/native/range.h,sha256=
|
|
189
|
+
warp/native/range.h,sha256=qLZFvPygGtClsTh1mtErho6yEXIpyWKN87HliglY2Ac,2504
|
|
186
190
|
warp/native/reduce.cpp,sha256=TrZLQePN8GpoHsWQRbvgnknbD2Bjgl0PuD1JsnmAVMk,4460
|
|
187
191
|
warp/native/reduce.cu,sha256=FkNLEQF8DlP5PbDe0AMavxwFs88634gYKce0OO_xZfc,10667
|
|
188
192
|
warp/native/runlength_encode.cpp,sha256=QSPu8CV-2jJh7Nh-_5Om-WxirBjpfrALvQdlOgpB9F4,1325
|
|
@@ -196,19 +200,19 @@ warp/native/sort.cu,sha256=F5Vg6w-5zEWm5fW_NoHIDWAyJUx_yroI1OPqF2aB6hk,2603
|
|
|
196
200
|
warp/native/sort.h,sha256=l_VK_yFDm-R4cg-UU5w1qGbs_bxrhm9zFhr8pZfvA5c,695
|
|
197
201
|
warp/native/sparse.cpp,sha256=8_nSgfjqcQfbG8zncKHCX7NXTAW3ZNBPlTayBeF6jj8,13157
|
|
198
202
|
warp/native/sparse.cu,sha256=qyP58SCGEoIDimyzcS-EdUFuBbf_duloOixBAv-rjTM,18635
|
|
199
|
-
warp/native/spatial.h,sha256=
|
|
203
|
+
warp/native/spatial.h,sha256=fuX2pO5haRChwz8NAXFfGtGfd7p5fJ1B713_SDIU-Yc,19975
|
|
200
204
|
warp/native/svd.h,sha256=vHxIm-HlWNO0Dd7PEdrdgrrow2I-1BBKoaF50Kpnj0Y,21017
|
|
201
205
|
warp/native/temp_buffer.h,sha256=wmaUkNZMVVSnCkTdsqMdhVmLEdVaGcuzFby8c9VO3v0,488
|
|
202
|
-
warp/native/vec.h,sha256=
|
|
206
|
+
warp/native/vec.h,sha256=SXmmgtojzgHE-55jZy2YmwXORiaTcSPJpainh_is-S8,36634
|
|
203
207
|
warp/native/volume.cpp,sha256=qGHXLF0MkpdtVGSLgE_JmRYtrYqLnxunCGafXLBqXNI,17137
|
|
204
208
|
warp/native/volume.cu,sha256=2kP-zT1HorWnmOGupI7WO_fvNvEwwyd29xiyDFhzAPI,2247
|
|
205
209
|
warp/native/volume.h,sha256=Ml0zPGwXmS6EYXP8SX6RNo8U-GqGVCo7Hyy3ZtDYrYQ,36349
|
|
206
210
|
warp/native/volume_builder.cu,sha256=8EeM4NY4XjNCcbAqo609wq_gMCEqxBkPA8mmKCuqvl4,14962
|
|
207
211
|
warp/native/volume_builder.h,sha256=Wja8iQrz14mOvySh8VUsz82t78mHZaBNuHjH0wX64XQ,764
|
|
208
212
|
warp/native/volume_impl.h,sha256=ozhYm_ehSw7I7xgpk3vMdxX4E2t8SW3cUWa3TiLtiBk,2176
|
|
209
|
-
warp/native/warp.cpp,sha256=
|
|
210
|
-
warp/native/warp.cu,sha256=
|
|
211
|
-
warp/native/warp.h,sha256=
|
|
213
|
+
warp/native/warp.cpp,sha256=3AXS7roIQCI6gCY1c3haN4TcJS65nj0f1fMFwa5ThaU,34798
|
|
214
|
+
warp/native/warp.cu,sha256=3UKiRojo4lEzDzL7rIl3deB2U7RHmvieQKdR6LFpoFI,96347
|
|
215
|
+
warp/native/warp.h,sha256=N9I5BGW1gpCr_mTFOSd9rBEG0ibFFMrsSPKJAQLktjQ,18065
|
|
212
216
|
warp/native/clang/clang.cpp,sha256=J0mg9fQrvLCOt_frcySFiJTLZiJc0RSL_PPkrJdTgl4,18649
|
|
213
217
|
warp/native/nanovdb/GridHandle.h,sha256=zOso4Ekb9HsBb5knhvdNOU1ol-rjhFdJCySXLFKPVbA,18007
|
|
214
218
|
warp/native/nanovdb/HostBuffer.h,sha256=L1yEnGHUlhx9L38xUI82lJctSg0uxlnph9rW6xWdDAg,21463
|
|
@@ -222,19 +226,20 @@ warp/render/__init__.py,sha256=Hh81-iDo3lVH3rtkYrmdIyop27M5ZM6_XncgecMWH0Y,538
|
|
|
222
226
|
warp/render/render_opengl.py,sha256=VbwPjPMuYTfwz8c_x3IlEHqlS6RJWVXkoT3w7oqPDFA,126547
|
|
223
227
|
warp/render/render_usd.py,sha256=AIM6j2GiBQRAcbevKETeNLdhOrZU1Xl7H1dvCxUByuA,27697
|
|
224
228
|
warp/render/utils.py,sha256=nB6PNhofqT3QEOxKnedC8XN2yMmTc-DvLqT-xsbZP-Q,4298
|
|
225
|
-
warp/sim/__init__.py,sha256=
|
|
229
|
+
warp/sim/__init__.py,sha256=xEcv57_ryoHs-PRA-qyaQ7hc4-jt_i3je6_TjaFyc6s,1595
|
|
226
230
|
warp/sim/articulation.py,sha256=-fPK04voxy4alzloNoVNw3oH3HUWN_RCUOa0Du1OEUU,26077
|
|
227
|
-
warp/sim/collide.py,sha256=
|
|
231
|
+
warp/sim/collide.py,sha256=z1_RvYxeJfTxtQ03tsIE8706D9_CGgCqASMEOHoeQ8U,84754
|
|
228
232
|
warp/sim/import_mjcf.py,sha256=VdEgRbde7QzOBfluEHlJh2gc58LQYMlVOa5u3xU0giE,19306
|
|
229
233
|
warp/sim/import_snu.py,sha256=JW0k5pP2oPFARXFOCZNa_0uLxgKIo4z2g-kOKZkpESw,8339
|
|
230
234
|
warp/sim/import_urdf.py,sha256=DT7QtOCf60xpOVz9pUZr1LnWCyE4BlfC7qJb0mgwU48,23095
|
|
231
235
|
warp/sim/import_usd.py,sha256=eIgX0uGDBCCHF520SWaBY6HO9SQy4ZB87rNbfg9dY7k,40498
|
|
232
236
|
warp/sim/inertia.py,sha256=pnyn9dDEykOr3LHYmlSBZd8_HpXutJ163TK8iBKU5Rc,9074
|
|
233
237
|
warp/sim/integrator.py,sha256=5UZYDdL6IyQaL6eGc1UQLrLcOrCD0dHmZWgG0K2kCGA,6652
|
|
234
|
-
warp/sim/integrator_euler.py,sha256=
|
|
235
|
-
warp/sim/integrator_featherstone.py,sha256=
|
|
236
|
-
warp/sim/
|
|
237
|
-
warp/sim/
|
|
238
|
+
warp/sim/integrator_euler.py,sha256=OEg0T6aajoX1dEDq0g9OdP1nSOevVCKzv32wNkwQUOI,59787
|
|
239
|
+
warp/sim/integrator_featherstone.py,sha256=f2CS2zoCUaOZSwf2-3w0YeUVuxf3qHCk2nEA-4tQpjg,64873
|
|
240
|
+
warp/sim/integrator_vbd.py,sha256=XZyAmlTeU0GSuv4V_X36ELmtLwYd6zEckvNE_46OuQc,38718
|
|
241
|
+
warp/sim/integrator_xpbd.py,sha256=j11n_X2xBu5CkP66qbybNg-wVH3hw8nhkkJUFvOsqsk,115024
|
|
242
|
+
warp/sim/model.py,sha256=oSwxDY8_nZccrgsoNsZ782CG9YqlOknsaBSFh9Hrsn8,193296
|
|
238
243
|
warp/sim/particles.py,sha256=wVK-LEKZy9TGYyRnmna_p2Q24zZaorZf8EdUizM4VCo,3165
|
|
239
244
|
warp/sim/render.py,sha256=XDNflQIqu3XXzVhwR7wC72-8Z3WgEVuEYoo_sDFaOLg,17874
|
|
240
245
|
warp/sim/utils.py,sha256=WrXAMBi1ufZJpISo4rQfOMGx7u4F3moHDeQW-v8ukyU,12201
|
|
@@ -243,57 +248,61 @@ warp/tests/__main__.py,sha256=U76uE7x7b6Rfrb_GXdt9bi-xknastWmhXcPKgyI1y5s,90
|
|
|
243
248
|
warp/tests/aux_test_class_kernel.py,sha256=7RwxM7Y46c7Zp9Dda7Ax4G_0i3yJPJH2w9OX3yHYLpY,1027
|
|
244
249
|
warp/tests/aux_test_compile_consts_dummy.py,sha256=dWfqPU2iEofAy8CJ_PSn1G7tn2gzTJY7pfYpM_27dqE,471
|
|
245
250
|
warp/tests/aux_test_conditional_unequal_types_kernels.py,sha256=HnMYK-V6phQ8MVfbfe_ZvxwfgTQrO-LbAFggmKGsuX4,646
|
|
246
|
-
warp/tests/aux_test_dependent.py,sha256=
|
|
251
|
+
warp/tests/aux_test_dependent.py,sha256=3qAh0BlW9s8JSpAyVGh1JOzyHhJUs77gJwcmJ2xhYH4,744
|
|
247
252
|
warp/tests/aux_test_grad_customs.py,sha256=busVWPTjQ1n7inPdiJHvHaotYQKi4Zc7Sug1oRIdw8A,831
|
|
253
|
+
warp/tests/aux_test_name_clash1.py,sha256=ntBiXfZvAx0u8sfogJ7ZffqrNOZpktZRhhOif_r_O2c,900
|
|
254
|
+
warp/tests/aux_test_name_clash2.py,sha256=VFY0578VyvlAoyeUvge6oG74WqaEGO_bD0Kn40-yA1E,902
|
|
248
255
|
warp/tests/aux_test_reference.py,sha256=Kor12TtgY9ZPYgG62WN5yFEwRy-Y5WJNaAZALK2eNvo,194
|
|
249
256
|
warp/tests/aux_test_reference_reference.py,sha256=EgIq6H8SbgXIyuNj2vT_IytvwoVUbwwRX0cO-jjuRgQ,120
|
|
250
|
-
warp/tests/aux_test_square.py,sha256=
|
|
257
|
+
warp/tests/aux_test_square.py,sha256=9at3d__M9hPlwA-Ja350DsgY8U-LggkUu5B1b-K1A00,268
|
|
251
258
|
warp/tests/aux_test_unresolved_func.py,sha256=siHbCb528XK2DX3cbRWXG6DILnyStwdgSsgLA3qAbxg,579
|
|
252
259
|
warp/tests/aux_test_unresolved_symbol.py,sha256=ViRAIxODK0B9l8BkedHXzxU4V-JN8HoYBgtZXLrX0SI,588
|
|
253
260
|
warp/tests/disabled_kinematics.py,sha256=B8M_ih-JAobZA6-zPmtqSYGBCbKRyjtW2obR82iQTSY,7596
|
|
254
261
|
warp/tests/run_coverage_serial.py,sha256=UjcqNXQixQk13U3Lckm2OlmqPKKzUk_KaBPyHzxkdT4,1045
|
|
255
262
|
warp/tests/test_adam.py,sha256=u5efgdobQgGdJilsCALB0TKZO5M5T8JDQ8pD3L0CApE,5361
|
|
256
263
|
warp/tests/test_arithmetic.py,sha256=ISNFQYSSRIpl7vEJNxOR0AqfWegdewYZznJ588ZAwX4,43840
|
|
257
|
-
warp/tests/test_array.py,sha256=
|
|
264
|
+
warp/tests/test_array.py,sha256=npNRMflPzUqbMozoUjybkhmok3dDYSX8FpW4NaljUG0,95618
|
|
258
265
|
warp/tests/test_array_reduce.py,sha256=LH_nUdEPuc-FDRelqgO4c5wK5lU6SPpR4s9IcA5Wktw,4678
|
|
259
|
-
warp/tests/test_async.py,sha256=
|
|
260
|
-
warp/tests/test_atomic.py,sha256=
|
|
266
|
+
warp/tests/test_async.py,sha256=uqk6lI7mIMMea6R8q6L8zMvcbWvvQ9Q8DpsETkNpGT0,26516
|
|
267
|
+
warp/tests/test_atomic.py,sha256=ELJ5heasiDrzJi-rwWS_MOzfyrCm6LaEnP05E1fSlhE,5627
|
|
261
268
|
warp/tests/test_bool.py,sha256=f-9kM--pYSg176KD9gRMOdnADfu8HP1ZnZEjvOYPjug,6472
|
|
262
269
|
warp/tests/test_builtins_resolution.py,sha256=ixoOhKgOgbuH-xbqNLx1DB1Nur3PdAtR0qW-TutaHrI,63989
|
|
263
270
|
warp/tests/test_bvh.py,sha256=mr7sRxB1AaQWetCzDIOsW38aWWMwIhfbZBMkjZcKr0M,6123
|
|
264
|
-
warp/tests/test_closest_point_edge_edge.py,sha256=
|
|
265
|
-
warp/tests/test_codegen.py,sha256=
|
|
266
|
-
warp/tests/
|
|
271
|
+
warp/tests/test_closest_point_edge_edge.py,sha256=mtiiZOHqgGOHoD6KNK4jVP-9OoCUWwnuOBVB9M3uGlc,9560
|
|
272
|
+
warp/tests/test_codegen.py,sha256=5onVI7Inna0B_OTZKDdTpgEaUc9qE3MlBEek6MzHhT4,18606
|
|
273
|
+
warp/tests/test_codegen_instancing.py,sha256=PRExiuwPpXOwLWnB62eSMgOldZeqPFEKEC537O2N6cI,40664
|
|
274
|
+
warp/tests/test_collision.py,sha256=i5FOrlcY1YIWNxRx5lC1CyVW1QQWtKUYaE68-yoLZag,19762
|
|
275
|
+
warp/tests/test_compile_consts.py,sha256=by_7FTvoC-495n_XS49LBxNReqZ5YXS08EmjhOxs-54,6908
|
|
267
276
|
warp/tests/test_conditional.py,sha256=MmUO0RD1j4Ceew0uNmqmzZzQVTN9qPDz48bYW24hAhY,5495
|
|
268
277
|
warp/tests/test_copy.py,sha256=993Xy5Y7VAFfUKhv74NOrbW4G4_hiXO7Jrpd-AVFjEM,7703
|
|
269
278
|
warp/tests/test_ctypes.py,sha256=VsYXHqExO2hSQHqFqmikntBThk99Q7Hc6vLCWH8YIqQ,24540
|
|
270
279
|
warp/tests/test_dense.py,sha256=j4icAHtOeHrXp8P_qFGptivAaoFkdGVbCuxg_jO3Mlg,1829
|
|
271
280
|
warp/tests/test_devices.py,sha256=i2B7wCsGo5rl8eZaxQ5bXVEtxON0WHWHysT31ty_j90,3042
|
|
272
|
-
warp/tests/test_dlpack.py,sha256=
|
|
273
|
-
warp/tests/test_examples.py,sha256=
|
|
281
|
+
warp/tests/test_dlpack.py,sha256=H99Md6pJZDv2gdLh4omB6bYTf_pbNOnpHGfvEkpiRv8,23855
|
|
282
|
+
warp/tests/test_examples.py,sha256=pZ6FoJCpMLhlSUt1SvXsJdp7PHvTHNsDbAbx4Amj_wE,15612
|
|
274
283
|
warp/tests/test_fabricarray.py,sha256=H186ayJZS95IGUZfzfwiOdEcqczXxN6gNmj9RvZPaPA,32340
|
|
275
|
-
warp/tests/test_fast_math.py,sha256=
|
|
276
|
-
warp/tests/test_fem.py,sha256=
|
|
284
|
+
warp/tests/test_fast_math.py,sha256=8jETKu2zSAXLo8EZSnRMi2Ubmrd6JrpHUpppNruqMIw,2228
|
|
285
|
+
warp/tests/test_fem.py,sha256=_WEATA9VFA2TojAMM91ovsH4pelM9vE3DwDDOPJSYSo,64831
|
|
277
286
|
warp/tests/test_fp16.py,sha256=g7N5oeKpx3QDnpOQKtyKIYv0eJEy0QwaEHXFCXxTXxE,3818
|
|
278
|
-
warp/tests/test_func.py,sha256=
|
|
287
|
+
warp/tests/test_func.py,sha256=pt3sBVnofb-ihX1WNf5Svektq2lw4OrLVDjuBaF7VXM,11799
|
|
279
288
|
warp/tests/test_future_annotations.py,sha256=eC7VHcAOJ3fAgQsKPnrCq9oqkw3s2RbmcXe4rBaFEpQ,2208
|
|
280
289
|
warp/tests/test_generics.py,sha256=zCgAUX6qcD54FOJJf9PStVtIBFVv7-5y17xKLZxf940,20543
|
|
281
290
|
warp/tests/test_grad.py,sha256=hYmevx9z_r0y7aX5m8HNhtE4GRbHX4Kxa8iyPHUBcM8,28806
|
|
282
291
|
warp/tests/test_grad_customs.py,sha256=_Vey3R29zId7Y9TQwXvAHyrMEXdCk3dOT2ac4B8EqZY,11317
|
|
283
292
|
warp/tests/test_grad_debug.py,sha256=4GuuTm9OG51MiHMaEKudM9_eAD3qtgtcy0I1dOYpVmQ,8309
|
|
284
293
|
warp/tests/test_hash_grid.py,sha256=CY2TNljDMNdDsNe42BwTJkumDib8QAQ5L6FkiJm41sc,6941
|
|
285
|
-
warp/tests/test_implicit_init.py,sha256=
|
|
294
|
+
warp/tests/test_implicit_init.py,sha256=Mxw_7kmXW3EJCm78doje7ffsIqoy0uFgaDYXyzDv8Lo,7885
|
|
286
295
|
warp/tests/test_import.py,sha256=4FwzQmzX24V-RggqJ_5CAs6SnJKq6wktp7t2T0hZc5o,1021
|
|
287
296
|
warp/tests/test_indexedarray.py,sha256=awlcdgs-w069zrUk3lw5xnuX6k1SMbIFkY5QPex76ss,40794
|
|
288
297
|
warp/tests/test_intersect.py,sha256=ZvwXFe2pHMDhbxRnzqvuV3wCRu-j54d6mPmR3ulzEBE,1849
|
|
289
|
-
warp/tests/test_jax.py,sha256=
|
|
298
|
+
warp/tests/test_jax.py,sha256=xVUurl19w0z6tG2MlQu7WBS6XJsqRMhaemk4INbJ_Ew,11348
|
|
290
299
|
warp/tests/test_large.py,sha256=UjtqYzX7QzMR3TAWR3780PczTE3kJb9uGTrcqRXZj_Q,5867
|
|
291
300
|
warp/tests/test_launch.py,sha256=XXqVzBK2rXPkw4APps_apQNpgXwqDmOXBXu7NpnGELU,8856
|
|
292
301
|
warp/tests/test_lerp.py,sha256=MoBV3u5oLF95njI_HN4dh9rdLHuNARkGSk3uMhQ52sI,6032
|
|
293
302
|
warp/tests/test_linear_solvers.py,sha256=EeDlnUo-4OWKjIfJb7r3eM4xvjvPsOoFnCSO1Tw5MlA,6753
|
|
294
303
|
warp/tests/test_lvalue.py,sha256=xfzxX3NojCnXU5qkObd5BkAZqJdRE4H4xa9cMzriIdY,10574
|
|
295
304
|
warp/tests/test_marching_cubes.py,sha256=vSW8PNuMBV12laLgfRGRM5RBW-AE0A5VItMRxkvplt4,2063
|
|
296
|
-
warp/tests/test_mat.py,sha256=
|
|
305
|
+
warp/tests/test_mat.py,sha256=WtHHyi9vrxxEHCYuJUDXNo4mv8xzDnDhh4gp8ni8-Ts,68071
|
|
297
306
|
warp/tests/test_mat_lite.py,sha256=-NynEN0QZuIyt48a6HmU_etAl_DeNsE1MfYjM5c6tI8,3814
|
|
298
307
|
warp/tests/test_mat_scalar_ops.py,sha256=48yey7zYWJd02X8lEgLFW7APERbaHN3xs8z_3YLzqis,110250
|
|
299
308
|
warp/tests/test_math.py,sha256=AL-iZmSHXUV8ScHUICwLyaICjiirpXH__VrOZkFv-FY,3851
|
|
@@ -302,27 +311,27 @@ warp/tests/test_matmul_lite.py,sha256=X5FaWecE6OZCd8GPVfcxNX4XjhYRaunaPBUvu6peL9
|
|
|
302
311
|
warp/tests/test_mempool.py,sha256=cAto9OFlwGyVpcERH-0P1962Q2Mf3DGVYlZZfhm1IQE,6895
|
|
303
312
|
warp/tests/test_mesh.py,sha256=KL0zKL4-kyVc2ML0n7yURTBMHohioqh6wVfnooe9KHc,8560
|
|
304
313
|
warp/tests/test_mesh_query_aabb.py,sha256=ttfuEwO6eGyAhUAUt1_cM_0NjFSxKzAy8ZMzf7uuuS0,6301
|
|
305
|
-
warp/tests/test_mesh_query_point.py,sha256=
|
|
314
|
+
warp/tests/test_mesh_query_point.py,sha256=OBFhIDeA6XnzkAI69JTg4zqD5TAXeZUY0rXlgDsNIuk,27656
|
|
306
315
|
warp/tests/test_mesh_query_ray.py,sha256=vWoPLcREGfVzEAQc60t1rE3gIYBYMDY8xGDMB1Q2RlQ,9193
|
|
307
316
|
warp/tests/test_mlp.py,sha256=nnTMg-Oc_YndafdpyGE2zYZG3V9IdqfYS8LVGk4oUeE,7994
|
|
308
|
-
warp/tests/test_model.py,sha256=
|
|
309
|
-
warp/tests/test_module_hashing.py,sha256=
|
|
317
|
+
warp/tests/test_model.py,sha256=KZXE8_tx_cvGBZ_KTRwKaJTG3XNIkhavan4zYRaWTD4,7717
|
|
318
|
+
warp/tests/test_module_hashing.py,sha256=ekTFrTEY8xtlOZErIk1bkDjYUg6jEiU0BAo5lOJlZPA,4799
|
|
310
319
|
warp/tests/test_modules_lite.py,sha256=N3dUtTxzluaPF6rXmtYiSf8S27djAvPyj3ak-W_19H8,1152
|
|
311
|
-
warp/tests/test_multigpu.py,sha256=
|
|
320
|
+
warp/tests/test_multigpu.py,sha256=ZPeZb1MA8pqQ_ERRllWbPKY_1Hr9AE9TN-vlka7IQls,5269
|
|
312
321
|
warp/tests/test_noise.py,sha256=FvQWbENog4utPGM069owPyQnizGAVoJn4d37p0v74b8,6820
|
|
313
322
|
warp/tests/test_operators.py,sha256=6drgwmN0jTjNH6ssgcqUWpxwDtOpD4GxUT1D5wsKeik,5966
|
|
314
323
|
warp/tests/test_options.py,sha256=IRdAay2BD6to85UQ1ME1frzOSXAFpQs0iKgzO5jUnqM,3479
|
|
315
|
-
warp/tests/test_overwrite.py,sha256=
|
|
324
|
+
warp/tests/test_overwrite.py,sha256=4myOkEZXXfxGNSLTyaPX8zMK0kwvu-5IFCSIGyf1ROk,18544
|
|
325
|
+
warp/tests/test_paddle.py,sha256=APmyc04nOhLy29Np1wo2sVJtn7w2yJQwMR9SA8TBIco,30500
|
|
316
326
|
warp/tests/test_peer.py,sha256=tFkI3Wfu04hy8P02j2A4GLIwe5qN3Te-7RzG6vgbrNQ,4867
|
|
317
327
|
warp/tests/test_pinned.py,sha256=riJaqXUM65Un4okWiUPBK6q-FXAmN_pg1oDoVf1xDJc,2284
|
|
318
|
-
warp/tests/
|
|
319
|
-
warp/tests/
|
|
320
|
-
warp/tests/test_quat.py,sha256=AlMmCU1mO7Rvc0hkEF7v_uyhYAJMeiWjt7015iA7-R4,73381
|
|
328
|
+
warp/tests/test_print.py,sha256=zeMw1SnPQIAVpr79vjIkrHTkGCJGX-yx9BjCjjq8asw,4266
|
|
329
|
+
warp/tests/test_quat.py,sha256=UTEWIaWpLbfml9hRenKPrk-ynsMLhBkhbTnBgiBGSws,77014
|
|
321
330
|
warp/tests/test_rand.py,sha256=c8T1UD2Ocx5JtpZtGFbebmtzlR9jbxxnTpdItNBWhNA,10663
|
|
322
|
-
warp/tests/test_reload.py,sha256=
|
|
331
|
+
warp/tests/test_reload.py,sha256=Lx91xvRMFin8ScbchaEsBERVwF8CxbYUAlHgKv7wHHw,7362
|
|
323
332
|
warp/tests/test_rounding.py,sha256=nzQXnmDT9AN9r-YhVaZUvzZ7kSmt1Qr7idEwGrnkDi4,5778
|
|
324
333
|
warp/tests/test_runlength_encode.py,sha256=VRdFnWx-IAOl5m-6nxBIIATSWaiWibAzmpvKFpAaVCo,6948
|
|
325
|
-
warp/tests/test_scalar_ops.py,sha256=
|
|
334
|
+
warp/tests/test_scalar_ops.py,sha256=bebUY4GfjbzLzinUbyPKYg3NJZXqDGzHZwo87sR-UD0,2844
|
|
326
335
|
warp/tests/test_sim_grad.py,sha256=L6PMlsFXJ2MWEyOO773WOUwbNN5DAZy793J9cT0bct4,7813
|
|
327
336
|
warp/tests/test_sim_kinematics.py,sha256=IdVeDpY0u7_U0QojcqvSLeX4diCKSh5Smb5EsLA8Bsg,2572
|
|
328
337
|
warp/tests/test_smoothstep.py,sha256=umHt5Lz7lwlxi2E7izGIurQWKYBC_0e3bezSk9KFVVQ,4379
|
|
@@ -330,22 +339,25 @@ warp/tests/test_snippet.py,sha256=fBbGqlc6VJPmXRSF_J_UtrzCpM5XJHN_ejjgi2CMzOI,94
|
|
|
330
339
|
warp/tests/test_sparse.py,sha256=jz9-9UtUh4n8r2uCI16Qt1Ju_WdXTAtMaz0Uk7vHcNo,20160
|
|
331
340
|
warp/tests/test_spatial.py,sha256=kVfngbZLi-LDy4ooP1RMF0zb_VYmrRc8UksBXzsFQVU,76435
|
|
332
341
|
warp/tests/test_special_values.py,sha256=5Ga45nJ6S7IPSVmeKUUia7CmWpYN9W-hnLPweUZIts4,14740
|
|
333
|
-
warp/tests/
|
|
334
|
-
warp/tests/
|
|
342
|
+
warp/tests/test_static.py,sha256=0kjwNf-m7uQ-TCpsqUiaXKSGLUsufqxHLBvoh6uQaL0,18489
|
|
343
|
+
warp/tests/test_streams.py,sha256=3jJz2BZ9hIANceRII0OdLHu1rfLMJ1mJnJqEPyuz-h0,19750
|
|
344
|
+
warp/tests/test_struct.py,sha256=vqHTX8vdUIn2adK4bdD9xXEYUtSUKL7hw3RA_IplqhQ,16990
|
|
335
345
|
warp/tests/test_tape.py,sha256=AQ0dE5oWfKv2jDNCMOK5s9up0423uz2_M-WDPVi-fIU,5450
|
|
336
|
-
warp/tests/test_torch.py,sha256=
|
|
346
|
+
warp/tests/test_torch.py,sha256=hHT7EMyM0lm2BKEuvhmJoieUFMY6TSwSLx5Xzvk00j0,33275
|
|
337
347
|
warp/tests/test_transient_module.py,sha256=83RsALll2KdSPSP7_kASShbUPBq-eKJQHgkGhcXxhQY,2206
|
|
338
|
-
warp/tests/
|
|
348
|
+
warp/tests/test_triangle_closest_point.py,sha256=AJr8J0_L5OkHNWJ140nqe7fhizhPE2w7GRuYo0-ZBbU,4027
|
|
349
|
+
warp/tests/test_types.py,sha256=mrAxmrj3P7ZeaumfNRI0STDSZoAM5gyBwmh4YWJhovw,22106
|
|
339
350
|
warp/tests/test_utils.py,sha256=jhs-1HX0MNuGijTx2U2PzvDOgLJ88X2-aHerxxuDL4o,18795
|
|
340
|
-
warp/tests/
|
|
351
|
+
warp/tests/test_vbd.py,sha256=Vc7pN7fLGw2FQKrz3NxwphbKpSNz0JxQic0MGkjwmgE,13001
|
|
352
|
+
warp/tests/test_vec.py,sha256=x7-WkovPFQ-E6dNFxzZgnDVYjJugTCFsFUPSnfQJ_h0,45597
|
|
341
353
|
warp/tests/test_vec_lite.py,sha256=c1yKwqWSSzCHUd2Ft1TSNpUpqrHAwF2rWBjQj5nDZQ4,2370
|
|
342
|
-
warp/tests/test_vec_scalar_ops.py,sha256=
|
|
354
|
+
warp/tests/test_vec_scalar_ops.py,sha256=cTEBZsUsdpWN5ZDPvKhF5j27f7V1826ZfORLyIfOe3E,94245
|
|
343
355
|
warp/tests/test_verify_fp.py,sha256=YVBgLM0CTGMUnMwNYZOcj-BU2sz2zhItfY4RYutKd28,2337
|
|
344
356
|
warp/tests/test_volume.py,sha256=GpMZQA-iFS57AWrWhrJtZ0Z7e6B_YCVm_7yJhC2ILlU,36125
|
|
345
357
|
warp/tests/test_volume_write.py,sha256=_QhIY9WotnS_NQD00g4JR16p3JC_vLegiD_PXCG_UIQ,11525
|
|
346
358
|
warp/tests/unittest_serial.py,sha256=VXuwpkIo2tBgNnphZ4GDxFSHUVMupgGQWuDZFb64qr8,1134
|
|
347
|
-
warp/tests/unittest_suites.py,sha256=
|
|
348
|
-
warp/tests/unittest_utils.py,sha256=
|
|
359
|
+
warp/tests/unittest_suites.py,sha256=jwzbVeGvOgQU1K0yEf-AMFHR-T-h1DCwfhC7Yp-DQDc,14212
|
|
360
|
+
warp/tests/unittest_utils.py,sha256=gJuy_CeCTzi6eOKmRY6tvYlbIaeu-enxzs0Gb0fQikA,14628
|
|
349
361
|
warp/tests/unused_test_misc.py,sha256=A4iAjjHvZhD54l1OeXCP4Oiwqc-6qqsbAHwzr-vsYk4,1454
|
|
350
362
|
warp/tests/walkthrough_debug.py,sha256=CXhc7NMOwSSpkJ-5jCWqAlijwaSvUp6DCG34OGm_cYQ,2887
|
|
351
363
|
warp/tests/assets/curlnoise_golden.npy,sha256=ueBhVunJH9If7vdb0fqfxfNaj1fe5pHlKBKHA1TBDRQ,262272
|
|
@@ -360,10 +372,10 @@ warp/tests/assets/torus.nvdb,sha256=7ftuUfUVpR_KkTuBPsmUQUrEFG9BcDxeHK7kvPA3itk,
|
|
|
360
372
|
warp/tests/assets/torus.usda,sha256=TVztXStGl-LML987ZK0CmUsILD2P0Smd331KcJUGDuI,340725
|
|
361
373
|
warp/thirdparty/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
|
|
362
374
|
warp/thirdparty/appdirs.py,sha256=2UXPK-AkDGoN5APeqAMMYkkfgf3Q_aUEZxcfkIxlQn0,24254
|
|
363
|
-
warp/thirdparty/dlpack.py,sha256=
|
|
375
|
+
warp/thirdparty/dlpack.py,sha256=HYvNWIemrvxLDgQLRseerP8gqM87Ie7SVIX7p5xSM0o,4323
|
|
364
376
|
warp/thirdparty/unittest_parallel.py,sha256=-FgbXrKiQ_RDj7YXYyhpRIPC3OmvJEnjvGkN99cqQA0,20888
|
|
365
|
-
warp_lang-1.
|
|
366
|
-
warp_lang-1.
|
|
367
|
-
warp_lang-1.
|
|
368
|
-
warp_lang-1.
|
|
369
|
-
warp_lang-1.
|
|
377
|
+
warp_lang-1.4.1.dist-info/LICENSE.md,sha256=Gq_TN0Xfat8Ftq2Rlvc31NgxdpLGVB-34kp-4eoeDV0,19265
|
|
378
|
+
warp_lang-1.4.1.dist-info/METADATA,sha256=NT-TgzFD2kfdwrN4Q487Ze9BJ16dOnkjkftjsV3wflI,23286
|
|
379
|
+
warp_lang-1.4.1.dist-info/WHEEL,sha256=3yyohKHuNOnAdDvjwqtpzapP3pFfup_kWqfny3-jajM,110
|
|
380
|
+
warp_lang-1.4.1.dist-info/top_level.txt,sha256=8pupHORyKoiN_BYWlTmv5OFBWdhqpppiBYQV5KxgEvg,5
|
|
381
|
+
warp_lang-1.4.1.dist-info/RECORD,,
|
|
@@ -1,143 +0,0 @@
|
|
|
1
|
-
# Copyright (c) 2024 NVIDIA CORPORATION. All rights reserved.
|
|
2
|
-
# NVIDIA CORPORATION and its licensors retain all intellectual property
|
|
3
|
-
# and proprietary rights in and to this software, related documentation
|
|
4
|
-
# and any modifications thereto. Any use, reproduction, disclosure or
|
|
5
|
-
# distribution of this software and related documentation without an express
|
|
6
|
-
# license agreement from NVIDIA CORPORATION is strictly prohibited.
|
|
7
|
-
|
|
8
|
-
import unittest
|
|
9
|
-
|
|
10
|
-
from warp.sim.collide import triangle_closest_point_barycentric
|
|
11
|
-
from warp.tests.unittest_utils import *
|
|
12
|
-
|
|
13
|
-
|
|
14
|
-
# a-b is the edge where the closest point is located at
|
|
15
|
-
@wp.func
|
|
16
|
-
def check_edge_feasible_region(p: wp.vec3, a: wp.vec3, b: wp.vec3, c: wp.vec3, eps: float):
|
|
17
|
-
ap = p - a
|
|
18
|
-
bp = p - b
|
|
19
|
-
ab = b - a
|
|
20
|
-
|
|
21
|
-
if wp.dot(ap, ab) < -eps:
|
|
22
|
-
return False
|
|
23
|
-
|
|
24
|
-
if wp.dot(bp, ab) > eps:
|
|
25
|
-
return False
|
|
26
|
-
|
|
27
|
-
ab_sqr_norm = wp.dot(ab, ab)
|
|
28
|
-
if ab_sqr_norm < eps:
|
|
29
|
-
return False
|
|
30
|
-
|
|
31
|
-
t = wp.dot(ab, c - a) / ab_sqr_norm
|
|
32
|
-
|
|
33
|
-
perpendicular_foot = a + t * ab
|
|
34
|
-
|
|
35
|
-
if wp.dot(c - perpendicular_foot, p - perpendicular_foot) > eps:
|
|
36
|
-
return False
|
|
37
|
-
|
|
38
|
-
return True
|
|
39
|
-
|
|
40
|
-
|
|
41
|
-
# closest point is a
|
|
42
|
-
@wp.func
|
|
43
|
-
def check_vertex_feasible_region(p: wp.vec3, a: wp.vec3, b: wp.vec3, c: wp.vec3, eps: float):
|
|
44
|
-
ap = p - a
|
|
45
|
-
ba = a - b
|
|
46
|
-
ca = a - c
|
|
47
|
-
|
|
48
|
-
if wp.dot(ap, ba) < -eps:
|
|
49
|
-
return False
|
|
50
|
-
|
|
51
|
-
if wp.dot(p, ca) < -eps:
|
|
52
|
-
return False
|
|
53
|
-
|
|
54
|
-
return True
|
|
55
|
-
|
|
56
|
-
|
|
57
|
-
@wp.func
|
|
58
|
-
def return_true():
|
|
59
|
-
return True
|
|
60
|
-
|
|
61
|
-
|
|
62
|
-
def test_point_triangle_closest_point(test, device):
|
|
63
|
-
passed = wp.array([True], dtype=wp.bool, device=device)
|
|
64
|
-
|
|
65
|
-
@wp.kernel
|
|
66
|
-
def test_point_triangle_closest_point_kernel(tri: wp.array(dtype=wp.vec3), passed: wp.array(dtype=wp.bool)):
|
|
67
|
-
state = wp.uint32(wp.rand_init(wp.int32(123), wp.int32(0)))
|
|
68
|
-
eps = 1e-5
|
|
69
|
-
|
|
70
|
-
for _i in range(1000):
|
|
71
|
-
l = wp.float32(0.0)
|
|
72
|
-
while l < eps:
|
|
73
|
-
p = wp.vec3(wp.randn(state), wp.randn(state), wp.randn(state))
|
|
74
|
-
l = wp.length(p)
|
|
75
|
-
|
|
76
|
-
# project to a sphere with r=2
|
|
77
|
-
p = 2.0 * p / l
|
|
78
|
-
|
|
79
|
-
bary = triangle_closest_point_barycentric(tri[0], tri[1], tri[2], p)
|
|
80
|
-
|
|
81
|
-
for dim in range(3):
|
|
82
|
-
v1_index = (dim + 1) % 3
|
|
83
|
-
v2_index = (dim + 2) % 3
|
|
84
|
-
v1 = tri[v1_index]
|
|
85
|
-
v2 = tri[v2_index]
|
|
86
|
-
v3 = tri[dim]
|
|
87
|
-
|
|
88
|
-
# on edge
|
|
89
|
-
if bary[dim] == 0.0 and bary[v1_index] != 0.0 and bary[v2_index] != 0.0:
|
|
90
|
-
if not check_edge_feasible_region(p, v1, v2, v3, eps):
|
|
91
|
-
passed[0] = False
|
|
92
|
-
return
|
|
93
|
-
|
|
94
|
-
# p-closest_p must be perpendicular to v1-v2
|
|
95
|
-
closest_p = a * bary[0] + b * bary[1] + c * bary[2]
|
|
96
|
-
e = v1 - v2
|
|
97
|
-
err = wp.dot(e, closest_p - p)
|
|
98
|
-
if wp.abs(err) > eps:
|
|
99
|
-
passed[0] = False
|
|
100
|
-
return
|
|
101
|
-
|
|
102
|
-
if bary[v1_index] == 0.0 and bary[v2_index] == 0.0:
|
|
103
|
-
if not check_vertex_feasible_region(p, v3, v1, v2, eps):
|
|
104
|
-
passed[0] = False
|
|
105
|
-
return
|
|
106
|
-
|
|
107
|
-
if bary[dim] != 0.0 and bary[v1_index] != 0.0 and bary[v2_index] != 0.0:
|
|
108
|
-
closest_p = a * bary[0] + b * bary[1] + c * bary[2]
|
|
109
|
-
e1 = v1 - v2
|
|
110
|
-
e2 = v1 - v3
|
|
111
|
-
if wp.abs(wp.dot(e1, closest_p - p)) > eps or wp.abs(wp.dot(e2, closest_p - p)) > eps:
|
|
112
|
-
passed[0] = False
|
|
113
|
-
return
|
|
114
|
-
|
|
115
|
-
a = wp.vec3(1.0, 0.0, 0.0)
|
|
116
|
-
b = wp.vec3(0.0, 0.0, 0.0)
|
|
117
|
-
c = wp.vec3(0.0, 1.0, 0.0)
|
|
118
|
-
|
|
119
|
-
tri = wp.array([a, b, c], dtype=wp.vec3, device=device)
|
|
120
|
-
wp.launch(test_point_triangle_closest_point_kernel, dim=1, inputs=[tri, passed], device=device)
|
|
121
|
-
passed = passed.numpy()
|
|
122
|
-
|
|
123
|
-
test.assertTrue(passed.all())
|
|
124
|
-
|
|
125
|
-
|
|
126
|
-
devices = get_test_devices()
|
|
127
|
-
|
|
128
|
-
|
|
129
|
-
class TestTriangleClosestPoint(unittest.TestCase):
|
|
130
|
-
pass
|
|
131
|
-
|
|
132
|
-
|
|
133
|
-
add_function_test(
|
|
134
|
-
TestTriangleClosestPoint,
|
|
135
|
-
"test_point_triangle_closest_point",
|
|
136
|
-
test_point_triangle_closest_point,
|
|
137
|
-
devices=devices,
|
|
138
|
-
check_output=True,
|
|
139
|
-
)
|
|
140
|
-
|
|
141
|
-
if __name__ == "__main__":
|
|
142
|
-
wp.clear_kernel_cache()
|
|
143
|
-
unittest.main(verbosity=2)
|
|
File without changes
|
|
File without changes
|
|
File without changes
|