All notable changes to this project will be documented in this file.
The format is based on Keep a Changelog and this project adheres to Semantic Versioning.
- The loader will use the correct working path if used multiple times.
- d.ts definition for
loadAsync
.
- Support for "planar" and "floating" joint types.
- setJointValues function can now take "null" vaues.
- Prismatic joints not moving as expected when there is a non-zero rotation.
- Bump three.js version to 0.152.2.
- Add correct return type definitions for some functions.
- Change use of *BufferGeometry classes to be *Geometry variants.
- Bumped three.js peer dependency version requirement.
- Removed log when modifying "mimic" joints.
- Internal URDF material colors are implicitly converted to Linear colors.
- Types for the loadMeshCb function.
- Typescript definition for "packages" field to include function.
- Reexport URDF Class types from the root file.
URDFJoint.axis
not correctly defaulting to1, 0, 0
.
- Added
"type": "module"
to the package.json and made the main entry file point to the es6 module. - Export URDF Class types as
interafaces
rather thanclasses
. - Changed URDF Class type definitions to be exported as
interface
rather thanclass
.
- Support for "mimic" joints.
- Incorrect mouseover and mouseout event firing with the manipulation element.
- Unnecessary creation of a new quaternion when setting a joint angle.
- Throw a human readable error when fetch fails.
- The model failing to clone if the object names were changed.
- Ability to set the
packages
option to a function.
- Normal bias to shadows in URDFViewerElement.
- Apply the mesh node scale to the parent visual node rather than the loaded mesh.
- URDFViewerElement incorrectly calling setJointValue.
- Incorrectly preserving rotation from loaded meshes.
- Fix
URDFRobot.setJointValues
not always setting all joint values.
URDFRobot.frames
map.URDFRobot.visual
map.URDFRobot.colliders
map.- Visual and collider nodes now get the name of the associated urdf node.
- Typescript definitions for URDFVisual and URDFCollider objects.
setJointValue
function toURDFJoint
andURDFRobot
.getFrame
function toURDFRobot
.
- Transparent materials now set
depthWrite
to false. - Removed
setOffset
,setAngles
, andsetAngle
functions fromURDFJoint
andURDFRobot
.
- Incorrect use of
worldMatrixNeedsUpdate
tomatrixWorldNeedsUpdate
.
- License text in README to remove unnecessary copy.
- Support for processing pre-parsed XML documents to the
parse
function. ADocument
orElement
object as returned fromDOMParser
may be passed in place of the xml string.
- Moved the URDFLoader options to member variables instead of an object paramter to
parse
andload
functions. - Added
onError
andonProgress
callbacks toload
function.
- Incorrect handling of empty "texture" tags that caused materials to display improperly.
- Caltech license copy.
- Typescript definition file for URDFLoader.
- Use the jsm versions of the loader modules from three.js.
- Bump three.js peer dependency to 0.105.0.
- Support for parsing collision nodes.
- Typescript definition files
- Continuous joints not being able to rotate.
- Always parse joint angles to numbers.
- Added
setAngle
andsetAngles
function to the Robot node - Added
meshLoadFunc
andurlModifierFunc
functions toURDFViewer
component.
- Changed
loadMeshCb
function API to takeurl
,manager
, anddone
. - Materials defined as "shared" by name in the URDF are shared among meshes, now.
- The root link is now the same as the URDF Robot object.
- Moved the
packages
parameter to the options object.
- Removed
urdfLoader
andloadingManager
fields fromURDFViewer
component.
matrixWorldNeedsUpdate
is set to true when the URDFJoints are set.
- Scale being overwritten on models that are loaded with pre-set scale values.
- Loader not completing if a mesh could not be loaded.
- URDF XML Node to URDF Joint, Link, and Robot objects
- Add clone functionality
- OnComplete callback now fires once all meshes have loaded
- Removed unnecessary parent when creating a cylinder visual node
- Use buffer variants of Box and Sphere geometry.
- Fix the way that roll, pitch, yaw rotations are applied.
- The root scripts are now es6 import compatible and require a build process to use
- Backward compatible umd versions of the scripts in
/umd
- Support for shared, named materials in the URDF
- Add
no-auto-recenter
field to theurdf-viewer
web component.
- Include
example/styles.css
- README update
- Add "path" variable to parse function signature
- URDF paths are no longer resolved relative to the package path
parse
function signature changedparse
returns the robot nowmeshLoadCb
andfetchOptions
have been moved into anoptions
argument object- Moved all fields from
Object3D.urdf
to the object itself - Changed
type
tojointType
- Add
isURDFRobot
,isURDFJoint
,isURDFLink
fields to the robot, joints, and links - Set the
type
field of theObject3D
toURDFRobot
,URDFJoint
, andURDFLink
node
field from the urdf info on joints, links, and the robot
- Add support for providing multiple package paths
- Debounce urdf load so errors are not printed when changing models
- Create mesh primitives immediately instead of waiting a frame
- Fixed sphere primitives not being added to the model
- Fixed cylinder primitive rotation
- Make element auto redraw whenever a texture loads
- Fix drag and drop file path cleansing in example files
- Fix console error on drag manipulation in manipulation element
- Add urdf-manipulator element for demo
- Fix the example input fields not converting to radians
- Model bounding box is used to make better use of shadow map resolution.
- Fix joint controls still being clickable when hidden
- Rename
joint.urdf.limits
tojoint.urdf.limit
so it lines up with the URDF definition - Full
http://
orfile://
uris are supported (package path is not prepended in this case)
- Render meshes double sided in shadows
- Disable shadows casting on model when the shadow display is disabled
- Do not change the material type provided by the mesh loader to MeshLambertMaterial when setting the colors from the URDF.
- Use a hemisphere light and linear rendering in the element and example
- Enable better shadow rendering
- Change
urdf-viewer
elementup
attribute to default to +Z so it lines up with the default ROS coordinate frame
- Fix the default mesh loader throwing an error because
this
was undefined.
- Add the
auto-redraw
attribute to the urdf-viewer element
- Add
redraw()
function to the viewer element - Add flipped variants of the ATHLETE URDF models
- Update example to start at a nicer viewing angle
- Update some underlying example code
- Optimize rendering in
<urdf-viewer>
- Keep the robot in the middle of the screen in
<urdf-viewer>
- Adjust the the
<urdf-viewer>
up attribute to line up with the default ROS coordinate frame
- Meshes not scaling the by mesh tags
scale
attribute - Revolute joints rotating the wrong direction
- Support for prismatic joints
- Fix not defaulting revolute joint limits to 0