{"ok":true,"resource":{"id":"sand3d--automate--automate-03df77696471761e13ff8a78_1ce95426590fcb743d8c8782_c7cbdf488c6109589dca0235_default","sourceId":"sandflow-sand3d","sourceAssetId":"automate:03df77696471761e13ff8a78_1ce95426590fcb743d8c8782_c7cbdf488c6109589dca0235_default","name":"AUTOMATE 03Df77696471761E13Ff8A78 1Ce95 (Sand3D Program)","category":"industrial","publisher":"Sandflow","formats":["py","usda","glb"],"fileCount":2,"sizeBytes":422056,"kind":"3d-code","license":"CC-BY-4.0","revision":"ba1baf9d89ddf57433d7c47cb461f6d8883067a1","sourceUrl":"https://huggingface.co/datasets/Sandflow/sand3d-automate","entryUrl":"https://huggingface.co/datasets/SZFSPC/techidaily-resources/resolve/ba1baf9d89ddf57433d7c47cb461f6d8883067a1/usda/0006/automate-03df77696471761e13ff8a78_1ce95426590fcb743d8c8782_c7cbdf488c6109589dca0235_default.usda","thumbnailUrl":"https://sandflow-sand3d-explorer.hf.space/r/automate-03df77696471761e13ff8a78_1ce95426590fcb743d8c8782_c7cbdf488c6109589dca0235_default.png","detailImageUrl":"https://sandflow-sand3d-explorer.hf.space/r/automate-03df77696471761e13ff8a78_1ce95426590fcb743d8c8782_c7cbdf488c6109589dca0235_default.png","sourcePreviewUrl":"https://huggingface.co/datasets/SZFSPC/techidaily-resources/resolve/ba1baf9d89ddf57433d7c47cb461f6d8883067a1/usda/0006/automate-03df77696471761e13ff8a78_1ce95426590fcb743d8c8782_c7cbdf488c6109589dca0235_default.png","capabilities":["Sand3D (Code)","UsdPhysics","Kinematics Joint Articulation","Parametric Reconstruction"],"capabilityEvidence":"sand3d-program-analysis","runtimeValidation":"not-tested","classificationEvidence":"family-taxonomy-mapping","storageStatus":"hf-mirror-tree-verified","packageHash":"405198ba4bc1198f14765b55fd56c311e9f201486a3d46c38972c470a01397cc","contentHash":"504078339bcb3cba3b89856720744c37da41f6e8de86ffde9898e4566a725886","checkedAt":"2026-11-06T14:00:00.000Z","aiGenerated":false,"attribution":"Sandflow Sand3D Library; CC-BY-4.0","evidence":{"license":{"spdx":"CC-BY-4.0","url":"https://creativecommons.org/licenses/by/4.0/","location":"datasets/Sandflow/sand3d-automate/LICENSE"},"commercialPermitted":true,"notes":"Parametric 3D object from Sandflow/sand3d-automate (3,169 objects). Pinned revision 83cb3d4."},"outputFiles":[{"path":"usda/0006/automate-03df77696471761e13ff8a78_1ce95426590fcb743d8c8782_c7cbdf488c6109589dca0235_default.usda","format":"usda","sizeBytes":50000,"sha256":"405198ba4bc1198f14765b55fd56c311e9f201486a3d46c38972c470a01397cc","url":"https://huggingface.co/datasets/SZFSPC/techidaily-resources/resolve/ba1baf9d89ddf57433d7c47cb461f6d8883067a1/usda/0006/automate-03df77696471761e13ff8a78_1ce95426590fcb743d8c8782_c7cbdf488c6109589dca0235_default.usda"}],"sand3d":{"datasetRepo":"Sandflow/sand3d-automate","subcollection":"automate","totalInDataset":3169,"entryFunction":"part_a_assembly","nJoints":1,"fScore":0.9876,"program":"import sand3d as s3d\n\n\ndef part_a_assembly():\n    frame_ = frame_body()\n    bushing_carriage = carriage(frame_, \"bushing_carriage\", x=3.82, y=-22.29, z=12.65, ry=90)\n    return s3d.assembly(\"part_a_assembly\", frame_, bushing_carriage, frame=frame_, bushing_carriage=bushing_carriage)\n\n\ndef carriage(parent, name, x=0, y=0, z=0, rx=0, ry=0, rz=0):\n    frame = s3d.local(parent, x, y, z, rx, ry, rz)\n    bushing_carriage = s3d.at(bushing_carriage_body(f\"{name}\"), on=frame)\n    s3d.joint(f\"{name}_slide\", bushing_carriage, frame, kind=\"prismatic\", range=(-54.3, 45.8))\n    return bushing_carriage\n\n\ndef frame_body():\n    end_plate_piece = s3d.transform(end_plate(\"end_plate\"), y=50.73, z=12.65)\n    cross_rod_1 = s3d.transform(rod(\"cross_rod_1\", d=1.27, length=83.82), y=1.2, z=12.65, rz=90)\n    side_rail_1 = s3d.transform(side_rail(\"side_rail_1\"), x=-38.1, y=-1.28, z=12.65, rz=-90)\n    cross_rod_2 = s3d.transform(rod(\"cross_rod_2\", d=1.27, length=83.82), y=24.7, z=12.65, rz=90)\n    guide_rod_piece = s3d.transform(rod(\"guide_rod\", d=2.54, length=83.82), y=-45.79, z=12.65, rz=90)\n    side_rail_2 = s3d.transform(side_rail(\"side_rail_2\"), x=38.1, y=-1.28, z=12.65, rz=-90)\n    cross_rod_3 = s3d.transform(rod(\"cross_rod_3\", d=1.27, length=83.82), y=-22.29, z=12.65, rz=90)\n    return s3d.group(\n        \"frame\", end_plate_piece, cross_rod_1, side_rail_1, cross_rod_2, guide_rod_piece, side_rail_2, cross_rod_3\n    )\n\n\ndef bushing_carriage_body(name):\n    piece = s3d.transform(sliding_bushing(f\"{name}_piece\"), z=0.46, rx=90)\n    return s3d.group(name, piece)\n\n\ndef end_plate(name, length=101.6, thickness=5.08, height=25.4, bore_d=2.54, bore_spacing=76.2):\n    plate = s3d.extrude(name, s3d.rect(length, height), thickness, both=True)\n    s3d.hole(plate, bore_d, on=s3d.grid(2, 1, bore_spacing, 0))\n    return s3d.at(plate, rx=90)\n\n\ndef rod(name, d, length):\n    return s3d.at(s3d.extrude(name, s3d.circle(d), length, both=True), rx=90)\n\n\ndef sliding_bushing(name, outer_d=2.5, bore_d=1.27, length=0.91, edge_r=0.3):\n    full_length = length + 2 * edge_r\n    sleeve = s3d.extrude(name, s3d.circle(outer_d), full_length, both=True)\n    s3d.hole(sleeve, bore_d)\n    s3d.fillet(sleeve, edge_r, edges=\"all\")\n    return s3d.at(sleeve, rx=90)\n\n\ndef side_rail(name, length=104.03, depth=7.62, height=12.7):\n    radius = height / 2\n    end_center = length / 2 - radius\n    profile = s3d.poly(\n        [\n            (-length / 2, -radius),\n            (end_center, -radius),\n            s3d.arc(center=(end_center, 0), r=radius, start=270, end=450),\n            (end_center, radius),\n            (-length / 2, radius),\n        ]\n    )\n    rail = s3d.at(s3d.extrude(name, profile, depth, both=True), rx=90)\n    s3d.hole(rail, 1.27, on=[(-25.98, 0), (-2.49, 0), (21.01, 0)])\n    s3d.hole(rail, 2.54, on=(44.5, 0))\n    return rail","usdaPath":"usda/0006/automate-03df77696471761e13ff8a78_1ce95426590fcb743d8c8782_c7cbdf488c6109589dca0235_default.usda","programSha256":"504078339bcb3cba3b89856720744c37da41f6e8de86ffde9898e4566a725886","explorerUrl":"/resources/explorer?oid=automate-03df77696471761e13ff8a78_1ce95426590fcb743d8c8782_c7cbdf488c6109589dca0235_default","glbUrl":"https://sandflow-sand3d-explorer.hf.space/glb/automate-03df77696471761e13ff8a78_1ce95426590fcb743d8c8782_c7cbdf488c6109589dca0235_default.glb"},"downloadUrl":"https://huggingface.co/datasets/SZFSPC/techidaily-resources/tree/ba1baf9d89ddf57433d7c47cb461f6d8883067a1/usda/0006","mirror":{"repository":"SZFSPC/techidaily-resources","revision":"ba1baf9d89ddf57433d7c47cb461f6d8883067a1","checkedAt":"2026-11-06T14:00:00.000Z","verification":"official-huggingface-dataset-parquet-manifest"}},"analysis":{"suitability":"candidate-needs-runtime-validation","useCase":"scene-building","evidence":{"formats":"sand3d-python-program-and-openusd-manifest","capabilities":"sand3d-program-analysis","category":"family-taxonomy-mapping"},"limitations":["Runtime compatibility and physical behavior have not been tested by TechIDaily.","Sand3D programs export OpenUSD with UsdPhysics joints; requires sand3d library and Python 3.13 for direct execution.","Mirror verification checks Git tree identity and sampled delivery, not an independent rehash of every payload.","Follow source-specific licensing and attribution. Other rights may apply; no endorsement is implied.","Parametric Python reconstruction available (1 articulated joints, F-score: 0.9876)."],"requiredNextSteps":["Check materials, scale, performance and required file conversion in your target renderer."]}}