Spaces:
Running
Running
import type IUrdfLink from "./IUrdfLink"; | |
export interface IUrdfJointLimit { | |
lower: number; | |
upper: number; | |
effort: number; | |
velocity: number; | |
} | |
export interface IUrdfJointSafetyController { | |
soft_lower_limit: number; | |
soft_upper_limit: number; | |
} | |
export default interface IUrdfJoint { | |
name?: string; | |
type?: "revolute" | "continuous" | "prismatic" | "fixed" | "floating" | "planar"; | |
// rpy = roll, pitch, yaw (values between -pi and +pi) | |
origin_rpy: [roll: number, pitch: number, yaw: number]; | |
origin_xyz: [x: number, y: number, z: number]; | |
// calculated rotation for non-fixed joints based on origin_rpy and axis_xyz | |
rotation: [x: number, y: number, z: number]; | |
parent: IUrdfLink; | |
child: IUrdfLink; | |
// axis for revolute and continuous joints defaults to (1,0,0) | |
axis_xyz?: [x: number, y: number, z: number]; | |
calibration?: { | |
rising?: number; // Calibration rising value in radians | |
falling?: number; // Calibration falling value in radians | |
}; | |
dynamics?: { | |
damping?: number; | |
friction?: number; | |
}; | |
// only for revolute joints | |
limit?: IUrdfJointLimit; | |
mimic?: { | |
joint: string; | |
multiplier?: number; | |
offset?: number; | |
}; | |
safety_controller?: IUrdfJointSafetyController; | |
elem: Element; | |
} | |