Example #1
0
def test_json_serialization(urdf_file):
    robot = RobotModel.from_urdf_file(urdf_file)
    with tempfile.TemporaryFile('w+') as f:
        robot.to_json(f)

        f.seek(0)
        robot_copy = RobotModel.from_json(f)

        assert robot_copy.name == 'panda'
        assert len(robot_copy.links) == 12
        assert robot_copy.root.name == 'panda_link0'
Example #2
0
import os
import math

from compas.geometry import Point, Vector, Frame, Circle, Plane, Line
from compas.geometry import Cylinder
from compas.geometry import Transformation
from compas.utilities import pairwise, linspace
from compas.robots import RobotModel

import compas_rhino
from compas_rhino.artists import FrameArtist, LineArtist, CylinderArtist

HERE = os.path.dirname(__file__)
FILE = os.path.join(HERE, 'data', 'robot.json')

robot = RobotModel.from_json(FILE)

# ==============================================================================
# From frame
# ==============================================================================

base_joint = robot.get_joint_by_name('base-shoulder')
frame_from = base_joint.origin

# ==============================================================================
# State
# ==============================================================================

names = robot.get_configurable_joint_names()
values = [+0.25 * math.pi, -0.25 * math.pi, +0.5 * math.pi, 0, +0.25 * math.pi]
state = dict(zip(names, values))