riggen 0.1.0__tar.gz → 0.2.1.dev0__tar.gz
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.
- {riggen-0.1.0 → riggen-0.2.1.dev0}/Cargo.lock +287 -6
- {riggen-0.1.0 → riggen-0.2.1.dev0}/Cargo.toml +54 -3
- riggen-0.2.1.dev0/PKG-INFO +289 -0
- riggen-0.2.1.dev0/README.md +266 -0
- riggen-0.2.1.dev0/crates/riggen-core/src/command.rs +2139 -0
- riggen-0.2.1.dev0/crates/riggen-core/src/file.rs +1442 -0
- {riggen-0.1.0 → riggen-0.2.1.dev0}/crates/riggen-core/src/fk.rs +250 -5
- {riggen-0.1.0 → riggen-0.2.1.dev0}/crates/riggen-core/src/history.rs +167 -6
- {riggen-0.1.0 → riggen-0.2.1.dev0}/crates/riggen-core/src/ids.rs +13 -1
- {riggen-0.1.0 → riggen-0.2.1.dev0}/crates/riggen-core/src/inertial.rs +1 -1
- riggen-0.2.1.dev0/crates/riggen-core/src/lib.rs +38 -0
- {riggen-0.1.0 → riggen-0.2.1.dev0}/crates/riggen-core/src/pose.rs +1 -1
- riggen-0.2.1.dev0/crates/riggen-core/src/robot.rs +960 -0
- riggen-0.2.1.dev0/crates/riggen-core/src/validate.rs +2155 -0
- {riggen-0.1.0 → riggen-0.2.1.dev0}/crates/riggen-export/Cargo.toml +2 -0
- riggen-0.2.1.dev0/crates/riggen-export/src/export.rs +271 -0
- riggen-0.2.1.dev0/crates/riggen-export/src/fk_samples.rs +842 -0
- riggen-0.2.1.dev0/crates/riggen-export/src/import.rs +510 -0
- riggen-0.2.1.dev0/crates/riggen-export/src/lib.rs +33 -0
- {riggen-0.1.0 → riggen-0.2.1.dev0}/crates/riggen-export/src/mesh_store.rs +15 -8
- riggen-0.2.1.dev0/crates/riggen-export/src/mjcf.rs +922 -0
- riggen-0.2.1.dev0/crates/riggen-export/src/mjcf_compose.rs +1081 -0
- riggen-0.2.1.dev0/crates/riggen-export/src/mjcf_in.rs +4140 -0
- riggen-0.2.1.dev0/crates/riggen-export/src/resolve.rs +1485 -0
- riggen-0.2.1.dev0/crates/riggen-export/src/sdf.rs +881 -0
- riggen-0.2.1.dev0/crates/riggen-export/src/test_util.rs +286 -0
- {riggen-0.1.0 → riggen-0.2.1.dev0}/crates/riggen-export/src/urdf.rs +227 -12
- {riggen-0.1.0 → riggen-0.2.1.dev0}/crates/riggen-export/src/urdf_in.rs +323 -203
- riggen-0.2.1.dev0/crates/riggen-export/src/xml.rs +833 -0
- {riggen-0.1.0 → riggen-0.2.1.dev0}/crates/riggen-mesh/Cargo.toml +1 -0
- riggen-0.2.1.dev0/crates/riggen-mesh/src/decomp.rs +510 -0
- {riggen-0.1.0 → riggen-0.2.1.dev0}/crates/riggen-mesh/src/error.rs +1 -1
- {riggen-0.1.0 → riggen-0.2.1.dev0}/crates/riggen-mesh/src/feature.rs +11 -6
- {riggen-0.1.0 → riggen-0.2.1.dev0}/crates/riggen-mesh/src/lib.rs +59 -20
- {riggen-0.1.0 → riggen-0.2.1.dev0}/crates/riggen-mesh/src/mass.rs +2 -2
- riggen-0.2.1.dev0/crates/riggen-mesh/src/msh.rs +284 -0
- {riggen-0.1.0 → riggen-0.2.1.dev0}/crates/riggen-mesh/src/obj.rs +10 -6
- {riggen-0.1.0 → riggen-0.2.1.dev0}/crates/riggen-mesh/src/ray.rs +1 -1
- {riggen-0.1.0 → riggen-0.2.1.dev0}/crates/riggen-mesh/src/stl.rs +1 -1
- {riggen-0.1.0 → riggen-0.2.1.dev0}/crates/riggen-mesh/src/tri_mesh.rs +1 -1
- riggen-0.2.1.dev0/crates/riggen-py/Cargo.toml +36 -0
- riggen-0.2.1.dev0/crates/riggen-py/src/doc.rs +193 -0
- riggen-0.2.1.dev0/crates/riggen-py/src/errors.rs +39 -0
- riggen-0.2.1.dev0/crates/riggen-py/src/lib.rs +72 -0
- riggen-0.2.1.dev0/crates/riggen-py/src/robot.rs +1061 -0
- riggen-0.2.1.dev0/pyproject.toml +82 -0
- riggen-0.2.1.dev0/python/riggen/__init__.py +152 -0
- riggen-0.2.1.dev0/python/riggen/__main__.py +36 -0
- riggen-0.2.1.dev0/python/riggen/_riggen.pyi +300 -0
- riggen-0.2.1.dev0/python/riggen/errors.py +120 -0
- riggen-0.2.1.dev0/python/riggen/py.typed +0 -0
- riggen-0.2.1.dev0/python/riggen/robot.py +1695 -0
- riggen-0.2.1.dev0/python/riggen/show.py +133 -0
- riggen-0.1.0/PKG-INFO +0 -139
- riggen-0.1.0/README.md +0 -118
- riggen-0.1.0/assets/fixtures/arm/arm.riggen +0 -361
- riggen-0.1.0/assets/fixtures/arm/arm.urdf +0 -129
- riggen-0.1.0/assets/fixtures/arm/base.stl +0 -0
- riggen-0.1.0/assets/fixtures/arm/fore.stl +0 -0
- riggen-0.1.0/assets/fixtures/arm/fore_hull.stl +0 -0
- riggen-0.1.0/assets/fixtures/arm/shoulder.stl +0 -0
- riggen-0.1.0/assets/fixtures/arm/upper.stl +0 -0
- riggen-0.1.0/crates/riggen-app/Cargo.toml +0 -58
- riggen-0.1.0/crates/riggen-app/build.rs +0 -92
- riggen-0.1.0/crates/riggen-app/src/app/align.rs +0 -241
- riggen-0.1.0/crates/riggen-app/src/app/debug_menu.rs +0 -78
- riggen-0.1.0/crates/riggen-app/src/app/document.rs +0 -757
- riggen-0.1.0/crates/riggen-app/src/app/export_dialog.rs +0 -287
- riggen-0.1.0/crates/riggen-app/src/app/file_io.rs +0 -306
- riggen-0.1.0/crates/riggen-app/src/app/file_menu.rs +0 -282
- riggen-0.1.0/crates/riggen-app/src/app/gizmo.rs +0 -230
- riggen-0.1.0/crates/riggen-app/src/app/glyphs.rs +0 -318
- riggen-0.1.0/crates/riggen-app/src/app/mod.rs +0 -441
- riggen-0.1.0/crates/riggen-app/src/app/panels/joints.rs +0 -166
- riggen-0.1.0/crates/riggen-app/src/app/panels/materials.rs +0 -161
- riggen-0.1.0/crates/riggen-app/src/app/panels/mod.rs +0 -14
- riggen-0.1.0/crates/riggen-app/src/app/panels/properties.rs +0 -1064
- riggen-0.1.0/crates/riggen-app/src/app/panels/tree.rs +0 -242
- riggen-0.1.0/crates/riggen-app/src/app/shortcuts.rs +0 -69
- riggen-0.1.0/crates/riggen-app/src/app/snap.rs +0 -602
- riggen-0.1.0/crates/riggen-app/src/app/status_bar.rs +0 -88
- riggen-0.1.0/crates/riggen-app/src/app/tool.rs +0 -116
- riggen-0.1.0/crates/riggen-app/src/cli.rs +0 -623
- riggen-0.1.0/crates/riggen-app/src/debug/camera.rs +0 -77
- riggen-0.1.0/crates/riggen-app/src/debug/mod.rs +0 -483
- riggen-0.1.0/crates/riggen-app/src/lib.rs +0 -52
- riggen-0.1.0/crates/riggen-app/src/main.rs +0 -94
- riggen-0.1.0/crates/riggen-app/tests/cli.rs +0 -52
- riggen-0.1.0/crates/riggen-app/tests/visual/harness.rs +0 -352
- riggen-0.1.0/crates/riggen-app/tests/visual/main.rs +0 -3234
- riggen-0.1.0/crates/riggen-app/tests/visual_scratch.rs +0 -59
- riggen-0.1.0/crates/riggen-core/src/command.rs +0 -1062
- riggen-0.1.0/crates/riggen-core/src/file.rs +0 -639
- riggen-0.1.0/crates/riggen-core/src/lib.rs +0 -34
- riggen-0.1.0/crates/riggen-core/src/robot.rs +0 -439
- riggen-0.1.0/crates/riggen-core/src/validate.rs +0 -701
- riggen-0.1.0/crates/riggen-export/src/export.rs +0 -164
- riggen-0.1.0/crates/riggen-export/src/fk_samples.rs +0 -164
- riggen-0.1.0/crates/riggen-export/src/lib.rs +0 -26
- riggen-0.1.0/crates/riggen-export/src/mjcf.rs +0 -343
- riggen-0.1.0/crates/riggen-export/src/resolve.rs +0 -771
- riggen-0.1.0/crates/riggen-export/src/test_util.rs +0 -136
- riggen-0.1.0/crates/riggen-export/src/xml.rs +0 -159
- riggen-0.1.0/crates/riggen-viewport/Cargo.toml +0 -14
- riggen-0.1.0/crates/riggen-viewport/src/camera/animation.rs +0 -180
- riggen-0.1.0/crates/riggen-viewport/src/camera/mod.rs +0 -13
- riggen-0.1.0/crates/riggen-viewport/src/camera/orbit.rs +0 -341
- riggen-0.1.0/crates/riggen-viewport/src/camera/orientation.rs +0 -358
- riggen-0.1.0/crates/riggen-viewport/src/camera/tests.rs +0 -520
- riggen-0.1.0/crates/riggen-viewport/src/gpu_mesh.rs +0 -288
- riggen-0.1.0/crates/riggen-viewport/src/lib.rs +0 -29
- riggen-0.1.0/crates/riggen-viewport/src/overlay.rs +0 -164
- riggen-0.1.0/crates/riggen-viewport/src/pick_id.rs +0 -86
- riggen-0.1.0/crates/riggen-viewport/src/scene.rs +0 -514
- riggen-0.1.0/crates/riggen-viewport/src/shaders/axes.wgsl +0 -30
- riggen-0.1.0/crates/riggen-viewport/src/shaders/background.wgsl +0 -99
- riggen-0.1.0/crates/riggen-viewport/src/shaders/blit.wgsl +0 -26
- riggen-0.1.0/crates/riggen-viewport/src/shaders/hover.wgsl +0 -23
- riggen-0.1.0/crates/riggen-viewport/src/shaders/pick.wgsl +0 -32
- riggen-0.1.0/crates/riggen-viewport/src/shaders/scene.wgsl +0 -41
- riggen-0.1.0/crates/riggen-viewport/src/shaders/select.wgsl +0 -23
- riggen-0.1.0/crates/riggen-viewport/src/viewport/gpu_state.rs +0 -179
- riggen-0.1.0/crates/riggen-viewport/src/viewport/mod.rs +0 -1023
- riggen-0.1.0/crates/riggen-viewport/src/viewport/picking.rs +0 -261
- riggen-0.1.0/crates/riggen-viewport/src/viewport/pipelines.rs +0 -283
- riggen-0.1.0/crates/riggen-viewport/src/viewport/render_pass.rs +0 -311
- riggen-0.1.0/pyproject.toml +0 -59
- riggen-0.1.0/python/riggen/__init__.py +0 -19
- riggen-0.1.0/python/riggen/__main__.py +0 -47
- {riggen-0.1.0 → riggen-0.2.1.dev0}/LICENSE-APACHE +0 -0
- {riggen-0.1.0 → riggen-0.2.1.dev0}/LICENSE-MIT +0 -0
- {riggen-0.1.0 → riggen-0.2.1.dev0}/crates/riggen-core/Cargo.toml +0 -0
- {riggen-0.1.0 → riggen-0.2.1.dev0}/crates/riggen-mesh/src/aabb.rs +0 -0
- {riggen-0.1.0 → riggen-0.2.1.dev0}/crates/riggen-mesh/src/fit.rs +0 -0
- {riggen-0.1.0 → riggen-0.2.1.dev0}/crates/riggen-mesh/src/hull.rs +0 -0
|
@@ -214,6 +214,15 @@ version = "1.0.104"
|
|
|
214
214
|
source = "registry+https://github.com/rust-lang/crates.io-index"
|
|
215
215
|
checksum = "330a5ed07fa54e4702c9d6c4174f74427fc0ef6e214bbd677ae50a5099946470"
|
|
216
216
|
|
|
217
|
+
[[package]]
|
|
218
|
+
name = "approx"
|
|
219
|
+
version = "0.5.1"
|
|
220
|
+
source = "registry+https://github.com/rust-lang/crates.io-index"
|
|
221
|
+
checksum = "cab112f0a86d568ea0e627cc1d6be74a1e9cd55214684db5561995f6dad897c6"
|
|
222
|
+
dependencies = [
|
|
223
|
+
"num-traits",
|
|
224
|
+
]
|
|
225
|
+
|
|
217
226
|
[[package]]
|
|
218
227
|
name = "arboard"
|
|
219
228
|
version = "3.6.1"
|
|
@@ -572,6 +581,12 @@ dependencies = [
|
|
|
572
581
|
"syn 3.0.4",
|
|
573
582
|
]
|
|
574
583
|
|
|
584
|
+
[[package]]
|
|
585
|
+
name = "byteorder"
|
|
586
|
+
version = "1.5.0"
|
|
587
|
+
source = "registry+https://github.com/rust-lang/crates.io-index"
|
|
588
|
+
checksum = "1fd0f2584146f6f2ef48085050886acf353beff7305ebd1ae69500e27c67f64b"
|
|
589
|
+
|
|
575
590
|
[[package]]
|
|
576
591
|
name = "byteorder-lite"
|
|
577
592
|
version = "0.1.0"
|
|
@@ -922,6 +937,12 @@ version = "1.2.1"
|
|
|
922
937
|
source = "registry+https://github.com/rust-lang/crates.io-index"
|
|
923
938
|
checksum = "75b325c5dbd37f80359721ad39aca5a29fb04c89279657cffdda8736d0c0b9d2"
|
|
924
939
|
|
|
940
|
+
[[package]]
|
|
941
|
+
name = "downcast-rs"
|
|
942
|
+
version = "2.0.2"
|
|
943
|
+
source = "registry+https://github.com/rust-lang/crates.io-index"
|
|
944
|
+
checksum = "117240f60069e65410b3ae1bb213295bd828f707b5bec6596a1afc8793ce0cbc"
|
|
945
|
+
|
|
925
946
|
[[package]]
|
|
926
947
|
name = "dpi"
|
|
927
948
|
version = "0.1.2"
|
|
@@ -1092,6 +1113,15 @@ dependencies = [
|
|
|
1092
1113
|
"serde",
|
|
1093
1114
|
]
|
|
1094
1115
|
|
|
1116
|
+
[[package]]
|
|
1117
|
+
name = "ena"
|
|
1118
|
+
version = "0.14.4"
|
|
1119
|
+
source = "registry+https://github.com/rust-lang/crates.io-index"
|
|
1120
|
+
checksum = "eabffdaee24bd1bf95c5ef7cec31260444317e72ea56c4c91750e8b7ee58d5f1"
|
|
1121
|
+
dependencies = [
|
|
1122
|
+
"log",
|
|
1123
|
+
]
|
|
1124
|
+
|
|
1095
1125
|
[[package]]
|
|
1096
1126
|
name = "endi"
|
|
1097
1127
|
version = "1.1.1"
|
|
@@ -1488,6 +1518,28 @@ dependencies = [
|
|
|
1488
1518
|
"mint",
|
|
1489
1519
|
]
|
|
1490
1520
|
|
|
1521
|
+
[[package]]
|
|
1522
|
+
name = "glam"
|
|
1523
|
+
version = "0.33.6"
|
|
1524
|
+
source = "registry+https://github.com/rust-lang/crates.io-index"
|
|
1525
|
+
checksum = "21fef0953c54fd3de2f44b743fbf77e044c81a25faee03636dfccc0d35135e23"
|
|
1526
|
+
dependencies = [
|
|
1527
|
+
"approx",
|
|
1528
|
+
"libm",
|
|
1529
|
+
]
|
|
1530
|
+
|
|
1531
|
+
[[package]]
|
|
1532
|
+
name = "glamx"
|
|
1533
|
+
version = "0.3.0"
|
|
1534
|
+
source = "registry+https://github.com/rust-lang/crates.io-index"
|
|
1535
|
+
checksum = "9847f980afb0628849bcd6a406cdffd29eb9d53fca83e1646005901a9acd4c5c"
|
|
1536
|
+
dependencies = [
|
|
1537
|
+
"approx",
|
|
1538
|
+
"glam 0.33.6",
|
|
1539
|
+
"num-traits",
|
|
1540
|
+
"simba",
|
|
1541
|
+
]
|
|
1542
|
+
|
|
1491
1543
|
[[package]]
|
|
1492
1544
|
name = "glifo"
|
|
1493
1545
|
version = "0.2.0"
|
|
@@ -1629,6 +1681,15 @@ dependencies = [
|
|
|
1629
1681
|
"smallvec",
|
|
1630
1682
|
]
|
|
1631
1683
|
|
|
1684
|
+
[[package]]
|
|
1685
|
+
name = "hash32"
|
|
1686
|
+
version = "0.3.1"
|
|
1687
|
+
source = "registry+https://github.com/rust-lang/crates.io-index"
|
|
1688
|
+
checksum = "47d60b12902ba28e2730cd37e95b8c9223af2808df9e902d4df49588d1470606"
|
|
1689
|
+
dependencies = [
|
|
1690
|
+
"byteorder",
|
|
1691
|
+
]
|
|
1692
|
+
|
|
1632
1693
|
[[package]]
|
|
1633
1694
|
name = "hashbrown"
|
|
1634
1695
|
version = "0.16.1"
|
|
@@ -1649,6 +1710,22 @@ dependencies = [
|
|
|
1649
1710
|
"foldhash",
|
|
1650
1711
|
]
|
|
1651
1712
|
|
|
1713
|
+
[[package]]
|
|
1714
|
+
name = "heapless"
|
|
1715
|
+
version = "0.8.0"
|
|
1716
|
+
source = "registry+https://github.com/rust-lang/crates.io-index"
|
|
1717
|
+
checksum = "0bfb9eb618601c89945a70e254898da93b13be0388091d42117462b265bb3fad"
|
|
1718
|
+
dependencies = [
|
|
1719
|
+
"hash32",
|
|
1720
|
+
"stable_deref_trait",
|
|
1721
|
+
]
|
|
1722
|
+
|
|
1723
|
+
[[package]]
|
|
1724
|
+
name = "heck"
|
|
1725
|
+
version = "0.5.0"
|
|
1726
|
+
source = "registry+https://github.com/rust-lang/crates.io-index"
|
|
1727
|
+
checksum = "2304e00983f87ffb38b55b444b5e3b60a884b5d30c0fca7d82fe33449bbe55ea"
|
|
1728
|
+
|
|
1652
1729
|
[[package]]
|
|
1653
1730
|
name = "hermit-abi"
|
|
1654
1731
|
version = "0.5.2"
|
|
@@ -2166,6 +2243,26 @@ version = "0.2.0"
|
|
|
2166
2243
|
source = "registry+https://github.com/rust-lang/crates.io-index"
|
|
2167
2244
|
checksum = "2bf50223579dc7cdcfb3bfcacf7069ff68243f8c363f62ffa99cf000a6b9c451"
|
|
2168
2245
|
|
|
2246
|
+
[[package]]
|
|
2247
|
+
name = "num-complex"
|
|
2248
|
+
version = "0.4.6"
|
|
2249
|
+
source = "registry+https://github.com/rust-lang/crates.io-index"
|
|
2250
|
+
checksum = "73f88a1307638156682bada9d7604135552957b7818057dcef22705b4d509495"
|
|
2251
|
+
dependencies = [
|
|
2252
|
+
"num-traits",
|
|
2253
|
+
]
|
|
2254
|
+
|
|
2255
|
+
[[package]]
|
|
2256
|
+
name = "num-derive"
|
|
2257
|
+
version = "0.4.2"
|
|
2258
|
+
source = "registry+https://github.com/rust-lang/crates.io-index"
|
|
2259
|
+
checksum = "ed3955f1a9c7c0c15e092f9c887db08b1fc683305fdf6eb6684f22555355e202"
|
|
2260
|
+
dependencies = [
|
|
2261
|
+
"proc-macro2",
|
|
2262
|
+
"quote",
|
|
2263
|
+
"syn 2.0.119",
|
|
2264
|
+
]
|
|
2265
|
+
|
|
2169
2266
|
[[package]]
|
|
2170
2267
|
name = "num-traits"
|
|
2171
2268
|
version = "0.2.19"
|
|
@@ -2592,6 +2689,33 @@ dependencies = [
|
|
|
2592
2689
|
"windows-link",
|
|
2593
2690
|
]
|
|
2594
2691
|
|
|
2692
|
+
[[package]]
|
|
2693
|
+
name = "parry3d-f64"
|
|
2694
|
+
version = "0.30.2"
|
|
2695
|
+
source = "registry+https://github.com/rust-lang/crates.io-index"
|
|
2696
|
+
checksum = "8c5f71cd1d7f0c475116a52c61baa8d0de69fc258bc4debf86cb4c4ca8f35f3f"
|
|
2697
|
+
dependencies = [
|
|
2698
|
+
"approx",
|
|
2699
|
+
"arrayvec",
|
|
2700
|
+
"bitflags 2.13.1",
|
|
2701
|
+
"downcast-rs 2.0.2",
|
|
2702
|
+
"either",
|
|
2703
|
+
"ena",
|
|
2704
|
+
"foldhash",
|
|
2705
|
+
"glamx",
|
|
2706
|
+
"hashbrown 0.17.1",
|
|
2707
|
+
"log",
|
|
2708
|
+
"num-derive",
|
|
2709
|
+
"num-traits",
|
|
2710
|
+
"ordered-float",
|
|
2711
|
+
"rstar",
|
|
2712
|
+
"simba",
|
|
2713
|
+
"slab",
|
|
2714
|
+
"smallvec",
|
|
2715
|
+
"spade",
|
|
2716
|
+
"thiserror 2.0.20",
|
|
2717
|
+
]
|
|
2718
|
+
|
|
2595
2719
|
[[package]]
|
|
2596
2720
|
name = "peniko"
|
|
2597
2721
|
version = "0.6.1"
|
|
@@ -2820,6 +2944,63 @@ version = "0.1.30"
|
|
|
2820
2944
|
source = "registry+https://github.com/rust-lang/crates.io-index"
|
|
2821
2945
|
checksum = "d55d956fa96f5ec02be2e13af0e20391a5aa83d6a074e3ad368959d0fab299ea"
|
|
2822
2946
|
|
|
2947
|
+
[[package]]
|
|
2948
|
+
name = "pyo3"
|
|
2949
|
+
version = "0.29.2"
|
|
2950
|
+
source = "registry+https://github.com/rust-lang/crates.io-index"
|
|
2951
|
+
checksum = "4688ddedf473e32662b9b067670129a8afb8c18e351482c70d62ba4a88171e8b"
|
|
2952
|
+
dependencies = [
|
|
2953
|
+
"libc",
|
|
2954
|
+
"once_cell",
|
|
2955
|
+
"portable-atomic",
|
|
2956
|
+
"pyo3-build-config",
|
|
2957
|
+
"pyo3-ffi",
|
|
2958
|
+
"pyo3-macros",
|
|
2959
|
+
]
|
|
2960
|
+
|
|
2961
|
+
[[package]]
|
|
2962
|
+
name = "pyo3-build-config"
|
|
2963
|
+
version = "0.29.2"
|
|
2964
|
+
source = "registry+https://github.com/rust-lang/crates.io-index"
|
|
2965
|
+
checksum = "f41027e41b4bd03f6e60f9f417fe24a6341a6bb744edd62b6f709f2a52ea30e9"
|
|
2966
|
+
dependencies = [
|
|
2967
|
+
"target-lexicon",
|
|
2968
|
+
]
|
|
2969
|
+
|
|
2970
|
+
[[package]]
|
|
2971
|
+
name = "pyo3-ffi"
|
|
2972
|
+
version = "0.29.2"
|
|
2973
|
+
source = "registry+https://github.com/rust-lang/crates.io-index"
|
|
2974
|
+
checksum = "e591a95526fead067432c3b3a33fc74770b87b1e04e73671090d9c2055a2b327"
|
|
2975
|
+
dependencies = [
|
|
2976
|
+
"libc",
|
|
2977
|
+
"pyo3-build-config",
|
|
2978
|
+
]
|
|
2979
|
+
|
|
2980
|
+
[[package]]
|
|
2981
|
+
name = "pyo3-macros"
|
|
2982
|
+
version = "0.29.2"
|
|
2983
|
+
source = "registry+https://github.com/rust-lang/crates.io-index"
|
|
2984
|
+
checksum = "73225868fc1cd84eef2c3c230ddb91273bf1de46aeb8a4248da76d32a0924a1c"
|
|
2985
|
+
dependencies = [
|
|
2986
|
+
"proc-macro2",
|
|
2987
|
+
"pyo3-macros-backend",
|
|
2988
|
+
"quote",
|
|
2989
|
+
"syn 2.0.119",
|
|
2990
|
+
]
|
|
2991
|
+
|
|
2992
|
+
[[package]]
|
|
2993
|
+
name = "pyo3-macros-backend"
|
|
2994
|
+
version = "0.29.2"
|
|
2995
|
+
source = "registry+https://github.com/rust-lang/crates.io-index"
|
|
2996
|
+
checksum = "571575aa3749fa6216757dd47d2a3e7ef360f329a40f0666a9fbd14889024952"
|
|
2997
|
+
dependencies = [
|
|
2998
|
+
"heck",
|
|
2999
|
+
"proc-macro2",
|
|
3000
|
+
"quote",
|
|
3001
|
+
"syn 2.0.119",
|
|
3002
|
+
]
|
|
3003
|
+
|
|
2823
3004
|
[[package]]
|
|
2824
3005
|
name = "quick-error"
|
|
2825
3006
|
version = "2.0.1"
|
|
@@ -3042,7 +3223,7 @@ version = "0.0.1"
|
|
|
3042
3223
|
|
|
3043
3224
|
[[package]]
|
|
3044
3225
|
name = "riggen-app"
|
|
3045
|
-
version = "0.1
|
|
3226
|
+
version = "0.2.1-dev"
|
|
3046
3227
|
dependencies = [
|
|
3047
3228
|
"console_error_panic_hook",
|
|
3048
3229
|
"eframe",
|
|
@@ -3050,6 +3231,7 @@ dependencies = [
|
|
|
3050
3231
|
"egui-wgpu",
|
|
3051
3232
|
"egui_kittest",
|
|
3052
3233
|
"getrandom 0.3.4",
|
|
3234
|
+
"js-sys",
|
|
3053
3235
|
"pollster 1.0.1",
|
|
3054
3236
|
"rfd",
|
|
3055
3237
|
"riggen-core",
|
|
@@ -3063,11 +3245,12 @@ dependencies = [
|
|
|
3063
3245
|
"wasm-bindgen-futures",
|
|
3064
3246
|
"web-sys",
|
|
3065
3247
|
"web-time",
|
|
3248
|
+
"zip",
|
|
3066
3249
|
]
|
|
3067
3250
|
|
|
3068
3251
|
[[package]]
|
|
3069
3252
|
name = "riggen-core"
|
|
3070
|
-
version = "0.1
|
|
3253
|
+
version = "0.2.1-dev"
|
|
3071
3254
|
dependencies = [
|
|
3072
3255
|
"riggen-mesh",
|
|
3073
3256
|
"serde",
|
|
@@ -3076,8 +3259,9 @@ dependencies = [
|
|
|
3076
3259
|
|
|
3077
3260
|
[[package]]
|
|
3078
3261
|
name = "riggen-export"
|
|
3079
|
-
version = "0.1
|
|
3262
|
+
version = "0.2.1-dev"
|
|
3080
3263
|
dependencies = [
|
|
3264
|
+
"quick-xml 0.36.2",
|
|
3081
3265
|
"riggen-core",
|
|
3082
3266
|
"riggen-mesh",
|
|
3083
3267
|
"serde",
|
|
@@ -3087,16 +3271,29 @@ dependencies = [
|
|
|
3087
3271
|
|
|
3088
3272
|
[[package]]
|
|
3089
3273
|
name = "riggen-mesh"
|
|
3090
|
-
version = "0.1
|
|
3274
|
+
version = "0.2.1-dev"
|
|
3091
3275
|
dependencies = [
|
|
3092
3276
|
"glam 0.30.10",
|
|
3277
|
+
"parry3d-f64",
|
|
3093
3278
|
"stl_io",
|
|
3094
3279
|
"tobj",
|
|
3095
3280
|
]
|
|
3096
3281
|
|
|
3282
|
+
[[package]]
|
|
3283
|
+
name = "riggen-py"
|
|
3284
|
+
version = "0.2.1-dev"
|
|
3285
|
+
dependencies = [
|
|
3286
|
+
"pyo3",
|
|
3287
|
+
"riggen-core",
|
|
3288
|
+
"riggen-export",
|
|
3289
|
+
"riggen-mesh",
|
|
3290
|
+
"serde",
|
|
3291
|
+
"serde_json",
|
|
3292
|
+
]
|
|
3293
|
+
|
|
3097
3294
|
[[package]]
|
|
3098
3295
|
name = "riggen-viewport"
|
|
3099
|
-
version = "0.1
|
|
3296
|
+
version = "0.2.1-dev"
|
|
3100
3297
|
dependencies = [
|
|
3101
3298
|
"bytemuck",
|
|
3102
3299
|
"egui",
|
|
@@ -3105,6 +3302,12 @@ dependencies = [
|
|
|
3105
3302
|
"web-time",
|
|
3106
3303
|
]
|
|
3107
3304
|
|
|
3305
|
+
[[package]]
|
|
3306
|
+
name = "robust"
|
|
3307
|
+
version = "1.2.0"
|
|
3308
|
+
source = "registry+https://github.com/rust-lang/crates.io-index"
|
|
3309
|
+
checksum = "4e27ee8bb91ca0adcf0ecb116293afa12d393f9c2b9b9cd54d33e8078fe19839"
|
|
3310
|
+
|
|
3108
3311
|
[[package]]
|
|
3109
3312
|
name = "ron"
|
|
3110
3313
|
version = "0.12.2"
|
|
@@ -3119,6 +3322,17 @@ dependencies = [
|
|
|
3119
3322
|
"unicode-ident",
|
|
3120
3323
|
]
|
|
3121
3324
|
|
|
3325
|
+
[[package]]
|
|
3326
|
+
name = "rstar"
|
|
3327
|
+
version = "0.13.0"
|
|
3328
|
+
source = "registry+https://github.com/rust-lang/crates.io-index"
|
|
3329
|
+
checksum = "5912b862fa5ffb462607bfd1e35036c458c537921f508c8235a83d5f3987edfe"
|
|
3330
|
+
dependencies = [
|
|
3331
|
+
"heapless",
|
|
3332
|
+
"num-traits",
|
|
3333
|
+
"smallvec",
|
|
3334
|
+
]
|
|
3335
|
+
|
|
3122
3336
|
[[package]]
|
|
3123
3337
|
name = "rustc-hash"
|
|
3124
3338
|
version = "1.1.0"
|
|
@@ -3172,6 +3386,15 @@ version = "1.0.23"
|
|
|
3172
3386
|
source = "registry+https://github.com/rust-lang/crates.io-index"
|
|
3173
3387
|
checksum = "cf54715a573b99ac80df0bc206da022bcd442c974952c7b9720069370852e21f"
|
|
3174
3388
|
|
|
3389
|
+
[[package]]
|
|
3390
|
+
name = "safe_arch"
|
|
3391
|
+
version = "1.2.0"
|
|
3392
|
+
source = "registry+https://github.com/rust-lang/crates.io-index"
|
|
3393
|
+
checksum = "42c6efa15875e6ecb39ca61fb0b0c1a40b84fac5a5ffe71eef7d1000c8eb3f5f"
|
|
3394
|
+
dependencies = [
|
|
3395
|
+
"bytemuck",
|
|
3396
|
+
]
|
|
3397
|
+
|
|
3175
3398
|
[[package]]
|
|
3176
3399
|
name = "same-file"
|
|
3177
3400
|
version = "1.0.6"
|
|
@@ -3309,6 +3532,18 @@ dependencies = [
|
|
|
3309
3532
|
"libc",
|
|
3310
3533
|
]
|
|
3311
3534
|
|
|
3535
|
+
[[package]]
|
|
3536
|
+
name = "simba"
|
|
3537
|
+
version = "0.10.2"
|
|
3538
|
+
source = "registry+https://github.com/rust-lang/crates.io-index"
|
|
3539
|
+
checksum = "f1a7200d82ff1c7b4235efd12f11e2537a402c91cf83a5cb97ce80eef787fde7"
|
|
3540
|
+
dependencies = [
|
|
3541
|
+
"approx",
|
|
3542
|
+
"num-complex",
|
|
3543
|
+
"num-traits",
|
|
3544
|
+
"wide",
|
|
3545
|
+
]
|
|
3546
|
+
|
|
3312
3547
|
[[package]]
|
|
3313
3548
|
name = "simd-adler32"
|
|
3314
3549
|
version = "0.3.10"
|
|
@@ -3443,6 +3678,18 @@ dependencies = [
|
|
|
3443
3678
|
"serde",
|
|
3444
3679
|
]
|
|
3445
3680
|
|
|
3681
|
+
[[package]]
|
|
3682
|
+
name = "spade"
|
|
3683
|
+
version = "2.15.1"
|
|
3684
|
+
source = "registry+https://github.com/rust-lang/crates.io-index"
|
|
3685
|
+
checksum = "9699399fd9349b00b184f5635b074f9ec93afffef30c853f8c875b32c0f8c7fa"
|
|
3686
|
+
dependencies = [
|
|
3687
|
+
"hashbrown 0.16.1",
|
|
3688
|
+
"num-traits",
|
|
3689
|
+
"robust",
|
|
3690
|
+
"smallvec",
|
|
3691
|
+
]
|
|
3692
|
+
|
|
3446
3693
|
[[package]]
|
|
3447
3694
|
name = "spirv"
|
|
3448
3695
|
version = "0.4.0+sdk-1.4.341.0"
|
|
@@ -3509,6 +3756,12 @@ dependencies = [
|
|
|
3509
3756
|
"syn 2.0.119",
|
|
3510
3757
|
]
|
|
3511
3758
|
|
|
3759
|
+
[[package]]
|
|
3760
|
+
name = "target-lexicon"
|
|
3761
|
+
version = "0.13.5"
|
|
3762
|
+
source = "registry+https://github.com/rust-lang/crates.io-index"
|
|
3763
|
+
checksum = "adb6935a6f5c20170eeceb1a3835a49e12e19d792f6dd344ccc76a985ca5a6ca"
|
|
3764
|
+
|
|
3512
3765
|
[[package]]
|
|
3513
3766
|
name = "tempfile"
|
|
3514
3767
|
version = "3.27.0"
|
|
@@ -3742,6 +3995,12 @@ dependencies = [
|
|
|
3742
3995
|
"rustc-hash 2.1.3",
|
|
3743
3996
|
]
|
|
3744
3997
|
|
|
3998
|
+
[[package]]
|
|
3999
|
+
name = "typed-path"
|
|
4000
|
+
version = "0.12.3"
|
|
4001
|
+
source = "registry+https://github.com/rust-lang/crates.io-index"
|
|
4002
|
+
checksum = "8e28f89b80c87b8fb0cf04ab448d5dd0dd0ade2f8891bae878de66a75a28600e"
|
|
4003
|
+
|
|
3745
4004
|
[[package]]
|
|
3746
4005
|
name = "typeid"
|
|
3747
4006
|
version = "1.0.3"
|
|
@@ -3947,7 +4206,7 @@ source = "registry+https://github.com/rust-lang/crates.io-index"
|
|
|
3947
4206
|
checksum = "38a91b4eaddff87b1cd1074985e3713da4af2c49742d1b356b2c01670a67a078"
|
|
3948
4207
|
dependencies = [
|
|
3949
4208
|
"cc",
|
|
3950
|
-
"downcast-rs",
|
|
4209
|
+
"downcast-rs 1.2.1",
|
|
3951
4210
|
"rustix 1.1.4",
|
|
3952
4211
|
"scoped-tls",
|
|
3953
4212
|
"smallvec",
|
|
@@ -4300,6 +4559,16 @@ dependencies = [
|
|
|
4300
4559
|
"web-sys",
|
|
4301
4560
|
]
|
|
4302
4561
|
|
|
4562
|
+
[[package]]
|
|
4563
|
+
name = "wide"
|
|
4564
|
+
version = "1.7.0"
|
|
4565
|
+
source = "registry+https://github.com/rust-lang/crates.io-index"
|
|
4566
|
+
checksum = "8cf05ca94c9fba0c51316899caa1d1e74a064fc310a5efa7375e614343d415be"
|
|
4567
|
+
dependencies = [
|
|
4568
|
+
"bytemuck",
|
|
4569
|
+
"safe_arch",
|
|
4570
|
+
]
|
|
4571
|
+
|
|
4303
4572
|
[[package]]
|
|
4304
4573
|
name = "winapi-util"
|
|
4305
4574
|
version = "0.1.11"
|
|
@@ -4923,6 +5192,18 @@ dependencies = [
|
|
|
4923
5192
|
"syn 3.0.4",
|
|
4924
5193
|
]
|
|
4925
5194
|
|
|
5195
|
+
[[package]]
|
|
5196
|
+
name = "zip"
|
|
5197
|
+
version = "8.6.0"
|
|
5198
|
+
source = "registry+https://github.com/rust-lang/crates.io-index"
|
|
5199
|
+
checksum = "2d04a6b5381502aa6087c94c669499eb1602eb9c5e8198e534de571f7154809b"
|
|
5200
|
+
dependencies = [
|
|
5201
|
+
"crc32fast",
|
|
5202
|
+
"indexmap",
|
|
5203
|
+
"memchr",
|
|
5204
|
+
"typed-path",
|
|
5205
|
+
]
|
|
5206
|
+
|
|
4926
5207
|
[[package]]
|
|
4927
5208
|
name = "zlib-rs"
|
|
4928
5209
|
version = "0.6.7"
|
|
@@ -1,21 +1,27 @@
|
|
|
1
1
|
[workspace]
|
|
2
2
|
resolver = "3"
|
|
3
|
-
members = ["crates/riggen-mesh", "crates/riggen-core", "crates/riggen-export", "crates/riggen-
|
|
3
|
+
members = ["crates/riggen-mesh", "crates/riggen-core", "crates/riggen-export", "crates/riggen-py"]
|
|
4
4
|
|
|
5
5
|
[workspace.package]
|
|
6
|
-
version = "0.1
|
|
6
|
+
version = "0.2.1-dev"
|
|
7
7
|
edition = "2024"
|
|
8
8
|
license = "MIT OR Apache-2.0"
|
|
9
9
|
|
|
10
10
|
# `cargo run` is the interactive loop, and an unoptimized wgpu/egui is slow
|
|
11
11
|
# enough to be felt. Deps are built once at full optimization; our own crates
|
|
12
|
-
# stay at `1` so backtraces and stepping still work (docs/
|
|
12
|
+
# stay at `1` so backtraces and stepping still work (docs/ARCHITECTURE.md
|
|
13
13
|
# §Cargo workspace, carried from RoboCAD).
|
|
14
14
|
[profile.dev]
|
|
15
15
|
opt-level = 1
|
|
16
16
|
|
|
17
|
+
# `debug = false` for dependencies only: 93% of a debug binary was DWARF for
|
|
18
|
+
# crates nobody steps through (596 MB → 39 MB stripped, measured 2026-09-06),
|
|
19
|
+
# and cargo never collects the old copies, so `target/` reached 76 GB. Their
|
|
20
|
+
# symbol names survive in backtraces — that is the symbol table, not debug
|
|
21
|
+
# info — and our own crates above keep theirs in full.
|
|
17
22
|
[profile.dev.package."*"]
|
|
18
23
|
opt-level = 3
|
|
24
|
+
debug = false
|
|
19
25
|
|
|
20
26
|
# The wheel is the product (ADR-0002): its size is what `pip install` pulls
|
|
21
27
|
# and its startup is what the user sees. Stripped, thin-LTO, one codegen
|
|
@@ -25,6 +31,21 @@ strip = true
|
|
|
25
31
|
lto = "thin"
|
|
26
32
|
codegen-units = 1
|
|
27
33
|
|
|
34
|
+
# The web demo (ADR-0017, Architecture §The web build). What the browser
|
|
35
|
+
# pays for
|
|
36
|
+
# is the *download*, not the last few percent of throughput: `opt-level = "s"`
|
|
37
|
+
# and fat LTO over the whole graph trade a little speed for a much smaller
|
|
38
|
+
# `.wasm`, and the viewport still holds 60 fps (the demo's own status bar
|
|
39
|
+
# says so). `panic = "abort"` is deliberately **not** here: eframe's panic
|
|
40
|
+
# handler is what turns a crash into a page that says what happened
|
|
41
|
+
# (`web/main.js`), and unwinding is how it gets the message.
|
|
42
|
+
[profile.web]
|
|
43
|
+
inherits = "release"
|
|
44
|
+
opt-level = "s"
|
|
45
|
+
lto = "fat"
|
|
46
|
+
codegen-units = 1
|
|
47
|
+
strip = true
|
|
48
|
+
|
|
28
49
|
[workspace.dependencies]
|
|
29
50
|
riggen-mesh = { path = "crates/riggen-mesh" }
|
|
30
51
|
riggen-core = { path = "crates/riggen-core" }
|
|
@@ -45,6 +66,16 @@ stl_io = "0.11"
|
|
|
45
66
|
# build, where it does not compile without a JS shim we have no use for.
|
|
46
67
|
tobj = { version = "4", default-features = false, features = ["use_f64"] }
|
|
47
68
|
|
|
69
|
+
# Approximate convex decomposition (ADR-0011): Dimforge's pure-Rust V-HACD,
|
|
70
|
+
# `transformation::vhacd`, at f64 — the algorithm `riggen-mesh::decompose`
|
|
71
|
+
# wraps beside our own quickhull. Default features: `default-features =
|
|
72
|
+
# false` drops the crate's own `dim3`/`f64` selection and does not compile,
|
|
73
|
+
# and the default set pulls neither `rayon` nor `serde`. Its `glamx` bridge
|
|
74
|
+
# pins a third glam (0.33) beside our 0.30 and transform-gizmo's 0.32; no
|
|
75
|
+
# parry or glam-0.33 type appears in a riggen signature (ADR-0007's
|
|
76
|
+
# containment, applied again).
|
|
77
|
+
parry3d-f64 = "0.30"
|
|
78
|
+
|
|
48
79
|
# UI stack pinned together: egui/eframe/egui-wgpu 0.36.x from crates.io, wgpu
|
|
49
80
|
# version dictated by egui-wgpu — never depend on a different wgpu (ADR-0001).
|
|
50
81
|
egui = "0.36"
|
|
@@ -72,6 +103,26 @@ web-time = "1"
|
|
|
72
103
|
# URDF parser: the round-trip FK test reads our own URDF back through it
|
|
73
104
|
# (dev, step 6), and File › Import URDF… is built on it (step 13).
|
|
74
105
|
urdf-rs = "0.9"
|
|
106
|
+
# The XML pull parser behind `xml::parse`, the reading half of the MJCF
|
|
107
|
+
# import (ADR-0015 §2). 0.36 is the version `urdf-rs` already compiles, so
|
|
108
|
+
# this line adds a dependency and no crate. Escaping, CDATA and encodings
|
|
109
|
+
# are exactly what the writer's `escape` must not have to invert by hand.
|
|
110
|
+
quick-xml = "0.36"
|
|
111
|
+
|
|
112
|
+
# The Python SDK's binding layer (ADR-0009). `abi3-py310`: one extension
|
|
113
|
+
# module for every CPython ≥ 3.10 (`requires-python`), so the wheel matrix
|
|
114
|
+
# stays one wheel per platform. `extension-module` is *not* here — it is a
|
|
115
|
+
# feature of `riggen-py` that only maturin enables, so the workspace build
|
|
116
|
+
# still links libpython and `cargo clippy --workspace` sees the crate.
|
|
117
|
+
pyo3 = { version = "0.29", features = ["abi3-py310"] }
|
|
118
|
+
|
|
119
|
+
# Writing the export directory as one file, which is what a browser
|
|
120
|
+
# download is (ADR-0017 §6). `default-features = false`: no compression, no
|
|
121
|
+
# encryption, no time crate — a stored zip is a header, the bytes and a
|
|
122
|
+
# central directory, and the crate is here for the CRC-32 and the offsets,
|
|
123
|
+
# not for an algorithm. Not gated to wasm: the acceptance test that reads
|
|
124
|
+
# the archive back is native.
|
|
125
|
+
zip = { version = "8", default-features = false }
|
|
75
126
|
|
|
76
127
|
# Only to block on `Instance::enumerate_adapters` in the "is there a GPU at
|
|
77
128
|
# all?" probe of the snapshot harness — `egui_kittest` panics rather than
|