MVP with Tensorboard
68
web_p/GetInterfaces/get_interfaces.py
Normal file
|
@ -0,0 +1,68 @@
|
|||
import argparse
|
||||
import os
|
||||
import json
|
||||
import subprocess
|
||||
import signal
|
||||
import time
|
||||
|
||||
from ros2cli.node.strategy import NodeStrategy
|
||||
from ros2topic.api import get_topic_names_and_types
|
||||
|
||||
OUTPUT_FILE = "topics.json"
|
||||
TOPICS_FILTER = ["/parameter_events", "/rosout"]
|
||||
|
||||
def get_script_args(cfg):
|
||||
args = cfg["command"].split()
|
||||
args.append(cfg["package"])
|
||||
args.append(cfg["executable"])
|
||||
return args
|
||||
|
||||
def get_topics(filename, path):
|
||||
jsonpath = os.path.join(path, filename)
|
||||
|
||||
with NodeStrategy({}) as node:
|
||||
topic_names_and_types = get_topic_names_and_types(node=node, include_hidden_topics=False)
|
||||
|
||||
topic_info = []
|
||||
for (topic_name, topic_types) in topic_names_and_types:
|
||||
if not topic_name in TOPICS_FILTER:
|
||||
topic_info.append({"name": topic_name, "type": topic_types[0]})
|
||||
|
||||
print(f"---> number of topics: {len(topic_info)}")
|
||||
|
||||
j_data = {"topics": topic_info}
|
||||
with open(jsonpath, "w") as fh:
|
||||
json.dump(j_data, fh, indent=2)
|
||||
|
||||
for topic in topic_info:
|
||||
print(topic["name"])
|
||||
|
||||
if __name__ == "__main__":
|
||||
parser = argparse.ArgumentParser()
|
||||
parser.add_argument("--package", required=True, help="Json-string/file with package parameters")
|
||||
parser.add_argument("--path", default="", help="Output path")
|
||||
parser.add_argument("--json", default=OUTPUT_FILE, help="Output file name in json-format")
|
||||
parser.add_argument('--delay', default=5, type=int, help="Delay in seconds")
|
||||
args = parser.parse_args()
|
||||
|
||||
if args.package[-5:] == ".json":
|
||||
if not os.path.isfile(args.package):
|
||||
print(f"Error: no such file '{args.package}'")
|
||||
exit(-1)
|
||||
with open(args.package, "r") as f:
|
||||
j_data = f.read()
|
||||
else:
|
||||
j_data = args.package
|
||||
try:
|
||||
cfg = json.loads(j_data)
|
||||
except json.JSONDecodeError as e:
|
||||
print(f"JSon error: {e}")
|
||||
exit(-2)
|
||||
|
||||
cmd = get_script_args(cfg)
|
||||
process = subprocess.Popen(cmd, stdin=subprocess.PIPE, stdout=subprocess.PIPE, stderr=subprocess.PIPE)
|
||||
|
||||
time.sleep(args.delay)
|
||||
get_topics(args.json, args.path)
|
||||
|
||||
process.send_signal(signal.SIGINT)
|
2
web_p/GetInterfaces/get_interfaces.sh
Executable file
|
@ -0,0 +1,2 @@
|
|||
# запуск пакета и получение топиков ROS 2 в файле topics.json
|
||||
python get_interfaces.py --package test_package.json --delay 10
|
16
web_p/GetInterfaces/test_package.json
Normal file
|
@ -0,0 +1,16 @@
|
|||
{
|
||||
"sid": 3,
|
||||
"type": "digital_twin",
|
||||
"entity": "ROBOT",
|
||||
"description": "Robossembler Arm",
|
||||
"command": "ros2 launch",
|
||||
"package": "rbs_bringup",
|
||||
"executable": "single_robot.launch.py gazebo_gui:=false",
|
||||
"args": {
|
||||
"robot_name": "${NAME:string:''",
|
||||
"dof": "${NAME:number:''"
|
||||
},
|
||||
"interfaces": {
|
||||
"cmd": "python ros2_topic_to_json.py"
|
||||
}
|
||||
}
|
|
@ -15,6 +15,6 @@ def copy_and_move_folder(src, dst):
|
|||
except shutil.Error as e:
|
||||
print(f"Error: {e}")
|
||||
|
||||
source_folder = os.path.dirname(os.path.abspath(__file__)) + "/blender" #"/home/shalenikol/web_p/blender/"
|
||||
source_folder = os.path.dirname(os.path.abspath(__file__)) + "/blender/"
|
||||
|
||||
copy_and_move_folder(source_folder, args.path)
|
||||
copy_and_move_folder(source_folder, args.path)
|
||||
|
|
BIN
web_p/blender/.DS_Store
vendored
Normal file
BIN
web_p/blender/assets/.DS_Store
vendored
Normal file
|
@ -1,6 +0,0 @@
|
|||
{
|
||||
"assets": [
|
||||
{ "name": "bear_holder", "mesh": "./mesh/fork.stl", "image": "./images/bear_holder_220425.png" },
|
||||
{ "name": "bear_holder1", "mesh": "./mesh/fork.stl", "image": "./images/bear_holder_220425.png" }
|
||||
]
|
||||
}
|
Before Width: | Height: | Size: 22 KiB |
62
web_p/blender/libs.json
Normal file
|
@ -0,0 +1,62 @@
|
|||
[
|
||||
{
|
||||
"type": "OBJECT",
|
||||
"name": "body_down",
|
||||
"path": "libs/objects/body_down.blend",
|
||||
"dae": "libs/objects/body_down.dae",
|
||||
"fbx": "libs/objects/body_down.fbx",
|
||||
"glb": "libs/objects/body_down.glb",
|
||||
"ply": "libs/objects/body_down.ply",
|
||||
"thumbnail": "libs/objects/body_down.png"
|
||||
},
|
||||
{
|
||||
"type": "OBJECT",
|
||||
"name": "sol_gear",
|
||||
"path": "libs/objects/sol_gear.blend",
|
||||
"dae": "libs/objects/sol_gear.dae",
|
||||
"fbx": "libs/objects/sol_gear.fbx",
|
||||
"glb": "libs/objects/sol_gear.glb",
|
||||
"ply": "libs/objects/sol_gear.ply",
|
||||
"thumbnail": "libs/objects/sol_gear.png"
|
||||
},
|
||||
{
|
||||
"type": "OBJECT",
|
||||
"name": "output_shaft",
|
||||
"path": "libs/objects/output_shaft.blend",
|
||||
"dae": "libs/objects/output_shaft.dae",
|
||||
"fbx": "libs/objects/output_shaft.fbx",
|
||||
"glb": "libs/objects/output_shaft.glb",
|
||||
"ply": "libs/objects/output_shaft.ply",
|
||||
"thumbnail": "libs/objects/output_shaft.png"
|
||||
},
|
||||
{
|
||||
"type": "OBJECT",
|
||||
"name": "planet_gear",
|
||||
"path": "libs/objects/planet_gear.blend",
|
||||
"dae": "libs/objects/planet_gear.dae",
|
||||
"fbx": "libs/objects/planet_gear.fbx",
|
||||
"glb": "libs/objects/planet_gear.glb",
|
||||
"ply": "libs/objects/planet_gear.ply",
|
||||
"thumbnail": "libs/objects/planet_gear.png"
|
||||
},
|
||||
{
|
||||
"type": "OBJECT",
|
||||
"name": "body_up",
|
||||
"path": "libs/objects/body_up.blend",
|
||||
"dae": "libs/objects/body_up.dae",
|
||||
"fbx": "libs/objects/body_up.fbx",
|
||||
"glb": "libs/objects/body_up.glb",
|
||||
"ply": "libs/objects/body_up.ply",
|
||||
"thumbnail": "libs/objects/body_up.png"
|
||||
},
|
||||
{
|
||||
"type": "OBJECT",
|
||||
"name": "bolt",
|
||||
"path": "libs/objects/bolt.blend",
|
||||
"dae": "libs/objects/bolt.dae",
|
||||
"fbx": "libs/objects/bolt.fbx",
|
||||
"glb": "libs/objects/bolt.glb",
|
||||
"ply": "libs/objects/bolt.ply",
|
||||
"thumbnail": "libs/objects/bolt.png"
|
||||
}
|
||||
]
|
BIN
web_p/blender/libs/.DS_Store
vendored
Normal file
BIN
web_p/blender/libs/objects/body_down.blend
Normal file
89
web_p/blender/libs/objects/body_down.dae
Normal file
BIN
web_p/blender/libs/objects/body_down.fbx
Normal file
BIN
web_p/blender/libs/objects/body_down.glb
Normal file
2881
web_p/blender/libs/objects/body_down.obj
Normal file
1741
web_p/blender/libs/objects/body_down.ply
Normal file
BIN
web_p/blender/libs/objects/body_down.png
Normal file
After Width: | Height: | Size: 5.1 KiB |
BIN
web_p/blender/libs/objects/body_up.blend
Normal file
89
web_p/blender/libs/objects/body_up.dae
Normal file
BIN
web_p/blender/libs/objects/body_up.fbx
Normal file
BIN
web_p/blender/libs/objects/body_up.glb
Normal file
2913
web_p/blender/libs/objects/body_up.obj
Normal file
1757
web_p/blender/libs/objects/body_up.ply
Normal file
BIN
web_p/blender/libs/objects/body_up.png
Normal file
After Width: | Height: | Size: 3.7 KiB |
BIN
web_p/blender/libs/objects/bolt.blend
Normal file
89
web_p/blender/libs/objects/bolt.dae
Normal file
|
@ -0,0 +1,89 @@
|
|||
<?xml version="1.0" encoding="utf-8"?>
|
||||
<COLLADA xmlns="http://www.collada.org/2005/11/COLLADASchema" version="1.4.1" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">
|
||||
<asset>
|
||||
<contributor>
|
||||
<author>Blender User</author>
|
||||
<authoring_tool>Blender 4.1.0 commit date:1970-01-01, commit time:00:00, hash:unknown</authoring_tool>
|
||||
</contributor>
|
||||
<created>2024-06-14T14:53:05</created>
|
||||
<modified>2024-06-14T14:53:05</modified>
|
||||
<unit name="meter" meter="1"/>
|
||||
<up_axis>Z_UP</up_axis>
|
||||
</asset>
|
||||
<library_effects>
|
||||
<effect id="Robossembler_Black_Body-effect">
|
||||
<profile_COMMON>
|
||||
<technique sid="common">
|
||||
<lambert>
|
||||
<emission>
|
||||
<color sid="emission">0 0 0 1</color>
|
||||
</emission>
|
||||
<diffuse>
|
||||
<color sid="diffuse">0 0 0 1</color>
|
||||
</diffuse>
|
||||
<index_of_refraction>
|
||||
<float sid="ior">1.5</float>
|
||||
</index_of_refraction>
|
||||
</lambert>
|
||||
</technique>
|
||||
</profile_COMMON>
|
||||
</effect>
|
||||
</library_effects>
|
||||
<library_images/>
|
||||
<library_materials>
|
||||
<material id="Robossembler_Black_Body-material" name="Robossembler_Black_Body">
|
||||
<instance_effect url="#Robossembler_Black_Body-effect"/>
|
||||
</material>
|
||||
</library_materials>
|
||||
<library_geometries>
|
||||
<geometry id="bolt_001-mesh" name="bolt.001">
|
||||
<mesh>
|
||||
<source id="bolt_001-mesh-positions">
|
||||
<float_array id="bolt_001-mesh-positions-array" count="252">-0.02196466 0.02399194 0 -0.02193802 0.02368807 -0.01999998 -0.02196466 0.02399194 -0.01999998 -0.02193802 0.02368807 0 -0.02204358 0.02428656 0 -0.02204358 0.02428656 -0.01999998 -0.02217251 0.02456307 0 -0.02217251 0.02456307 -0.01999998 -0.02234745 0.02481293 -0.01999998 -0.02234745 0.02481293 0 -0.02256315 0.02502864 0 -0.02256315 0.02502864 -0.01999998 -0.02281308 0.02520358 0 -0.02281308 0.02520358 -0.01999998 -0.02308952 0.02533251 0 -0.02308952 0.02533251 -0.01999998 -0.02338415 0.02541148 0 -0.02338415 0.02541148 -0.01999998 -0.02368807 0.02543807 0 -0.02368807 0.02543807 -0.01999998 -0.02399194 0.02541148 0 -0.02399194 0.02541148 -0.01999998 -0.02428656 0.02533251 0 -0.02428656 0.02533251 -0.01999998 -0.02456307 0.02520358 0 -0.02456307 0.02520358 -0.01999998 -0.02481293 0.02502864 -0.01999998 -0.02481293 0.02502864 0 -0.02502864 0.02481293 0 -0.02502864 0.02481293 -0.01999998 -0.02520358 0.02456307 0 -0.02520358 0.02456307 -0.01999998 -0.02533251 0.02428656 0 -0.02533251 0.02428656 -0.01999998 -0.02541148 0.02399194 0 -0.02541148 0.02399194 -0.01999998 -0.02543807 0.02368807 0 -0.02543807 0.02368807 -0.01999998 -0.02541148 0.02338415 -0.01999998 -0.02541148 0.02338415 0 -0.02533251 0.02308952 -0.01999998 -0.02533251 0.02308952 0 -0.02520358 0.02281308 -0.01999998 -0.02520358 0.02281308 0 -0.02502864 0.02256315 0 -0.02502864 0.02256315 -0.01999998 -0.02481293 0.02234745 0 -0.02481293 0.02234745 -0.01999998 -0.02456307 0.02217251 0 -0.02456307 0.02217251 -0.01999998 -0.02428656 0.02204358 0 -0.02428656 0.02204358 -0.01999998 -0.02399194 0.02196466 0 -0.02399194 0.02196466 -0.01999998 -0.02368807 0.02193802 0 -0.02368807 0.02193802 -0.01999998 -0.02338415 0.02196466 -0.01999998 -0.02338415 0.02196466 0 -0.02308952 0.02204358 0 -0.02308952 0.02204358 -0.01999998 -0.02281308 0.02217251 -0.01999998 -0.02281308 0.02217251 0 -0.02256315 0.02234745 0 -0.02256315 0.02234745 -0.01999998 -0.02234745 0.02256315 0 -0.02234745 0.02256315 -0.01999998 -0.02217251 0.02281308 -0.01999998 -0.02217251 0.02281308 0 -0.02204358 0.02308952 0 -0.02204358 0.02308952 -0.01999998 -0.02196466 0.02338415 0 -0.02196466 0.02338415 -0.01999998 -0.02018803 0.0216673 0.003999948 -0.02368807 0.01964658 0.003999948 -0.02018803 0.0216673 0 -0.02368807 0.01964658 0 -0.02018803 0.02570879 0.003999948 -0.02018803 0.02570879 0 -0.02368807 0.02772951 0.003999948 -0.02368807 0.02772951 0 -0.02718806 0.02570879 0.003999948 -0.02718806 0.02570879 0 -0.02718806 0.0216673 0.003999948 -0.02718806 0.0216673 0</float_array>
|
||||
<technique_common>
|
||||
<accessor source="#bolt_001-mesh-positions-array" count="84" stride="3">
|
||||
<param name="X" type="float"/>
|
||||
<param name="Y" type="float"/>
|
||||
<param name="Z" type="float"/>
|
||||
</accessor>
|
||||
</technique_common>
|
||||
</source>
|
||||
<source id="bolt_001-mesh-normals">
|
||||
<float_array id="bolt_001-mesh-normals-array" count="327">0.9894472 0.1448946 0 0.9995759 0.02912068 0 0.9793339 0.2022505 0 0.9995759 -0.02912008 0 0.9492547 0.3145085 0 0.9293338 0.3692411 0 0.8660255 0.4999999 0 0.8660233 0.5000037 0 0.7660449 0.6427871 0 0.7660449 0.6427871 0 0.6648212 0.7470026 0 0.6202083 0.7844372 0 0.5250455 0.8510742 0 0.4745714 0.8802171 0 0.3692381 0.9293348 0 0.3145146 0.9492527 0 0.2022534 0.9793332 0 0.1448991 0.9894465 0 0.02911955 0.999576 0 -0.02912038 0.9995759 0 -0.1448996 0.9894464 0 -0.2022562 0.9793326 0 -0.3145089 0.9492546 0 -0.3692384 0.9293348 0 -0.4999972 0.8660271 0 -0.5000019 0.8660244 0 -0.64279 0.7660425 0 -0.642791 0.7660418 0 -0.747004 0.6648195 0 -0.7844361 0.6202096 0 -0.851098 0.5250069 0 -0.8802185 0.4745689 0 -0.9293336 0.3692413 0 -0.9492533 0.314513 0 -0.9793319 0.2022597 0 -0.9894471 0.1448945 0 -1 2.6187e-7 0 -1 2.66633e-7 0 -0.9894473 -0.1448935 -1.11524e-6 -0.9793322 -0.2022587 1.11524e-6 -0.9492527 -0.3145146 1.11614e-5 -0.9293329 -0.369243 1.11524e-6 -0.8660259 -0.4999992 0 -0.7844384 -0.6202069 0 -0.7469735 -0.6648538 0 -0.6648558 -0.7469719 0 -0.6201745 -0.784464 0 -0.5250045 -0.8510996 0 -0.4745712 -0.8802171 0 -0.3692383 -0.9293348 0 -0.3145087 -0.9492546 0 -0.2022533 -0.9793332 0 -0.1448966 -0.9894469 0 -4.09469e-7 -1 0 -4.18995e-7 -1 0 0.1736466 -0.9848081 0 0.1736474 -0.984808 0 0.3420199 -0.9396927 0 0.3420225 -0.9396918 0 0.5000002 -0.8660253 0 0.4999992 -0.8660259 0 0.6201676 -0.7844695 0 0.6648194 -0.7470042 0 0.7660472 -0.6427844 0 0.7660471 -0.6427845 0 0.866026 -0.4999992 0 0.8660238 -0.5000029 0 0.929333 -0.3692427 0 0.9492541 -0.3145102 0 0.9793341 -0.2022495 0 0.9894474 -0.1448936 0 0 0 -1 3.92384e-6 0 -1 -7.3586e-5 0 -1 -7.70493e-6 0 -1 0 0 -1 -7.18913e-6 0 -1 1.40726e-5 0 -1 -2.90599e-6 0 -1 -2.81421e-5 0 -1 2.01221e-6 0 -1 7.35857e-5 0 -1 -3.31029e-6 0 -1 -5.62841e-5 0 -1 -7.07482e-7 0 -1 -4.78709e-7 0 -1 -5.62849e-5 0 -1 7.5222e-7 0 -1 6.31213e-6 0 -1 -1.0172e-5 0 -1 -3.67922e-5 0 -1 -2.39619e-7 0 -1 -3.16071e-6 0 -1 0.5 -0.8660256 0 1 0 0 0.5 0.8660256 0 -0.5000003 0.8660253 0 -0.5000001 0.8660255 0 -0.5 0.8660256 0 -1 0 0 -0.5 -0.8660256 0 -0.5000001 -0.8660255 0 -0.5000003 -0.8660253 0 0 0 1 -2.5719e-7 0 1 0 0 1 0 0 1 0 0 1 1.28595e-7 0 1</float_array>
|
||||
<technique_common>
|
||||
<accessor source="#bolt_001-mesh-normals-array" count="109" stride="3">
|
||||
<param name="X" type="float"/>
|
||||
<param name="Y" type="float"/>
|
||||
<param name="Z" type="float"/>
|
||||
</accessor>
|
||||
</technique_common>
|
||||
</source>
|
||||
<vertices id="bolt_001-mesh-vertices">
|
||||
<input semantic="POSITION" source="#bolt_001-mesh-positions"/>
|
||||
</vertices>
|
||||
<triangles material="Robossembler_Black_Body-material" count="164">
|
||||
<input semantic="VERTEX" source="#bolt_001-mesh-vertices" offset="0"/>
|
||||
<input semantic="NORMAL" source="#bolt_001-mesh-normals" offset="1"/>
|
||||
<p>0 0 1 1 2 2 0 0 3 3 1 1 4 4 2 2 5 5 4 4 0 0 2 2 6 6 5 5 7 7 6 6 7 7 8 8 6 6 4 4 5 5 9 9 6 6 8 8 10 10 8 8 11 11 10 10 9 9 8 8 12 12 11 11 13 13 12 12 10 10 11 11 14 14 13 13 15 15 14 14 12 12 13 13 16 16 15 15 17 17 16 16 14 14 15 15 18 18 17 17 19 19 18 18 16 16 17 17 20 20 19 19 21 21 20 20 18 18 19 19 22 22 21 21 23 23 22 22 20 20 21 21 24 24 23 23 25 25 24 24 25 25 26 26 24 24 22 22 23 23 27 27 24 24 26 26 28 28 26 26 29 29 28 28 27 27 26 26 30 30 28 28 29 29 30 30 29 29 31 31 32 32 30 30 31 31 32 32 31 31 33 33 34 34 32 32 33 33 34 34 33 33 35 35 36 36 34 34 35 35 36 36 35 35 37 37 36 36 37 37 38 38 39 39 38 38 40 40 39 39 36 36 38 38 41 41 40 40 42 42 41 41 39 39 40 40 43 42 41 41 42 42 44 43 42 42 45 44 44 43 43 42 42 42 46 45 45 44 47 46 46 45 44 43 45 44 48 47 47 46 49 48 48 47 46 45 47 46 50 49 49 48 51 50 50 49 48 47 49 48 52 51 51 50 53 52 52 51 50 49 51 50 54 53 53 52 55 54 54 53 55 54 56 55 54 53 52 51 53 52 57 56 54 53 56 55 58 57 56 55 59 58 58 57 59 58 60 59 58 57 57 56 56 55 61 60 58 57 60 59 62 61 60 59 63 62 62 61 61 60 60 59 64 63 63 62 65 64 64 63 65 64 66 65 64 63 62 61 63 62 67 66 64 63 66 65 68 67 67 66 66 65 68 67 66 65 69 68 70 69 68 67 69 68 70 69 69 68 71 70 3 3 70 69 71 70 3 3 71 70 1 1 37 71 35 72 38 73 38 73 35 72 40 74 55 75 59 76 56 77 53 71 63 78 55 75 59 76 63 78 60 79 55 75 63 78 59 76 31 71 29 80 33 81 33 81 29 80 35 72 45 71 66 82 47 71 47 71 66 82 49 71 49 71 66 82 51 71 51 71 66 82 53 71 63 78 66 82 65 83 53 71 66 82 63 78 26 71 25 84 29 80 66 82 71 85 69 86 23 71 21 87 25 84 71 85 2 88 1 71 15 71 13 71 17 71 17 71 13 71 19 71 2 88 8 89 5 90 5 90 8 89 7 71 40 74 11 91 42 92 42 92 11 91 45 71 19 71 11 91 21 87 35 72 11 91 40 74 45 71 11 91 66 82 25 84 11 91 29 80 29 80 11 91 35 72 66 82 11 91 71 85 71 85 11 91 2 88 21 87 11 91 25 84 2 88 11 91 8 89 13 71 11 91 19 71 72 93 73 93 74 93 74 93 73 93 75 93 74 94 76 94 72 94 77 94 76 94 74 94 78 95 76 95 79 95 79 95 76 95 77 95 80 96 78 97 81 97 81 97 78 97 79 98 82 99 80 99 83 99 83 99 80 99 81 99 73 100 82 101 75 101 75 101 82 101 83 102 78 103 80 104 82 105 76 106 73 107 72 108 76 106 82 105 73 107 76 106 78 103 82 105 83 71 44 71 46 71 83 71 43 71 44 71 83 71 48 71 75 71 46 71 48 71 83 71 83 71 41 71 43 71 48 71 50 71 75 71 50 71 52 71 75 71 83 71 39 71 41 71 52 71 54 71 75 71 83 71 36 71 39 71 83 71 81 71 36 71 54 71 57 71 75 71 81 71 34 71 36 71 57 71 58 71 75 71 81 71 32 71 34 71 58 71 61 71 75 71 81 71 30 71 32 71 81 71 28 71 30 71 81 71 27 71 28 71 81 71 24 71 27 71 62 71 74 71 61 71 64 71 74 71 62 71 67 71 74 71 64 71 68 71 74 71 67 71 70 71 74 71 68 71 61 71 74 71 75 71 70 71 3 71 74 71 14 71 79 71 12 71 16 71 79 71 14 71 18 71 79 71 16 71 20 71 79 71 18 71 22 71 79 71 20 71 24 71 79 71 22 71 81 71 79 71 24 71 3 71 77 71 74 71 0 71 77 71 3 71 79 71 77 71 12 71 4 71 77 71 0 71 6 71 77 71 4 71 9 71 77 71 6 71 10 71 77 71 9 71 12 71 77 71 10 71</p>
|
||||
</triangles>
|
||||
</mesh>
|
||||
</geometry>
|
||||
</library_geometries>
|
||||
<library_visual_scenes>
|
||||
<visual_scene id="Scene" name="Scene">
|
||||
<node id="bolt" name="bolt" type="NODE">
|
||||
<matrix sid="transform">1 0 0 0 0 1 0 0 0 0 1 0 0 0 0 1</matrix>
|
||||
<instance_geometry url="#bolt_001-mesh" name="bolt">
|
||||
<bind_material>
|
||||
<technique_common>
|
||||
<instance_material symbol="Robossembler_Black_Body-material" target="#Robossembler_Black_Body-material"/>
|
||||
</technique_common>
|
||||
</bind_material>
|
||||
</instance_geometry>
|
||||
</node>
|
||||
</visual_scene>
|
||||
</library_visual_scenes>
|
||||
<scene>
|
||||
<instance_visual_scene url="#Scene"/>
|
||||
</scene>
|
||||
</COLLADA>
|
BIN
web_p/blender/libs/objects/bolt.fbx
Normal file
BIN
web_p/blender/libs/objects/bolt.glb
Normal file
261
web_p/blender/libs/objects/bolt.ply
Normal file
|
@ -0,0 +1,261 @@
|
|||
ply
|
||||
format ascii 1.0
|
||||
comment Created in Blender version 4.1.0
|
||||
element vertex 84
|
||||
property float x
|
||||
property float y
|
||||
property float z
|
||||
property float nx
|
||||
property float ny
|
||||
property float nz
|
||||
element face 164
|
||||
property list uchar uint vertex_indices
|
||||
end_header
|
||||
-21.964666 23.991962 0 0.6759426 0.1191853 -0.7272527
|
||||
-21.938078 23.68808 -20.000002 0.7257025 4.4918602e-07 -0.6880086
|
||||
-21.964666 23.991962 -20.000002 0.7146925 0.12601762 -0.687993
|
||||
-21.938078 23.68808 0 0.6863562 -5.7010197e-08 -0.7272656
|
||||
-22.043615 24.286613 0 0.64496636 0.2347465 -0.7272637
|
||||
-22.043615 24.286613 -20.000002 0.6819248 0.24821126 -0.6880186
|
||||
-22.172535 24.56308 0 0.59441805 0.34318736 -0.727248
|
||||
-22.172535 24.56308 -20.000002 0.62847316 0.36285272 -0.68801117
|
||||
-22.3475 24.812958 -20.000002 0.55592054 0.46647796 -0.68800485
|
||||
-22.3475 24.812958 0 0.5257804 0.44118154 -0.7272646
|
||||
-22.563198 25.028656 0 0.4411884 0.52578944 -0.72725385
|
||||
-22.563198 25.028656 -20.000002 0.4665045 0.5559581 -0.68795645
|
||||
-22.81308 25.203623 0 0.34317657 0.5944042 -0.7272643
|
||||
-22.81308 25.203623 -20.000002 0.36285466 0.6284793 -0.6880045
|
||||
-23.089542 25.33254 0 0.23475139 0.644976 -0.7272536
|
||||
-23.089542 25.33254 -20.000002 0.24820705 0.6819357 -0.6880094
|
||||
-23.384195 25.411491 0 0.119185895 0.6759316 -0.72726285
|
||||
-23.384195 25.411491 -20.000002 0.1260187 0.71467817 -0.6880076
|
||||
-23.68808 25.43808 0 -3.2353347e-07 0.6863721 -0.7272505
|
||||
-23.68808 25.43808 -20.000002 -2.5866314e-07 0.7257114 -0.6879993
|
||||
-23.991962 25.411491 0 -0.11918679 0.6759313 -0.727263
|
||||
-23.991962 25.411491 -20.000002 -0.12602174 0.71469027 -0.6879945
|
||||
-24.286613 25.33254 0 -0.23475067 0.6449771 -0.7272527
|
||||
-24.286613 25.33254 -20.000002 -0.24820411 0.6819363 -0.68800986
|
||||
-24.56308 25.203623 0 -0.3431768 0.5944041 -0.72726434
|
||||
-24.56308 25.203623 -20.000002 -0.362861 0.6284897 -0.6879917
|
||||
-24.812958 25.028656 -20.000002 -0.4664746 0.5559193 -0.6880081
|
||||
-24.812958 25.028656 0 -0.441191 0.5257863 -0.72725457
|
||||
-25.028656 24.812958 0 -0.5257834 0.44118142 -0.72726256
|
||||
-25.028656 24.812958 -20.000002 -0.55592304 0.46647823 -0.6880025
|
||||
-25.203623 24.56308 0 -0.5944156 0.3431862 -0.7272505
|
||||
-25.203623 24.56308 -20.000002 -0.62847704 0.362851 -0.6880084
|
||||
-25.33254 24.286613 0 -0.6449664 0.23475042 -0.7272624
|
||||
-25.33254 24.286613 -20.000002 -0.68191034 0.24821492 -0.68803173
|
||||
-25.411491 23.991962 0 -0.67594075 0.119192 -0.7272533
|
||||
-25.411491 23.991962 -20.000002 -0.71468174 0.1260164 -0.68800426
|
||||
-25.43808 23.68808 0 -0.6863573 1.797363e-07 -0.72726446
|
||||
-25.43808 23.68808 -20.000002 -0.72570145 1.9349584e-07 -0.68800974
|
||||
-25.411491 23.384195 -20.000002 -0.71470344 -0.12601005 -0.687983
|
||||
-25.411491 23.384195 0 -0.675941 -0.11919129 -0.7272532
|
||||
-25.33254 23.089542 -20.000002 -0.6819508 -0.2482107 -0.6879932
|
||||
-25.33254 23.089542 0 -0.6449652 -0.23475127 -0.72726315
|
||||
-25.203623 22.81308 -20.000002 -0.62848943 -0.36285648 -0.6879944
|
||||
-25.203623 22.81308 0 -0.594416 -0.34318548 -0.72725046
|
||||
-25.028656 22.563198 0 -0.52578145 -0.441182 -0.7272636
|
||||
-25.028656 22.563198 -20.000002 -0.55591893 -0.46646464 -0.68801516
|
||||
-24.812958 22.3475 0 -0.44118702 -0.525791 -0.7272536
|
||||
-24.812958 22.3475 -20.000002 -0.46647635 -0.55591714 -0.6880086
|
||||
-24.56308 22.172535 0 -0.34317714 -0.59440374 -0.72726446
|
||||
-24.56308 22.172535 -20.000002 -0.36285383 -0.6284782 -0.688006
|
||||
-24.286613 22.043615 0 -0.23475134 -0.6449755 -0.72725415
|
||||
-24.286613 22.043615 -20.000002 -0.2482054 -0.6819443 -0.6880015
|
||||
-23.991962 21.964666 0 -0.11918593 -0.67593217 -0.72726226
|
||||
-23.991962 21.964666 -20.000002 -0.12601964 -0.7146941 -0.6879908
|
||||
-23.68808 21.938078 0 -2.8104873e-07 -0.6863736 -0.7272491
|
||||
-23.68808 21.938078 -20.000002 -3.1067069e-07 -0.7257102 -0.68800056
|
||||
-23.384195 21.964666 -20.000002 0.1260253 -0.7146767 -0.6880079
|
||||
-23.384195 21.964666 0 0.11918436 -0.6759311 -0.72726357
|
||||
-23.089542 22.043615 0 0.23475184 -0.6449759 -0.72725356
|
||||
-23.089542 22.043615 -20.000002 0.2482034 -0.6819416 -0.688005
|
||||
-22.81308 22.172535 -20.000002 0.36283422 -0.62848043 -0.6880143
|
||||
-22.81308 22.172535 0 0.34317806 -0.59440315 -0.7272646
|
||||
-22.563198 22.3475 0 0.44118777 -0.5257892 -0.7272544
|
||||
-22.563198 22.3475 -20.000002 0.46648157 -0.5559379 -0.6879883
|
||||
-22.3475 22.563198 0 0.52578354 -0.441181 -0.7272626
|
||||
-22.3475 22.563198 -20.000002 0.5558946 -0.4664795 -0.68802476
|
||||
-22.172535 22.81308 -20.000002 0.6284901 -0.36285943 -0.6879923
|
||||
-22.172535 22.81308 0 0.5944157 -0.3431887 -0.72724926
|
||||
-22.043615 23.089542 0 0.6449638 -0.23475057 -0.72726464
|
||||
-22.043615 23.089542 -20.000002 0.6819174 -0.24821095 -0.68802625
|
||||
-21.964666 23.384195 0 0.6759428 -0.119185075 -0.72725254
|
||||
-21.964666 23.384195 -20.000002 0.7146949 -0.12601756 -0.68799037
|
||||
-20.188078 21.667353 4 0.68624145 -0.39620167 0.60999745
|
||||
-23.68808 19.646626 4 1.2940448e-05 -0.79241407 0.6099836
|
||||
-20.188078 21.667353 0 0.686268 -0.39621702 -0.6099576
|
||||
-23.68808 19.646626 0 -1.301988e-05 -0.7924254 -0.6099688
|
||||
-20.188078 25.708803 4 0.6862599 0.39621237 0.6099697
|
||||
-20.188078 25.708803 0 0.6862534 0.39620864 -0.60997945
|
||||
-23.68808 27.72953 4 -1.3000082e-05 0.79241395 0.6099836
|
||||
-23.68808 27.72953 0 1.2950441e-05 0.7924255 -0.60996866
|
||||
-27.18808 25.708803 4 -0.6862553 0.39619443 0.60998654
|
||||
-27.18808 25.708803 0 -0.68625414 0.3962239 -0.6099688
|
||||
-27.18808 21.667353 4 -0.6862463 -0.39621934 0.6099806
|
||||
-27.18808 21.667353 0 -0.6862673 -0.39620152 -0.6099684
|
||||
3 0 1 2
|
||||
3 0 3 1
|
||||
3 4 2 5
|
||||
3 4 0 2
|
||||
3 6 5 7
|
||||
3 6 7 8
|
||||
3 6 4 5
|
||||
3 9 6 8
|
||||
3 10 8 11
|
||||
3 10 9 8
|
||||
3 12 11 13
|
||||
3 12 10 11
|
||||
3 14 13 15
|
||||
3 14 12 13
|
||||
3 16 15 17
|
||||
3 16 14 15
|
||||
3 18 17 19
|
||||
3 18 16 17
|
||||
3 20 19 21
|
||||
3 20 18 19
|
||||
3 22 21 23
|
||||
3 22 20 21
|
||||
3 24 23 25
|
||||
3 24 25 26
|
||||
3 24 22 23
|
||||
3 27 24 26
|
||||
3 28 26 29
|
||||
3 28 27 26
|
||||
3 30 28 29
|
||||
3 30 29 31
|
||||
3 32 30 31
|
||||
3 32 31 33
|
||||
3 34 32 33
|
||||
3 34 33 35
|
||||
3 36 34 35
|
||||
3 36 35 37
|
||||
3 36 37 38
|
||||
3 39 38 40
|
||||
3 39 36 38
|
||||
3 41 40 42
|
||||
3 41 39 40
|
||||
3 43 41 42
|
||||
3 44 42 45
|
||||
3 44 43 42
|
||||
3 46 45 47
|
||||
3 46 44 45
|
||||
3 48 47 49
|
||||
3 48 46 47
|
||||
3 50 49 51
|
||||
3 50 48 49
|
||||
3 52 51 53
|
||||
3 52 50 51
|
||||
3 54 53 55
|
||||
3 54 55 56
|
||||
3 54 52 53
|
||||
3 57 54 56
|
||||
3 58 56 59
|
||||
3 58 59 60
|
||||
3 58 57 56
|
||||
3 61 58 60
|
||||
3 62 60 63
|
||||
3 62 61 60
|
||||
3 64 63 65
|
||||
3 64 65 66
|
||||
3 64 62 63
|
||||
3 67 64 66
|
||||
3 68 67 66
|
||||
3 68 66 69
|
||||
3 70 68 69
|
||||
3 70 69 71
|
||||
3 3 70 71
|
||||
3 3 71 1
|
||||
3 37 35 38
|
||||
3 38 35 40
|
||||
3 55 59 56
|
||||
3 53 63 55
|
||||
3 59 63 60
|
||||
3 55 63 59
|
||||
3 31 29 33
|
||||
3 33 29 35
|
||||
3 45 66 47
|
||||
3 47 66 49
|
||||
3 49 66 51
|
||||
3 51 66 53
|
||||
3 63 66 65
|
||||
3 53 66 63
|
||||
3 26 25 29
|
||||
3 66 71 69
|
||||
3 23 21 25
|
||||
3 71 2 1
|
||||
3 15 13 17
|
||||
3 17 13 19
|
||||
3 2 8 5
|
||||
3 5 8 7
|
||||
3 40 11 42
|
||||
3 42 11 45
|
||||
3 19 11 21
|
||||
3 35 11 40
|
||||
3 45 11 66
|
||||
3 25 11 29
|
||||
3 29 11 35
|
||||
3 66 11 71
|
||||
3 71 11 2
|
||||
3 21 11 25
|
||||
3 2 11 8
|
||||
3 13 11 19
|
||||
3 72 73 74
|
||||
3 74 73 75
|
||||
3 74 76 72
|
||||
3 77 76 74
|
||||
3 78 76 79
|
||||
3 79 76 77
|
||||
3 80 78 81
|
||||
3 81 78 79
|
||||
3 82 80 83
|
||||
3 83 80 81
|
||||
3 73 82 75
|
||||
3 75 82 83
|
||||
3 78 80 82
|
||||
3 76 73 72
|
||||
3 76 82 73
|
||||
3 76 78 82
|
||||
3 83 44 46
|
||||
3 83 43 44
|
||||
3 83 48 75
|
||||
3 46 48 83
|
||||
3 83 41 43
|
||||
3 48 50 75
|
||||
3 50 52 75
|
||||
3 83 39 41
|
||||
3 52 54 75
|
||||
3 83 36 39
|
||||
3 83 81 36
|
||||
3 54 57 75
|
||||
3 81 34 36
|
||||
3 57 58 75
|
||||
3 81 32 34
|
||||
3 58 61 75
|
||||
3 81 30 32
|
||||
3 81 28 30
|
||||
3 81 27 28
|
||||
3 81 24 27
|
||||
3 62 74 61
|
||||
3 64 74 62
|
||||
3 67 74 64
|
||||
3 68 74 67
|
||||
3 70 74 68
|
||||
3 61 74 75
|
||||
3 70 3 74
|
||||
3 14 79 12
|
||||
3 16 79 14
|
||||
3 18 79 16
|
||||
3 20 79 18
|
||||
3 22 79 20
|
||||
3 24 79 22
|
||||
3 81 79 24
|
||||
3 3 77 74
|
||||
3 0 77 3
|
||||
3 79 77 12
|
||||
3 4 77 0
|
||||
3 6 77 4
|
||||
3 9 77 6
|
||||
3 10 77 9
|
||||
3 12 77 10
|
BIN
web_p/blender/libs/objects/bolt.png
Normal file
After Width: | Height: | Size: 2.2 KiB |
BIN
web_p/blender/libs/objects/output_shaft.blend
Normal file
89
web_p/blender/libs/objects/output_shaft.dae
Normal file
BIN
web_p/blender/libs/objects/output_shaft.fbx
Normal file
BIN
web_p/blender/libs/objects/output_shaft.glb
Normal file
2216
web_p/blender/libs/objects/output_shaft.ply
Normal file
BIN
web_p/blender/libs/objects/output_shaft.png
Normal file
After Width: | Height: | Size: 6.4 KiB |
BIN
web_p/blender/libs/objects/planet_gear.blend
Normal file
89
web_p/blender/libs/objects/planet_gear.dae
Normal file
BIN
web_p/blender/libs/objects/planet_gear.fbx
Normal file
BIN
web_p/blender/libs/objects/planet_gear.glb
Normal file
445
web_p/blender/libs/objects/planet_gear.ply
Normal file
|
@ -0,0 +1,445 @@
|
|||
ply
|
||||
format ascii 1.0
|
||||
comment Created in Blender version 4.1.0
|
||||
element vertex 144
|
||||
property float x
|
||||
property float y
|
||||
property float z
|
||||
property float nx
|
||||
property float ny
|
||||
property float nz
|
||||
element face 288
|
||||
property list uchar uint vertex_indices
|
||||
end_header
|
||||
3.5 22.5 16 -0.6863761 -3.663758e-07 0.72724676
|
||||
3.5 22.5 1 -0.68637604 5.4575946e-07 -0.7272467
|
||||
3.4468274 21.892233 16 -0.6759495 0.11918773 0.72724587
|
||||
3.4468274 21.892233 1 -0.6759441 0.119186774 -0.727251
|
||||
3.2889245 21.302929 16 -0.64497954 0.23475361 0.72724974
|
||||
3.2889245 21.302929 1 -0.6449847 0.2347555 -0.72724456
|
||||
3.031089 20.750002 16 -0.59442234 0.3431913 0.72724265
|
||||
3.031089 20.750002 1 -0.5944177 0.34318835 -0.7272478
|
||||
2.6811554 20.250246 1 -0.5257944 0.44119242 -0.727248
|
||||
2.6811554 20.250246 16 -0.52579397 0.44119316 0.7272478
|
||||
2.2497566 19.818844 1 -0.441196 0.52579445 -0.7272456
|
||||
2.2497566 19.818844 16 -0.44119558 0.52579504 0.7272455
|
||||
1.75 19.46891 1 -0.34318718 0.594419 -0.72724724
|
||||
1.75 19.46891 16 -0.3431863 0.59441954 0.72724724
|
||||
1.1970706 19.211079 1 -0.23475441 0.6449831 -0.7272462
|
||||
1.1970706 19.211079 16 -0.23475352 0.6449834 0.7272462
|
||||
0.6077686 19.053175 1 -0.11918888 0.67594814 -0.72724706
|
||||
0.6077686 19.053175 16 -0.11918801 0.67594826 0.72724706
|
||||
-6.860189e-15 19.000002 16 8.061877e-09 0.6863733 0.7272495
|
||||
-6.860189e-15 19.000002 1 0 0.6863787 -0.7272443
|
||||
-0.6077686 19.053175 16 0.11918861 0.67594916 0.7272461
|
||||
-0.6077686 19.053175 1 0.11918764 0.6759437 -0.72725123
|
||||
-1.1970706 19.211079 1 0.23475352 0.6449834 -0.7272463
|
||||
-1.1970706 19.211079 16 0.23475441 0.6449831 0.7272462
|
||||
-1.75 19.46891 1 0.34318718 0.594421 -0.7272457
|
||||
-1.75 19.46891 16 0.34318805 0.59442055 0.7272457
|
||||
-2.2497566 19.818844 1 0.441193 0.5257924 -0.7272489
|
||||
-2.2497566 19.818844 16 0.44119373 0.52579176 0.7272489
|
||||
-2.6811554 20.250246 1 0.525795 0.4411943 -0.7272462
|
||||
-2.6811554 20.250246 16 0.5257957 0.44119352 0.7272463
|
||||
-3.031089 20.750002 1 0.5944183 0.34318942 -0.7272468
|
||||
-3.031089 20.750002 16 0.59441835 0.3431886 0.7272471
|
||||
-3.2889245 21.302929 1 0.644982 0.23475495 -0.72724706
|
||||
-3.2889245 21.302929 16 0.644982 0.23475416 0.7272473
|
||||
-3.4468274 21.892233 1 0.67595124 0.119188026 -0.7272442
|
||||
-3.4468274 21.892233 16 0.6759459 0.11918709 0.7272494
|
||||
-3.5 22.5 16 0.68637884 8.8236256e-08 0.7272442
|
||||
-3.5 22.5 1 0.68637335 9.1504916e-08 -0.7272494
|
||||
-6.893655 23.715538 1 -0.71468407 0.12601757 -0.6880016
|
||||
-7 22.5 16 -0.725709 4.6646505e-07 0.6880017
|
||||
-6.893655 23.715538 16 -0.71468395 0.1260185 0.6880015
|
||||
-7 22.5 1 -0.725709 -4.6646505e-07 -0.6880017
|
||||
-6.577849 24.89414 1 -0.6819436 0.24820687 -0.68800163
|
||||
-6.577849 24.89414 16 -0.68194324 0.24820775 0.68800163
|
||||
-6.062178 26 1 -0.6284724 0.3628481 -0.68801427
|
||||
-6.062178 26 16 -0.6284717 0.36284918 0.68801445
|
||||
-5.362311 26.999514 1 -0.5559276 0.46647832 -0.68799895
|
||||
-5.362311 26.999514 16 -0.555923 0.46647546 0.68800455
|
||||
-4.499513 27.862312 16 -0.4664859 0.5559368 0.6879864
|
||||
-4.499513 27.862312 1 -0.4664831 0.5559327 -0.68799156
|
||||
-3.5 28.56218 1 -0.36284924 0.62847173 -0.6880143
|
||||
-3.5 28.56218 16 -0.36284822 0.62847227 0.6880143
|
||||
-2.3941412 29.07785 1 -0.24820788 0.68194336 -0.6880015
|
||||
-2.3941412 29.07785 16 -0.24820694 0.6819438 0.6880015
|
||||
-1.2155372 29.393656 1 -0.12601854 0.71468383 -0.68800163
|
||||
-1.2155372 29.393656 16 -0.12601757 0.714684 0.68800163
|
||||
4.286264e-16 29.500002 1 -4.664651e-07 0.72570914 -0.68800163
|
||||
4.286264e-16 29.500002 16 4.6367086e-07 0.7257092 0.68800163
|
||||
1.2155372 29.393656 1 0.12601763 0.714684 -0.6880017
|
||||
1.2155372 29.393656 16 0.12601855 0.71468383 0.68800163
|
||||
2.3941412 29.07785 1 0.24821243 0.6819572 -0.6879862
|
||||
2.3941412 29.07785 16 0.2482106 0.6819525 0.6879916
|
||||
3.5 28.56218 16 0.36285594 0.62848455 0.687999
|
||||
3.5 28.56218 1 0.3628535 0.6284802 -0.68800443
|
||||
4.499513 27.862312 1 0.4664785 0.5559274 -0.6879989
|
||||
4.499513 27.862312 16 0.46647495 0.55592364 0.68800443
|
||||
5.362311 26.999514 16 0.555927 0.46647853 0.68799925
|
||||
5.362311 26.999514 1 0.5559235 0.46647525 -0.68800426
|
||||
6.062178 26 1 0.62847185 0.36284912 -0.68801427
|
||||
6.062178 26 16 0.62847227 0.36284813 0.6880144
|
||||
6.577849 24.89414 1 0.6819433 0.24820775 -0.6880017
|
||||
6.577849 24.89414 16 0.68194366 0.24820687 0.68800163
|
||||
6.893655 23.715538 1 0.714684 0.12601851 -0.6880016
|
||||
6.893655 23.715538 16 0.7146841 0.12601757 0.6880016
|
||||
7 22.5 1 0.725709 4.6646505e-07 -0.6880017
|
||||
7 22.5 16 0.725709 -4.6646505e-07 0.6880017
|
||||
-5.362311 18.000486 16 -0.5559252 -0.46647725 0.68800163
|
||||
-4.499513 17.13769 16 -0.46648318 -0.5559325 0.68799156
|
||||
-3.5 16.437822 16 -0.36284932 -0.62847173 0.6880143
|
||||
-2.3941412 15.922152 16 -0.24820764 -0.68194354 0.68800145
|
||||
-6.062178 19.000002 16 -0.6284845 -0.3628561 0.6879991
|
||||
-1.2155372 15.606346 16 -0.12602033 -0.7146957 0.6879891
|
||||
-6.577849 20.105862 16 -0.68194085 -0.24820647 0.6880045
|
||||
-6.893655 21.284462 16 -0.7146866 -0.12601848 0.68799883
|
||||
-1.3720378e-14 15.500001 16 -4.6441352e-07 -0.7257092 0.68800163
|
||||
1.2155372 15.606346 16 0.12601821 -0.71468645 0.687999
|
||||
-3.4468274 23.10777 16 0.67594576 -0.11918724 0.7272495
|
||||
2.3941412 15.922152 16 0.24820627 -0.68194133 0.68800414
|
||||
-3.2889245 23.697073 16 0.6449847 -0.23475575 0.7272444
|
||||
3.5 16.437822 16 0.36285433 -0.62848264 0.6880017
|
||||
-3.031089 24.25 16 0.5944176 -0.3431881 0.727248
|
||||
4.499513 17.13769 16 0.46646893 -0.55591655 0.68801427
|
||||
-2.6811554 24.749758 16 0.52579594 -0.4411957 0.72724473
|
||||
5.362311 18.000486 16 0.5559367 -0.46648607 0.68798625
|
||||
-2.2497566 25.181158 16 0.44119084 -0.5257908 0.72725147
|
||||
-1.75 25.531092 16 0.34318784 -0.59442055 0.7272457
|
||||
6.062178 19.000002 16 0.62847 -0.36284724 0.68801695
|
||||
6.577849 20.105862 16 0.6819458 -0.2482082 0.68799895
|
||||
-1.1970706 25.788923 16 0.23475446 -0.6449831 0.7272462
|
||||
6.893655 21.284462 16 0.7146934 -0.12601969 0.68799156
|
||||
-0.6077686 25.946827 16 0.119189315 -0.675948 0.727247
|
||||
3.4468274 23.10777 16 -0.6759483 -0.11918815 0.7272468
|
||||
2.143132e-16 26 16 4.4669753e-07 -0.6863759 0.7272468
|
||||
3.2889245 23.697073 16 -0.64498204 -0.23475526 0.72724706
|
||||
0.6077686 25.946827 16 -0.1191883 -0.67594814 0.72724706
|
||||
1.1970706 25.788923 16 -0.23475449 -0.6449842 0.7272453
|
||||
1.75 25.531092 16 -0.3431871 -0.594419 0.72724724
|
||||
3.031089 24.25 16 -0.5944198 -0.34319 0.72724533
|
||||
2.2497566 25.181158 16 -0.4411921 -0.5257921 0.7272498
|
||||
2.6811554 24.749758 16 -0.5257936 -0.44119442 0.72724724
|
||||
-5.362311 18.000486 1 -0.55592597 -0.46647644 -0.6880016
|
||||
-4.499513 17.13769 1 -0.4664862 -0.5559366 -0.68798625
|
||||
-3.5 16.437822 1 -0.36284828 -0.6284722 -0.6880143
|
||||
-2.3941412 15.922152 1 -0.2482067 -0.68194383 -0.68800145
|
||||
-6.062178 19.000002 1 -0.6284804 -0.36285326 -0.6880042
|
||||
-1.2155372 15.606346 1 -0.12601943 -0.7146958 -0.6879891
|
||||
-6.577849 20.105862 1 -0.6819458 -0.24820818 -0.687999
|
||||
-6.893655 21.284462 1 -0.71468157 -0.12601759 -0.68800426
|
||||
-1.3720378e-14 15.500001 1 4.664651e-07 -0.72570914 -0.68800163
|
||||
1.2155372 15.606346 1 0.12601738 -0.7146815 -0.68800443
|
||||
-3.4468274 23.10777 1 0.6759511 -0.1191882 -0.7272443
|
||||
2.3941412 15.922152 1 0.24820809 -0.68194604 -0.68799883
|
||||
-3.2889245 23.697073 1 0.64497954 -0.23475385 -0.72724956
|
||||
3.5 16.437822 1 0.3628552 -0.62848204 -0.6880017
|
||||
-3.031089 24.25 1 0.5944228 -0.34319088 -0.7272424
|
||||
4.499513 17.13769 1 0.4664696 -0.55591595 -0.6880143
|
||||
-2.6811554 24.749758 1 0.5257928 -0.44119203 -0.7272494
|
||||
5.362311 18.000486 1 0.5559327 -0.466483 -0.68799156
|
||||
-2.2497566 25.181158 1 0.44119483 -0.525795 -0.72724605
|
||||
-1.75 25.531092 1 0.34318718 -0.594421 -0.7272457
|
||||
6.062178 19.000002 1 0.6284743 -0.36284998 -0.68801165
|
||||
6.577849 20.105862 1 0.681941 -0.24820642 -0.6880043
|
||||
-1.1970706 25.788923 1 0.23475352 -0.6449834 -0.7272463
|
||||
6.893655 21.284462 1 0.7146984 -0.12602057 -0.6879862
|
||||
-0.6077686 25.946827 1 0.11918797 -0.67594826 -0.727247
|
||||
2.143132e-16 26 1 -4.5425483e-07 -0.686376 -0.7272468
|
||||
3.4468274 23.10777 1 -0.67594844 -0.11918725 -0.7272468
|
||||
0.6077686 25.946827 1 -0.11918886 -0.67594796 -0.72724706
|
||||
3.2889245 23.697073 1 -0.64498234 -0.2347544 -0.72724706
|
||||
1.1970706 25.788923 1 -0.23475242 -0.644979 -0.7272505
|
||||
1.75 25.531092 1 -0.3431863 -0.5944195 -0.72724724
|
||||
3.031089 24.25 1 -0.5944208 -0.3431889 -0.72724503
|
||||
2.2497566 25.181158 1 -0.441196 -0.5257963 -0.7272444
|
||||
2.6811554 24.749758 1 -0.5257953 -0.44119325 -0.7272467
|
||||
3 0 1 2
|
||||
3 1 3 2
|
||||
3 4 5 6
|
||||
3 2 5 4
|
||||
3 3 5 2
|
||||
3 5 7 6
|
||||
3 6 8 9
|
||||
3 7 8 6
|
||||
3 9 10 11
|
||||
3 8 10 9
|
||||
3 11 12 13
|
||||
3 10 12 11
|
||||
3 13 14 15
|
||||
3 12 14 13
|
||||
3 15 16 17
|
||||
3 14 16 15
|
||||
3 18 19 20
|
||||
3 17 19 18
|
||||
3 16 19 17
|
||||
3 19 21 20
|
||||
3 20 22 23
|
||||
3 21 22 20
|
||||
3 23 24 25
|
||||
3 22 24 23
|
||||
3 25 26 27
|
||||
3 24 26 25
|
||||
3 27 28 29
|
||||
3 26 28 27
|
||||
3 28 30 29
|
||||
3 29 30 31
|
||||
3 30 32 31
|
||||
3 31 32 33
|
||||
3 32 34 33
|
||||
3 35 34 36
|
||||
3 33 34 35
|
||||
3 34 37 36
|
||||
3 38 39 40
|
||||
3 38 41 39
|
||||
3 42 40 43
|
||||
3 42 38 40
|
||||
3 44 43 45
|
||||
3 44 42 43
|
||||
3 46 47 48
|
||||
3 46 45 47
|
||||
3 46 44 45
|
||||
3 49 46 48
|
||||
3 50 48 51
|
||||
3 50 49 48
|
||||
3 52 51 53
|
||||
3 52 50 51
|
||||
3 54 53 55
|
||||
3 54 52 53
|
||||
3 56 55 57
|
||||
3 56 54 55
|
||||
3 58 57 59
|
||||
3 58 56 57
|
||||
3 60 61 62
|
||||
3 60 59 61
|
||||
3 60 58 59
|
||||
3 63 60 62
|
||||
3 64 65 66
|
||||
3 64 62 65
|
||||
3 64 63 62
|
||||
3 67 64 66
|
||||
3 68 67 66
|
||||
3 68 66 69
|
||||
3 70 69 71
|
||||
3 70 68 69
|
||||
3 72 71 73
|
||||
3 72 70 71
|
||||
3 74 73 75
|
||||
3 74 72 73
|
||||
3 29 76 77
|
||||
3 29 77 27
|
||||
3 25 77 78
|
||||
3 25 78 79
|
||||
3 25 27 77
|
||||
3 31 80 76
|
||||
3 31 76 29
|
||||
3 23 79 81
|
||||
3 23 25 79
|
||||
3 33 80 31
|
||||
3 33 82 80
|
||||
3 20 23 81
|
||||
3 35 83 82
|
||||
3 35 82 33
|
||||
3 18 81 84
|
||||
3 18 20 81
|
||||
3 36 39 83
|
||||
3 36 83 35
|
||||
3 17 18 84
|
||||
3 17 84 85
|
||||
3 86 40 39
|
||||
3 86 39 36
|
||||
3 15 17 85
|
||||
3 15 85 87
|
||||
3 88 40 86
|
||||
3 88 43 40
|
||||
3 13 87 89
|
||||
3 13 15 87
|
||||
3 90 45 43
|
||||
3 90 43 88
|
||||
3 47 45 90
|
||||
3 11 89 91
|
||||
3 11 13 89
|
||||
3 92 47 90
|
||||
3 93 11 91
|
||||
3 93 9 11
|
||||
3 48 47 92
|
||||
3 48 92 94
|
||||
3 6 9 93
|
||||
3 95 48 94
|
||||
3 96 6 93
|
||||
3 51 48 95
|
||||
3 97 4 6
|
||||
3 97 6 96
|
||||
3 53 95 98
|
||||
3 53 51 95
|
||||
3 99 2 4
|
||||
3 99 0 2
|
||||
3 99 4 97
|
||||
3 55 53 98
|
||||
3 55 98 100
|
||||
3 75 101 0
|
||||
3 75 0 99
|
||||
3 57 100 102
|
||||
3 57 55 100
|
||||
3 73 103 101
|
||||
3 73 101 75
|
||||
3 59 57 102
|
||||
3 59 102 104
|
||||
3 61 59 104
|
||||
3 61 105 106
|
||||
3 61 104 105
|
||||
3 71 103 73
|
||||
3 71 107 103
|
||||
3 69 107 71
|
||||
3 62 61 106
|
||||
3 62 106 108
|
||||
3 66 107 69
|
||||
3 66 109 107
|
||||
3 65 62 108
|
||||
3 65 109 66
|
||||
3 65 108 109
|
||||
3 110 28 111
|
||||
3 111 28 26
|
||||
3 111 24 112
|
||||
3 112 24 113
|
||||
3 26 24 111
|
||||
3 110 30 28
|
||||
3 114 30 110
|
||||
3 24 22 113
|
||||
3 113 22 115
|
||||
3 114 32 30
|
||||
3 116 32 114
|
||||
3 22 21 115
|
||||
3 117 34 116
|
||||
3 116 34 32
|
||||
3 21 19 115
|
||||
3 115 19 118
|
||||
3 117 37 34
|
||||
3 41 37 117
|
||||
3 118 16 119
|
||||
3 19 16 118
|
||||
3 38 120 41
|
||||
3 41 120 37
|
||||
3 16 14 119
|
||||
3 119 14 121
|
||||
3 38 122 120
|
||||
3 42 122 38
|
||||
3 14 12 121
|
||||
3 121 12 123
|
||||
3 44 124 42
|
||||
3 42 124 122
|
||||
3 44 46 124
|
||||
3 123 10 125
|
||||
3 12 10 123
|
||||
3 46 126 124
|
||||
3 10 127 125
|
||||
3 8 127 10
|
||||
3 46 49 126
|
||||
3 126 49 128
|
||||
3 8 7 127
|
||||
3 49 129 128
|
||||
3 7 130 127
|
||||
3 49 50 129
|
||||
3 7 131 130
|
||||
3 5 131 7
|
||||
3 129 52 132
|
||||
3 50 52 129
|
||||
3 5 133 131
|
||||
3 3 133 5
|
||||
3 1 133 3
|
||||
3 132 54 134
|
||||
3 52 54 132
|
||||
3 134 56 135
|
||||
3 54 56 134
|
||||
3 136 74 1
|
||||
3 1 74 133
|
||||
3 135 58 137
|
||||
3 56 58 135
|
||||
3 138 72 136
|
||||
3 136 72 74
|
||||
3 58 60 137
|
||||
3 139 60 140
|
||||
3 137 60 139
|
||||
3 141 70 138
|
||||
3 138 70 72
|
||||
3 141 68 70
|
||||
3 60 63 140
|
||||
3 140 63 142
|
||||
3 141 67 68
|
||||
3 143 67 141
|
||||
3 63 64 142
|
||||
3 143 64 67
|
||||
3 142 64 143
|
||||
3 133 74 75
|
||||
3 133 99 97
|
||||
3 133 75 99
|
||||
3 131 133 97
|
||||
3 130 96 93
|
||||
3 130 97 96
|
||||
3 130 131 97
|
||||
3 127 130 93
|
||||
3 125 93 91
|
||||
3 125 127 93
|
||||
3 123 91 89
|
||||
3 123 125 91
|
||||
3 121 87 85
|
||||
3 121 89 87
|
||||
3 121 123 89
|
||||
3 119 121 85
|
||||
3 118 85 84
|
||||
3 118 119 85
|
||||
3 115 84 81
|
||||
3 115 118 84
|
||||
3 113 81 79
|
||||
3 113 115 81
|
||||
3 112 79 78
|
||||
3 112 113 79
|
||||
3 111 77 76
|
||||
3 111 78 77
|
||||
3 111 112 78
|
||||
3 110 76 80
|
||||
3 110 111 76
|
||||
3 114 110 80
|
||||
3 116 114 80
|
||||
3 116 82 83
|
||||
3 116 80 82
|
||||
3 117 116 83
|
||||
3 41 83 39
|
||||
3 41 117 83
|
||||
3 37 120 36
|
||||
3 86 120 88
|
||||
3 36 120 86
|
||||
3 120 122 88
|
||||
3 90 124 92
|
||||
3 88 124 90
|
||||
3 122 124 88
|
||||
3 124 126 92
|
||||
3 94 128 95
|
||||
3 92 128 94
|
||||
3 126 128 92
|
||||
3 95 129 98
|
||||
3 128 129 95
|
||||
3 98 132 100
|
||||
3 129 132 98
|
||||
3 100 134 102
|
||||
3 132 134 100
|
||||
3 102 135 104
|
||||
3 134 135 102
|
||||
3 104 137 105
|
||||
3 135 137 104
|
||||
3 137 139 105
|
||||
3 105 140 106
|
||||
3 139 140 105
|
||||
3 108 142 109
|
||||
3 106 142 108
|
||||
3 140 142 106
|
||||
3 109 143 107
|
||||
3 142 143 109
|
||||
3 143 141 107
|
||||
3 107 141 103
|
||||
3 141 138 103
|
||||
3 103 138 101
|
||||
3 138 136 101
|
||||
3 101 136 0
|
||||
3 136 1 0
|
BIN
web_p/blender/libs/objects/planet_gear.png
Normal file
After Width: | Height: | Size: 5.1 KiB |
BIN
web_p/blender/libs/objects/sol_gear.blend
Normal file
89
web_p/blender/libs/objects/sol_gear.dae
Normal file
BIN
web_p/blender/libs/objects/sol_gear.fbx
Normal file
BIN
web_p/blender/libs/objects/sol_gear.glb
Normal file
897
web_p/blender/libs/objects/sol_gear.ply
Normal file
|
@ -0,0 +1,897 @@
|
|||
ply
|
||||
format ascii 1.0
|
||||
comment Created in Blender version 4.1.0
|
||||
element vertex 296
|
||||
property float x
|
||||
property float y
|
||||
property float z
|
||||
property float nx
|
||||
property float ny
|
||||
property float nz
|
||||
element face 588
|
||||
property list uchar uint vertex_indices
|
||||
end_header
|
||||
-7.5000005 1e-15 19.000002 0.6863727 0 0.72725004
|
||||
-7.386059 -1.3023615 19.000002 0.67594284 0.11918689 0.7272522
|
||||
-7.5000005 1e-15 9.000001 0.72570467 -8.638238e-10 0.68800634
|
||||
-7.386059 -1.3023615 9.000001 0.7146757 0.12601668 0.68801045
|
||||
-7.047695 -2.565151 19.000002 0.6449734 0.23475078 0.727256
|
||||
-7.047695 -2.565151 9.000001 0.68195134 0.2482102 0.6879927
|
||||
-6.4951906 -3.7500002 19.000002 0.5944057 0.34318015 0.7272614
|
||||
-6.4951906 -3.7500002 9.000001 0.6284778 0.36284947 0.68800867
|
||||
-5.7453337 -4.8209076 19.000002 0.5257806 0.44118214 0.72726405
|
||||
-5.7453337 -4.8209076 9.000001 0.5559323 0.46648267 0.6879922
|
||||
-4.8209076 -5.7453337 9.000001 0.46647158 0.55591935 0.68801004
|
||||
-4.8209076 -5.7453337 19.000002 0.4411822 0.52577984 0.7272645
|
||||
-3.7500002 -6.4951906 19.000002 0.34318084 0.59440583 0.72726107
|
||||
-3.7500002 -6.4951906 9.000001 0.3628548 0.6284827 0.68800133
|
||||
-2.565151 -7.047695 9.000001 0.2482051 0.6819379 0.68800807
|
||||
-2.565151 -7.047695 19.000002 0.23475103 0.64497286 0.72725654
|
||||
-1.3023615 -7.386059 19.000002 0.11918699 0.6759431 0.727252
|
||||
-1.3023615 -7.386059 9.000001 0.12601756 0.7146753 0.6880107
|
||||
-1.4700406e-14 -7.5000005 9.000001 9.3654045e-08 0.7257267 0.687983
|
||||
-1.4700406e-14 -7.5000005 19.000002 -5.555648e-08 0.68637305 0.7272497
|
||||
1.3023615 -7.386059 9.000001 -0.12601715 0.714676 0.6880101
|
||||
1.3023615 -7.386059 19.000002 -0.11918688 0.67594236 0.7272526
|
||||
2.565151 -7.047695 19.000002 -0.23475109 0.6449732 0.72725624
|
||||
2.565151 -7.047695 9.000001 -0.24820922 0.681949 0.6879955
|
||||
3.7500002 -6.4951906 19.000002 -0.34318084 0.59440583 0.72726107
|
||||
3.7500002 -6.4951906 9.000001 -0.36285746 0.62848735 0.68799573
|
||||
4.8209076 -5.7453337 9.000001 -0.4664734 0.55592066 0.68800783
|
||||
4.8209076 -5.7453337 19.000002 -0.44118226 0.5257799 0.7272645
|
||||
5.7453337 -4.8209076 19.000002 -0.52578044 0.4411822 0.72726417
|
||||
5.7453337 -4.8209076 9.000001 -0.55591875 0.46647123 0.68801075
|
||||
6.4951906 -3.7500002 9.000001 -0.62848085 0.3628527 0.68800426
|
||||
6.4951906 -3.7500002 19.000002 -0.59440523 0.3431801 0.7272619
|
||||
7.047695 -2.565151 19.000002 -0.6449732 0.23475122 0.72725606
|
||||
7.047695 -2.565151 9.000001 -0.68194246 0.24820647 0.6880029
|
||||
7.386059 -1.3023615 19.000002 -0.675943 0.11918734 0.72725195
|
||||
7.386059 -1.3023615 9.000001 -0.71468973 0.12601873 0.6879955
|
||||
7.5000005 0 9.000001 -0.72571373 0 0.68799675
|
||||
7.5000005 0 19.000002 -0.6863727 0 0.72725004
|
||||
-15.000001 0 4 -0.7239237 0 -0.68988
|
||||
-15.000001 0 19.000002 -0.7239263 0 0.6898774
|
||||
-14.815326 2.3465173 19.000002 -0.71502197 0.113248006 0.6898684
|
||||
-14.815326 2.3465173 4 -0.7150125 0.11324678 -0.6898785
|
||||
-14.265849 4.635255 4 -0.68849784 0.22370686 -0.68987393
|
||||
-14.265849 4.635255 19.000002 -0.68850374 0.2237081 0.68986756
|
||||
-13.365098 6.809858 4 -0.64502853 0.32865885 -0.6898707
|
||||
-13.365098 6.809858 19.000002 -0.6450322 0.3286602 0.68986666
|
||||
-12.135255 8.816779 19.000002 -0.58567476 0.4255178 0.6898693
|
||||
-12.135255 8.816779 4 -0.58567804 0.42551997 -0.68986523
|
||||
-10.606602 10.606602 4 -0.51190084 0.51190096 -0.6898659
|
||||
-10.606602 10.606602 19.000002 -0.5118996 0.5118993 0.68986803
|
||||
-8.816779 12.135255 4 -0.4255184 0.5856759 -0.6898679
|
||||
-8.816779 12.135255 19.000002 -0.4255194 0.5856767 0.6898668
|
||||
-6.809858 13.365098 19.000002 -0.32865915 0.64502984 0.6898693
|
||||
-6.809858 13.365098 4 -0.32865983 0.6450309 -0.6898681
|
||||
-4.635255 14.265849 4 -0.22370638 0.68849796 -0.68987393
|
||||
-4.635255 14.265849 19.000002 -0.22370863 0.6885036 0.6898675
|
||||
-2.3465173 14.815326 4 -0.1132463 0.7150112 -0.68987983
|
||||
-2.3465173 14.815326 19.000002 -0.11324864 0.71502304 0.68986714
|
||||
9.184852e-16 15.000001 4 2.1010484e-07 0.72392493 -0.68987876
|
||||
9.184852e-16 15.000001 19.000002 -2.1053539e-07 0.72392493 0.68987876
|
||||
2.3465173 14.815326 4 0.11324632 0.71500987 -0.6898812
|
||||
2.3465173 14.815326 19.000002 0.11324864 0.7150244 0.6898659
|
||||
4.635255 14.265849 19.000002 0.22370811 0.6885025 0.6898688
|
||||
4.635255 14.265849 4 0.22370699 0.68849903 -0.68987256
|
||||
6.809858 13.365098 4 0.3286586 0.64502865 -0.6898708
|
||||
6.809858 13.365098 19.000002 0.3286604 0.6450321 0.68986666
|
||||
8.816779 12.135255 19.000002 0.4255176 0.5856749 0.68986934
|
||||
8.816779 12.135255 4 0.4255202 0.58567774 -0.68986535
|
||||
10.606602 10.606602 4 0.5119011 0.5119008 -0.6898659
|
||||
10.606602 10.606602 19.000002 0.51189935 0.51189953 0.6898681
|
||||
12.135255 8.816779 4 0.5856768 0.42551938 -0.68986654
|
||||
12.135255 8.816779 19.000002 0.58567595 0.42551842 0.689868
|
||||
13.365098 6.809858 4 0.64502984 0.328659 -0.6898694
|
||||
13.365098 6.809858 19.000002 0.64503086 0.32866007 0.68986803
|
||||
14.265849 4.635255 4 0.6884967 0.22370604 -0.68987525
|
||||
14.265849 4.635255 19.000002 0.6885049 0.22370894 0.68986624
|
||||
14.815326 2.3465173 19.000002 0.715022 0.11324801 0.68986845
|
||||
14.815326 2.3465173 4 0.7150125 0.11324678 -0.6898785
|
||||
15.000001 2e-15 4 0.7239237 0 -0.68988
|
||||
15.000001 2e-15 19.000002 0.7239263 0 0.6898774
|
||||
-12.310097 2.1706023 1 -0.7146746 0.1260153 -0.68801194
|
||||
-12.5 0 4 -0.6863495 1.0653267e-06 -0.72727185
|
||||
-12.310097 2.1706023 4 -0.6759308 0.11918595 -0.7272636
|
||||
-12.5 0 1 -0.7257136 -1.1333369e-06 -0.68799686
|
||||
-11.746158 4.2752523 1 -0.6819614 0.2482126 -0.6879819
|
||||
-11.746158 4.2752523 4 -0.64496636 0.2347494 -0.7272628
|
||||
-10.825318 6.25 1 -0.62848705 0.3628559 -0.68799686
|
||||
-10.825318 6.25 4 -0.59441084 0.34318396 -0.7272554
|
||||
-9.575556 8.034845 1 -0.5559185 0.4664699 -0.6880118
|
||||
-9.575556 8.034845 4 -0.52579135 0.44119257 -0.7272501
|
||||
-8.034845 9.575556 1 -0.4664895 0.5559394 -0.68798184
|
||||
-8.034845 9.575556 4 -0.4411912 0.5257924 -0.7272501
|
||||
-6.25 10.825318 1 -0.36285034 0.6284737 -0.6880119
|
||||
-6.25 10.825318 4 -0.34318274 0.5944116 -0.7272554
|
||||
-4.2752523 11.746158 1 -0.24821025 0.68195224 -0.6879919
|
||||
-4.2752523 11.746158 4 -0.23474677 0.6449619 -0.72726756
|
||||
-2.1706023 12.310097 4 -0.119185805 0.67593586 -0.72725886
|
||||
-2.1706023 12.310097 1 -0.12601805 0.7146837 -0.688002
|
||||
7.654043e-16 12.5 1 0 0.7257326 -0.6879769
|
||||
7.654043e-16 12.5 4 7.892642e-09 0.6863444 -0.7272767
|
||||
2.1706023 12.310097 4 0.11918586 0.6759359 -0.7272588
|
||||
2.1706023 12.310097 1 0.12601557 0.71466964 -0.68801695
|
||||
4.2752523 11.746158 1 0.24820775 0.68194807 -0.68799686
|
||||
4.2752523 11.746158 4 0.23474938 0.64496636 -0.7272628
|
||||
6.25 10.825318 1 0.36285603 0.62848693 -0.68799686
|
||||
6.25 10.825318 4 0.34318408 0.59441084 -0.7272554
|
||||
8.034845 9.575556 1 0.46648833 0.5559404 -0.6879818
|
||||
8.034845 9.575556 4 0.44119236 0.52579147 -0.7272501
|
||||
9.575556 8.034845 1 0.55593264 0.46648288 -0.6879918
|
||||
9.575556 8.034845 4 0.5257879 0.44118866 -0.7272548
|
||||
10.825318 6.25 4 0.5944156 0.34318593 -0.7272506
|
||||
10.825318 6.25 1 0.62848246 0.36285406 -0.68800193
|
||||
11.746158 4.2752523 1 0.6819474 0.24820942 -0.68799686
|
||||
11.746158 4.2752523 4 0.6449669 0.23474781 -0.72726285
|
||||
12.310097 2.1706023 1 0.7146742 0.12601751 -0.6880119
|
||||
12.310097 2.1706023 4 0.67593116 0.119183846 -0.7272636
|
||||
12.5 2e-15 1 0.7257279 1.1333592e-06 -0.68798196
|
||||
12.5 2e-15 4 0.6863495 -1.0669606e-06 -0.72727185
|
||||
-6.893655 1.2155372 -5.0000005 -0.7146827 0.1260184 -0.6880029
|
||||
-7 0 1 -0.6863697 -7.353124e-07 -0.72725284
|
||||
-6.893655 1.2155372 1 -0.67594475 0.11918636 -0.7272505
|
||||
-7 0 -5.0000005 -0.72569805 7.757178e-07 -0.6880134
|
||||
-6.577849 2.3941412 -5.0000005 -0.6819346 0.24820368 -0.6880117
|
||||
-6.577849 2.3941412 1 -0.6449782 0.23475268 -0.7272512
|
||||
-6.062178 3.5 1 -0.59440964 0.34318265 -0.72725713
|
||||
-6.062178 3.5 -5.0000005 -0.6284778 0.36285308 -0.6880067
|
||||
-5.362311 4.499513 -5.0000005 -0.5559175 0.46647006 -0.68801266
|
||||
-5.362311 4.499513 1 -0.525792 0.4411911 -0.72725046
|
||||
-4.499513 5.362311 -5.0000005 -0.46646798 0.55591595 -0.6880152
|
||||
-4.499513 5.362311 1 -0.44118887 0.52578723 -0.7272553
|
||||
-3.5 6.062178 -5.0000005 -0.36285716 0.6284879 -0.6879955
|
||||
-3.5 6.062178 1 -0.34318683 0.5944152 -0.7272505
|
||||
-2.3941412 6.577849 -5.0000005 -0.24820681 0.68194443 -0.68800086
|
||||
-2.3941412 6.577849 1 -0.23475295 0.644976 -0.72725296
|
||||
-1.2155372 6.893655 -5.0000005 -0.12601526 0.7146732 -0.6880132
|
||||
-1.2155372 6.893655 1 -0.119187385 0.675942 -0.72725296
|
||||
4.286264e-16 7 -5.0000005 0 0.725692 -0.68801975
|
||||
4.286264e-16 7 1 0 0.68637156 -0.7272511
|
||||
1.2155372 6.893655 1 0.119186334 0.6759402 -0.72725475
|
||||
1.2155372 6.893655 -5.0000005 0.12601817 0.7146852 -0.68800044
|
||||
2.3941412 6.577849 -5.0000005 0.2482036 0.6819311 -0.6880152
|
||||
2.3941412 6.577849 1 0.2347516 0.6449766 -0.72725296
|
||||
3.5 6.062178 -5.0000005 0.36286348 0.62849593 -0.6879847
|
||||
3.5 6.062178 1 0.34318444 0.5944137 -0.7272529
|
||||
4.499513 5.362311 -5.0000005 0.46648172 0.55593 -0.6879946
|
||||
4.499513 5.362311 1 0.44118777 0.52578807 -0.72725517
|
||||
5.362311 4.499513 -5.0000005 0.5559176 0.46646747 -0.6880144
|
||||
5.362311 4.499513 1 0.5257891 0.44119054 -0.72725284
|
||||
6.062178 3.5 -5.0000005 0.62847227 0.36284903 -0.68801385
|
||||
6.062178 3.5 1 0.59441304 0.34318548 -0.7272529
|
||||
6.577849 2.3941412 -5.0000005 0.6819321 0.2482028 -0.68801445
|
||||
6.577849 2.3941412 1 0.64498067 0.23475356 -0.7272488
|
||||
6.893655 1.2155372 1 0.6759402 0.1191863 -0.72725475
|
||||
6.893655 1.2155372 -5.0000005 0.7146875 0.12601855 -0.6879978
|
||||
7 1e-15 -5.0000005 0.72569615 -7.739879e-07 -0.68801534
|
||||
7 1e-15 1 0.68636715 7.3530964e-07 -0.72725517
|
||||
6.893655 -1.2155372 -5.0000005 0.71468943 -0.1260188 -0.6879958
|
||||
6.893655 -1.2155372 1 0.6759465 -0.11918742 -0.7272488
|
||||
6.577849 -2.3941412 1 0.6449745 -0.23475164 -0.72725475
|
||||
6.577849 -2.3941412 -5.0000005 0.68193537 -0.24820395 -0.68801075
|
||||
6.062178 -3.5 -5.0000005 0.6284754 -0.3628514 -0.68800974
|
||||
6.062178 -3.5 1 0.5944137 -0.34318444 -0.7272529
|
||||
5.362311 -4.499513 -5.0000005 0.5559138 -0.46646532 -0.68801874
|
||||
5.362311 -4.499513 1 0.525791 -0.44119126 -0.72725105
|
||||
4.499513 -5.362311 1 0.44118866 -0.5257882 -0.7272546
|
||||
4.499513 -5.362311 -5.0000005 0.46647552 -0.55592394 -0.6880038
|
||||
3.5 -6.062178 -5.0000005 0.3628598 -0.62849265 -0.6879896
|
||||
3.5 -6.062178 1 0.34318563 -0.594413 -0.72725284
|
||||
2.3941412 -6.577849 -5.0000005 0.24820143 -0.6819274 -0.68801963
|
||||
2.3941412 -6.577849 1 0.23475385 -0.64498055 -0.7272488
|
||||
1.2155372 -6.893655 1 0.11918589 -0.6759377 -0.72725713
|
||||
1.2155372 -6.893655 -5.0000005 0.1260168 -0.71467745 -0.68800867
|
||||
-1.3720378e-14 -7 -5.0000005 -7.77448e-07 -0.7257006 -0.68801063
|
||||
-1.3720378e-14 -7 1 7.263784e-07 -0.6863696 -0.72725284
|
||||
-1.2155372 -6.893655 -5.0000005 -0.1260204 -0.7146933 -0.6879915
|
||||
-1.2155372 -6.893655 1 -0.11918595 -0.6759422 -0.72725296
|
||||
-2.3941412 -6.577849 -5.0000005 -0.24820419 -0.681931 -0.68801516
|
||||
-2.3941412 -6.577849 1 -0.23475157 -0.6449766 -0.72725296
|
||||
-3.5 -6.062178 -5.0000005 -0.36284727 -0.6284692 -0.68801767
|
||||
-3.5 -6.062178 1 -0.34318718 -0.5944173 -0.7272487
|
||||
-4.499513 -5.362311 1 -0.44118705 -0.5257863 -0.72725713
|
||||
-4.499513 -5.362311 -5.0000005 -0.46647418 -0.55592215 -0.6880061
|
||||
-5.362311 -4.499513 -5.0000005 -0.5559317 -0.46648133 -0.6879936
|
||||
-5.362311 -4.499513 1 -0.5257871 -0.44118893 -0.7272553
|
||||
-6.062178 -3.5 -5.0000005 -0.6284716 -0.36284775 -0.6880152
|
||||
-6.062178 -3.5 1 -0.5944131 -0.3431855 -0.7272529
|
||||
-6.577849 -2.3941412 -5.0000005 -0.6819343 -0.2482031 -0.68801224
|
||||
-6.577849 -2.3941412 1 -0.6449762 -0.2347527 -0.7272529
|
||||
-6.893655 -1.2155372 -5.0000005 -0.71466905 -0.12601529 -0.6880176
|
||||
-6.893655 -1.2155372 1 -0.675942 -0.11918737 -0.72725296
|
||||
12.310097 -2.1706023 1 0.71468854 -0.12601778 -0.68799686
|
||||
12.310097 -2.1706023 4 0.6759308 -0.11918595 -0.72726357
|
||||
11.746158 -4.2752523 1 0.6819347 -0.24820289 -0.68801194
|
||||
11.746158 -4.2752523 4 0.64496636 -0.2347494 -0.7272628
|
||||
10.825318 -6.25 1 0.6284906 -0.36285916 -0.6879918
|
||||
10.825318 -6.25 4 0.59440696 -0.34318063 -0.7272602
|
||||
9.575556 -8.034845 4 0.52579576 -0.44119504 -0.7272452
|
||||
9.575556 -8.034845 1 0.55593604 -0.46648592 -0.6879869
|
||||
8.034845 -9.575556 1 0.46647114 -0.5559175 -0.68801194
|
||||
8.034845 -9.575556 4 0.44119126 -0.5257924 -0.7272501
|
||||
6.25 -10.825318 1 0.3628575 -0.6284861 -0.68799686
|
||||
6.25 -10.825318 4 0.34318277 -0.5944116 -0.7272554
|
||||
4.2752523 -11.746158 1 0.24820942 -0.6819474 -0.687997
|
||||
4.2752523 -11.746158 4 0.23474781 -0.6449669 -0.7272628
|
||||
2.1706023 -12.310097 1 0.12601976 -0.71468824 -0.68799686
|
||||
2.1706023 -12.310097 4 0.11918413 -0.67593104 -0.72726357
|
||||
-2.4500675e-14 -12.5 1 -3.7731125e-09 -0.72571844 -0.68799186
|
||||
-2.4500675e-14 -12.5 4 1.0099834e-08 -0.6863444 -0.7272767
|
||||
-2.1706023 -12.310097 4 -0.11918586 -0.6759359 -0.72725886
|
||||
-2.1706023 -12.310097 1 -0.12601803 -0.7146836 -0.688002
|
||||
-4.2752523 -11.746158 1 -0.24820775 -0.68194807 -0.68799686
|
||||
-4.2752523 -11.746158 4 -0.23474935 -0.64496636 -0.7272628
|
||||
-6.25 -10.825318 1 -0.36285603 -0.62848693 -0.68799686
|
||||
-6.25 -10.825318 4 -0.34318405 -0.59441084 -0.7272554
|
||||
-8.034845 -9.575556 1 -0.46647915 -0.5559295 -0.68799686
|
||||
-8.034845 -9.575556 4 -0.4411923 -0.52579147 -0.7272501
|
||||
-9.575556 -8.034845 1 -0.55593926 -0.46648967 -0.68798184
|
||||
-9.575556 -8.034845 4 -0.5257924 -0.4411912 -0.7272501
|
||||
-10.825318 -6.25 1 -0.62848616 -0.3628573 -0.68799686
|
||||
-10.825318 -6.25 4 -0.59441173 -0.34318262 -0.7272554
|
||||
-11.746158 -4.2752523 1 -0.6819474 -0.24820942 -0.68799686
|
||||
-11.746158 -4.2752523 4 -0.6449669 -0.23474781 -0.7272628
|
||||
-12.310097 -2.1706023 1 -0.7146882 -0.12601997 -0.6879969
|
||||
-12.310097 -2.1706023 4 -0.67593116 -0.119183846 -0.72726357
|
||||
14.815326 -2.3465173 19.000002 0.7150221 -0.113248006 0.6898684
|
||||
14.815326 -2.3465173 4 0.7150124 -0.11324677 -0.68987846
|
||||
14.265849 -4.635255 4 0.68849784 -0.22370686 -0.689874
|
||||
14.265849 -4.635255 19.000002 0.6885038 -0.2237081 0.68986756
|
||||
13.365098 -6.809858 4 0.64502853 -0.32865885 -0.6898708
|
||||
13.365098 -6.809858 19.000002 0.6450321 -0.32866025 0.6898667
|
||||
12.135255 -8.816779 19.000002 0.58567476 -0.4255178 0.6898693
|
||||
12.135255 -8.816779 4 0.58567804 -0.42551997 -0.68986523
|
||||
10.606602 -10.606602 4 0.51190084 -0.51190096 -0.6898659
|
||||
10.606602 -10.606602 19.000002 0.5118996 -0.5118993 0.68986803
|
||||
8.816779 -12.135255 4 0.42551842 -0.5856759 -0.6898679
|
||||
8.816779 -12.135255 19.000002 0.4255194 -0.5856767 0.6898668
|
||||
6.809858 -13.365098 19.000002 0.32865912 -0.64502984 0.6898693
|
||||
6.809858 -13.365098 4 0.32865983 -0.64503086 -0.6898681
|
||||
4.635255 -14.265849 4 0.22370644 -0.68849796 -0.68987393
|
||||
4.635255 -14.265849 19.000002 0.22370847 -0.6885037 0.68986756
|
||||
2.3465173 -14.815326 4 0.11324629 -0.7150112 -0.68987983
|
||||
2.3465173 -14.815326 19.000002 0.11324836 -0.7150231 0.68986726
|
||||
-2.7554556e-15 -15.000001 4 -1.9005043e-07 -0.72392493 -0.68987876
|
||||
-2.7554556e-15 -15.000001 19.000002 2.1053538e-07 -0.72392493 0.68987876
|
||||
-2.3465173 -14.815326 4 -0.11324632 -0.71500987 -0.6898812
|
||||
-2.3465173 -14.815326 19.000002 -0.11324835 -0.7150244 0.6898658
|
||||
-4.635255 -14.265849 19.000002 -0.22370793 -0.6885025 0.6898688
|
||||
-4.635255 -14.265849 4 -0.22370695 -0.68849903 -0.68987256
|
||||
-6.809858 -13.365098 4 -0.32865858 -0.64502865 -0.6898707
|
||||
-6.809858 -13.365098 19.000002 -0.32866037 -0.6450321 0.68986666
|
||||
-8.816779 -12.135255 19.000002 -0.4255176 -0.5856749 0.68986934
|
||||
-8.816779 -12.135255 4 -0.42552018 -0.58567774 -0.68986535
|
||||
-10.606602 -10.606602 4 -0.5119011 -0.5119008 -0.6898659
|
||||
-10.606602 -10.606602 19.000002 -0.51189935 -0.51189953 0.6898681
|
||||
-12.135255 -8.816779 4 -0.5856768 -0.42551938 -0.68986654
|
||||
-12.135255 -8.816779 19.000002 -0.5856759 -0.42551842 0.689868
|
||||
-13.365098 -6.809858 4 -0.64502984 -0.328659 -0.68986934
|
||||
-13.365098 -6.809858 19.000002 -0.64503086 -0.32866007 0.68986803
|
||||
-14.265849 -4.635255 4 -0.6884967 -0.22370604 -0.68987525
|
||||
-14.265849 -4.635255 19.000002 -0.6885048 -0.22370894 0.68986624
|
||||
-14.815326 -2.3465173 19.000002 -0.715022 -0.11324801 0.6898684
|
||||
-14.815326 -2.3465173 4 -0.7150124 -0.11324677 -0.68987846
|
||||
-7.386059 1.3023615 19.000002 0.67594284 -0.11918692 0.7272523
|
||||
-7.047695 2.565151 19.000002 0.6449736 -0.23475099 0.7272558
|
||||
-6.4951906 3.7500002 19.000002 0.5944053 -0.34318036 0.72726166
|
||||
-5.7453337 4.8209076 19.000002 0.52578 -0.4411821 0.7272645
|
||||
-4.8209076 5.7453337 19.000002 0.44118237 -0.5257802 0.7272643
|
||||
-3.7500002 6.4951906 19.000002 0.34318063 -0.5944056 0.72726136
|
||||
-2.565151 7.047695 19.000002 0.23475112 -0.6449732 0.72725624
|
||||
-1.3023615 7.386059 19.000002 0.119186476 -0.6759424 0.7272527
|
||||
4.592426e-16 7.5000005 19.000002 5.555648e-08 -0.68637305 0.7272496
|
||||
7.386059 1.3023615 19.000002 -0.67594284 -0.11918691 0.72725224
|
||||
1.3023615 7.386059 19.000002 -0.119186476 -0.6759428 0.72725236
|
||||
7.047695 2.565151 19.000002 -0.6449734 -0.2347508 0.72725606
|
||||
2.565151 7.047695 19.000002 -0.2347512 -0.6449735 0.7272558
|
||||
3.7500002 6.4951906 19.000002 -0.34318066 -0.59440553 0.72726136
|
||||
6.4951906 3.7500002 19.000002 -0.59440553 -0.34318024 0.7272616
|
||||
5.7453337 4.8209076 19.000002 -0.5257804 -0.44118223 0.7272642
|
||||
4.8209076 5.7453337 19.000002 -0.44118208 -0.5257799 0.72726464
|
||||
7.386059 1.3023615 9.000001 -0.7146784 -0.1260169 0.68800765
|
||||
7.047695 2.565151 9.000001 -0.6819356 -0.24820447 0.6880105
|
||||
6.4951906 3.7500002 9.000001 -0.6284799 -0.36285302 0.68800485
|
||||
5.7453337 4.8209076 9.000001 -0.55592245 -0.46647438 0.68800575
|
||||
4.8209076 5.7453337 9.000001 -0.46647862 -0.5559277 0.68799853
|
||||
3.7500002 6.4951906 9.000001 -0.3628503 -0.62847537 0.6880105
|
||||
2.565151 7.047695 9.000001 -0.24820623 -0.68194014 0.6880052
|
||||
1.3023615 7.386059 9.000001 -0.12601714 -0.71467566 0.6880104
|
||||
4.592426e-16 7.5000005 9.000001 -1.3744426e-07 -0.7257194 0.6879909
|
||||
-1.3023615 7.386059 9.000001 0.12601766 -0.7146759 0.68801004
|
||||
-2.565151 7.047695 9.000001 0.24820894 -0.68194926 0.6879953
|
||||
-3.7500002 6.4951906 9.000001 0.3628575 -0.6284876 0.68799543
|
||||
-4.8209076 5.7453337 9.000001 0.4664727 -0.55592054 0.6880084
|
||||
-5.7453337 4.8209076 9.000001 0.5559191 -0.46647146 0.68801045
|
||||
-6.4951906 3.7500002 9.000001 0.62848014 -0.3628526 0.6880049
|
||||
-7.047695 2.565151 9.000001 0.6819419 -0.24820685 0.6880034
|
||||
-7.386059 1.3023615 9.000001 0.7146968 -0.12602034 0.6879878
|
||||
3 0 1 2
|
||||
3 2 1 3
|
||||
3 3 4 5
|
||||
3 1 4 3
|
||||
3 5 6 7
|
||||
3 4 6 5
|
||||
3 7 8 9
|
||||
3 9 8 10
|
||||
3 6 8 7
|
||||
3 8 11 10
|
||||
3 10 12 13
|
||||
3 13 12 14
|
||||
3 11 12 10
|
||||
3 12 15 14
|
||||
3 14 16 17
|
||||
3 17 16 18
|
||||
3 15 16 14
|
||||
3 18 19 20
|
||||
3 16 19 18
|
||||
3 19 21 20
|
||||
3 20 22 23
|
||||
3 21 22 20
|
||||
3 23 24 25
|
||||
3 25 24 26
|
||||
3 22 24 23
|
||||
3 24 27 26
|
||||
3 26 28 29
|
||||
3 29 28 30
|
||||
3 27 28 26
|
||||
3 28 31 30
|
||||
3 31 32 30
|
||||
3 30 32 33
|
||||
3 32 34 33
|
||||
3 33 34 35
|
||||
3 35 34 36
|
||||
3 34 37 36
|
||||
3 38 39 40
|
||||
3 41 38 40
|
||||
3 42 40 43
|
||||
3 42 41 40
|
||||
3 44 45 46
|
||||
3 44 43 45
|
||||
3 44 42 43
|
||||
3 47 44 46
|
||||
3 48 46 49
|
||||
3 48 47 46
|
||||
3 50 51 52
|
||||
3 50 49 51
|
||||
3 50 48 49
|
||||
3 53 50 52
|
||||
3 54 52 55
|
||||
3 54 53 52
|
||||
3 56 55 57
|
||||
3 56 54 55
|
||||
3 58 57 59
|
||||
3 58 56 57
|
||||
3 60 61 62
|
||||
3 60 59 61
|
||||
3 60 58 59
|
||||
3 63 60 62
|
||||
3 64 65 66
|
||||
3 64 62 65
|
||||
3 64 63 62
|
||||
3 67 64 66
|
||||
3 68 67 66
|
||||
3 68 66 69
|
||||
3 70 69 71
|
||||
3 70 68 69
|
||||
3 72 71 73
|
||||
3 72 70 71
|
||||
3 74 75 76
|
||||
3 74 73 75
|
||||
3 74 72 73
|
||||
3 77 74 76
|
||||
3 78 76 79
|
||||
3 78 77 76
|
||||
3 80 81 82
|
||||
3 80 83 81
|
||||
3 84 82 85
|
||||
3 84 80 82
|
||||
3 86 85 87
|
||||
3 86 84 85
|
||||
3 88 87 89
|
||||
3 88 86 87
|
||||
3 90 89 91
|
||||
3 90 88 89
|
||||
3 92 91 93
|
||||
3 92 90 91
|
||||
3 94 95 96
|
||||
3 94 93 95
|
||||
3 94 92 93
|
||||
3 97 94 96
|
||||
3 98 99 100
|
||||
3 98 96 99
|
||||
3 98 97 96
|
||||
3 101 98 100
|
||||
3 102 100 103
|
||||
3 102 101 100
|
||||
3 104 103 105
|
||||
3 104 102 103
|
||||
3 106 105 107
|
||||
3 106 104 105
|
||||
3 108 109 110
|
||||
3 108 107 109
|
||||
3 108 106 107
|
||||
3 111 108 110
|
||||
3 112 110 113
|
||||
3 112 111 110
|
||||
3 114 113 115
|
||||
3 114 112 113
|
||||
3 116 115 117
|
||||
3 116 114 115
|
||||
3 118 119 120
|
||||
3 118 121 119
|
||||
3 122 123 124
|
||||
3 122 120 123
|
||||
3 122 118 120
|
||||
3 125 122 124
|
||||
3 126 124 127
|
||||
3 126 125 124
|
||||
3 128 127 129
|
||||
3 128 126 127
|
||||
3 130 129 131
|
||||
3 130 128 129
|
||||
3 132 131 133
|
||||
3 132 130 131
|
||||
3 134 133 135
|
||||
3 134 132 133
|
||||
3 136 137 138
|
||||
3 136 135 137
|
||||
3 136 134 135
|
||||
3 139 136 138
|
||||
3 140 138 141
|
||||
3 140 139 138
|
||||
3 142 141 143
|
||||
3 142 140 141
|
||||
3 144 143 145
|
||||
3 144 142 143
|
||||
3 146 145 147
|
||||
3 146 144 145
|
||||
3 148 146 147
|
||||
3 148 147 149
|
||||
3 150 151 152
|
||||
3 150 149 151
|
||||
3 150 148 149
|
||||
3 153 150 152
|
||||
3 154 152 155
|
||||
3 154 153 152
|
||||
3 156 154 155
|
||||
3 156 157 158
|
||||
3 156 155 157
|
||||
3 159 156 158
|
||||
3 160 158 161
|
||||
3 160 159 158
|
||||
3 162 163 164
|
||||
3 162 161 163
|
||||
3 162 160 161
|
||||
3 165 162 164
|
||||
3 166 164 167
|
||||
3 166 165 164
|
||||
3 168 169 170
|
||||
3 168 167 169
|
||||
3 168 166 167
|
||||
3 171 168 170
|
||||
3 172 170 173
|
||||
3 172 171 170
|
||||
3 174 173 175
|
||||
3 174 172 173
|
||||
3 176 175 177
|
||||
3 176 174 175
|
||||
3 178 179 180
|
||||
3 178 177 179
|
||||
3 178 176 177
|
||||
3 181 178 180
|
||||
3 182 180 183
|
||||
3 182 181 180
|
||||
3 184 182 183
|
||||
3 184 183 185
|
||||
3 186 184 185
|
||||
3 186 185 187
|
||||
3 188 187 189
|
||||
3 188 186 187
|
||||
3 121 189 119
|
||||
3 121 188 189
|
||||
3 184 186 182
|
||||
3 182 174 181
|
||||
3 181 174 178
|
||||
3 178 174 176
|
||||
3 188 121 186
|
||||
3 121 118 186
|
||||
3 174 166 172
|
||||
3 172 166 171
|
||||
3 171 166 168
|
||||
3 186 166 182
|
||||
3 182 166 174
|
||||
3 118 166 186
|
||||
3 165 160 162
|
||||
3 128 130 126
|
||||
3 126 130 125
|
||||
3 125 130 122
|
||||
3 122 130 118
|
||||
3 160 156 159
|
||||
3 165 156 160
|
||||
3 136 139 134
|
||||
3 134 139 132
|
||||
3 156 153 154
|
||||
3 140 142 139
|
||||
3 132 142 130
|
||||
3 166 142 165
|
||||
3 130 142 118
|
||||
3 118 142 166
|
||||
3 165 142 156
|
||||
3 139 142 132
|
||||
3 153 144 150
|
||||
3 150 144 148
|
||||
3 148 144 146
|
||||
3 156 144 153
|
||||
3 142 144 156
|
||||
3 190 116 117
|
||||
3 190 117 191
|
||||
3 192 191 193
|
||||
3 192 190 191
|
||||
3 194 195 196
|
||||
3 194 193 195
|
||||
3 194 192 193
|
||||
3 197 194 196
|
||||
3 198 196 199
|
||||
3 198 197 196
|
||||
3 200 199 201
|
||||
3 200 198 199
|
||||
3 202 201 203
|
||||
3 202 200 201
|
||||
3 204 203 205
|
||||
3 204 202 203
|
||||
3 206 207 208
|
||||
3 206 205 207
|
||||
3 206 204 205
|
||||
3 209 206 208
|
||||
3 210 208 211
|
||||
3 210 209 208
|
||||
3 212 211 213
|
||||
3 212 210 211
|
||||
3 214 213 215
|
||||
3 214 212 213
|
||||
3 216 215 217
|
||||
3 216 214 215
|
||||
3 218 216 217
|
||||
3 218 217 219
|
||||
3 220 218 219
|
||||
3 220 219 221
|
||||
3 222 221 223
|
||||
3 222 220 221
|
||||
3 83 223 81
|
||||
3 83 222 223
|
||||
3 216 180 214
|
||||
3 183 180 216
|
||||
3 214 179 212
|
||||
3 180 179 214
|
||||
3 218 185 216
|
||||
3 216 185 183
|
||||
3 212 177 210
|
||||
3 179 177 212
|
||||
3 220 187 218
|
||||
3 218 187 185
|
||||
3 177 175 210
|
||||
3 210 175 209
|
||||
3 222 189 220
|
||||
3 220 189 187
|
||||
3 209 173 206
|
||||
3 175 173 209
|
||||
3 83 119 222
|
||||
3 222 119 189
|
||||
3 173 170 206
|
||||
3 206 170 204
|
||||
3 84 120 80
|
||||
3 80 120 83
|
||||
3 83 120 119
|
||||
3 170 169 204
|
||||
3 204 169 202
|
||||
3 84 123 120
|
||||
3 202 167 200
|
||||
3 169 167 202
|
||||
3 86 124 84
|
||||
3 84 124 123
|
||||
3 200 164 198
|
||||
3 167 164 200
|
||||
3 88 127 86
|
||||
3 86 127 124
|
||||
3 164 197 198
|
||||
3 163 197 164
|
||||
3 88 90 127
|
||||
3 127 90 129
|
||||
3 163 161 197
|
||||
3 90 131 129
|
||||
3 161 194 197
|
||||
3 158 194 161
|
||||
3 90 92 131
|
||||
3 158 192 194
|
||||
3 131 94 133
|
||||
3 92 94 131
|
||||
3 157 190 158
|
||||
3 158 190 192
|
||||
3 133 97 135
|
||||
3 94 97 133
|
||||
3 137 98 138
|
||||
3 135 98 137
|
||||
3 97 98 135
|
||||
3 152 116 155
|
||||
3 157 116 190
|
||||
3 155 116 157
|
||||
3 98 101 138
|
||||
3 152 114 116
|
||||
3 101 102 138
|
||||
3 138 102 141
|
||||
3 151 112 152
|
||||
3 152 112 114
|
||||
3 102 104 141
|
||||
3 141 104 143
|
||||
3 151 111 112
|
||||
3 149 111 151
|
||||
3 149 108 111
|
||||
3 147 108 149
|
||||
3 104 106 143
|
||||
3 147 106 108
|
||||
3 145 106 147
|
||||
3 143 106 145
|
||||
3 78 79 224
|
||||
3 225 78 224
|
||||
3 226 224 227
|
||||
3 226 225 224
|
||||
3 228 229 230
|
||||
3 228 227 229
|
||||
3 228 226 227
|
||||
3 231 228 230
|
||||
3 232 230 233
|
||||
3 232 231 230
|
||||
3 234 235 236
|
||||
3 234 233 235
|
||||
3 234 232 233
|
||||
3 237 234 236
|
||||
3 238 236 239
|
||||
3 238 237 236
|
||||
3 240 239 241
|
||||
3 240 238 239
|
||||
3 242 241 243
|
||||
3 242 240 241
|
||||
3 244 245 246
|
||||
3 244 243 245
|
||||
3 244 242 243
|
||||
3 247 244 246
|
||||
3 248 249 250
|
||||
3 248 246 249
|
||||
3 248 247 246
|
||||
3 251 248 250
|
||||
3 252 251 250
|
||||
3 252 250 253
|
||||
3 254 253 255
|
||||
3 254 252 253
|
||||
3 256 255 257
|
||||
3 256 254 255
|
||||
3 258 259 260
|
||||
3 258 257 259
|
||||
3 258 256 257
|
||||
3 261 258 260
|
||||
3 38 260 39
|
||||
3 38 261 260
|
||||
3 11 253 250
|
||||
3 8 255 253
|
||||
3 8 253 11
|
||||
3 12 250 249
|
||||
3 12 11 250
|
||||
3 6 257 255
|
||||
3 6 255 8
|
||||
3 15 12 249
|
||||
3 15 249 246
|
||||
3 4 259 257
|
||||
3 4 257 6
|
||||
3 16 246 245
|
||||
3 16 15 246
|
||||
3 1 260 259
|
||||
3 1 259 4
|
||||
3 19 245 243
|
||||
3 19 243 241
|
||||
3 19 16 245
|
||||
3 0 39 260
|
||||
3 0 260 1
|
||||
3 0 40 39
|
||||
3 21 19 241
|
||||
3 21 241 239
|
||||
3 262 40 0
|
||||
3 262 43 40
|
||||
3 22 239 236
|
||||
3 22 21 239
|
||||
3 263 43 262
|
||||
3 263 45 43
|
||||
3 24 236 235
|
||||
3 24 22 236
|
||||
3 264 46 45
|
||||
3 264 45 263
|
||||
3 27 24 235
|
||||
3 265 46 264
|
||||
3 233 27 235
|
||||
3 49 46 265
|
||||
3 28 27 233
|
||||
3 266 49 265
|
||||
3 230 28 233
|
||||
3 230 31 28
|
||||
3 51 266 267
|
||||
3 51 49 266
|
||||
3 229 31 230
|
||||
3 229 32 31
|
||||
3 52 267 268
|
||||
3 52 51 267
|
||||
3 227 32 229
|
||||
3 227 34 32
|
||||
3 55 268 269
|
||||
3 55 52 268
|
||||
3 224 37 34
|
||||
3 224 34 227
|
||||
3 57 269 270
|
||||
3 57 55 269
|
||||
3 79 37 224
|
||||
3 59 57 270
|
||||
3 76 271 37
|
||||
3 76 37 79
|
||||
3 61 59 270
|
||||
3 61 270 272
|
||||
3 75 271 76
|
||||
3 75 273 271
|
||||
3 62 61 272
|
||||
3 62 272 274
|
||||
3 65 62 274
|
||||
3 65 274 275
|
||||
3 73 276 273
|
||||
3 73 273 75
|
||||
3 71 276 73
|
||||
3 71 277 276
|
||||
3 66 65 275
|
||||
3 66 275 278
|
||||
3 69 66 278
|
||||
3 69 278 277
|
||||
3 69 277 71
|
||||
3 252 215 251
|
||||
3 254 217 252
|
||||
3 252 217 215
|
||||
3 251 213 248
|
||||
3 215 213 251
|
||||
3 256 219 254
|
||||
3 254 219 217
|
||||
3 248 211 247
|
||||
3 213 211 248
|
||||
3 256 221 219
|
||||
3 258 221 256
|
||||
3 211 208 247
|
||||
3 247 208 244
|
||||
3 258 223 221
|
||||
3 261 223 258
|
||||
3 208 207 244
|
||||
3 244 207 242
|
||||
3 261 81 223
|
||||
3 38 81 261
|
||||
3 207 240 242
|
||||
3 38 41 81
|
||||
3 207 205 240
|
||||
3 41 82 81
|
||||
3 205 238 240
|
||||
3 41 42 82
|
||||
3 205 203 238
|
||||
3 42 85 82
|
||||
3 203 237 238
|
||||
3 42 44 85
|
||||
3 203 201 237
|
||||
3 44 87 85
|
||||
3 201 234 237
|
||||
3 44 47 87
|
||||
3 201 199 234
|
||||
3 47 89 87
|
||||
3 199 232 234
|
||||
3 47 48 89
|
||||
3 199 196 232
|
||||
3 48 91 89
|
||||
3 196 231 232
|
||||
3 48 50 91
|
||||
3 196 195 231
|
||||
3 50 93 91
|
||||
3 195 228 231
|
||||
3 50 53 93
|
||||
3 195 193 228
|
||||
3 53 95 93
|
||||
3 193 226 228
|
||||
3 53 54 95
|
||||
3 193 191 226
|
||||
3 54 96 95
|
||||
3 191 225 226
|
||||
3 54 56 96
|
||||
3 191 117 225
|
||||
3 56 99 96
|
||||
3 56 58 99
|
||||
3 117 78 225
|
||||
3 99 60 100
|
||||
3 58 60 99
|
||||
3 115 77 117
|
||||
3 117 77 78
|
||||
3 115 74 77
|
||||
3 113 74 115
|
||||
3 60 63 100
|
||||
3 100 63 103
|
||||
3 63 64 103
|
||||
3 103 64 105
|
||||
3 110 72 113
|
||||
3 113 72 74
|
||||
3 110 70 72
|
||||
3 109 70 110
|
||||
3 64 67 105
|
||||
3 105 67 107
|
||||
3 109 68 70
|
||||
3 67 68 107
|
||||
3 107 68 109
|
||||
3 37 271 36
|
||||
3 36 271 279
|
||||
3 279 273 280
|
||||
3 271 273 279
|
||||
3 280 276 281
|
||||
3 273 276 280
|
||||
3 281 277 282
|
||||
3 282 277 283
|
||||
3 276 277 281
|
||||
3 277 278 283
|
||||
3 283 275 284
|
||||
3 278 275 283
|
||||
3 284 274 285
|
||||
3 285 274 286
|
||||
3 275 274 284
|
||||
3 286 272 287
|
||||
3 274 272 286
|
||||
3 287 270 288
|
||||
3 272 270 287
|
||||
3 270 269 288
|
||||
3 288 268 289
|
||||
3 269 268 288
|
||||
3 289 267 290
|
||||
3 268 267 289
|
||||
3 290 266 291
|
||||
3 267 266 290
|
||||
3 291 265 292
|
||||
3 266 265 291
|
||||
3 265 264 292
|
||||
3 292 264 293
|
||||
3 264 263 293
|
||||
3 293 263 294
|
||||
3 294 263 295
|
||||
3 295 262 2
|
||||
3 263 262 295
|
||||
3 262 0 2
|
||||
3 13 9 10
|
||||
3 5 7 9
|
||||
3 18 13 14
|
||||
3 18 14 17
|
||||
3 18 9 13
|
||||
3 18 5 9
|
||||
3 2 3 5
|
||||
3 23 18 20
|
||||
3 291 292 293
|
||||
3 30 25 26
|
||||
3 30 26 29
|
||||
3 290 293 294
|
||||
3 290 294 295
|
||||
3 290 291 293
|
||||
3 33 25 30
|
||||
3 289 290 295
|
||||
3 35 23 25
|
||||
3 35 25 33
|
||||
3 287 288 289
|
||||
3 287 295 2
|
||||
3 287 2 5
|
||||
3 287 289 295
|
||||
3 36 23 35
|
||||
3 285 286 287
|
||||
3 281 36 279
|
||||
3 281 279 280
|
||||
3 282 36 281
|
||||
3 282 23 36
|
||||
3 283 284 285
|
||||
3 283 23 282
|
||||
3 283 5 18
|
||||
3 283 18 23
|
||||
3 283 287 5
|
||||
3 283 285 287
|
BIN
web_p/blender/libs/objects/sol_gear.png
Normal file
After Width: | Height: | Size: 6 KiB |
96
web_p/blender/parts.json
Normal file
|
@ -0,0 +1,96 @@
|
|||
[
|
||||
{
|
||||
"name": "body_down",
|
||||
"part_path": "parts/objects/body_down.stl",
|
||||
"material_path": "",
|
||||
"mass": 100,
|
||||
"inertia": {
|
||||
"ixx": 0.1,
|
||||
"ixy": 0,
|
||||
"ixz": 0,
|
||||
"iyy": 0.1,
|
||||
"iyz": 0,
|
||||
"izz": 0.1
|
||||
},
|
||||
"visual": ".dae",
|
||||
"collision": ".stl"
|
||||
},
|
||||
{
|
||||
"name": "sol_gear",
|
||||
"part_path": "parts/objects/sol_gear.stl",
|
||||
"material_path": "",
|
||||
"mass": 100,
|
||||
"inertia": {
|
||||
"ixx": 0.1,
|
||||
"ixy": 0,
|
||||
"ixz": 0,
|
||||
"iyy": 0.1,
|
||||
"iyz": 0,
|
||||
"izz": 0.1
|
||||
},
|
||||
"visual": ".dae",
|
||||
"collision": ".stl"
|
||||
},
|
||||
{
|
||||
"name": "output_shaft",
|
||||
"part_path": "parts/objects/output_shaft.stl",
|
||||
"material_path": "",
|
||||
"mass": 100,
|
||||
"inertia": {
|
||||
"ixx": 0.1,
|
||||
"ixy": 0,
|
||||
"ixz": 0,
|
||||
"iyy": 0.1,
|
||||
"iyz": 0,
|
||||
"izz": 0.1
|
||||
},
|
||||
"visual": ".dae",
|
||||
"collision": ".stl"
|
||||
},
|
||||
{
|
||||
"name": "planet_gear",
|
||||
"part_path": "parts/objects/planet_gear.stl",
|
||||
"material_path": "",
|
||||
"mass": 100,
|
||||
"inertia": {
|
||||
"ixx": 0.1,
|
||||
"ixy": 0,
|
||||
"ixz": 0,
|
||||
"iyy": 0.1,
|
||||
"iyz": 0,
|
||||
"izz": 0.1
|
||||
},
|
||||
"visual": ".dae",
|
||||
"collision": ".stl"
|
||||
},
|
||||
{
|
||||
"name": "body_up",
|
||||
"part_path": "parts/objects/body_up.stl",
|
||||
"material_path": "",
|
||||
"inertia": {
|
||||
"ixx": 0.1,
|
||||
"ixy": 0,
|
||||
"ixz": 0,
|
||||
"iyy": 0.1,
|
||||
"iyz": 0,
|
||||
"izz": 0.1
|
||||
},
|
||||
"visual": ".dae",
|
||||
"collision": ".stl"
|
||||
},
|
||||
{
|
||||
"name": "bolt",
|
||||
"part_path": "parts/objects/bolt.stl",
|
||||
"material_path": "",
|
||||
"inertia": {
|
||||
"ixx": 0.1,
|
||||
"ixy": 0,
|
||||
"ixz": 0,
|
||||
"iyy": 0.1,
|
||||
"iyz": 0,
|
||||
"izz": 0.1
|
||||
},
|
||||
"visual": ".dae",
|
||||
"collision": ".stl"
|
||||
}
|
||||
]
|
BIN
web_p/blender/parts/objects/body_down.stl
Normal file
BIN
web_p/blender/parts/objects/body_up.stl
Normal file
BIN
web_p/blender/parts/objects/bolt.stl
Normal file
BIN
web_p/blender/parts/objects/output_shaft.stl
Normal file
BIN
web_p/blender/parts/objects/planet_gear.stl
Normal file
BIN
web_p/blender/parts/objects/sol_gear.stl
Normal file
BIN
web_p/blender/test_reductor.20240614-145154.FCBak
Normal file
BIN
web_p/blender/test_reductor.FCStd
Normal file
325
web_p/blender/trees.json
Normal file
|
@ -0,0 +1,325 @@
|
|||
[
|
||||
{
|
||||
"type": "LOCATOR",
|
||||
"name": "test_reductor",
|
||||
"pose": [
|
||||
{
|
||||
"loc_xyz": [
|
||||
0.0,
|
||||
0.0,
|
||||
0.0
|
||||
]
|
||||
},
|
||||
{
|
||||
"rot_xyzw": [
|
||||
0.0,
|
||||
0.0,
|
||||
0.0,
|
||||
1.0
|
||||
]
|
||||
}
|
||||
],
|
||||
"attributes": [],
|
||||
"children": [
|
||||
{
|
||||
"type": "PART",
|
||||
"name": "body_down",
|
||||
"base_name": "body_down",
|
||||
"pose": [
|
||||
{
|
||||
"loc_xyz": [
|
||||
-0.0,
|
||||
-0.0,
|
||||
-0.0
|
||||
]
|
||||
},
|
||||
{
|
||||
"rot_xyzw": [
|
||||
-0.7071067811865475,
|
||||
0.0,
|
||||
0.0,
|
||||
0.7071067811865476
|
||||
]
|
||||
}
|
||||
],
|
||||
"attributes": []
|
||||
},
|
||||
{
|
||||
"type": "PART",
|
||||
"name": "sol_gear",
|
||||
"base_name": "sol_gear",
|
||||
"pose": [
|
||||
{
|
||||
"loc_xyz": [
|
||||
-0.0,
|
||||
-0.0,
|
||||
-0.0
|
||||
]
|
||||
},
|
||||
{
|
||||
"rot_xyzw": [
|
||||
-0.7071067811865475,
|
||||
0.0,
|
||||
0.0,
|
||||
0.7071067811865476
|
||||
]
|
||||
}
|
||||
],
|
||||
"attributes": []
|
||||
},
|
||||
{
|
||||
"type": "PART",
|
||||
"name": "output_shaft",
|
||||
"base_name": "output_shaft",
|
||||
"pose": [
|
||||
{
|
||||
"loc_xyz": [
|
||||
-0.0,
|
||||
9.0,
|
||||
-0.0
|
||||
]
|
||||
},
|
||||
{
|
||||
"rot_xyzw": [
|
||||
-0.7071067811865475,
|
||||
0.0,
|
||||
0.0,
|
||||
0.7071067811865476
|
||||
]
|
||||
}
|
||||
],
|
||||
"attributes": []
|
||||
},
|
||||
{
|
||||
"type": "PART",
|
||||
"name": "planet_gear",
|
||||
"base_name": "planet_gear",
|
||||
"pose": [
|
||||
{
|
||||
"loc_xyz": [
|
||||
-0.0,
|
||||
19.999999999999996,
|
||||
-0.0
|
||||
]
|
||||
},
|
||||
{
|
||||
"rot_xyzw": [
|
||||
0.0,
|
||||
0.7071067811865476,
|
||||
-0.7071067811865475,
|
||||
0.0
|
||||
]
|
||||
}
|
||||
],
|
||||
"attributes": []
|
||||
},
|
||||
{
|
||||
"type": "PART",
|
||||
"name": "planet_gear003",
|
||||
"base_name": "planet_gear",
|
||||
"pose": [
|
||||
{
|
||||
"loc_xyz": [
|
||||
-0.0,
|
||||
19.999999999999996,
|
||||
-0.0
|
||||
]
|
||||
},
|
||||
{
|
||||
"rot_xyzw": [
|
||||
0.4156269377774544,
|
||||
0.5720614028176838,
|
||||
-0.5720614028176839,
|
||||
0.4156269377774544
|
||||
]
|
||||
}
|
||||
],
|
||||
"attributes": []
|
||||
},
|
||||
{
|
||||
"type": "PART",
|
||||
"name": "planet_gear004",
|
||||
"base_name": "planet_gear",
|
||||
"pose": [
|
||||
{
|
||||
"loc_xyz": [
|
||||
-0.0,
|
||||
19.999999999999996,
|
||||
-0.0
|
||||
]
|
||||
},
|
||||
{
|
||||
"rot_xyzw": [
|
||||
0.672498511963958,
|
||||
0.21850801222440877,
|
||||
-0.21850801222440877,
|
||||
0.6724985119639579
|
||||
]
|
||||
}
|
||||
],
|
||||
"attributes": []
|
||||
},
|
||||
{
|
||||
"type": "PART",
|
||||
"name": "planet_gear005",
|
||||
"base_name": "planet_gear",
|
||||
"pose": [
|
||||
{
|
||||
"loc_xyz": [
|
||||
-0.0,
|
||||
19.999999999999996,
|
||||
-0.0
|
||||
]
|
||||
},
|
||||
{
|
||||
"rot_xyzw": [
|
||||
0.6724985119639563,
|
||||
-0.21850801222441377,
|
||||
0.21850801222441377,
|
||||
0.6724985119639564
|
||||
]
|
||||
}
|
||||
],
|
||||
"attributes": []
|
||||
},
|
||||
{
|
||||
"type": "PART",
|
||||
"name": "planet_gear002",
|
||||
"base_name": "planet_gear",
|
||||
"pose": [
|
||||
{
|
||||
"loc_xyz": [
|
||||
-0.0,
|
||||
19.999999999999996,
|
||||
-0.0
|
||||
]
|
||||
},
|
||||
{
|
||||
"rot_xyzw": [
|
||||
-0.41562693777745024,
|
||||
0.5720614028176866,
|
||||
-0.5720614028176866,
|
||||
-0.41562693777745024
|
||||
]
|
||||
}
|
||||
],
|
||||
"attributes": []
|
||||
},
|
||||
{
|
||||
"type": "PART",
|
||||
"name": "body_up",
|
||||
"base_name": "body_up",
|
||||
"pose": [
|
||||
{
|
||||
"loc_xyz": [
|
||||
-0.0,
|
||||
20.0,
|
||||
-0.0
|
||||
]
|
||||
},
|
||||
{
|
||||
"rot_xyzw": [
|
||||
-0.7071067811865475,
|
||||
0.0,
|
||||
0.0,
|
||||
0.7071067811865476
|
||||
]
|
||||
}
|
||||
],
|
||||
"attributes": []
|
||||
},
|
||||
{
|
||||
"type": "PART",
|
||||
"name": "bolt",
|
||||
"base_name": "bolt",
|
||||
"pose": [
|
||||
{
|
||||
"loc_xyz": [
|
||||
-0.0,
|
||||
31.0,
|
||||
-0.0
|
||||
]
|
||||
},
|
||||
{
|
||||
"rot_xyzw": [
|
||||
-0.7071067811865475,
|
||||
0.0,
|
||||
0.0,
|
||||
0.7071067811865476
|
||||
]
|
||||
}
|
||||
],
|
||||
"attributes": []
|
||||
},
|
||||
{
|
||||
"type": "PART",
|
||||
"name": "bolt2",
|
||||
"base_name": "bolt",
|
||||
"pose": [
|
||||
{
|
||||
"loc_xyz": [
|
||||
-0.0,
|
||||
31.0,
|
||||
-0.0
|
||||
]
|
||||
},
|
||||
{
|
||||
"rot_xyzw": [
|
||||
0.499999999999999,
|
||||
0.500000000000001,
|
||||
0.500000000000001,
|
||||
-0.499999999999999
|
||||
]
|
||||
}
|
||||
],
|
||||
"attributes": []
|
||||
},
|
||||
{
|
||||
"type": "PART",
|
||||
"name": "bolt3",
|
||||
"base_name": "bolt",
|
||||
"pose": [
|
||||
{
|
||||
"loc_xyz": [
|
||||
0.0,
|
||||
31.0,
|
||||
-0.0
|
||||
]
|
||||
},
|
||||
{
|
||||
"rot_xyzw": [
|
||||
-2.474873734152916e-15,
|
||||
0.7071067811865476,
|
||||
0.7071067811865475,
|
||||
2.474873734152916e-15
|
||||
]
|
||||
}
|
||||
],
|
||||
"attributes": []
|
||||
},
|
||||
{
|
||||
"type": "PART",
|
||||
"name": "bolt4",
|
||||
"base_name": "bolt",
|
||||
"pose": [
|
||||
{
|
||||
"loc_xyz": [
|
||||
-0.0,
|
||||
31.0,
|
||||
0.0
|
||||
]
|
||||
},
|
||||
{
|
||||
"rot_xyzw": [
|
||||
-0.5000000000000026,
|
||||
0.49999999999999756,
|
||||
0.49999999999999756,
|
||||
0.5000000000000024
|
||||
]
|
||||
}
|
||||
],
|
||||
"attributes": []
|
||||
}
|
||||
]
|
||||
}
|
||||
]
|
32
web_p/education.py
Normal file
|
@ -0,0 +1,32 @@
|
|||
import shutil
|
||||
import argparse
|
||||
import os.path
|
||||
from pathlib import Path
|
||||
|
||||
parser = argparse.ArgumentParser()
|
||||
|
||||
parser.add_argument("--path", required=True, help="Path for dataset")
|
||||
parser.add_argument("--name", required=True, help="String with result weights name")
|
||||
parser.add_argument("--datasetName", required=True, help="String with dataset name")
|
||||
parser.add_argument("--outpath", default="weights", help="Output path for weights")
|
||||
parser.add_argument("--type", default="ObjectDetection", help="Type of implementation")
|
||||
parser.add_argument("--epoch", default=3, help="How many training epochs")
|
||||
parser.add_argument('--pretrain', help="Use pretraining")
|
||||
args = parser.parse_args()
|
||||
|
||||
|
||||
def copy_and_move_folder(src, dst, folder):
|
||||
try:
|
||||
if os.path.exists(dst + "/education/") is False:
|
||||
Path(dst + "/education/").mkdir(parents=True, exist_ok=True)
|
||||
if os.path.exists(dst + "/education/" + folder + "/"):
|
||||
shutil.rmtree(dst + "/education/" + folder + "/")
|
||||
|
||||
shutil.copytree(src, dst + "/education/" + folder + "/")
|
||||
|
||||
except shutil.Error as e:
|
||||
print(f"Error: {e}")
|
||||
|
||||
|
||||
source_folder = os.path.dirname(os.path.abspath(__file__)) + "/education"
|
||||
copy_and_move_folder(source_folder, args.path, args.name)
|
3
web_p/education/metadata.json
Normal file
|
@ -0,0 +1,3 @@
|
|||
{
|
||||
"numberOfEpochs": 1
|
||||
}
|
BIN
web_p/education/yolov8n.pt
Normal file
22
web_p/get_interfaces_mock.py
Normal file
|
@ -0,0 +1,22 @@
|
|||
import shutil
|
||||
import argparse
|
||||
import os.path
|
||||
|
||||
parser = argparse.ArgumentParser()
|
||||
parser.add_argument("--path")
|
||||
args = parser.parse_args()
|
||||
|
||||
|
||||
def copy_and_move_folder(src, dst):
|
||||
try:
|
||||
if os.path.exists(dst):
|
||||
shutil.rmtree(dst)
|
||||
shutil.copytree(src, dst)
|
||||
print(f"Folder {src} successfully copied")
|
||||
except shutil.Error as e:
|
||||
print(f"Error: {e}")
|
||||
|
||||
|
||||
source_folder = os.path.dirname(os.path.abspath(__file__)) + "/interfaces/"
|
||||
|
||||
copy_and_move_folder(source_folder, args.path)
|
124
web_p/interfaces/topics.json
Normal file
|
@ -0,0 +1,124 @@
|
|||
{
|
||||
"topics": [
|
||||
{
|
||||
"name": "/cartesian_force_controller/current_pose",
|
||||
"type": "geometry_msgs/msg/PoseStamped"
|
||||
},
|
||||
{
|
||||
"name": "/cartesian_force_controller/current_twist",
|
||||
"type": "geometry_msgs/msg/TwistStamped"
|
||||
},
|
||||
{
|
||||
"name": "/cartesian_force_controller/target_wrench",
|
||||
"type": "geometry_msgs/msg/WrenchStamped"
|
||||
},
|
||||
{
|
||||
"name": "/cartesian_force_controller/transition_event",
|
||||
"type": "lifecycle_msgs/msg/TransitionEvent"
|
||||
},
|
||||
{
|
||||
"name": "/cartesian_motion_controller/current_pose",
|
||||
"type": "geometry_msgs/msg/PoseStamped"
|
||||
},
|
||||
{
|
||||
"name": "/cartesian_motion_controller/current_twist",
|
||||
"type": "geometry_msgs/msg/TwistStamped"
|
||||
},
|
||||
{
|
||||
"name": "/cartesian_motion_controller/target_frame",
|
||||
"type": "geometry_msgs/msg/PoseStamped"
|
||||
},
|
||||
{
|
||||
"name": "/cartesian_motion_controller/transition_event",
|
||||
"type": "lifecycle_msgs/msg/TransitionEvent"
|
||||
},
|
||||
{
|
||||
"name": "/clock",
|
||||
"type": "rosgraph_msgs/msg/Clock"
|
||||
},
|
||||
{
|
||||
"name": "/dynamic_joint_states",
|
||||
"type": "control_msgs/msg/DynamicJointState"
|
||||
},
|
||||
{
|
||||
"name": "/force_torque_sensor_broadcaster/transition_event",
|
||||
"type": "lifecycle_msgs/msg/TransitionEvent"
|
||||
},
|
||||
{
|
||||
"name": "/force_torque_sensor_broadcaster/wrench",
|
||||
"type": "geometry_msgs/msg/WrenchStamped"
|
||||
},
|
||||
{
|
||||
"name": "/gripper_control_action_server/gripper_controller/commands",
|
||||
"type": "std_msgs/msg/Float64MultiArray"
|
||||
},
|
||||
{
|
||||
"name": "/gripper_controller/transition_event",
|
||||
"type": "lifecycle_msgs/msg/TransitionEvent"
|
||||
},
|
||||
{
|
||||
"name": "/gz_enviroment/transition_event",
|
||||
"type": "lifecycle_msgs/msg/TransitionEvent"
|
||||
},
|
||||
{
|
||||
"name": "/joint_effort_controller/commands",
|
||||
"type": "std_msgs/msg/Float64MultiArray"
|
||||
},
|
||||
{
|
||||
"name": "/joint_effort_controller/transition_event",
|
||||
"type": "lifecycle_msgs/msg/TransitionEvent"
|
||||
},
|
||||
{
|
||||
"name": "/joint_state_broadcaster/transition_event",
|
||||
"type": "lifecycle_msgs/msg/TransitionEvent"
|
||||
},
|
||||
{
|
||||
"name": "/joint_states",
|
||||
"type": "sensor_msgs/msg/JointState"
|
||||
},
|
||||
{
|
||||
"name": "/joint_trajectory_controller/controller_state",
|
||||
"type": "control_msgs/msg/JointTrajectoryControllerState"
|
||||
},
|
||||
{
|
||||
"name": "/joint_trajectory_controller/joint_trajectory",
|
||||
"type": "trajectory_msgs/msg/JointTrajectory"
|
||||
},
|
||||
{
|
||||
"name": "/joint_trajectory_controller/state",
|
||||
"type": "control_msgs/msg/JointTrajectoryControllerState"
|
||||
},
|
||||
{
|
||||
"name": "/joint_trajectory_controller/transition_event",
|
||||
"type": "lifecycle_msgs/msg/TransitionEvent"
|
||||
},
|
||||
{
|
||||
"name": "/rgbd_camera/camera_info",
|
||||
"type": "sensor_msgs/msg/CameraInfo"
|
||||
},
|
||||
{
|
||||
"name": "/rgbd_camera/depth_image",
|
||||
"type": "sensor_msgs/msg/Image"
|
||||
},
|
||||
{
|
||||
"name": "/rgbd_camera/image",
|
||||
"type": "sensor_msgs/msg/Image"
|
||||
},
|
||||
{
|
||||
"name": "/rgbd_camera/points",
|
||||
"type": "sensor_msgs/msg/PointCloud2"
|
||||
},
|
||||
{
|
||||
"name": "/robot_description",
|
||||
"type": "std_msgs/msg/String"
|
||||
},
|
||||
{
|
||||
"name": "/tf",
|
||||
"type": "tf2_msgs/msg/TFMessage"
|
||||
},
|
||||
{
|
||||
"name": "/tf_static",
|
||||
"type": "tf2_msgs/msg/TFMessage"
|
||||
}
|
||||
]
|
||||
}
|
30
web_p/rbs_train.py
Normal file
|
@ -0,0 +1,30 @@
|
|||
"""
|
||||
rbs_train
|
||||
Общая задача: web-service pipeline
|
||||
Реализуемая функция: обучение нейросетевой модели по заданному BOP-датасету
|
||||
|
||||
python3 $PYTHON_EDUCATION --path /Users/idontsudo/webservice/server/build/public/7065d6b6-c8a3-48c5-9679-bb8f3a690296 \
|
||||
--name test1234 --datasetName 32123213
|
||||
|
||||
27.04.2024 @shalenikol release 0.1
|
||||
"""
|
||||
|
||||
import argparse
|
||||
from train_Yolo import train_YoloV8
|
||||
from train_Dope import train_Dope_i
|
||||
|
||||
if __name__ == "__main__":
|
||||
parser = argparse.ArgumentParser()
|
||||
parser.add_argument("--path", required=True, help="Path for dataset")
|
||||
parser.add_argument("--name", required=True, help="String with result weights name")
|
||||
parser.add_argument("--datasetName", required=True, help="String with dataset name")
|
||||
parser.add_argument("--outpath", default="weights", help="Output path for weights")
|
||||
parser.add_argument("--type", default="ObjectDetection", help="Type of implementation")
|
||||
parser.add_argument("--epoch", default=3, type=int, help="How many training epochs")
|
||||
parser.add_argument('--pretrain', action="store_true", help="Use pretraining")
|
||||
args = parser.parse_args()
|
||||
|
||||
if args.type == "ObjectDetection":
|
||||
train_YoloV8(args.path, args.name, args.datasetName, args.outpath, args.epoch, args.pretrain)
|
||||
else:
|
||||
train_Dope_i(args.path, args.name, args.datasetName, args.outpath, args.epoch, args.pretrain)
|
|
@ -5,7 +5,8 @@ import blenderproc as bproc
|
|||
Реализуемая функция: создание датасета в формате BOP с заданными параметрами рандомизации
|
||||
Используется модуль blenderproc
|
||||
|
||||
19.04.2024 @shalenikol release 0.1
|
||||
02.05.2024 @shalenikol release 0.1
|
||||
02.07.2024 @shalenikol release 0.2
|
||||
"""
|
||||
import numpy as np
|
||||
import argparse
|
||||
|
@ -13,28 +14,37 @@ import random
|
|||
import os
|
||||
import shutil
|
||||
import json
|
||||
from pathlib import Path
|
||||
|
||||
import bpy
|
||||
|
||||
VHACD_PATH = "blenderproc_resources/vhacd"
|
||||
# DIR_BOP = "bop_data"
|
||||
DIR_MODELS = "models"
|
||||
DIR_MESH = "assets/libs/objects/" #"assets/mesh/"
|
||||
FILE_LOG_SCENE = "res.txt"
|
||||
FILE_RBS_INFO = "rbs_info.json"
|
||||
FILE_GT_COCO = "scene_gt_coco.json"
|
||||
EXT_MODELS = ".fbx"
|
||||
TEXTURE_TMPL = "*.jpg"
|
||||
|
||||
Not_Categories_Name = True # наименование категории в COCO-аннотации отсутствует
|
||||
|
||||
def _get_list_texture(rel_path: str) -> list:
|
||||
# local_path/texture/
|
||||
loc = os.path.dirname(os.path.dirname(rnd_par.output_dir))
|
||||
path = os.path.join(loc, rel_path)
|
||||
return list(Path(path).absolute().rglob(TEXTURE_TMPL))
|
||||
|
||||
def _get_path_model(name_model: str) -> str:
|
||||
# TODO on name_model find path for mesh (model.fbx)
|
||||
# local_path/assets/mesh/
|
||||
return os.path.join(rnd_par.output_dir, "assets/mesh/"+name_model+".fbx")
|
||||
# , d: dict
|
||||
# return d["model"]
|
||||
# local_path/assets/libs/objects # assets/mesh/
|
||||
loc = os.path.dirname(os.path.dirname(rnd_par.output_dir))
|
||||
return os.path.join(loc, DIR_MESH + name_model + EXT_MODELS)
|
||||
|
||||
def _get_path_object(name_obj: str) -> str:
|
||||
# TODO on name_obj find path for scene object (object.fbx)
|
||||
return os.path.join(rnd_par.output_dir, "assets/mesh/"+name_obj+".fbx")
|
||||
# , d: dict
|
||||
# return d["path"]
|
||||
loc = os.path.dirname(os.path.dirname(rnd_par.output_dir))
|
||||
return os.path.join(loc, DIR_MESH + name_obj + EXT_MODELS)
|
||||
|
||||
def convert2relative(height, width, bbox):
|
||||
"""
|
||||
|
@ -46,11 +56,14 @@ def convert2relative(height, width, bbox):
|
|||
return x/width, y/height, w/width, h/height
|
||||
|
||||
def render() -> int:
|
||||
i = 0
|
||||
for obj in all_meshs:
|
||||
# Make the object actively participate in the physics simulation
|
||||
obj.enable_rigidbody(active=True, collision_shape="COMPOUND")
|
||||
# Also use convex decomposition as collision shapes
|
||||
obj.build_convex_decomposition_collision_shape(VHACD_PATH)
|
||||
i += 1
|
||||
# print(f"{i} : {obj.get_name()}")
|
||||
|
||||
objs = all_meshs + rnd_par.scene.objs
|
||||
|
||||
|
@ -88,13 +101,26 @@ def render() -> int:
|
|||
# Цикл рендеринга
|
||||
# Do multiple times: Position the shapenet objects using the physics simulator and render X images with random camera poses
|
||||
for r in range(rnd_par.n_series):
|
||||
print(f"********** Series : {r+1}")
|
||||
is_texture = True if "texture_path" in rnd_par.models_randomization else False
|
||||
if is_texture:
|
||||
val = rnd_par.models_randomization["texture_path"]
|
||||
l_texture = _get_list_texture(val)
|
||||
image = bpy.data.images.load(filepath=str(l_texture[r % len(l_texture)]))
|
||||
# один случайный объект в кадре / все заданные объекты
|
||||
random_obj = random.choice(range(rnd_par.scene.n_obj))
|
||||
random_obj = random.choice(range(rnd_par.models.n_item))
|
||||
meshs = []
|
||||
for i,o in enumerate(all_meshs): #objs
|
||||
for i,o in enumerate(all_meshs): # активные модели
|
||||
if rnd_par.single_object and i != random_obj:
|
||||
continue
|
||||
meshs += [o]
|
||||
if is_texture:
|
||||
mats = o.get_materials()
|
||||
for mat in mats:
|
||||
# image = bpy.data.images.load(filepath=str(random.choice(l_texture)))
|
||||
mat.set_principled_shader_value("Base Color", image)
|
||||
|
||||
for i,o in enumerate(rnd_par.scene.objs): # объекты сцены
|
||||
rnd_mat = rnd_par.scene.obj_data[i]["material_randomization"]
|
||||
mats = o.get_materials() #[0]
|
||||
for mat in mats:
|
||||
|
@ -102,10 +128,17 @@ def render() -> int:
|
|||
mat.set_principled_shader_value("Specular", random.uniform(val[0], val[1]))
|
||||
val = rnd_mat["roughness"]
|
||||
mat.set_principled_shader_value("Roughness", random.uniform(val[0], val[1]))
|
||||
val = rnd_mat["base_color"]
|
||||
mat.set_principled_shader_value("Base Color", np.random.uniform(val[0], val[1]))
|
||||
val = rnd_mat["metallic"]
|
||||
mat.set_principled_shader_value("Metallic", random.uniform(val[0], val[1]))
|
||||
if "texture_path" in rnd_mat: # путь к текстурам (*.jpg)
|
||||
val = rnd_mat["texture_path"]
|
||||
val = _get_list_texture(val)
|
||||
image = bpy.data.images.load(filepath=str(random.choice(val)))
|
||||
mat.set_principled_shader_value("Base Color", image)
|
||||
else:
|
||||
val = rnd_mat["base_color"]
|
||||
mat.set_principled_shader_value("Base Color", np.random.uniform(val[0], val[1]))
|
||||
# mat.set_principled_shader_value("Base Color", image)
|
||||
|
||||
# Randomly set the color and energy
|
||||
for i,l in enumerate(ls):
|
||||
|
@ -198,8 +231,6 @@ def render() -> int:
|
|||
t = [obj.get_bound_box(local_coords=True).tolist() for obj in all_meshs if obj.get_name() == objn]
|
||||
rec["cuboid"] = t[0]
|
||||
data.append(rec)
|
||||
# ff = os.path.join(args.obj_path, rnd_par.models.filenames[i]) # путь к исходному файлу
|
||||
# shutil.copy2(ff, models_dir)
|
||||
shutil.copy2(rnd_par.models.filenames[i], models_dir)
|
||||
f = (os.path.splitext(rnd_par.models.filenames[i]))[0] + ".mtl" # файл материала
|
||||
if os.path.isfile(f):
|
||||
|
@ -230,7 +261,7 @@ def render() -> int:
|
|||
cat["name"] = rnd_par.models.names[i] #obj_names[i]
|
||||
|
||||
with open(coco_file, "w") as fh:
|
||||
json.dump(data, fh, indent=0)
|
||||
json.dump(data, fh, indent=1)
|
||||
|
||||
def explore(path: str):
|
||||
if not os.path.isdir(path):
|
||||
|
@ -260,21 +291,20 @@ def _get_models(par, data) -> int:
|
|||
return 0 # no models
|
||||
|
||||
# загрузим объекты
|
||||
par.models.names = [] #list(map(lambda x: x["name"], data)) # obj_names
|
||||
par.models.filenames = [] #list(map(lambda x: x["model"], data)) #obj_filenames
|
||||
par.models.names = [] # obj_names
|
||||
par.models.filenames = [] # obj_filenames
|
||||
i = 1
|
||||
for f in data:
|
||||
nam = f
|
||||
par.models.names.append(nam)
|
||||
ff = _get_path_model(nam)
|
||||
# ff = f["model"] # путь к файлу объекта
|
||||
par.models.filenames.append(ff)
|
||||
if not os.path.isfile(ff):
|
||||
print(f"Error: no such file '{ff}'")
|
||||
return -1
|
||||
obj = bproc.loader.load_obj(ff)
|
||||
all_meshs += obj
|
||||
obj[0].set_cp("category_id", i) #f["id"]) # начиная с 1
|
||||
obj[0].set_cp("category_id", i) # начиная с 1
|
||||
i += 1
|
||||
return par.models.n_item
|
||||
|
||||
|
@ -293,7 +323,7 @@ def _get_scene(par, data) -> int:
|
|||
par.scene.objs = []
|
||||
par.scene.collision_objects = []
|
||||
for f in objs:
|
||||
ff = _get_path_object(f["name"]) # f["path"]
|
||||
ff = _get_path_object(f["name"])
|
||||
if not os.path.isfile(ff):
|
||||
print(f"Error: no such file '{ff}'")
|
||||
return -1
|
||||
|
@ -303,7 +333,7 @@ def _get_scene(par, data) -> int:
|
|||
if len(coll) > 0:
|
||||
obj[0].enable_rigidbody(False, collision_shape=coll)
|
||||
par.scene.collision_objects += obj
|
||||
par.scene.objs += obj #bproc.loader.load_blend(args.scene, data_blocks=["objects"])
|
||||
par.scene.objs += obj
|
||||
|
||||
if not par.scene.collision_objects:
|
||||
print("Collision objects not found in the scene")
|
||||
|
@ -337,7 +367,7 @@ if __name__ == "__main__":
|
|||
models_randomization = ds_cfg["models_randomization"]
|
||||
|
||||
rnd_par = lambda: None
|
||||
rnd_par.single_object = True
|
||||
rnd_par.single_object = False # True
|
||||
rnd_par.ds_name = cfg["name"]
|
||||
rnd_par.output_dir = cfg["local_path"]
|
||||
rnd_par.dataset_objs = cfg["dataSetObjects"]
|
||||
|
@ -349,19 +379,18 @@ if __name__ == "__main__":
|
|||
rnd_par.center_shell = cam_pos["center_shell"]
|
||||
rnd_par.radius_range = cam_pos["radius_range"]
|
||||
rnd_par.elevation_range = cam_pos["elevation_range"]
|
||||
rnd_par.models_randomization = models_randomization
|
||||
rnd_par.loc_range_low = models_randomization["loc_range_low"]
|
||||
rnd_par.loc_range_high = models_randomization["loc_range_high"]
|
||||
|
||||
if not os.path.isdir(rnd_par.output_dir):
|
||||
# os.mkdir(rnd_par.output_dir)
|
||||
print(f"Error: invalid path '{rnd_par.output_dir}'")
|
||||
exit(-3)
|
||||
|
||||
bproc.init()
|
||||
|
||||
all_meshs = []
|
||||
ret = _get_models(rnd_par, rnd_par.dataset_objs)
|
||||
if ret <= 0:
|
||||
if _get_models(rnd_par, rnd_par.dataset_objs) <= 0:
|
||||
print("Error: no models in config")
|
||||
exit(-4)
|
||||
if _get_scene(rnd_par, ds_cfg["scene"]) == 0:
|
||||
|
|
412
web_p/renderBOPdataset2.py
Executable file
|
@ -0,0 +1,412 @@
|
|||
import blenderproc as bproc
|
||||
"""
|
||||
renderBOPdataset2
|
||||
Общая задача: common pipeline
|
||||
Реализуемая функция: создание датасета в формате BOP с заданными параметрами рандомизации
|
||||
Используется модуль blenderproc
|
||||
|
||||
02.05.2024 @shalenikol release 0.1
|
||||
02.07.2024 @shalenikol release 0.2
|
||||
28.10.2024 @shalenikol release 0.3
|
||||
"""
|
||||
import numpy as np
|
||||
import argparse
|
||||
import random
|
||||
import os
|
||||
import shutil
|
||||
import json
|
||||
from pathlib import Path
|
||||
|
||||
import bpy
|
||||
|
||||
VHACD_PATH = "blenderproc_resources/vhacd"
|
||||
DIR_MODELS = "models"
|
||||
DIR_MESH = "assets/libs/objects/"
|
||||
FILE_LOG_SCENE = "res.txt"
|
||||
FILE_RBS_INFO = "rbs_info.json"
|
||||
FILE_GT_COCO = "scene_gt_coco.json"
|
||||
EXT_MODELS = ".fbx"
|
||||
TEXTURE_TMPL = "*.jpg"
|
||||
|
||||
Not_Categories_Name = True # наименование категории в COCO-аннотации отсутствует
|
||||
|
||||
def _get_list_texture(rel_path: str) -> list:
|
||||
# local_path/texture/
|
||||
loc = os.path.dirname(os.path.dirname(rnd_par.output_dir))
|
||||
path = os.path.join(loc, rel_path)
|
||||
return list(Path(path).absolute().rglob(TEXTURE_TMPL))
|
||||
|
||||
# def _get_path_model(name_model: str) -> str:
|
||||
# # TODO on name_model find path for mesh (model.fbx)
|
||||
# # local_path/assets/libs/objects # assets/mesh/
|
||||
# loc = os.path.dirname(os.path.dirname(rnd_par.output_dir))
|
||||
# return os.path.join(loc, DIR_MESH + name_model + EXT_MODELS)
|
||||
|
||||
def _get_path_object(name_obj: str) -> str:
|
||||
# TODO on name_obj find path for scene object (object.fbx)
|
||||
# loc = os.path.dirname(os.path.dirname(rnd_par.output_dir))
|
||||
# return os.path.join(loc, DIR_MESH + name_obj + EXT_MODELS)
|
||||
return os.path.join(rnd_par.details_dir, name_obj + EXT_MODELS)
|
||||
|
||||
def convert2relative(height, width, bbox):
|
||||
"""
|
||||
YOLO format use relative coordinates for annotation
|
||||
"""
|
||||
x, y, w, h = bbox
|
||||
x += w/2
|
||||
y += h/2
|
||||
return x/width, y/height, w/width, h/height
|
||||
|
||||
def render() -> int:
|
||||
i = 0
|
||||
for obj in all_meshs:
|
||||
# Make the object actively participate in the physics simulation
|
||||
obj.enable_rigidbody(active=True, collision_shape="COMPOUND")
|
||||
# Also use convex decomposition as collision shapes
|
||||
obj.build_convex_decomposition_collision_shape(VHACD_PATH)
|
||||
i += 1
|
||||
# print(f"{i} : {obj.get_name()}")
|
||||
|
||||
objs = all_meshs + rnd_par.scene.objs
|
||||
|
||||
log_txt = os.path.join(os.path.dirname(rnd_par.output_dir), FILE_LOG_SCENE)
|
||||
with open(log_txt, "w") as fh:
|
||||
for i,o in enumerate(objs):
|
||||
loc = o.get_location()
|
||||
euler = o.get_rotation_euler()
|
||||
fh.write(f"{i} : {o.get_name()} {loc} {euler} category_id = {o.get_cp('category_id')}\n")
|
||||
|
||||
# define a light and set its location and energy level
|
||||
ls = []
|
||||
for l in rnd_par.scene.light_data:
|
||||
light = bproc.types.Light(name=f"l{l['id']}")
|
||||
light.set_type(l["type"])
|
||||
light.set_location(l["loc_xyz"]) #[5, -5, 5])
|
||||
light.set_rotation_euler(l["rot_euler"]) #[-0.063, 0.6177, -0.1985])
|
||||
ls += [light]
|
||||
|
||||
# define the camera intrinsics
|
||||
bproc.camera.set_intrinsics_from_blender_params(1,
|
||||
rnd_par.image_size_wh[0],
|
||||
rnd_par.image_size_wh[1],
|
||||
lens_unit="FOV")
|
||||
|
||||
# add segmentation masks (per class and per instance)
|
||||
bproc.renderer.enable_segmentation_output(map_by=["category_id", "instance", "name"])
|
||||
|
||||
# activate depth rendering
|
||||
bproc.renderer.enable_depth_output(activate_antialiasing=False)
|
||||
|
||||
# res_dir = os.path.join(rnd_par.output_dir, rnd_par.ds_name)
|
||||
res_dir = rnd_par.output_dir
|
||||
if os.path.isdir(res_dir):
|
||||
shutil.rmtree(res_dir)
|
||||
# Цикл рендеринга
|
||||
# Do multiple times: Position the shapenet objects using the physics simulator and render X images with random camera poses
|
||||
for r in range(rnd_par.n_series):
|
||||
print(f"********** Series : {r+1}")
|
||||
is_texture = True if "texture_path" in rnd_par.models_randomization else False
|
||||
if is_texture:
|
||||
val = rnd_par.models_randomization["texture_path"]
|
||||
l_texture = _get_list_texture(val)
|
||||
image = bpy.data.images.load(filepath=str(l_texture[r % len(l_texture)]))
|
||||
# один случайный объект в кадре / все заданные объекты
|
||||
random_obj = random.choice(range(rnd_par.models.n_item))
|
||||
meshs = []
|
||||
for i,o in enumerate(all_meshs): # активные модели
|
||||
if rnd_par.single_object and i != random_obj:
|
||||
continue
|
||||
meshs += [o]
|
||||
if is_texture:
|
||||
mats = o.get_materials()
|
||||
for mat in mats:
|
||||
# image = bpy.data.images.load(filepath=str(random.choice(l_texture)))
|
||||
mat.set_principled_shader_value("Base Color", image)
|
||||
|
||||
for i,o in enumerate(rnd_par.scene.objs): # объекты сцены
|
||||
rnd_mat = rnd_par.scene.obj_data[i]["material_randomization"]
|
||||
mats = o.get_materials() #[0]
|
||||
for mat in mats:
|
||||
val = rnd_mat["specular"]
|
||||
mat.set_principled_shader_value("Specular", random.uniform(val[0], val[1]))
|
||||
val = rnd_mat["roughness"]
|
||||
mat.set_principled_shader_value("Roughness", random.uniform(val[0], val[1]))
|
||||
val = rnd_mat["metallic"]
|
||||
mat.set_principled_shader_value("Metallic", random.uniform(val[0], val[1]))
|
||||
if "texture_path" in rnd_mat: # путь к текстурам (*.jpg)
|
||||
val = rnd_mat["texture_path"]
|
||||
val = _get_list_texture(val)
|
||||
image = bpy.data.images.load(filepath=str(random.choice(val)))
|
||||
mat.set_principled_shader_value("Base Color", image)
|
||||
else:
|
||||
val = rnd_mat["base_color"]
|
||||
mat.set_principled_shader_value("Base Color", np.random.uniform(val[0], val[1]))
|
||||
# mat.set_principled_shader_value("Base Color", image)
|
||||
|
||||
# Randomly set the color and energy
|
||||
for i,l in enumerate(ls):
|
||||
current = rnd_par.scene.light_data[i]
|
||||
l.set_color(np.random.uniform(current["color_range_low"], current["color_range_high"]))
|
||||
energy = current["energy_range"]
|
||||
l.set_energy(random.uniform(energy[0], energy[1]))
|
||||
|
||||
# Clear all key frames from the previous run
|
||||
bproc.utility.reset_keyframes()
|
||||
|
||||
# Define a function that samples 6-DoF poses
|
||||
def sample_pose(obj: bproc.types.MeshObject):
|
||||
obj.set_location(np.random.uniform(rnd_par.loc_range_low, rnd_par.loc_range_high)) #[-1, -1, 0], [1, 1, 2]))
|
||||
obj.set_rotation_euler(bproc.sampler.uniformSO3())
|
||||
|
||||
# Sample the poses of all shapenet objects above the ground without any collisions in-between
|
||||
bproc.object.sample_poses(meshs,
|
||||
objects_to_check_collisions = meshs + rnd_par.scene.collision_objects,
|
||||
sample_pose_func = sample_pose)
|
||||
|
||||
# Run the simulation and fix the poses of the shapenet objects at the end
|
||||
bproc.object.simulate_physics_and_fix_final_poses(min_simulation_time=4, max_simulation_time=20, check_object_interval=1)
|
||||
|
||||
# Find point of interest, all cam poses should look towards it
|
||||
poi = bproc.object.compute_poi(meshs)
|
||||
|
||||
coord_max = [0.1, 0.1, 0.1]
|
||||
coord_min = [0., 0., 0.]
|
||||
|
||||
with open(log_txt, "a") as fh:
|
||||
fh.write("*****************\n")
|
||||
fh.write(f"{r}) poi = {poi}\n")
|
||||
i = 0
|
||||
for o in meshs:
|
||||
i += 1
|
||||
loc = o.get_location()
|
||||
euler = o.get_rotation_euler()
|
||||
fh.write(f" {i} : {o.get_name()} {loc} {euler}\n")
|
||||
for j in range(3):
|
||||
if loc[j] < coord_min[j]:
|
||||
coord_min[j] = loc[j]
|
||||
if loc[j] > coord_max[j]:
|
||||
coord_max[j] = loc[j]
|
||||
|
||||
# Sample up to X camera poses
|
||||
#an = np.random.uniform(0.78, 1.2) #1. #0.35
|
||||
for i in range(rnd_par.n_cam_pose):
|
||||
# Sample location
|
||||
location = bproc.sampler.shell(center=rnd_par.center_shell,
|
||||
radius_min=rnd_par.radius_range[0],
|
||||
radius_max=rnd_par.radius_range[1],
|
||||
elevation_min=rnd_par.elevation_range[0],
|
||||
elevation_max=rnd_par.elevation_range[1])
|
||||
# координата, по которой будем сэмплировать положение камеры
|
||||
j = random.randint(0, 2)
|
||||
# разовый сдвиг по случайной координате
|
||||
d = (coord_max[j] - coord_min[j]) / rnd_par.n_sample_on_pose
|
||||
if location[j] < 0:
|
||||
d = -d
|
||||
for _ in range(rnd_par.n_sample_on_pose):
|
||||
# Compute rotation based on vector going from location towards poi
|
||||
rotation_matrix = bproc.camera.rotation_from_forward_vec(poi - location, inplane_rot=np.random.uniform(-0.7854, 0.7854))
|
||||
# Add homog cam pose based on location an rotation
|
||||
cam2world_matrix = bproc.math.build_transformation_mat(location, rotation_matrix)
|
||||
bproc.camera.add_camera_pose(cam2world_matrix)
|
||||
location[j] -= d
|
||||
# render the whole pipeline
|
||||
data = bproc.renderer.render()
|
||||
# Write data to bop format
|
||||
bproc.writer.write_bop(res_dir,
|
||||
target_objects = all_meshs, # Optional[List[MeshObject]] = None
|
||||
depths = data["depth"],
|
||||
depth_scale = 1.0,
|
||||
colors = data["colors"],
|
||||
color_file_format=rnd_par.image_format,
|
||||
append_to_existing_output = (r>0),
|
||||
save_world2cam = False) # world coords are arbitrary in most real BOP datasets
|
||||
# dataset="robo_ds",
|
||||
|
||||
models_dir = os.path.join(res_dir, DIR_MODELS)
|
||||
os.mkdir(models_dir)
|
||||
|
||||
data = []
|
||||
for i,objn in enumerate(rnd_par.models.names):
|
||||
rec = {}
|
||||
rec["id"] = i+1
|
||||
rec["name"] = objn
|
||||
rec["model"] = os.path.join(DIR_MODELS, os.path.split(rnd_par.models.filenames[i])[1]) # путь относительный
|
||||
t = [obj.get_bound_box(local_coords=True).tolist() for obj in all_meshs if obj.get_name() == objn]
|
||||
rec["cuboid"] = t[0]
|
||||
data.append(rec)
|
||||
shutil.copy2(rnd_par.models.filenames[i], models_dir)
|
||||
f = (os.path.splitext(rnd_par.models.filenames[i]))[0] + ".mtl" # файл материала
|
||||
if os.path.isfile(f):
|
||||
shutil.copy2(f, models_dir)
|
||||
|
||||
with open(os.path.join(res_dir, FILE_RBS_INFO), "w") as fh:
|
||||
json.dump(data, fh, indent=2)
|
||||
|
||||
"""
|
||||
!!! categories -> name берётся из category_id !!!
|
||||
см.ниже
|
||||
blenderproc.python.writer : BopWriterUtility.py
|
||||
class _BopWriterUtility
|
||||
def calc_gt_coco
|
||||
...
|
||||
CATEGORIES = [{'id': obj.get_cp('category_id'), 'name': str(obj.get_cp('category_id')), 'supercategory':
|
||||
dataset_name} for obj in dataset_objects]
|
||||
|
||||
поэтому заменим наименование категории в аннотации
|
||||
"""
|
||||
def change_categories_name(dir: str):
|
||||
coco_file = os.path.join(dir,FILE_GT_COCO)
|
||||
with open(coco_file, "r") as fh:
|
||||
data = json.load(fh)
|
||||
cats = data["categories"]
|
||||
|
||||
for i,cat in enumerate(cats):
|
||||
cat["name"] = rnd_par.models.names[i] #obj_names[i]
|
||||
|
||||
with open(coco_file, "w") as fh:
|
||||
json.dump(data, fh, indent=1)
|
||||
|
||||
def explore(path: str):
|
||||
if not os.path.isdir(path):
|
||||
return
|
||||
folders = [
|
||||
os.path.join(path, o)
|
||||
for o in os.listdir(path)
|
||||
if os.path.isdir(os.path.join(path, o))
|
||||
]
|
||||
for path_entry in folders:
|
||||
print(path_entry)
|
||||
if os.path.isfile(os.path.join(path_entry,FILE_GT_COCO)):
|
||||
change_categories_name(path_entry)
|
||||
else:
|
||||
explore(path_entry)
|
||||
|
||||
if Not_Categories_Name:
|
||||
explore(res_dir)
|
||||
return 0 # success
|
||||
|
||||
def _get_models(par, data) -> int:
|
||||
global all_meshs
|
||||
|
||||
par.models = lambda: None
|
||||
par.models.n_item = len(data)
|
||||
if par.models.n_item == 0:
|
||||
return 0 # no models
|
||||
|
||||
# загрузим объекты
|
||||
par.models.names = [] # obj_names
|
||||
par.models.filenames = [] # obj_filenames
|
||||
i = 1
|
||||
for f in data:
|
||||
nam = f["name"]
|
||||
par.models.names.append(nam)
|
||||
ff = f["fbx"] # _get_path_model(nam)
|
||||
par.models.filenames.append(ff)
|
||||
if not os.path.isfile(ff):
|
||||
print(f"Error: no such file '{ff}'")
|
||||
return -1
|
||||
# !!! dir with meshs
|
||||
par.details_dir = os.path.split(ff)[0]
|
||||
|
||||
obj = bproc.loader.load_obj(ff)
|
||||
all_meshs += obj
|
||||
obj[0].set_cp("category_id", i) # начиная с 1
|
||||
i += 1
|
||||
return par.models.n_item
|
||||
|
||||
def _get_scene(par, data) -> int:
|
||||
# load scene
|
||||
par.scene = lambda: None
|
||||
objs = data["objects"]
|
||||
par.scene.n_obj = len(objs)
|
||||
if par.scene.n_obj == 0:
|
||||
return 0 # empty scene
|
||||
lights = data["lights"]
|
||||
par.scene.n_light = len(lights)
|
||||
if par.scene.n_light == 0:
|
||||
return 0 # no lighting
|
||||
if len(rnd_par.details_dir) == 0:
|
||||
return 0 # no path to details
|
||||
|
||||
par.scene.objs = []
|
||||
par.scene.collision_objects = []
|
||||
for f in objs:
|
||||
ff = _get_path_object(f["name"])
|
||||
if not os.path.isfile(ff):
|
||||
print(f"Error: no such file '{ff}'")
|
||||
return -1
|
||||
obj = bproc.loader.load_obj(ff)
|
||||
obj[0].set_cp("category_id", 999)
|
||||
coll = f["collision_shape"]
|
||||
if len(coll) > 0:
|
||||
obj[0].enable_rigidbody(False, collision_shape=coll)
|
||||
par.scene.collision_objects += obj
|
||||
par.scene.objs += obj
|
||||
|
||||
if not par.scene.collision_objects:
|
||||
print("Collision objects not found in the scene")
|
||||
return 0
|
||||
par.scene.obj_data = objs
|
||||
par.scene.light_data = lights
|
||||
return par.scene.n_obj
|
||||
|
||||
if __name__ == "__main__":
|
||||
parser = argparse.ArgumentParser()
|
||||
parser.add_argument("--form", required=True, help="Json-string with dataset parameters")
|
||||
parser.add_argument("--path", required=True, help="Output path")
|
||||
args = parser.parse_args()
|
||||
|
||||
if args.form[-5:] == ".json":
|
||||
if not os.path.isfile(args.form):
|
||||
print(f"Error: no such file '{args.form}'")
|
||||
exit(-1)
|
||||
with open(args.form, "r") as f:
|
||||
j_data = f.read()
|
||||
else:
|
||||
j_data = args.form
|
||||
try:
|
||||
cfg = json.loads(j_data)
|
||||
except json.JSONDecodeError as e:
|
||||
print(f"JSon error: {e}")
|
||||
exit(-2)
|
||||
|
||||
# output_dir = args.path
|
||||
|
||||
ds_cfg = cfg["output"] # dataset config
|
||||
generation = ds_cfg["generation"]
|
||||
cam_pos = ds_cfg["camera_position"]
|
||||
models_randomization = ds_cfg["models_randomization"]
|
||||
|
||||
rnd_par = lambda: None
|
||||
rnd_par.output_dir = args.path # cfg["local_path"]
|
||||
|
||||
if not os.path.isdir(rnd_par.output_dir):
|
||||
print(f"Error: invalid path '{rnd_par.output_dir}'")
|
||||
exit(-3)
|
||||
|
||||
rnd_par.single_object = False # True
|
||||
rnd_par.details_dir = ""
|
||||
# rnd_par.ds_name = os.path.split(rnd_par.output_dir)[1] # cfg["name"]
|
||||
rnd_par.dataset_objs = ds_cfg["datasetObjects"]["details"] # ["knight"]
|
||||
rnd_par.n_cam_pose = generation["n_cam_pose"]
|
||||
rnd_par.n_sample_on_pose = generation["n_sample_on_pose"]
|
||||
rnd_par.n_series = generation["n_series"]
|
||||
rnd_par.image_format = generation["image_format"]
|
||||
rnd_par.image_size_wh = generation["image_size_wh"]
|
||||
rnd_par.center_shell = cam_pos["center_shell"]
|
||||
rnd_par.radius_range = cam_pos["radius_range"]
|
||||
rnd_par.elevation_range = cam_pos["elevation_range"]
|
||||
rnd_par.models_randomization = models_randomization
|
||||
rnd_par.loc_range_low = models_randomization["loc_range_low"]
|
||||
rnd_par.loc_range_high = models_randomization["loc_range_high"]
|
||||
|
||||
bproc.init()
|
||||
|
||||
all_meshs = []
|
||||
if _get_models(rnd_par, rnd_par.dataset_objs) <= 0:
|
||||
print("Error: no models in config")
|
||||
exit(-4)
|
||||
if _get_scene(rnd_par, ds_cfg["scene"]) <= 0:
|
||||
print("Error: empty scene in config")
|
||||
exit(-5)
|
||||
exit(render())
|
26
web_p/robot_builder.py
Normal file
|
@ -0,0 +1,26 @@
|
|||
import shutil
|
||||
import argparse
|
||||
import os.path
|
||||
|
||||
parser = argparse.ArgumentParser()
|
||||
parser.add_argument("--path")
|
||||
parser.add_argument("--nDOF")
|
||||
parser.add_argument("--toolType")
|
||||
parser.add_argument("--name")
|
||||
|
||||
args = parser.parse_args()
|
||||
|
||||
|
||||
def copy_and_move_folder(src, dst):
|
||||
try:
|
||||
if os.path.exists(dst):
|
||||
shutil.rmtree(dst)
|
||||
shutil.copytree(src, dst)
|
||||
print(f"Folder {src} successfully copied")
|
||||
except shutil.Error as e:
|
||||
print(f"Error: {e}")
|
||||
|
||||
|
||||
source_folder = os.path.dirname(os.path.abspath(__file__)) + "/robot_builder/"
|
||||
|
||||
copy_and_move_folder(source_folder, args.path + args.name)
|
168
web_p/robot_builder/base.dae
Normal file
101
web_p/robot_builder/ee_link.dae
Normal file
92
web_p/robot_builder/finger.dae
Normal file
101
web_p/robot_builder/fork_link.dae
Normal file
101
web_p/robot_builder/main_link.dae
Normal file
786
web_p/robot_builder/robot.xml
Normal file
|
@ -0,0 +1,786 @@
|
|||
<?xml version="1.0" encoding="UTF-8"?>
|
||||
|
||||
<!-- =================================================================================== -->
|
||||
<!-- | This document was autogenerated by xacro from
|
||||
/home/bill-finger/rbs_ws/install/rbs_arm/share/rbs_arm/urdf/rbs_arm_modular.xacro | -->
|
||||
<!-- | EDITING THIS FILE BY HAND IS NOT RECOMMENDED | -->
|
||||
<!-- =================================================================================== -->
|
||||
<robot name="rbs_arm">
|
||||
<link name="world" />
|
||||
<joint name="base_link_joint" type="fixed">
|
||||
<origin rpy="0.0 0.0 0.0" xyz="0.0 0.0 0.0" />
|
||||
<parent link="world" />
|
||||
<child link="base_link" />
|
||||
</joint>
|
||||
<link name="base_link">
|
||||
<collision name="base_link_collision">
|
||||
<origin rpy="0.00000 0.00000 0.00000" xyz="0.00000 0.00000 0.00000" />
|
||||
<geometry>
|
||||
<mesh
|
||||
filename="file:///home/bill-finger/rbs_ws/install/rbs_arm/share/rbs_arm/meshes/collision/start_link.stl"
|
||||
scale="1.00000 1.00000 1.00000" />
|
||||
</geometry>
|
||||
</collision>
|
||||
<inertial>
|
||||
<inertia ixx="0.00503302470272442" ixy="0.000343817346410954"
|
||||
ixz="-4.74990755448368E-06" iyy="0.00337962410057753" iyz="-2.3099255620051E-05"
|
||||
izz="0.00405858207282473" />
|
||||
<origin rpy="0.00000 0.00000 0.00000"
|
||||
xyz="-0.000297002857922682 0.0964721185617698 -0.000361033370053684" />
|
||||
<mass value="1.88031044620482" />
|
||||
</inertial>
|
||||
<visual name="base_link_visual">
|
||||
<origin rpy="0.00000 0.00000 0.00000" xyz="0.00000 0.00000 0.00000" />
|
||||
<geometry>
|
||||
<mesh
|
||||
filename="/start_link.dae"
|
||||
scale="1.00000 1.00000 1.00000" />
|
||||
</geometry>
|
||||
</visual>
|
||||
</link>
|
||||
<gazebo reference="base_link">
|
||||
<visual>
|
||||
<material>
|
||||
<diffuse>0.8 0.8 0.8 1</diffuse>
|
||||
<specular>0.6 0.6 0.6 1</specular>
|
||||
<ambient>1.0 1.0 1.0</ambient>
|
||||
<lighting>true</lighting>
|
||||
<emissive>0 0 0 1</emissive>
|
||||
<pbr>
|
||||
<metal>
|
||||
<albedo_map>
|
||||
/home/bill-finger/rbs_ws/install/rbs_arm/share/rbs_arm/materials/textures/base_link_d.png</albedo_map>
|
||||
<normal_map>
|
||||
/home/bill-finger/rbs_ws/install/rbs_arm/share/rbs_arm/materials/textures/base_link_n.png</normal_map>
|
||||
<ambient_occlusion_map>
|
||||
/home/bill-finger/rbs_ws/install/rbs_arm/share/rbs_arm/materials/textures/base_link_ao.png</ambient_occlusion_map>
|
||||
<roughness_map>
|
||||
/home/bill-finger/rbs_ws/install/rbs_arm/share/rbs_arm/materials/textures/base_link_r.png</roughness_map>
|
||||
</metal>
|
||||
</pbr>
|
||||
</material>
|
||||
</visual>
|
||||
</gazebo>
|
||||
<joint name="fork0_link_joint" type="revolute">
|
||||
<limit effort="78" lower="-6.14159" upper="6.14159" velocity="0.52" />
|
||||
<origin rpy="0.00000 0.00000 0.00000" xyz="0.00000 0.00000 0.17833" />
|
||||
<parent link="base_link" />
|
||||
<child link="fork0_link" />
|
||||
<axis xyz="0 0 1" />
|
||||
</joint>
|
||||
<link name="fork0_link">
|
||||
<collision name="fork0_link_collision">
|
||||
<origin rpy="0.00000 0.00000 0.00000" xyz="0.00000 -0.00000 0.00000" />
|
||||
<geometry>
|
||||
<mesh
|
||||
filename="file:///home/bill-finger/rbs_ws/install/rbs_arm/share/rbs_arm/meshes/collision/fork_link.stl"
|
||||
scale="1.00000 1.00000 1.00000" />
|
||||
</geometry>
|
||||
</collision>
|
||||
<inertial>
|
||||
<inertia ixx="0.00367804533572758" ixy="1.04277925521833E-05" ixz="-0.00149971410403071"
|
||||
iyy="0.00415208849477534" iyz="-0.00122" izz="0.00329" />
|
||||
<origin rpy="0.00000 0.00000 0.00000"
|
||||
xyz="0.0472051139085306 0.00208890925682996 0.0557265410642575" />
|
||||
<mass value="1.12472202892859" />
|
||||
</inertial>
|
||||
<visual name="fork0_link_visual">
|
||||
<origin rpy="0.00000 -0.00000 -0.00000" xyz="0.00000 -0.00000 0.00000" />
|
||||
<geometry>
|
||||
<mesh
|
||||
filename="/fork_link.dae"
|
||||
scale="1.00000 1.00000 1.00000" />
|
||||
</geometry>
|
||||
</visual>
|
||||
</link>
|
||||
<ros2_control name="fork0_link_joint_hardware_interface" type="actuator">
|
||||
<hardware>
|
||||
<plugin>ign_ros2_control/IgnitionSystem</plugin>
|
||||
</hardware>
|
||||
<joint name="fork0_link_joint">
|
||||
<command_interface name="position">
|
||||
<!-- <param name="min">-1</param> -->
|
||||
<!-- <param name="max">1</param> -->
|
||||
</command_interface>
|
||||
<command_interface name="velocity">
|
||||
<!-- <param name="min">-1</param> -->
|
||||
<!-- <param name="max">1</param> -->
|
||||
</command_interface>
|
||||
<!-- WARN When this active a robot falls down -->
|
||||
<!-- <command_interface name="effort"/> -->
|
||||
<!-- <param name="p">${p}</param> -->
|
||||
<!-- <param name="d">${d}</param> -->
|
||||
<!-- <command_interface name="effort"/> -->
|
||||
<state_interface name="position" />
|
||||
<state_interface name="velocity" />
|
||||
<state_interface name="effort" />
|
||||
</joint>
|
||||
</ros2_control>
|
||||
<gazebo reference="fork0_link">
|
||||
<visual>
|
||||
<material>
|
||||
<diffuse>0.8 0.8 0.8 1</diffuse>
|
||||
<specular>0.6 0.6 0.6 1</specular>
|
||||
<ambient>1.0 1.0 1.0</ambient>
|
||||
<lighting>true</lighting>
|
||||
<emissive>0 0 0 1</emissive>
|
||||
<pbr>
|
||||
<metal>
|
||||
<albedo_map>
|
||||
/home/bill-finger/rbs_ws/install/rbs_arm/share/rbs_arm/materials/textures/fork_d.png</albedo_map>
|
||||
<normal_map>
|
||||
/home/bill-finger/rbs_ws/install/rbs_arm/share/rbs_arm/materials/textures/fork_n.png</normal_map>
|
||||
<ambient_occlusion_map>
|
||||
/home/bill-finger/rbs_ws/install/rbs_arm/share/rbs_arm/materials/textures/fork_ao.png</ambient_occlusion_map>
|
||||
<roughness_map>
|
||||
/home/bill-finger/rbs_ws/install/rbs_arm/share/rbs_arm/materials/textures/fork_r.png</roughness_map>
|
||||
</metal>
|
||||
</pbr>
|
||||
</material>
|
||||
</visual>
|
||||
</gazebo>
|
||||
<joint name="main0_link_joint" type="revolute">
|
||||
<limit effort="78" lower="-1.5708" upper="3.14159" velocity="0.52" />
|
||||
<origin rpy="-0.00000 0.00000 0.00000" xyz="0.10000 0.00000 0.09400" />
|
||||
<parent link="fork0_link" />
|
||||
<child link="main0_link" />
|
||||
<axis xyz="0 1 0" />
|
||||
</joint>
|
||||
<link name="main0_link">
|
||||
<collision name="main0_link_collision">
|
||||
<origin rpy="0.00000 0.00000 0.00000" xyz="0.00000 0.00000 0.00000" />
|
||||
<geometry>
|
||||
<mesh
|
||||
filename="file:///home/bill-finger/rbs_ws/install/rbs_arm/share/rbs_arm/meshes/collision/main_link.stl"
|
||||
scale="1.00000 1.00000 1.00000" />
|
||||
</geometry>
|
||||
</collision>
|
||||
<inertial>
|
||||
<inertia ixx="0.00315699373090845" ixy="2.84713820858537E-05"
|
||||
ixz="-7.01601261191721E-05" iyy="0.00343729241263707" iyz="-0.000101485203138902"
|
||||
izz="0.00125534890134052" />
|
||||
<origin rpy="0.00000 0.00000 0.00000"
|
||||
xyz="0.00186712264682627 -0.000412152188777604 0.0516389446895805" />
|
||||
<mass value="1.58688811563124" />
|
||||
</inertial>
|
||||
<visual name="main0_link_visual">
|
||||
<origin rpy="0.00000 -0.00000 -0.00000" xyz="0.00000 0.00000 0.00000" />
|
||||
<geometry>
|
||||
<mesh
|
||||
filename="/main_link.dae"
|
||||
scale="1.00000 1.00000 1.00000" />
|
||||
</geometry>
|
||||
</visual>
|
||||
</link>
|
||||
<ros2_control name="main0_link_joint_hardware_interface" type="actuator">
|
||||
<hardware>
|
||||
<plugin>ign_ros2_control/IgnitionSystem</plugin>
|
||||
</hardware>
|
||||
<joint name="main0_link_joint">
|
||||
<command_interface name="position">
|
||||
<!-- <param name="min">-1</param> -->
|
||||
<!-- <param name="max">1</param> -->
|
||||
</command_interface>
|
||||
<command_interface name="velocity">
|
||||
<!-- <param name="min">-1</param> -->
|
||||
<!-- <param name="max">1</param> -->
|
||||
</command_interface>
|
||||
<!-- WARN When this active a robot falls down -->
|
||||
<!-- <command_interface name="effort"/> -->
|
||||
<!-- <param name="p">${p}</param> -->
|
||||
<!-- <param name="d">${d}</param> -->
|
||||
<!-- <command_interface name="effort"/> -->
|
||||
<state_interface name="position" />
|
||||
<state_interface name="velocity" />
|
||||
<state_interface name="effort" />
|
||||
</joint>
|
||||
</ros2_control>
|
||||
<gazebo reference="main0_link">
|
||||
<visual>
|
||||
<material>
|
||||
<diffuse>0.8 0.8 0.8 1</diffuse>
|
||||
<specular>0.6 0.6 0.6 1</specular>
|
||||
<ambient>1.0 1.0 1.0</ambient>
|
||||
<lighting>true</lighting>
|
||||
<emissive>0 0 0 1</emissive>
|
||||
<pbr>
|
||||
<metal>
|
||||
<albedo_map>
|
||||
/home/bill-finger/rbs_ws/install/rbs_arm/share/rbs_arm/materials/textures/main_link_d.png</albedo_map>
|
||||
<normal_map>
|
||||
/home/bill-finger/rbs_ws/install/rbs_arm/share/rbs_arm/materials/textures/main_link_n.png</normal_map>
|
||||
<ambient_occlusion_map>
|
||||
/home/bill-finger/rbs_ws/install/rbs_arm/share/rbs_arm/materials/textures/main_link_ao.png</ambient_occlusion_map>
|
||||
<roughness_map>
|
||||
/home/bill-finger/rbs_ws/install/rbs_arm/share/rbs_arm/materials/textures/main_link_r.png</roughness_map>
|
||||
</metal>
|
||||
</pbr>
|
||||
</material>
|
||||
</visual>
|
||||
</gazebo>
|
||||
<joint name="fork1_link_joint" type="revolute">
|
||||
<limit effort="78" lower="-6.14159" upper="6.14159" velocity="0.52" />
|
||||
<origin rpy="0.00000 0.00000 0.00000" xyz="0.00000 0.00000 0.13300" />
|
||||
<parent link="main0_link" />
|
||||
<child link="fork1_link" />
|
||||
<axis xyz="0 0 1" />
|
||||
</joint>
|
||||
<link name="fork1_link">
|
||||
<collision name="fork1_link_collision">
|
||||
<origin rpy="0.00000 0.00000 0.00000" xyz="0.00000 -0.00000 0.00000" />
|
||||
<geometry>
|
||||
<mesh
|
||||
filename="file:///home/bill-finger/rbs_ws/install/rbs_arm/share/rbs_arm/meshes/collision/fork_link.stl"
|
||||
scale="1.00000 1.00000 1.00000" />
|
||||
</geometry>
|
||||
</collision>
|
||||
<inertial>
|
||||
<inertia ixx="0.00367804533572758" ixy="1.04277925521833E-05" ixz="-0.00149971410403071"
|
||||
iyy="0.00415208849477534" iyz="-0.00122" izz="0.00329" />
|
||||
<origin rpy="0.00000 0.00000 0.00000"
|
||||
xyz="0.0472051139085306 0.00208890925682996 0.0557265410642575" />
|
||||
<mass value="1.12472202892859" />
|
||||
</inertial>
|
||||
<visual name="fork1_link_visual">
|
||||
<origin rpy="0.00000 -0.00000 -0.00000" xyz="0.00000 -0.00000 0.00000" />
|
||||
<geometry>
|
||||
<mesh
|
||||
filename="/fork_link.dae"
|
||||
scale="1.00000 1.00000 1.00000" />
|
||||
</geometry>
|
||||
</visual>
|
||||
</link>
|
||||
<ros2_control name="fork1_link_joint_hardware_interface" type="actuator">
|
||||
<hardware>
|
||||
<plugin>ign_ros2_control/IgnitionSystem</plugin>
|
||||
</hardware>
|
||||
<joint name="fork1_link_joint">
|
||||
<command_interface name="position">
|
||||
<!-- <param name="min">-1</param> -->
|
||||
<!-- <param name="max">1</param> -->
|
||||
</command_interface>
|
||||
<command_interface name="velocity">
|
||||
<!-- <param name="min">-1</param> -->
|
||||
<!-- <param name="max">1</param> -->
|
||||
</command_interface>
|
||||
<!-- WARN When this active a robot falls down -->
|
||||
<!-- <command_interface name="effort"/> -->
|
||||
<!-- <param name="p">${p}</param> -->
|
||||
<!-- <param name="d">${d}</param> -->
|
||||
<!-- <command_interface name="effort"/> -->
|
||||
<state_interface name="position" />
|
||||
<state_interface name="velocity" />
|
||||
<state_interface name="effort" />
|
||||
</joint>
|
||||
</ros2_control>
|
||||
<gazebo reference="fork1_link">
|
||||
<visual>
|
||||
<material>
|
||||
<diffuse>0.8 0.8 0.8 1</diffuse>
|
||||
<specular>0.6 0.6 0.6 1</specular>
|
||||
<ambient>1.0 1.0 1.0</ambient>
|
||||
<lighting>true</lighting>
|
||||
<emissive>0 0 0 1</emissive>
|
||||
<pbr>
|
||||
<metal>
|
||||
<albedo_map>
|
||||
/home/bill-finger/rbs_ws/install/rbs_arm/share/rbs_arm/materials/textures/fork_d.png</albedo_map>
|
||||
<normal_map>
|
||||
/home/bill-finger/rbs_ws/install/rbs_arm/share/rbs_arm/materials/textures/fork_n.png</normal_map>
|
||||
<ambient_occlusion_map>
|
||||
/home/bill-finger/rbs_ws/install/rbs_arm/share/rbs_arm/materials/textures/fork_ao.png</ambient_occlusion_map>
|
||||
<roughness_map>
|
||||
/home/bill-finger/rbs_ws/install/rbs_arm/share/rbs_arm/materials/textures/fork_r.png</roughness_map>
|
||||
</metal>
|
||||
</pbr>
|
||||
</material>
|
||||
</visual>
|
||||
</gazebo>
|
||||
<joint name="main1_link_joint" type="revolute">
|
||||
<limit effort="78" lower="-1.5708" upper="3.14159" velocity="0.52" />
|
||||
<origin rpy="-0.00000 0.00000 0.00000" xyz="0.10000 0.00000 0.09400" />
|
||||
<parent link="fork1_link" />
|
||||
<child link="main1_link" />
|
||||
<axis xyz="0 1 0" />
|
||||
</joint>
|
||||
<link name="main1_link">
|
||||
<collision name="main1_link_collision">
|
||||
<origin rpy="0.00000 0.00000 0.00000" xyz="0.00000 0.00000 0.00000" />
|
||||
<geometry>
|
||||
<mesh
|
||||
filename="file:///home/bill-finger/rbs_ws/install/rbs_arm/share/rbs_arm/meshes/collision/main_link.stl"
|
||||
scale="1.00000 1.00000 1.00000" />
|
||||
</geometry>
|
||||
</collision>
|
||||
<inertial>
|
||||
<inertia ixx="0.00315699373090845" ixy="2.84713820858537E-05"
|
||||
ixz="-7.01601261191721E-05" iyy="0.00343729241263707" iyz="-0.000101485203138902"
|
||||
izz="0.00125534890134052" />
|
||||
<origin rpy="0.00000 0.00000 0.00000"
|
||||
xyz="0.00186712264682627 -0.000412152188777604 0.0516389446895805" />
|
||||
<mass value="1.58688811563124" />
|
||||
</inertial>
|
||||
<visual name="main1_link_visual">
|
||||
<origin rpy="0.00000 -0.00000 -0.00000" xyz="0.00000 0.00000 0.00000" />
|
||||
<geometry>
|
||||
<mesh
|
||||
filename="/main_link.dae"
|
||||
scale="1.00000 1.00000 1.00000" />
|
||||
</geometry>
|
||||
</visual>
|
||||
</link>
|
||||
<ros2_control name="main1_link_joint_hardware_interface" type="actuator">
|
||||
<hardware>
|
||||
<plugin>ign_ros2_control/IgnitionSystem</plugin>
|
||||
</hardware>
|
||||
<joint name="main1_link_joint">
|
||||
<command_interface name="position">
|
||||
<!-- <param name="min">-1</param> -->
|
||||
<!-- <param name="max">1</param> -->
|
||||
</command_interface>
|
||||
<command_interface name="velocity">
|
||||
<!-- <param name="min">-1</param> -->
|
||||
<!-- <param name="max">1</param> -->
|
||||
</command_interface>
|
||||
<!-- WARN When this active a robot falls down -->
|
||||
<!-- <command_interface name="effort"/> -->
|
||||
<!-- <param name="p">${p}</param> -->
|
||||
<!-- <param name="d">${d}</param> -->
|
||||
<!-- <command_interface name="effort"/> -->
|
||||
<state_interface name="position" />
|
||||
<state_interface name="velocity" />
|
||||
<state_interface name="effort" />
|
||||
</joint>
|
||||
</ros2_control>
|
||||
<gazebo reference="main1_link">
|
||||
<visual>
|
||||
<material>
|
||||
<diffuse>0.8 0.8 0.8 1</diffuse>
|
||||
<specular>0.6 0.6 0.6 1</specular>
|
||||
<ambient>1.0 1.0 1.0</ambient>
|
||||
<lighting>true</lighting>
|
||||
<emissive>0 0 0 1</emissive>
|
||||
<pbr>
|
||||
<metal>
|
||||
<albedo_map>
|
||||
/home/bill-finger/rbs_ws/install/rbs_arm/share/rbs_arm/materials/textures/main_link_d.png</albedo_map>
|
||||
<normal_map>
|
||||
/home/bill-finger/rbs_ws/install/rbs_arm/share/rbs_arm/materials/textures/main_link_n.png</normal_map>
|
||||
<ambient_occlusion_map>
|
||||
/home/bill-finger/rbs_ws/install/rbs_arm/share/rbs_arm/materials/textures/main_link_ao.png</ambient_occlusion_map>
|
||||
<roughness_map>
|
||||
/home/bill-finger/rbs_ws/install/rbs_arm/share/rbs_arm/materials/textures/main_link_r.png</roughness_map>
|
||||
</metal>
|
||||
</pbr>
|
||||
</material>
|
||||
</visual>
|
||||
</gazebo>
|
||||
<joint name="fork2_link_joint" type="revolute">
|
||||
<limit effort="78" lower="-6.14159" upper="6.14159" velocity="0.52" />
|
||||
<origin rpy="0.00000 0.00000 0.00000" xyz="0.00000 0.00000 0.13300" />
|
||||
<parent link="main1_link" />
|
||||
<child link="fork2_link" />
|
||||
<axis xyz="0 0 1" />
|
||||
</joint>
|
||||
<link name="fork2_link">
|
||||
<collision name="fork2_link_collision">
|
||||
<origin rpy="0.00000 0.00000 0.00000" xyz="0.00000 -0.00000 0.00000" />
|
||||
<geometry>
|
||||
<mesh
|
||||
filename="file:///home/bill-finger/rbs_ws/install/rbs_arm/share/rbs_arm/meshes/collision/fork_link.stl"
|
||||
scale="1.00000 1.00000 1.00000" />
|
||||
</geometry>
|
||||
</collision>
|
||||
<inertial>
|
||||
<inertia ixx="0.00367804533572758" ixy="1.04277925521833E-05" ixz="-0.00149971410403071"
|
||||
iyy="0.00415208849477534" iyz="-0.00122" izz="0.00329" />
|
||||
<origin rpy="0.00000 0.00000 0.00000"
|
||||
xyz="0.0472051139085306 0.00208890925682996 0.0557265410642575" />
|
||||
<mass value="1.12472202892859" />
|
||||
</inertial>
|
||||
<visual name="fork2_link_visual">
|
||||
<origin rpy="0.00000 -0.00000 -0.00000" xyz="0.00000 -0.00000 0.00000" />
|
||||
<geometry>
|
||||
<mesh
|
||||
filename="/fork_link.dae"
|
||||
scale="1.00000 1.00000 1.00000" />
|
||||
</geometry>
|
||||
</visual>
|
||||
</link>
|
||||
<ros2_control name="fork2_link_joint_hardware_interface" type="actuator">
|
||||
<hardware>
|
||||
<plugin>ign_ros2_control/IgnitionSystem</plugin>
|
||||
</hardware>
|
||||
<joint name="fork2_link_joint">
|
||||
<command_interface name="position">
|
||||
<!-- <param name="min">-1</param> -->
|
||||
<!-- <param name="max">1</param> -->
|
||||
</command_interface>
|
||||
<command_interface name="velocity">
|
||||
<!-- <param name="min">-1</param> -->
|
||||
<!-- <param name="max">1</param> -->
|
||||
</command_interface>
|
||||
<!-- WARN When this active a robot falls down -->
|
||||
<!-- <command_interface name="effort"/> -->
|
||||
<!-- <param name="p">${p}</param> -->
|
||||
<!-- <param name="d">${d}</param> -->
|
||||
<!-- <command_interface name="effort"/> -->
|
||||
<state_interface name="position" />
|
||||
<state_interface name="velocity" />
|
||||
<state_interface name="effort" />
|
||||
</joint>
|
||||
</ros2_control>
|
||||
<gazebo reference="fork2_link">
|
||||
<visual>
|
||||
<material>
|
||||
<diffuse>0.8 0.8 0.8 1</diffuse>
|
||||
<specular>0.6 0.6 0.6 1</specular>
|
||||
<ambient>1.0 1.0 1.0</ambient>
|
||||
<lighting>true</lighting>
|
||||
<emissive>0 0 0 1</emissive>
|
||||
<pbr>
|
||||
<metal>
|
||||
<albedo_map>
|
||||
/home/bill-finger/rbs_ws/install/rbs_arm/share/rbs_arm/materials/textures/fork_d.png</albedo_map>
|
||||
<normal_map>
|
||||
/home/bill-finger/rbs_ws/install/rbs_arm/share/rbs_arm/materials/textures/fork_n.png</normal_map>
|
||||
<ambient_occlusion_map>
|
||||
/home/bill-finger/rbs_ws/install/rbs_arm/share/rbs_arm/materials/textures/fork_ao.png</ambient_occlusion_map>
|
||||
<roughness_map>
|
||||
/home/bill-finger/rbs_ws/install/rbs_arm/share/rbs_arm/materials/textures/fork_r.png</roughness_map>
|
||||
</metal>
|
||||
</pbr>
|
||||
</material>
|
||||
</visual>
|
||||
</gazebo>
|
||||
<joint name="ee_link_joint" type="revolute">
|
||||
<limit effort="78" lower="-1.5708" upper="3.14159" velocity="0.52" />
|
||||
<origin rpy="0.00000 0.00000 0.00000" xyz="0.10000 0.00000 0.09473" />
|
||||
<parent link="fork2_link" />
|
||||
<child link="ee_link" />
|
||||
<axis xyz="0 1 0" />
|
||||
</joint>
|
||||
<joint name="tool0_joint" type="fixed">
|
||||
<origin rpy="0.00000 0.00000 0.00000" xyz="0.00000 0.00000 0.11000" />
|
||||
<parent link="ee_link" />
|
||||
<child link="tool0" />
|
||||
</joint>
|
||||
<link name="tool0" />
|
||||
<link name="ee_link">
|
||||
<collision name="ee_link_collision">
|
||||
<origin rpy="-0.00000 0.00000 -0.00000" xyz="0.00000 -0.00000 0.00000" />
|
||||
<geometry>
|
||||
<mesh
|
||||
filename="file:///home/bill-finger/rbs_ws/install/rbs_arm/share/rbs_arm/meshes/collision/ee_link.stl"
|
||||
scale="1.00000 1.00000 1.00000" />
|
||||
</geometry>
|
||||
</collision>
|
||||
<inertial>
|
||||
<inertia ixx="0.00147695259043549" ixy="-2.66894744420299E-05"
|
||||
ixz="-4.40871314563273E-05" iyy="0.00135500487881796" iyz="-3.19001462979333E-05"
|
||||
izz="0.00087582892706912" />
|
||||
<origin rpy="0.00000 0.00000 0.00000"
|
||||
xyz="-9.7531539777207E-06 -0.000888494418875867 0.0342332199538358" />
|
||||
<mass value="1.88031044620482" />
|
||||
</inertial>
|
||||
<visual name="ee_link_visual">
|
||||
<origin rpy="0.00000 0.00000 0.00000" xyz="0.00000 -0.00000 0.00000" />
|
||||
<geometry>
|
||||
<mesh
|
||||
filename="/ee_link.dae"
|
||||
scale="1.00000 1.00000 1.00000" />
|
||||
</geometry>
|
||||
</visual>
|
||||
</link>
|
||||
<ros2_control name="ee_link_joint_hardware_interface" type="actuator">
|
||||
<hardware>
|
||||
<plugin>ign_ros2_control/IgnitionSystem</plugin>
|
||||
</hardware>
|
||||
<joint name="ee_link_joint">
|
||||
<command_interface name="position">
|
||||
<!-- <param name="min">-1</param> -->
|
||||
<!-- <param name="max">1</param> -->
|
||||
</command_interface>
|
||||
<command_interface name="velocity">
|
||||
<!-- <param name="min">-1</param> -->
|
||||
<!-- <param name="max">1</param> -->
|
||||
</command_interface>
|
||||
<!-- WARN When this active a robot falls down -->
|
||||
<!-- <command_interface name="effort"/> -->
|
||||
<!-- <param name="p">${p}</param> -->
|
||||
<!-- <param name="d">${d}</param> -->
|
||||
<!-- <command_interface name="effort"/> -->
|
||||
<state_interface name="position" />
|
||||
<state_interface name="velocity" />
|
||||
<state_interface name="effort" />
|
||||
</joint>
|
||||
</ros2_control>
|
||||
<gazebo reference="ee_link">
|
||||
<visual>
|
||||
<material>
|
||||
<diffuse>0.8 0.8 0.8 1</diffuse>
|
||||
<specular>0.6 0.6 0.6 1</specular>
|
||||
<ambient>1.0 1.0 1.0</ambient>
|
||||
<lighting>true</lighting>
|
||||
<emissive>0 0 0 1</emissive>
|
||||
<pbr>
|
||||
<metal>
|
||||
<albedo_map>
|
||||
/home/bill-finger/rbs_ws/install/rbs_arm/share/rbs_arm/materials/textures/ee_link_d.png</albedo_map>
|
||||
<normal_map>
|
||||
/home/bill-finger/rbs_ws/install/rbs_arm/share/rbs_arm/materials/textures/ee_link_n.png</normal_map>
|
||||
<ambient_occlusion_map>
|
||||
/home/bill-finger/rbs_ws/install/rbs_arm/share/rbs_arm/materials/textures/ee_link_ao.png</ambient_occlusion_map>
|
||||
<roughness_map>
|
||||
/home/bill-finger/rbs_ws/install/rbs_arm/share/rbs_arm/materials/textures/ee_link_r.png</roughness_map>
|
||||
</metal>
|
||||
</pbr>
|
||||
</material>
|
||||
</visual>
|
||||
</gazebo>
|
||||
<!-- END robot description -->
|
||||
<ros2_control name="rbs_gripper_gazebo" type="system">
|
||||
<!-- Plugins -->
|
||||
<hardware>
|
||||
<plugin>ign_ros2_control/IgnitionSystem</plugin>
|
||||
</hardware>
|
||||
<!-- Joint interfaces -->
|
||||
<joint name="rbs_gripper_rot_base_joint">
|
||||
<state_interface name="position">
|
||||
<param name="initial_value">0.000</param>
|
||||
</state_interface>
|
||||
<command_interface name="position" />
|
||||
<command_interface name="velocity" />
|
||||
<!-- <command_interface name="effort"/> -->
|
||||
<state_interface name="velocity" />
|
||||
<state_interface name="effort" />
|
||||
</joint>
|
||||
<joint name="rbs_gripper_r_finger_joint">
|
||||
<state_interface name="position">
|
||||
<param name="initial_value">0.004</param>
|
||||
</state_interface>
|
||||
<command_interface name="position" />
|
||||
<command_interface name="velocity" />
|
||||
<!-- <command_interface name="effort"/> -->
|
||||
<state_interface name="velocity" />
|
||||
<state_interface name="effort" />
|
||||
</joint>
|
||||
<joint name="rbs_gripper_l_finger_joint">
|
||||
<param name="mimic">rbs_gripper_r_finger_joint</param>
|
||||
<param name="multiplier">1</param>
|
||||
</joint>
|
||||
</ros2_control>
|
||||
<transmission name="rbs_gripper_rot_base_joint_transmission">
|
||||
<type>transmission_interface/SimpleTransmission</type>
|
||||
<joint name="rbs_gripper_rot_base_joint">
|
||||
<hardwareInterface>hardware_interface/EffortJointInterface</hardwareInterface>
|
||||
</joint>
|
||||
<actuator name="rbs_gripper_rot_base_joint_actuator">
|
||||
<mechanicalReduction>1</mechanicalReduction>
|
||||
</actuator>
|
||||
</transmission>
|
||||
<joint name="rbs_gripper_gripper_base_joint" type="fixed">
|
||||
<origin rpy="0 0 0" xyz="0 0 0" />
|
||||
<parent link="tool0" />
|
||||
<child link="rbs_gripper_gripper_base_link" />
|
||||
</joint>
|
||||
<link name="rbs_gripper_gripper_base_link">
|
||||
<inertial>
|
||||
<origin rpy="0 0 0" xyz="0.000364704367134063 0.0336387482840125 0.0593891203954369" />
|
||||
<mass value="1.13983632906086" />
|
||||
<inertia ixx="0.00107738806534129" ixy="-1.09841172461737E-05"
|
||||
ixz="2.62750043451545E-06" iyy="0.000717388573992299" iyz="-2.95426438182787E-05"
|
||||
izz="0.00115777179755934" />
|
||||
</inertial>
|
||||
<visual>
|
||||
<origin rpy="0 0 0" xyz="0 0 0" />
|
||||
<geometry>
|
||||
<mesh
|
||||
filename="/base.dae" />
|
||||
</geometry>
|
||||
<material name="rbs_gripper_material">
|
||||
<color rgba="0.752941176470588 0.752941176470588 0.752941176470588 1" />
|
||||
</material>
|
||||
</visual>
|
||||
<collision>
|
||||
<origin rpy="0 0 0" xyz="0 0 0" />
|
||||
<geometry>
|
||||
<mesh
|
||||
filename="/base.stl" />
|
||||
</geometry>
|
||||
</collision>
|
||||
</link>
|
||||
<link name="rbs_gripper_rot_base_link">
|
||||
<inertial>
|
||||
<origin rpy="0 0 0" xyz="6.79110135283868E-11 -3.80956832067611E-10 0.00775394473595793" />
|
||||
<mass value="0.161003401535982" />
|
||||
<inertia ixx="0.00011089089949771" ixy="5.01335040610636E-06" ixz="1.74608448389267E-14"
|
||||
iyy="0.000105515893695012" iyz="-2.03282362854432E-14" izz="0.000206912001661452" />
|
||||
</inertial>
|
||||
<visual>
|
||||
<origin rpy="0 0 0" xyz="0 0 0" />
|
||||
<geometry>
|
||||
<mesh
|
||||
filename="/rotor.dae" />
|
||||
</geometry>
|
||||
<material name="rbs_gripper_material">
|
||||
<color rgba="0.250980392156863 0.250980392156863 0.250980392156863 1" />
|
||||
</material>
|
||||
</visual>
|
||||
<collision>
|
||||
<origin rpy="0 0 0" xyz="0 0 0" />
|
||||
<geometry>
|
||||
<mesh
|
||||
filename="/rotor.stl" />
|
||||
</geometry>
|
||||
</collision>
|
||||
</link>
|
||||
<joint name="rbs_gripper_rot_base_joint" type="revolute">
|
||||
<origin rpy="0 0 0" xyz="0 0 0.10861" />
|
||||
<parent link="rbs_gripper_gripper_base_link" />
|
||||
<child link="rbs_gripper_rot_base_link" />
|
||||
<axis xyz="0 0 1" />
|
||||
<limit effort="78" lower="-3.14159" upper="3.14159" velocity="0.52" />
|
||||
</joint>
|
||||
<link name="rbs_gripper_l_finger_link">
|
||||
<inertial>
|
||||
<origin rpy="0 0 0" xyz="0.00399878118534129 0.0187296413885176 -0.0777776233934166" />
|
||||
<mass value="0.0601996441483964" />
|
||||
<inertia ixx="4.18533281165612E-05" ixy="-7.11657995951147E-06"
|
||||
ixz="1.81029223490065E-05" iyy="7.89886367868258E-05" iyz="1.20542845942065E-05"
|
||||
izz="5.16740841307935E-05" />
|
||||
</inertial>
|
||||
<visual>
|
||||
<origin rpy="0 0 0" xyz="0 0 0" />
|
||||
<geometry>
|
||||
<mesh
|
||||
filename="/finger.dae" />
|
||||
</geometry>
|
||||
<material name="rbs_gripper_material">
|
||||
<color rgba="0.752941176470588 0 0 1" />
|
||||
</material>
|
||||
</visual>
|
||||
<collision>
|
||||
<origin rpy="0 0 0" xyz="0 0 0" />
|
||||
<geometry>
|
||||
<mesh
|
||||
filename="/finger.stl" />
|
||||
</geometry>
|
||||
</collision>
|
||||
</link>
|
||||
<joint name="rbs_gripper_l_finger_joint" type="prismatic">
|
||||
<origin rpy="0 0 1.5708" xyz="0 0 0.1071" />
|
||||
<parent link="rbs_gripper_rot_base_link" />
|
||||
<child link="rbs_gripper_l_finger_link" />
|
||||
<axis xyz="-1 0 0" />
|
||||
<limit effort="10" lower="0" upper="0.064" velocity="0.53" />
|
||||
<mimic joint="rbs_gripper_r_finger_joint" multiplier="1" />
|
||||
</joint>
|
||||
<link name="rbs_gripper_r_finger_link">
|
||||
<inertial>
|
||||
<origin rpy="0 0 0" xyz="0.0039988 -0.077778 -0.01873" />
|
||||
<mass value="0.0602" />
|
||||
<inertia ixx="4.1853E-05" ixy="1.8103E-05" ixz="7.1166E-06" iyy="5.1674E-05"
|
||||
iyz="-1.2054E-05" izz="7.8989E-05" />
|
||||
</inertial>
|
||||
<visual>
|
||||
<origin rpy="0 0 0" xyz="0 0 0" />
|
||||
<geometry>
|
||||
<mesh
|
||||
filename="/finger.dae" />
|
||||
</geometry>
|
||||
<material name="rbs_gripper_material">
|
||||
<color rgba="0.75294 0 0 1" />
|
||||
</material>
|
||||
</visual>
|
||||
<collision>
|
||||
<origin rpy="0 0 0" xyz="0 0 0" />
|
||||
<geometry>
|
||||
<mesh
|
||||
filename="/finger.stl" />
|
||||
</geometry>
|
||||
</collision>
|
||||
</link>
|
||||
<joint name="rbs_gripper_r_finger_joint" type="prismatic">
|
||||
<origin rpy="0 0 -1.5708" xyz="0 0 0.1071" />
|
||||
<parent link="rbs_gripper_rot_base_link" />
|
||||
<child link="rbs_gripper_r_finger_link" />
|
||||
<axis xyz="-1 0 0" />
|
||||
<limit effort="10" lower="0" upper="0.064" velocity="0.53" />
|
||||
</joint>
|
||||
<link name="gripper_grasp_point" />
|
||||
<joint name="rbs_gripper_gripper_tool0_joint" type="fixed">
|
||||
<origin rpy="0 0 0" xyz="0 0 0.09139" />
|
||||
<parent link="rbs_gripper_rot_base_link" />
|
||||
<child link="gripper_grasp_point" />
|
||||
</joint>
|
||||
<gazebo reference="rbs_gripper_rot_base_link">
|
||||
<self_collide>1</self_collide>
|
||||
<!-- <soft_contact> -->
|
||||
<!-- <dart> -->
|
||||
<!-- <bone_attachment>100</bone_attachment> -->
|
||||
<!-- <stiffness>100</stiffness> -->
|
||||
<!-- <damping>10</damping> -->
|
||||
<!-- <flesh_mass_fraction>0.050000000000000003</flesh_mass_fraction> -->
|
||||
<!-- </dart> -->
|
||||
<!-- </soft_contact> -->
|
||||
</gazebo>
|
||||
<gazebo reference="rbs_gripper_l_finger_link">
|
||||
<self_collide>1</self_collide>
|
||||
<!-- <soft_contact> -->
|
||||
<!-- <dart> -->
|
||||
<!-- <bone_attachment>100</bone_attachment> -->
|
||||
<!-- <stiffness>100</stiffness> -->
|
||||
<!-- <damping>10</damping> -->
|
||||
<!-- <flesh_mass_fraction>0.050000000000000003</flesh_mass_fraction> -->
|
||||
<!-- </dart> -->
|
||||
<!-- </soft_contact> -->
|
||||
</gazebo>
|
||||
<gazebo reference="rbs_gripper_r_finger_link">
|
||||
<self_collide>1</self_collide>
|
||||
<!-- <soft_contact> -->
|
||||
<!-- <dart> -->
|
||||
<!-- <bone_attachment>100</bone_attachment> -->
|
||||
<!-- <stiffness>100</stiffness> -->
|
||||
<!-- <damping>10</damping> -->
|
||||
<!-- <flesh_mass_fraction>0.050000000000000003</flesh_mass_fraction> -->
|
||||
<!-- </dart> -->
|
||||
<!-- </soft_contact> -->
|
||||
</gazebo>
|
||||
<ros2_control name="fts_sensor" type="sensor">
|
||||
<hardware>
|
||||
<plugin>ign_ros2_control/IgnitionFts</plugin>
|
||||
</hardware>
|
||||
<sensor name="fts_sensor">
|
||||
<state_interface name="force.x" />
|
||||
<state_interface name="force.y" />
|
||||
<state_interface name="force.z" />
|
||||
<state_interface name="torque.x" />
|
||||
<state_interface name="torque.y" />
|
||||
<state_interface name="torque.z" />
|
||||
</sensor>
|
||||
</ros2_control>
|
||||
<gazebo reference="tool0_joint">
|
||||
<preserveFixedJoint>true</preserveFixedJoint>
|
||||
<sensor name="fts_sensor" type="force_torque">
|
||||
<always_on>true</always_on>
|
||||
<update_rate>50</update_rate>
|
||||
<visualize>true</visualize>
|
||||
<topic>ft_data</topic>
|
||||
<force_torque>
|
||||
<frame>sensor</frame>
|
||||
<measure_direction>child_to_parent</measure_direction>
|
||||
</force_torque>
|
||||
</sensor>
|
||||
</gazebo>
|
||||
<gazebo>
|
||||
<plugin filename="libign_ros2_control-system.so"
|
||||
name="ign_ros2_control::IgnitionROS2ControlPlugin">
|
||||
<parameters>
|
||||
/home/bill-finger/rbs_ws/install/rbs_arm/share/rbs_arm/config/rbs_arm0_controllers.yaml</parameters>
|
||||
<ros>
|
||||
<namespace>/arm0</namespace>
|
||||
</ros>
|
||||
</plugin>
|
||||
</gazebo>
|
||||
</robot>
|
121
web_p/robot_builder/rotor.dae
Normal file
101
web_p/robot_builder/start_link.dae
Normal file
BIN
web_p/server/build/public/534e1e4b-be37-4beb-8fbf-d07528c26124/assets/.DS_Store
vendored
Normal file
|
@ -0,0 +1,62 @@
|
|||
[
|
||||
{
|
||||
"type": "OBJECT",
|
||||
"name": "body_down",
|
||||
"path": "libs/objects/body_down.blend",
|
||||
"dae": "libs/objects/body_down.dae",
|
||||
"fbx": "libs/objects/body_down.fbx",
|
||||
"glb": "libs/objects/body_down.glb",
|
||||
"ply": "libs/objects/body_down.ply",
|
||||
"thumbnail": "libs/objects/body_down.png"
|
||||
},
|
||||
{
|
||||
"type": "OBJECT",
|
||||
"name": "sol_gear",
|
||||
"path": "libs/objects/sol_gear.blend",
|
||||
"dae": "libs/objects/sol_gear.dae",
|
||||
"fbx": "libs/objects/sol_gear.fbx",
|
||||
"glb": "libs/objects/sol_gear.glb",
|
||||
"ply": "libs/objects/sol_gear.ply",
|
||||
"thumbnail": "libs/objects/sol_gear.png"
|
||||
},
|
||||
{
|
||||
"type": "OBJECT",
|
||||
"name": "output_shaft",
|
||||
"path": "libs/objects/output_shaft.blend",
|
||||
"dae": "libs/objects/output_shaft.dae",
|
||||
"fbx": "libs/objects/output_shaft.fbx",
|
||||
"glb": "libs/objects/output_shaft.glb",
|
||||
"ply": "libs/objects/output_shaft.ply",
|
||||
"thumbnail": "libs/objects/output_shaft.png"
|
||||
},
|
||||
{
|
||||
"type": "OBJECT",
|
||||
"name": "planet_gear",
|
||||
"path": "libs/objects/planet_gear.blend",
|
||||
"dae": "libs/objects/planet_gear.dae",
|
||||
"fbx": "libs/objects/planet_gear.fbx",
|
||||
"glb": "libs/objects/planet_gear.glb",
|
||||
"ply": "libs/objects/planet_gear.ply",
|
||||
"thumbnail": "libs/objects/planet_gear.png"
|
||||
},
|
||||
{
|
||||
"type": "OBJECT",
|
||||
"name": "body_up",
|
||||
"path": "libs/objects/body_up.blend",
|
||||
"dae": "libs/objects/body_up.dae",
|
||||
"fbx": "libs/objects/body_up.fbx",
|
||||
"glb": "libs/objects/body_up.glb",
|
||||
"ply": "libs/objects/body_up.ply",
|
||||
"thumbnail": "libs/objects/body_up.png"
|
||||
},
|
||||
{
|
||||
"type": "OBJECT",
|
||||
"name": "bolt",
|
||||
"path": "libs/objects/bolt.blend",
|
||||
"dae": "libs/objects/bolt.dae",
|
||||
"fbx": "libs/objects/bolt.fbx",
|
||||
"glb": "libs/objects/bolt.glb",
|
||||
"ply": "libs/objects/bolt.ply",
|
||||
"thumbnail": "libs/objects/bolt.png"
|
||||
}
|
||||
]
|
BIN
web_p/server/build/public/534e1e4b-be37-4beb-8fbf-d07528c26124/libs/.DS_Store
vendored
Normal file
After Width: | Height: | Size: 5.1 KiB |
After Width: | Height: | Size: 3.7 KiB |
|
@ -0,0 +1,89 @@
|
|||
<?xml version="1.0" encoding="utf-8"?>
|
||||
<COLLADA xmlns="http://www.collada.org/2005/11/COLLADASchema" version="1.4.1" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">
|
||||
<asset>
|
||||
<contributor>
|
||||
<author>Blender User</author>
|
||||
<authoring_tool>Blender 4.1.0 commit date:1970-01-01, commit time:00:00, hash:unknown</authoring_tool>
|
||||
</contributor>
|
||||
<created>2024-06-14T14:53:05</created>
|
||||
<modified>2024-06-14T14:53:05</modified>
|
||||
<unit name="meter" meter="1"/>
|
||||
<up_axis>Z_UP</up_axis>
|
||||
</asset>
|
||||
<library_effects>
|
||||
<effect id="Robossembler_Black_Body-effect">
|
||||
<profile_COMMON>
|
||||
<technique sid="common">
|
||||
<lambert>
|
||||
<emission>
|
||||
<color sid="emission">0 0 0 1</color>
|
||||
</emission>
|
||||
<diffuse>
|
||||
<color sid="diffuse">0 0 0 1</color>
|
||||
</diffuse>
|
||||
<index_of_refraction>
|
||||
<float sid="ior">1.5</float>
|
||||
</index_of_refraction>
|
||||
</lambert>
|
||||
</technique>
|
||||
</profile_COMMON>
|
||||
</effect>
|
||||
</library_effects>
|
||||
<library_images/>
|
||||
<library_materials>
|
||||
<material id="Robossembler_Black_Body-material" name="Robossembler_Black_Body">
|
||||
<instance_effect url="#Robossembler_Black_Body-effect"/>
|
||||
</material>
|
||||
</library_materials>
|
||||
<library_geometries>
|
||||
<geometry id="bolt_001-mesh" name="bolt.001">
|
||||
<mesh>
|
||||
<source id="bolt_001-mesh-positions">
|
||||
<float_array id="bolt_001-mesh-positions-array" count="252">-0.02196466 0.02399194 0 -0.02193802 0.02368807 -0.01999998 -0.02196466 0.02399194 -0.01999998 -0.02193802 0.02368807 0 -0.02204358 0.02428656 0 -0.02204358 0.02428656 -0.01999998 -0.02217251 0.02456307 0 -0.02217251 0.02456307 -0.01999998 -0.02234745 0.02481293 -0.01999998 -0.02234745 0.02481293 0 -0.02256315 0.02502864 0 -0.02256315 0.02502864 -0.01999998 -0.02281308 0.02520358 0 -0.02281308 0.02520358 -0.01999998 -0.02308952 0.02533251 0 -0.02308952 0.02533251 -0.01999998 -0.02338415 0.02541148 0 -0.02338415 0.02541148 -0.01999998 -0.02368807 0.02543807 0 -0.02368807 0.02543807 -0.01999998 -0.02399194 0.02541148 0 -0.02399194 0.02541148 -0.01999998 -0.02428656 0.02533251 0 -0.02428656 0.02533251 -0.01999998 -0.02456307 0.02520358 0 -0.02456307 0.02520358 -0.01999998 -0.02481293 0.02502864 -0.01999998 -0.02481293 0.02502864 0 -0.02502864 0.02481293 0 -0.02502864 0.02481293 -0.01999998 -0.02520358 0.02456307 0 -0.02520358 0.02456307 -0.01999998 -0.02533251 0.02428656 0 -0.02533251 0.02428656 -0.01999998 -0.02541148 0.02399194 0 -0.02541148 0.02399194 -0.01999998 -0.02543807 0.02368807 0 -0.02543807 0.02368807 -0.01999998 -0.02541148 0.02338415 -0.01999998 -0.02541148 0.02338415 0 -0.02533251 0.02308952 -0.01999998 -0.02533251 0.02308952 0 -0.02520358 0.02281308 -0.01999998 -0.02520358 0.02281308 0 -0.02502864 0.02256315 0 -0.02502864 0.02256315 -0.01999998 -0.02481293 0.02234745 0 -0.02481293 0.02234745 -0.01999998 -0.02456307 0.02217251 0 -0.02456307 0.02217251 -0.01999998 -0.02428656 0.02204358 0 -0.02428656 0.02204358 -0.01999998 -0.02399194 0.02196466 0 -0.02399194 0.02196466 -0.01999998 -0.02368807 0.02193802 0 -0.02368807 0.02193802 -0.01999998 -0.02338415 0.02196466 -0.01999998 -0.02338415 0.02196466 0 -0.02308952 0.02204358 0 -0.02308952 0.02204358 -0.01999998 -0.02281308 0.02217251 -0.01999998 -0.02281308 0.02217251 0 -0.02256315 0.02234745 0 -0.02256315 0.02234745 -0.01999998 -0.02234745 0.02256315 0 -0.02234745 0.02256315 -0.01999998 -0.02217251 0.02281308 -0.01999998 -0.02217251 0.02281308 0 -0.02204358 0.02308952 0 -0.02204358 0.02308952 -0.01999998 -0.02196466 0.02338415 0 -0.02196466 0.02338415 -0.01999998 -0.02018803 0.0216673 0.003999948 -0.02368807 0.01964658 0.003999948 -0.02018803 0.0216673 0 -0.02368807 0.01964658 0 -0.02018803 0.02570879 0.003999948 -0.02018803 0.02570879 0 -0.02368807 0.02772951 0.003999948 -0.02368807 0.02772951 0 -0.02718806 0.02570879 0.003999948 -0.02718806 0.02570879 0 -0.02718806 0.0216673 0.003999948 -0.02718806 0.0216673 0</float_array>
|
||||
<technique_common>
|
||||
<accessor source="#bolt_001-mesh-positions-array" count="84" stride="3">
|
||||
<param name="X" type="float"/>
|
||||
<param name="Y" type="float"/>
|
||||
<param name="Z" type="float"/>
|
||||
</accessor>
|
||||
</technique_common>
|
||||
</source>
|
||||
<source id="bolt_001-mesh-normals">
|
||||
<float_array id="bolt_001-mesh-normals-array" count="327">0.9894472 0.1448946 0 0.9995759 0.02912068 0 0.9793339 0.2022505 0 0.9995759 -0.02912008 0 0.9492547 0.3145085 0 0.9293338 0.3692411 0 0.8660255 0.4999999 0 0.8660233 0.5000037 0 0.7660449 0.6427871 0 0.7660449 0.6427871 0 0.6648212 0.7470026 0 0.6202083 0.7844372 0 0.5250455 0.8510742 0 0.4745714 0.8802171 0 0.3692381 0.9293348 0 0.3145146 0.9492527 0 0.2022534 0.9793332 0 0.1448991 0.9894465 0 0.02911955 0.999576 0 -0.02912038 0.9995759 0 -0.1448996 0.9894464 0 -0.2022562 0.9793326 0 -0.3145089 0.9492546 0 -0.3692384 0.9293348 0 -0.4999972 0.8660271 0 -0.5000019 0.8660244 0 -0.64279 0.7660425 0 -0.642791 0.7660418 0 -0.747004 0.6648195 0 -0.7844361 0.6202096 0 -0.851098 0.5250069 0 -0.8802185 0.4745689 0 -0.9293336 0.3692413 0 -0.9492533 0.314513 0 -0.9793319 0.2022597 0 -0.9894471 0.1448945 0 -1 2.6187e-7 0 -1 2.66633e-7 0 -0.9894473 -0.1448935 -1.11524e-6 -0.9793322 -0.2022587 1.11524e-6 -0.9492527 -0.3145146 1.11614e-5 -0.9293329 -0.369243 1.11524e-6 -0.8660259 -0.4999992 0 -0.7844384 -0.6202069 0 -0.7469735 -0.6648538 0 -0.6648558 -0.7469719 0 -0.6201745 -0.784464 0 -0.5250045 -0.8510996 0 -0.4745712 -0.8802171 0 -0.3692383 -0.9293348 0 -0.3145087 -0.9492546 0 -0.2022533 -0.9793332 0 -0.1448966 -0.9894469 0 -4.09469e-7 -1 0 -4.18995e-7 -1 0 0.1736466 -0.9848081 0 0.1736474 -0.984808 0 0.3420199 -0.9396927 0 0.3420225 -0.9396918 0 0.5000002 -0.8660253 0 0.4999992 -0.8660259 0 0.6201676 -0.7844695 0 0.6648194 -0.7470042 0 0.7660472 -0.6427844 0 0.7660471 -0.6427845 0 0.866026 -0.4999992 0 0.8660238 -0.5000029 0 0.929333 -0.3692427 0 0.9492541 -0.3145102 0 0.9793341 -0.2022495 0 0.9894474 -0.1448936 0 0 0 -1 3.92384e-6 0 -1 -7.3586e-5 0 -1 -7.70493e-6 0 -1 0 0 -1 -7.18913e-6 0 -1 1.40726e-5 0 -1 -2.90599e-6 0 -1 -2.81421e-5 0 -1 2.01221e-6 0 -1 7.35857e-5 0 -1 -3.31029e-6 0 -1 -5.62841e-5 0 -1 -7.07482e-7 0 -1 -4.78709e-7 0 -1 -5.62849e-5 0 -1 7.5222e-7 0 -1 6.31213e-6 0 -1 -1.0172e-5 0 -1 -3.67922e-5 0 -1 -2.39619e-7 0 -1 -3.16071e-6 0 -1 0.5 -0.8660256 0 1 0 0 0.5 0.8660256 0 -0.5000003 0.8660253 0 -0.5000001 0.8660255 0 -0.5 0.8660256 0 -1 0 0 -0.5 -0.8660256 0 -0.5000001 -0.8660255 0 -0.5000003 -0.8660253 0 0 0 1 -2.5719e-7 0 1 0 0 1 0 0 1 0 0 1 1.28595e-7 0 1</float_array>
|
||||
<technique_common>
|
||||
<accessor source="#bolt_001-mesh-normals-array" count="109" stride="3">
|
||||
<param name="X" type="float"/>
|
||||
<param name="Y" type="float"/>
|
||||
<param name="Z" type="float"/>
|
||||
</accessor>
|
||||
</technique_common>
|
||||
</source>
|
||||
<vertices id="bolt_001-mesh-vertices">
|
||||
<input semantic="POSITION" source="#bolt_001-mesh-positions"/>
|
||||
</vertices>
|
||||
<triangles material="Robossembler_Black_Body-material" count="164">
|
||||
<input semantic="VERTEX" source="#bolt_001-mesh-vertices" offset="0"/>
|
||||
<input semantic="NORMAL" source="#bolt_001-mesh-normals" offset="1"/>
|
||||
<p>0 0 1 1 2 2 0 0 3 3 1 1 4 4 2 2 5 5 4 4 0 0 2 2 6 6 5 5 7 7 6 6 7 7 8 8 6 6 4 4 5 5 9 9 6 6 8 8 10 10 8 8 11 11 10 10 9 9 8 8 12 12 11 11 13 13 12 12 10 10 11 11 14 14 13 13 15 15 14 14 12 12 13 13 16 16 15 15 17 17 16 16 14 14 15 15 18 18 17 17 19 19 18 18 16 16 17 17 20 20 19 19 21 21 20 20 18 18 19 19 22 22 21 21 23 23 22 22 20 20 21 21 24 24 23 23 25 25 24 24 25 25 26 26 24 24 22 22 23 23 27 27 24 24 26 26 28 28 26 26 29 29 28 28 27 27 26 26 30 30 28 28 29 29 30 30 29 29 31 31 32 32 30 30 31 31 32 32 31 31 33 33 34 34 32 32 33 33 34 34 33 33 35 35 36 36 34 34 35 35 36 36 35 35 37 37 36 36 37 37 38 38 39 39 38 38 40 40 39 39 36 36 38 38 41 41 40 40 42 42 41 41 39 39 40 40 43 42 41 41 42 42 44 43 42 42 45 44 44 43 43 42 42 42 46 45 45 44 47 46 46 45 44 43 45 44 48 47 47 46 49 48 48 47 46 45 47 46 50 49 49 48 51 50 50 49 48 47 49 48 52 51 51 50 53 52 52 51 50 49 51 50 54 53 53 52 55 54 54 53 55 54 56 55 54 53 52 51 53 52 57 56 54 53 56 55 58 57 56 55 59 58 58 57 59 58 60 59 58 57 57 56 56 55 61 60 58 57 60 59 62 61 60 59 63 62 62 61 61 60 60 59 64 63 63 62 65 64 64 63 65 64 66 65 64 63 62 61 63 62 67 66 64 63 66 65 68 67 67 66 66 65 68 67 66 65 69 68 70 69 68 67 69 68 70 69 69 68 71 70 3 3 70 69 71 70 3 3 71 70 1 1 37 71 35 72 38 73 38 73 35 72 40 74 55 75 59 76 56 77 53 71 63 78 55 75 59 76 63 78 60 79 55 75 63 78 59 76 31 71 29 80 33 81 33 81 29 80 35 72 45 71 66 82 47 71 47 71 66 82 49 71 49 71 66 82 51 71 51 71 66 82 53 71 63 78 66 82 65 83 53 71 66 82 63 78 26 71 25 84 29 80 66 82 71 85 69 86 23 71 21 87 25 84 71 85 2 88 1 71 15 71 13 71 17 71 17 71 13 71 19 71 2 88 8 89 5 90 5 90 8 89 7 71 40 74 11 91 42 92 42 92 11 91 45 71 19 71 11 91 21 87 35 72 11 91 40 74 45 71 11 91 66 82 25 84 11 91 29 80 29 80 11 91 35 72 66 82 11 91 71 85 71 85 11 91 2 88 21 87 11 91 25 84 2 88 11 91 8 89 13 71 11 91 19 71 72 93 73 93 74 93 74 93 73 93 75 93 74 94 76 94 72 94 77 94 76 94 74 94 78 95 76 95 79 95 79 95 76 95 77 95 80 96 78 97 81 97 81 97 78 97 79 98 82 99 80 99 83 99 83 99 80 99 81 99 73 100 82 101 75 101 75 101 82 101 83 102 78 103 80 104 82 105 76 106 73 107 72 108 76 106 82 105 73 107 76 106 78 103 82 105 83 71 44 71 46 71 83 71 43 71 44 71 83 71 48 71 75 71 46 71 48 71 83 71 83 71 41 71 43 71 48 71 50 71 75 71 50 71 52 71 75 71 83 71 39 71 41 71 52 71 54 71 75 71 83 71 36 71 39 71 83 71 81 71 36 71 54 71 57 71 75 71 81 71 34 71 36 71 57 71 58 71 75 71 81 71 32 71 34 71 58 71 61 71 75 71 81 71 30 71 32 71 81 71 28 71 30 71 81 71 27 71 28 71 81 71 24 71 27 71 62 71 74 71 61 71 64 71 74 71 62 71 67 71 74 71 64 71 68 71 74 71 67 71 70 71 74 71 68 71 61 71 74 71 75 71 70 71 3 71 74 71 14 71 79 71 12 71 16 71 79 71 14 71 18 71 79 71 16 71 20 71 79 71 18 71 22 71 79 71 20 71 24 71 79 71 22 71 81 71 79 71 24 71 3 71 77 71 74 71 0 71 77 71 3 71 79 71 77 71 12 71 4 71 77 71 0 71 6 71 77 71 4 71 9 71 77 71 6 71 10 71 77 71 9 71 12 71 77 71 10 71</p>
|
||||
</triangles>
|
||||
</mesh>
|
||||
</geometry>
|
||||
</library_geometries>
|
||||
<library_visual_scenes>
|
||||
<visual_scene id="Scene" name="Scene">
|
||||
<node id="bolt" name="bolt" type="NODE">
|
||||
<matrix sid="transform">1 0 0 0 0 1 0 0 0 0 1 0 0 0 0 1</matrix>
|
||||
<instance_geometry url="#bolt_001-mesh" name="bolt">
|
||||
<bind_material>
|
||||
<technique_common>
|
||||
<instance_material symbol="Robossembler_Black_Body-material" target="#Robossembler_Black_Body-material"/>
|
||||
</technique_common>
|
||||
</bind_material>
|
||||
</instance_geometry>
|
||||
</node>
|
||||
</visual_scene>
|
||||
</library_visual_scenes>
|
||||
<scene>
|
||||
<instance_visual_scene url="#Scene"/>
|
||||
</scene>
|
||||
</COLLADA>
|
|
@ -0,0 +1,261 @@
|
|||
ply
|
||||
format ascii 1.0
|
||||
comment Created in Blender version 4.1.0
|
||||
element vertex 84
|
||||
property float x
|
||||
property float y
|
||||
property float z
|
||||
property float nx
|
||||
property float ny
|
||||
property float nz
|
||||
element face 164
|
||||
property list uchar uint vertex_indices
|
||||
end_header
|
||||
-21.964666 23.991962 0 0.6759426 0.1191853 -0.7272527
|
||||
-21.938078 23.68808 -20.000002 0.7257025 4.4918602e-07 -0.6880086
|
||||
-21.964666 23.991962 -20.000002 0.7146925 0.12601762 -0.687993
|
||||
-21.938078 23.68808 0 0.6863562 -5.7010197e-08 -0.7272656
|
||||
-22.043615 24.286613 0 0.64496636 0.2347465 -0.7272637
|
||||
-22.043615 24.286613 -20.000002 0.6819248 0.24821126 -0.6880186
|
||||
-22.172535 24.56308 0 0.59441805 0.34318736 -0.727248
|
||||
-22.172535 24.56308 -20.000002 0.62847316 0.36285272 -0.68801117
|
||||
-22.3475 24.812958 -20.000002 0.55592054 0.46647796 -0.68800485
|
||||
-22.3475 24.812958 0 0.5257804 0.44118154 -0.7272646
|
||||
-22.563198 25.028656 0 0.4411884 0.52578944 -0.72725385
|
||||
-22.563198 25.028656 -20.000002 0.4665045 0.5559581 -0.68795645
|
||||
-22.81308 25.203623 0 0.34317657 0.5944042 -0.7272643
|
||||
-22.81308 25.203623 -20.000002 0.36285466 0.6284793 -0.6880045
|
||||
-23.089542 25.33254 0 0.23475139 0.644976 -0.7272536
|
||||
-23.089542 25.33254 -20.000002 0.24820705 0.6819357 -0.6880094
|
||||
-23.384195 25.411491 0 0.119185895 0.6759316 -0.72726285
|
||||
-23.384195 25.411491 -20.000002 0.1260187 0.71467817 -0.6880076
|
||||
-23.68808 25.43808 0 -3.2353347e-07 0.6863721 -0.7272505
|
||||
-23.68808 25.43808 -20.000002 -2.5866314e-07 0.7257114 -0.6879993
|
||||
-23.991962 25.411491 0 -0.11918679 0.6759313 -0.727263
|
||||
-23.991962 25.411491 -20.000002 -0.12602174 0.71469027 -0.6879945
|
||||
-24.286613 25.33254 0 -0.23475067 0.6449771 -0.7272527
|
||||
-24.286613 25.33254 -20.000002 -0.24820411 0.6819363 -0.68800986
|
||||
-24.56308 25.203623 0 -0.3431768 0.5944041 -0.72726434
|
||||
-24.56308 25.203623 -20.000002 -0.362861 0.6284897 -0.6879917
|
||||
-24.812958 25.028656 -20.000002 -0.4664746 0.5559193 -0.6880081
|
||||
-24.812958 25.028656 0 -0.441191 0.5257863 -0.72725457
|
||||
-25.028656 24.812958 0 -0.5257834 0.44118142 -0.72726256
|
||||
-25.028656 24.812958 -20.000002 -0.55592304 0.46647823 -0.6880025
|
||||
-25.203623 24.56308 0 -0.5944156 0.3431862 -0.7272505
|
||||
-25.203623 24.56308 -20.000002 -0.62847704 0.362851 -0.6880084
|
||||
-25.33254 24.286613 0 -0.6449664 0.23475042 -0.7272624
|
||||
-25.33254 24.286613 -20.000002 -0.68191034 0.24821492 -0.68803173
|
||||
-25.411491 23.991962 0 -0.67594075 0.119192 -0.7272533
|
||||
-25.411491 23.991962 -20.000002 -0.71468174 0.1260164 -0.68800426
|
||||
-25.43808 23.68808 0 -0.6863573 1.797363e-07 -0.72726446
|
||||
-25.43808 23.68808 -20.000002 -0.72570145 1.9349584e-07 -0.68800974
|
||||
-25.411491 23.384195 -20.000002 -0.71470344 -0.12601005 -0.687983
|
||||
-25.411491 23.384195 0 -0.675941 -0.11919129 -0.7272532
|
||||
-25.33254 23.089542 -20.000002 -0.6819508 -0.2482107 -0.6879932
|
||||
-25.33254 23.089542 0 -0.6449652 -0.23475127 -0.72726315
|
||||
-25.203623 22.81308 -20.000002 -0.62848943 -0.36285648 -0.6879944
|
||||
-25.203623 22.81308 0 -0.594416 -0.34318548 -0.72725046
|
||||
-25.028656 22.563198 0 -0.52578145 -0.441182 -0.7272636
|
||||
-25.028656 22.563198 -20.000002 -0.55591893 -0.46646464 -0.68801516
|
||||
-24.812958 22.3475 0 -0.44118702 -0.525791 -0.7272536
|
||||
-24.812958 22.3475 -20.000002 -0.46647635 -0.55591714 -0.6880086
|
||||
-24.56308 22.172535 0 -0.34317714 -0.59440374 -0.72726446
|
||||
-24.56308 22.172535 -20.000002 -0.36285383 -0.6284782 -0.688006
|
||||
-24.286613 22.043615 0 -0.23475134 -0.6449755 -0.72725415
|
||||
-24.286613 22.043615 -20.000002 -0.2482054 -0.6819443 -0.6880015
|
||||
-23.991962 21.964666 0 -0.11918593 -0.67593217 -0.72726226
|
||||
-23.991962 21.964666 -20.000002 -0.12601964 -0.7146941 -0.6879908
|
||||
-23.68808 21.938078 0 -2.8104873e-07 -0.6863736 -0.7272491
|
||||
-23.68808 21.938078 -20.000002 -3.1067069e-07 -0.7257102 -0.68800056
|
||||
-23.384195 21.964666 -20.000002 0.1260253 -0.7146767 -0.6880079
|
||||
-23.384195 21.964666 0 0.11918436 -0.6759311 -0.72726357
|
||||
-23.089542 22.043615 0 0.23475184 -0.6449759 -0.72725356
|
||||
-23.089542 22.043615 -20.000002 0.2482034 -0.6819416 -0.688005
|
||||
-22.81308 22.172535 -20.000002 0.36283422 -0.62848043 -0.6880143
|
||||
-22.81308 22.172535 0 0.34317806 -0.59440315 -0.7272646
|
||||
-22.563198 22.3475 0 0.44118777 -0.5257892 -0.7272544
|
||||
-22.563198 22.3475 -20.000002 0.46648157 -0.5559379 -0.6879883
|
||||
-22.3475 22.563198 0 0.52578354 -0.441181 -0.7272626
|
||||
-22.3475 22.563198 -20.000002 0.5558946 -0.4664795 -0.68802476
|
||||
-22.172535 22.81308 -20.000002 0.6284901 -0.36285943 -0.6879923
|
||||
-22.172535 22.81308 0 0.5944157 -0.3431887 -0.72724926
|
||||
-22.043615 23.089542 0 0.6449638 -0.23475057 -0.72726464
|
||||
-22.043615 23.089542 -20.000002 0.6819174 -0.24821095 -0.68802625
|
||||
-21.964666 23.384195 0 0.6759428 -0.119185075 -0.72725254
|
||||
-21.964666 23.384195 -20.000002 0.7146949 -0.12601756 -0.68799037
|
||||
-20.188078 21.667353 4 0.68624145 -0.39620167 0.60999745
|
||||
-23.68808 19.646626 4 1.2940448e-05 -0.79241407 0.6099836
|
||||
-20.188078 21.667353 0 0.686268 -0.39621702 -0.6099576
|
||||
-23.68808 19.646626 0 -1.301988e-05 -0.7924254 -0.6099688
|
||||
-20.188078 25.708803 4 0.6862599 0.39621237 0.6099697
|
||||
-20.188078 25.708803 0 0.6862534 0.39620864 -0.60997945
|
||||
-23.68808 27.72953 4 -1.3000082e-05 0.79241395 0.6099836
|
||||
-23.68808 27.72953 0 1.2950441e-05 0.7924255 -0.60996866
|
||||
-27.18808 25.708803 4 -0.6862553 0.39619443 0.60998654
|
||||
-27.18808 25.708803 0 -0.68625414 0.3962239 -0.6099688
|
||||
-27.18808 21.667353 4 -0.6862463 -0.39621934 0.6099806
|
||||
-27.18808 21.667353 0 -0.6862673 -0.39620152 -0.6099684
|
||||
3 0 1 2
|
||||
3 0 3 1
|
||||
3 4 2 5
|
||||
3 4 0 2
|
||||
3 6 5 7
|
||||
3 6 7 8
|
||||
3 6 4 5
|
||||
3 9 6 8
|
||||
3 10 8 11
|
||||
3 10 9 8
|
||||
3 12 11 13
|
||||
3 12 10 11
|
||||
3 14 13 15
|
||||
3 14 12 13
|
||||
3 16 15 17
|
||||
3 16 14 15
|
||||
3 18 17 19
|
||||
3 18 16 17
|
||||
3 20 19 21
|
||||
3 20 18 19
|
||||
3 22 21 23
|
||||
3 22 20 21
|
||||
3 24 23 25
|
||||
3 24 25 26
|
||||
3 24 22 23
|
||||
3 27 24 26
|
||||
3 28 26 29
|
||||
3 28 27 26
|
||||
3 30 28 29
|
||||
3 30 29 31
|
||||
3 32 30 31
|
||||
3 32 31 33
|
||||
3 34 32 33
|
||||
3 34 33 35
|
||||
3 36 34 35
|
||||
3 36 35 37
|
||||
3 36 37 38
|
||||
3 39 38 40
|
||||
3 39 36 38
|
||||
3 41 40 42
|
||||
3 41 39 40
|
||||
3 43 41 42
|
||||
3 44 42 45
|
||||
3 44 43 42
|
||||
3 46 45 47
|
||||
3 46 44 45
|
||||
3 48 47 49
|
||||
3 48 46 47
|
||||
3 50 49 51
|
||||
3 50 48 49
|
||||
3 52 51 53
|
||||
3 52 50 51
|
||||
3 54 53 55
|
||||
3 54 55 56
|
||||
3 54 52 53
|
||||
3 57 54 56
|
||||
3 58 56 59
|
||||
3 58 59 60
|
||||
3 58 57 56
|
||||
3 61 58 60
|
||||
3 62 60 63
|
||||
3 62 61 60
|
||||
3 64 63 65
|
||||
3 64 65 66
|
||||
3 64 62 63
|
||||
3 67 64 66
|
||||
3 68 67 66
|
||||
3 68 66 69
|
||||
3 70 68 69
|
||||
3 70 69 71
|
||||
3 3 70 71
|
||||
3 3 71 1
|
||||
3 37 35 38
|
||||
3 38 35 40
|
||||
3 55 59 56
|
||||
3 53 63 55
|
||||
3 59 63 60
|
||||
3 55 63 59
|
||||
3 31 29 33
|
||||
3 33 29 35
|
||||
3 45 66 47
|
||||
3 47 66 49
|
||||
3 49 66 51
|
||||
3 51 66 53
|
||||
3 63 66 65
|
||||
3 53 66 63
|
||||
3 26 25 29
|
||||
3 66 71 69
|
||||
3 23 21 25
|
||||
3 71 2 1
|
||||
3 15 13 17
|
||||
3 17 13 19
|
||||
3 2 8 5
|
||||
3 5 8 7
|
||||
3 40 11 42
|
||||
3 42 11 45
|
||||
3 19 11 21
|
||||
3 35 11 40
|
||||
3 45 11 66
|
||||
3 25 11 29
|
||||
3 29 11 35
|
||||
3 66 11 71
|
||||
3 71 11 2
|
||||
3 21 11 25
|
||||
3 2 11 8
|
||||
3 13 11 19
|
||||
3 72 73 74
|
||||
3 74 73 75
|
||||
3 74 76 72
|
||||
3 77 76 74
|
||||
3 78 76 79
|
||||
3 79 76 77
|
||||
3 80 78 81
|
||||
3 81 78 79
|
||||
3 82 80 83
|
||||
3 83 80 81
|
||||
3 73 82 75
|
||||
3 75 82 83
|
||||
3 78 80 82
|
||||
3 76 73 72
|
||||
3 76 82 73
|
||||
3 76 78 82
|
||||
3 83 44 46
|
||||
3 83 43 44
|
||||
3 83 48 75
|
||||
3 46 48 83
|
||||
3 83 41 43
|
||||
3 48 50 75
|
||||
3 50 52 75
|
||||
3 83 39 41
|
||||
3 52 54 75
|
||||
3 83 36 39
|
||||
3 83 81 36
|
||||
3 54 57 75
|
||||
3 81 34 36
|
||||
3 57 58 75
|
||||
3 81 32 34
|
||||
3 58 61 75
|
||||
3 81 30 32
|
||||
3 81 28 30
|
||||
3 81 27 28
|
||||
3 81 24 27
|
||||
3 62 74 61
|
||||
3 64 74 62
|
||||
3 67 74 64
|
||||
3 68 74 67
|
||||
3 70 74 68
|
||||
3 61 74 75
|
||||
3 70 3 74
|
||||
3 14 79 12
|
||||
3 16 79 14
|
||||
3 18 79 16
|
||||
3 20 79 18
|
||||
3 22 79 20
|
||||
3 24 79 22
|
||||
3 81 79 24
|
||||
3 3 77 74
|
||||
3 0 77 3
|
||||
3 79 77 12
|
||||
3 4 77 0
|
||||
3 6 77 4
|
||||
3 9 77 6
|
||||
3 10 77 9
|
||||
3 12 77 10
|
After Width: | Height: | Size: 2.2 KiB |