@wandelbots/wandelbots-js-react-components 5.4.2 → 5.5.0-pr.fix-esm-extensions.590.0a9a3ff
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/dist/3d.cjs +2 -0
- package/dist/3d.cjs.map +1 -0
- package/dist/3d.js +31 -0
- package/dist/3d.js.map +1 -0
- package/dist/components/3d-viewport/CoordinateSystemTransform.d.ts +1 -0
- package/dist/components/3d-viewport/CoordinateSystemTransform.d.ts.map +1 -1
- package/dist/components/3d-viewport/PresetEnvironment.cjs +2 -0
- package/dist/components/3d-viewport/PresetEnvironment.cjs.map +1 -0
- package/dist/components/3d-viewport/PresetEnvironment.d.ts +1 -0
- package/dist/components/3d-viewport/PresetEnvironment.d.ts.map +1 -1
- package/dist/components/3d-viewport/PresetEnvironment.js +81 -0
- package/dist/components/3d-viewport/PresetEnvironment.js.map +1 -0
- package/dist/components/3d-viewport/SafetyZonesRenderer.cjs +2 -0
- package/dist/components/3d-viewport/SafetyZonesRenderer.cjs.map +1 -0
- package/dist/components/3d-viewport/SafetyZonesRenderer.d.ts +1 -0
- package/dist/components/3d-viewport/SafetyZonesRenderer.d.ts.map +1 -1
- package/dist/components/3d-viewport/SafetyZonesRenderer.js +131 -0
- package/dist/components/3d-viewport/SafetyZonesRenderer.js.map +1 -0
- package/dist/components/3d-viewport/TrajectoryRenderer.cjs +2 -0
- package/dist/components/3d-viewport/TrajectoryRenderer.cjs.map +1 -0
- package/dist/components/3d-viewport/TrajectoryRenderer.d.ts +1 -0
- package/dist/components/3d-viewport/TrajectoryRenderer.d.ts.map +1 -1
- package/dist/components/3d-viewport/TrajectoryRenderer.js +31 -0
- package/dist/components/3d-viewport/TrajectoryRenderer.js.map +1 -0
- package/dist/components/3d-viewport/collider/ColliderCollection.cjs +2 -0
- package/dist/components/3d-viewport/collider/ColliderCollection.cjs.map +1 -0
- package/dist/components/3d-viewport/collider/ColliderCollection.js +22 -0
- package/dist/components/3d-viewport/collider/ColliderCollection.js.map +1 -0
- package/dist/components/3d-viewport/collider/ColliderElement.cjs +2 -0
- package/dist/components/3d-viewport/collider/ColliderElement.cjs.map +1 -0
- package/dist/components/3d-viewport/collider/ColliderElement.js +29 -0
- package/dist/components/3d-viewport/collider/ColliderElement.js.map +1 -0
- package/dist/components/3d-viewport/collider/CollisionSceneRenderer.cjs +2 -0
- package/dist/components/3d-viewport/collider/CollisionSceneRenderer.cjs.map +1 -0
- package/dist/components/3d-viewport/collider/CollisionSceneRenderer.js +19 -0
- package/dist/components/3d-viewport/collider/CollisionSceneRenderer.js.map +1 -0
- package/dist/components/3d-viewport/collider/colliderShapeToBufferGeometry.cjs +2 -0
- package/dist/components/3d-viewport/collider/colliderShapeToBufferGeometry.cjs.map +1 -0
- package/dist/components/3d-viewport/collider/colliderShapeToBufferGeometry.js +43 -0
- package/dist/components/3d-viewport/collider/colliderShapeToBufferGeometry.js.map +1 -0
- package/dist/components/AppHeader.cjs +2 -0
- package/dist/components/AppHeader.cjs.map +1 -0
- package/dist/components/AppHeader.d.ts +1 -0
- package/dist/components/AppHeader.d.ts.map +1 -1
- package/dist/components/AppHeader.js +139 -0
- package/dist/components/AppHeader.js.map +1 -0
- package/dist/components/ConsoleFilter.cjs +2 -0
- package/dist/components/ConsoleFilter.cjs.map +1 -0
- package/dist/components/ConsoleFilter.js +13 -0
- package/dist/components/ConsoleFilter.js.map +1 -0
- package/dist/components/CopyableText.cjs +2 -0
- package/dist/components/CopyableText.cjs.map +1 -0
- package/dist/components/CopyableText.d.ts +1 -0
- package/dist/components/CopyableText.d.ts.map +1 -1
- package/dist/components/CopyableText.js +71 -0
- package/dist/components/CopyableText.js.map +1 -0
- package/dist/components/CycleTimer/CycleTimer.d.ts +1 -0
- package/dist/components/CycleTimer/CycleTimer.d.ts.map +1 -1
- package/dist/components/CycleTimer/DefaultVariant.cjs +2 -0
- package/dist/components/CycleTimer/DefaultVariant.cjs.map +1 -0
- package/dist/components/CycleTimer/DefaultVariant.js +301 -0
- package/dist/components/CycleTimer/DefaultVariant.js.map +1 -0
- package/dist/components/CycleTimer/SmallVariant.cjs +2 -0
- package/dist/components/CycleTimer/SmallVariant.cjs.map +1 -0
- package/dist/components/CycleTimer/SmallVariant.js +150 -0
- package/dist/components/CycleTimer/SmallVariant.js.map +1 -0
- package/dist/components/CycleTimer/index.cjs +2 -0
- package/dist/components/CycleTimer/index.cjs.map +1 -0
- package/dist/components/CycleTimer/index.d.ts +1 -0
- package/dist/components/CycleTimer/index.d.ts.map +1 -1
- package/dist/components/CycleTimer/index.js +86 -0
- package/dist/components/CycleTimer/index.js.map +1 -0
- package/dist/components/CycleTimer/useAnimations.cjs +2 -0
- package/dist/components/CycleTimer/useAnimations.cjs.map +1 -0
- package/dist/components/CycleTimer/useAnimations.js +105 -0
- package/dist/components/CycleTimer/useAnimations.js.map +1 -0
- package/dist/components/CycleTimer/useTimerLogic.cjs +2 -0
- package/dist/components/CycleTimer/useTimerLogic.cjs.map +1 -0
- package/dist/components/CycleTimer/useTimerLogic.js +191 -0
- package/dist/components/CycleTimer/useTimerLogic.js.map +1 -0
- package/dist/components/CycleTimer/utils.cjs +2 -0
- package/dist/components/CycleTimer/utils.cjs.map +1 -0
- package/dist/components/CycleTimer/utils.js +20 -0
- package/dist/components/CycleTimer/utils.js.map +1 -0
- package/dist/components/CycleTimer.cjs +2 -0
- package/dist/components/CycleTimer.cjs.map +1 -0
- package/dist/components/CycleTimer.d.ts +1 -0
- package/dist/components/CycleTimer.d.ts.map +1 -1
- package/dist/components/CycleTimer.js +6 -0
- package/dist/components/CycleTimer.js.map +1 -0
- package/dist/components/DataGrid.cjs +2 -0
- package/dist/components/DataGrid.cjs.map +1 -0
- package/dist/components/DataGrid.d.ts +1 -0
- package/dist/components/DataGrid.d.ts.map +1 -1
- package/dist/components/DataGrid.js +535 -0
- package/dist/components/DataGrid.js.map +1 -0
- package/dist/components/LoadingCover.cjs +2 -0
- package/dist/components/LoadingCover.cjs.map +1 -0
- package/dist/components/LoadingCover.d.ts +1 -0
- package/dist/components/LoadingCover.d.ts.map +1 -1
- package/dist/components/LoadingCover.js +77 -0
- package/dist/components/LoadingCover.js.map +1 -0
- package/dist/components/LogPanel.cjs +2 -0
- package/dist/components/LogPanel.cjs.map +1 -0
- package/dist/components/LogPanel.d.ts +1 -0
- package/dist/components/LogPanel.d.ts.map +1 -1
- package/dist/components/LogPanel.js +34 -0
- package/dist/components/LogPanel.js.map +1 -0
- package/dist/components/LogStore.cjs +2 -0
- package/dist/components/LogStore.cjs.map +1 -0
- package/dist/components/LogStore.d.ts +1 -0
- package/dist/components/LogStore.d.ts.map +1 -1
- package/dist/components/LogStore.js +33 -0
- package/dist/components/LogStore.js.map +1 -0
- package/dist/components/LogViewer.cjs +2 -0
- package/dist/components/LogViewer.cjs.map +1 -0
- package/dist/components/LogViewer.d.ts +1 -0
- package/dist/components/LogViewer.d.ts.map +1 -1
- package/dist/components/LogViewer.js +299 -0
- package/dist/components/LogViewer.js.map +1 -0
- package/dist/components/ProgramControl.cjs +2 -0
- package/dist/components/ProgramControl.cjs.map +1 -0
- package/dist/components/ProgramControl.d.ts +1 -0
- package/dist/components/ProgramControl.d.ts.map +1 -1
- package/dist/components/ProgramControl.js +147 -0
- package/dist/components/ProgramControl.js.map +1 -0
- package/dist/components/ProgramStateIndicator.cjs +2 -0
- package/dist/components/ProgramStateIndicator.cjs.map +1 -0
- package/dist/components/ProgramStateIndicator.d.ts +1 -0
- package/dist/components/ProgramStateIndicator.d.ts.map +1 -1
- package/dist/components/ProgramStateIndicator.js +140 -0
- package/dist/components/ProgramStateIndicator.js.map +1 -0
- package/dist/components/RobotCard.cjs +2 -0
- package/dist/components/RobotCard.cjs.map +1 -0
- package/dist/components/RobotCard.d.ts +1 -0
- package/dist/components/RobotCard.d.ts.map +1 -1
- package/dist/components/RobotCard.js +360 -0
- package/dist/components/RobotCard.js.map +1 -0
- package/dist/components/RobotListItem.cjs +2 -0
- package/dist/components/RobotListItem.cjs.map +1 -0
- package/dist/components/RobotListItem.d.ts +1 -0
- package/dist/components/RobotListItem.d.ts.map +1 -1
- package/dist/components/RobotListItem.js +122 -0
- package/dist/components/RobotListItem.js.map +1 -0
- package/dist/components/RobotSetupReadinessIndicator.cjs +2 -0
- package/dist/components/RobotSetupReadinessIndicator.cjs.map +1 -0
- package/dist/components/RobotSetupReadinessIndicator.d.ts +1 -0
- package/dist/components/RobotSetupReadinessIndicator.d.ts.map +1 -1
- package/dist/components/RobotSetupReadinessIndicator.js +122 -0
- package/dist/components/RobotSetupReadinessIndicator.js.map +1 -0
- package/dist/components/SelectableFab.cjs +2 -0
- package/dist/components/SelectableFab.cjs.map +1 -0
- package/dist/components/SelectableFab.d.ts +1 -1
- package/dist/components/SelectableFab.d.ts.map +1 -1
- package/dist/components/SelectableFab.js +51 -0
- package/dist/components/SelectableFab.js.map +1 -0
- package/dist/components/TabBar.cjs +2 -0
- package/dist/components/TabBar.cjs.map +1 -0
- package/dist/components/TabBar.d.ts +1 -0
- package/dist/components/TabBar.d.ts.map +1 -1
- package/dist/components/TabBar.js +212 -0
- package/dist/components/TabBar.js.map +1 -0
- package/dist/components/ThemeSelect.d.ts +1 -1
- package/dist/components/ThemeSelect.d.ts.map +1 -1
- package/dist/components/Timer/Timer.d.ts +1 -0
- package/dist/components/Timer/Timer.d.ts.map +1 -1
- package/dist/components/Timer/TimerDefaultVariant.cjs +2 -0
- package/dist/components/Timer/TimerDefaultVariant.cjs.map +1 -0
- package/dist/components/Timer/TimerDefaultVariant.js +136 -0
- package/dist/components/Timer/TimerDefaultVariant.js.map +1 -0
- package/dist/components/Timer/TimerSmallVariant.cjs +2 -0
- package/dist/components/Timer/TimerSmallVariant.cjs.map +1 -0
- package/dist/components/Timer/TimerSmallVariant.js +128 -0
- package/dist/components/Timer/TimerSmallVariant.js.map +1 -0
- package/dist/components/Timer/index.cjs +2 -0
- package/dist/components/Timer/index.cjs.map +1 -0
- package/dist/components/Timer/index.d.ts +1 -0
- package/dist/components/Timer/index.d.ts.map +1 -1
- package/dist/components/Timer/index.js +68 -0
- package/dist/components/Timer/index.js.map +1 -0
- package/dist/components/Timer/useTimerAnimations.cjs +2 -0
- package/dist/components/Timer/useTimerAnimations.cjs.map +1 -0
- package/dist/components/Timer/useTimerAnimations.js +48 -0
- package/dist/components/Timer/useTimerAnimations.js.map +1 -0
- package/dist/components/Timer/useTimerLogic.cjs +2 -0
- package/dist/components/Timer/useTimerLogic.cjs.map +1 -0
- package/dist/components/Timer/useTimerLogic.js +113 -0
- package/dist/components/Timer/useTimerLogic.js.map +1 -0
- package/dist/components/Timer/utils.cjs +2 -0
- package/dist/components/Timer/utils.cjs.map +1 -0
- package/dist/components/Timer/utils.js +19 -0
- package/dist/components/Timer/utils.js.map +1 -0
- package/dist/components/Timer.cjs +2 -0
- package/dist/components/Timer.cjs.map +1 -0
- package/dist/components/Timer.d.ts +4 -0
- package/dist/components/Timer.d.ts.map +1 -0
- package/dist/components/Timer.js +6 -0
- package/dist/components/Timer.js.map +1 -0
- package/dist/components/TransparentOverlay.d.ts +1 -0
- package/dist/components/TransparentOverlay.d.ts.map +1 -1
- package/dist/components/VelocitySlider.cjs +2 -0
- package/dist/components/VelocitySlider.cjs.map +1 -0
- package/dist/components/VelocitySlider.d.ts +1 -1
- package/dist/components/VelocitySlider.d.ts.map +1 -1
- package/dist/components/VelocitySlider.js +97 -0
- package/dist/components/VelocitySlider.js.map +1 -0
- package/dist/components/experimental/utils/AdornedSelect.cjs +2 -0
- package/dist/components/experimental/utils/AdornedSelect.cjs.map +1 -0
- package/dist/components/experimental/utils/AdornedSelect.js +35 -0
- package/dist/components/experimental/utils/AdornedSelect.js.map +1 -0
- package/dist/components/jogging/JoggingBlocked.cjs +2 -0
- package/dist/components/jogging/JoggingBlocked.cjs.map +1 -0
- package/dist/components/jogging/JoggingBlocked.js +46 -0
- package/dist/components/jogging/JoggingBlocked.js.map +1 -0
- package/dist/components/jogging/JoggingCartesianAxisControl.cjs +2 -0
- package/dist/components/jogging/JoggingCartesianAxisControl.cjs.map +1 -0
- package/dist/components/jogging/JoggingCartesianAxisControl.d.ts +1 -1
- package/dist/components/jogging/JoggingCartesianAxisControl.d.ts.map +1 -1
- package/dist/components/jogging/JoggingCartesianAxisControl.js +186 -0
- package/dist/components/jogging/JoggingCartesianAxisControl.js.map +1 -0
- package/dist/components/jogging/JoggingCartesianTab.cjs +2 -0
- package/dist/components/jogging/JoggingCartesianTab.cjs.map +1 -0
- package/dist/components/jogging/JoggingCartesianTab.js +267 -0
- package/dist/components/jogging/JoggingCartesianTab.js.map +1 -0
- package/dist/components/jogging/JoggingJointLimitDetector.cjs +2 -0
- package/dist/components/jogging/JoggingJointLimitDetector.cjs.map +1 -0
- package/dist/components/jogging/JoggingJointLimitDetector.js +42 -0
- package/dist/components/jogging/JoggingJointLimitDetector.js.map +1 -0
- package/dist/components/jogging/JoggingJointTab.cjs +2 -0
- package/dist/components/jogging/JoggingJointTab.cjs.map +1 -0
- package/dist/components/jogging/JoggingJointTab.js +114 -0
- package/dist/components/jogging/JoggingJointTab.js.map +1 -0
- package/dist/components/jogging/JoggingJointValueControl.cjs +2 -0
- package/dist/components/jogging/JoggingJointValueControl.cjs.map +1 -0
- package/dist/components/jogging/JoggingJointValueControl.d.ts +1 -1
- package/dist/components/jogging/JoggingJointValueControl.d.ts.map +1 -1
- package/dist/components/jogging/JoggingJointValueControl.js +240 -0
- package/dist/components/jogging/JoggingJointValueControl.js.map +1 -0
- package/dist/components/jogging/JoggingOptions.cjs +2 -0
- package/dist/components/jogging/JoggingOptions.cjs.map +1 -0
- package/dist/components/jogging/JoggingOptions.js +117 -0
- package/dist/components/jogging/JoggingOptions.js.map +1 -0
- package/dist/components/jogging/JoggingPanel.cjs +2 -0
- package/dist/components/jogging/JoggingPanel.cjs.map +1 -0
- package/dist/components/jogging/JoggingPanel.d.ts +1 -0
- package/dist/components/jogging/JoggingPanel.d.ts.map +1 -1
- package/dist/components/jogging/JoggingPanel.js +121 -0
- package/dist/components/jogging/JoggingPanel.js.map +1 -0
- package/dist/components/jogging/JoggingStore.cjs +2 -0
- package/dist/components/jogging/JoggingStore.cjs.map +1 -0
- package/dist/components/jogging/JoggingStore.d.ts +1 -1
- package/dist/components/jogging/JoggingStore.d.ts.map +1 -1
- package/dist/components/jogging/JoggingStore.js +219 -0
- package/dist/components/jogging/JoggingStore.js.map +1 -0
- package/dist/components/jogging/JoggingToggleButtonGroup.cjs +2 -0
- package/dist/components/jogging/JoggingToggleButtonGroup.cjs.map +1 -0
- package/dist/components/jogging/JoggingToggleButtonGroup.js +29 -0
- package/dist/components/jogging/JoggingToggleButtonGroup.js.map +1 -0
- package/dist/components/jogging/JoggingVelocitySlider.cjs +2 -0
- package/dist/components/jogging/JoggingVelocitySlider.cjs.map +1 -0
- package/dist/components/jogging/JoggingVelocitySlider.js +40 -0
- package/dist/components/jogging/JoggingVelocitySlider.js.map +1 -0
- package/dist/components/jogging/PoseCartesianValues.cjs +2 -0
- package/dist/components/jogging/PoseCartesianValues.cjs.map +1 -0
- package/dist/components/jogging/PoseCartesianValues.d.ts +1 -0
- package/dist/components/jogging/PoseCartesianValues.d.ts.map +1 -1
- package/dist/components/jogging/PoseCartesianValues.js +48 -0
- package/dist/components/jogging/PoseCartesianValues.js.map +1 -0
- package/dist/components/jogging/PoseJointValues.cjs +2 -0
- package/dist/components/jogging/PoseJointValues.cjs.map +1 -0
- package/dist/components/jogging/PoseJointValues.d.ts +1 -0
- package/dist/components/jogging/PoseJointValues.d.ts.map +1 -1
- package/dist/components/jogging/PoseJointValues.js +47 -0
- package/dist/components/jogging/PoseJointValues.js.map +1 -0
- package/dist/components/modal/NoMotionGroupModal.cjs +2 -0
- package/dist/components/modal/NoMotionGroupModal.cjs.map +1 -0
- package/dist/components/modal/NoMotionGroupModal.d.ts +1 -0
- package/dist/components/modal/NoMotionGroupModal.d.ts.map +1 -1
- package/dist/components/modal/NoMotionGroupModal.js +92 -0
- package/dist/components/modal/NoMotionGroupModal.js.map +1 -0
- package/dist/components/robots/AxisConfig.cjs +2 -0
- package/dist/components/robots/AxisConfig.cjs.map +1 -0
- package/dist/components/robots/AxisConfig.js +5 -0
- package/dist/components/robots/AxisConfig.js.map +1 -0
- package/dist/components/robots/DHLinearAxis.cjs +2 -0
- package/dist/components/robots/DHLinearAxis.cjs.map +1 -0
- package/dist/components/robots/DHLinearAxis.d.ts +1 -0
- package/dist/components/robots/DHLinearAxis.d.ts.map +1 -1
- package/dist/components/robots/DHLinearAxis.js +92 -0
- package/dist/components/robots/DHLinearAxis.js.map +1 -0
- package/dist/components/robots/DHRobot.cjs +2 -0
- package/dist/components/robots/DHRobot.cjs.map +1 -0
- package/dist/components/robots/DHRobot.d.ts +1 -0
- package/dist/components/robots/DHRobot.d.ts.map +1 -1
- package/dist/components/robots/DHRobot.js +94 -0
- package/dist/components/robots/DHRobot.js.map +1 -0
- package/dist/components/robots/GenericRobot.cjs +2 -0
- package/dist/components/robots/GenericRobot.cjs.map +1 -0
- package/dist/components/robots/GenericRobot.d.ts +1 -0
- package/dist/components/robots/GenericRobot.d.ts.map +1 -1
- package/dist/components/robots/GenericRobot.js +91 -0
- package/dist/components/robots/GenericRobot.js.map +1 -0
- package/dist/components/robots/LinearAxis.cjs +2 -0
- package/dist/components/robots/LinearAxis.cjs.map +1 -0
- package/dist/components/robots/LinearAxis.d.ts +1 -0
- package/dist/components/robots/LinearAxis.d.ts.map +1 -1
- package/dist/components/robots/LinearAxis.js +42 -0
- package/dist/components/robots/LinearAxis.js.map +1 -0
- package/dist/components/robots/LinearAxisAnimator.cjs +2 -0
- package/dist/components/robots/LinearAxisAnimator.cjs.map +1 -0
- package/dist/components/robots/LinearAxisAnimator.js +66 -0
- package/dist/components/robots/LinearAxisAnimator.js.map +1 -0
- package/dist/components/robots/MotionGroupVisualizer.cjs +2 -0
- package/dist/components/robots/MotionGroupVisualizer.cjs.map +1 -0
- package/dist/components/robots/MotionGroupVisualizer.d.ts +1 -0
- package/dist/components/robots/MotionGroupVisualizer.d.ts.map +1 -1
- package/dist/components/robots/MotionGroupVisualizer.js +21 -0
- package/dist/components/robots/MotionGroupVisualizer.js.map +1 -0
- package/dist/components/robots/Robot.cjs +2 -0
- package/dist/components/robots/Robot.cjs.map +1 -0
- package/dist/components/robots/Robot.d.ts +1 -0
- package/dist/components/robots/Robot.d.ts.map +1 -1
- package/dist/components/robots/Robot.js +31 -0
- package/dist/components/robots/Robot.js.map +1 -0
- package/dist/components/robots/RobotAnimator.cjs +2 -0
- package/dist/components/robots/RobotAnimator.cjs.map +1 -0
- package/dist/components/robots/RobotAnimator.js +66 -0
- package/dist/components/robots/RobotAnimator.js.map +1 -0
- package/dist/components/robots/SupportedLinearAxis.cjs +2 -0
- package/dist/components/robots/SupportedLinearAxis.cjs.map +1 -0
- package/dist/components/robots/SupportedLinearAxis.d.ts +1 -0
- package/dist/components/robots/SupportedLinearAxis.d.ts.map +1 -1
- package/dist/components/robots/SupportedLinearAxis.js +82 -0
- package/dist/components/robots/SupportedLinearAxis.js.map +1 -0
- package/dist/components/robots/SupportedRobot.cjs +2 -0
- package/dist/components/robots/SupportedRobot.cjs.map +1 -0
- package/dist/components/robots/SupportedRobot.d.ts +1 -0
- package/dist/components/robots/SupportedRobot.d.ts.map +1 -1
- package/dist/components/robots/SupportedRobot.js +82 -0
- package/dist/components/robots/SupportedRobot.js.map +1 -0
- package/dist/components/robots/ghostStyle.cjs +2 -0
- package/dist/components/robots/ghostStyle.cjs.map +1 -0
- package/dist/components/robots/ghostStyle.js +40 -0
- package/dist/components/robots/ghostStyle.js.map +1 -0
- package/dist/components/robots/manufacturerHomePositions.cjs +2 -0
- package/dist/components/robots/manufacturerHomePositions.cjs.map +1 -0
- package/dist/components/robots/manufacturerHomePositions.js +51 -0
- package/dist/components/robots/manufacturerHomePositions.js.map +1 -0
- package/dist/components/robots/robotModelLogic.cjs +2 -0
- package/dist/components/robots/robotModelLogic.cjs.map +1 -0
- package/dist/components/robots/robotModelLogic.js +61 -0
- package/dist/components/robots/robotModelLogic.js.map +1 -0
- package/dist/components/safetyBar/ControllerTypeIndicator.cjs +2 -0
- package/dist/components/safetyBar/ControllerTypeIndicator.cjs.map +1 -0
- package/dist/components/safetyBar/ControllerTypeIndicator.d.ts +1 -1
- package/dist/components/safetyBar/ControllerTypeIndicator.d.ts.map +1 -1
- package/dist/components/safetyBar/ControllerTypeIndicator.js +71 -0
- package/dist/components/safetyBar/ControllerTypeIndicator.js.map +1 -0
- package/dist/components/safetyBar/IndicatorWithExplanation.cjs +2 -0
- package/dist/components/safetyBar/IndicatorWithExplanation.cjs.map +1 -0
- package/dist/components/safetyBar/IndicatorWithExplanation.d.ts +1 -0
- package/dist/components/safetyBar/IndicatorWithExplanation.d.ts.map +1 -1
- package/dist/components/safetyBar/IndicatorWithExplanation.js +123 -0
- package/dist/components/safetyBar/IndicatorWithExplanation.js.map +1 -0
- package/dist/components/safetyBar/OperationModeIndicator.cjs +2 -0
- package/dist/components/safetyBar/OperationModeIndicator.cjs.map +1 -0
- package/dist/components/safetyBar/OperationModeIndicator.d.ts +1 -1
- package/dist/components/safetyBar/OperationModeIndicator.d.ts.map +1 -1
- package/dist/components/safetyBar/OperationModeIndicator.js +75 -0
- package/dist/components/safetyBar/OperationModeIndicator.js.map +1 -0
- package/dist/components/safetyBar/SafetyBar.cjs +2 -0
- package/dist/components/safetyBar/SafetyBar.cjs.map +1 -0
- package/dist/components/safetyBar/SafetyBar.d.ts +1 -0
- package/dist/components/safetyBar/SafetyBar.d.ts.map +1 -1
- package/dist/components/safetyBar/SafetyBar.js +66 -0
- package/dist/components/safetyBar/SafetyBar.js.map +1 -0
- package/dist/components/safetyBar/SafetyStateIndicator.cjs +2 -0
- package/dist/components/safetyBar/SafetyStateIndicator.cjs.map +1 -0
- package/dist/components/safetyBar/SafetyStateIndicator.d.ts +1 -1
- package/dist/components/safetyBar/SafetyStateIndicator.d.ts.map +1 -1
- package/dist/components/safetyBar/SafetyStateIndicator.js +126 -0
- package/dist/components/safetyBar/SafetyStateIndicator.js.map +1 -0
- package/dist/components/safetyBar/icons/controller-type-physical.svg.cjs +2 -0
- package/dist/components/safetyBar/icons/controller-type-physical.svg.cjs.map +1 -0
- package/dist/components/safetyBar/icons/controller-type-physical.svg.d.ts +3 -0
- package/dist/components/safetyBar/icons/controller-type-physical.svg.js +11 -0
- package/dist/components/safetyBar/icons/controller-type-physical.svg.js.map +1 -0
- package/dist/components/safetyBar/icons/controller-type-virtual.svg.cjs +2 -0
- package/dist/components/safetyBar/icons/controller-type-virtual.svg.cjs.map +1 -0
- package/dist/components/safetyBar/icons/controller-type-virtual.svg.d.ts +3 -0
- package/dist/components/safetyBar/icons/controller-type-virtual.svg.js +11 -0
- package/dist/components/safetyBar/icons/controller-type-virtual.svg.js.map +1 -0
- package/dist/components/safetyBar/icons/operation-mode-automatic.svg.cjs +2 -0
- package/dist/components/safetyBar/icons/operation-mode-automatic.svg.cjs.map +1 -0
- package/dist/components/safetyBar/icons/operation-mode-automatic.svg.d.ts +3 -0
- package/dist/components/safetyBar/icons/operation-mode-automatic.svg.js +11 -0
- package/dist/components/safetyBar/icons/operation-mode-automatic.svg.js.map +1 -0
- package/dist/components/safetyBar/icons/operation-mode-error.svg.cjs +2 -0
- package/dist/components/safetyBar/icons/operation-mode-error.svg.cjs.map +1 -0
- package/dist/components/safetyBar/icons/operation-mode-error.svg.d.ts +3 -0
- package/dist/components/safetyBar/icons/operation-mode-error.svg.js +11 -0
- package/dist/components/safetyBar/icons/operation-mode-error.svg.js.map +1 -0
- package/dist/components/safetyBar/icons/operation-mode-manual.svg.cjs +2 -0
- package/dist/components/safetyBar/icons/operation-mode-manual.svg.cjs.map +1 -0
- package/dist/components/safetyBar/icons/operation-mode-manual.svg.d.ts +3 -0
- package/dist/components/safetyBar/icons/operation-mode-manual.svg.js +11 -0
- package/dist/components/safetyBar/icons/operation-mode-manual.svg.js.map +1 -0
- package/dist/components/safetyBar/icons/safety-state-error.svg.cjs +2 -0
- package/dist/components/safetyBar/icons/safety-state-error.svg.cjs.map +1 -0
- package/dist/components/safetyBar/icons/safety-state-error.svg.d.ts +3 -0
- package/dist/components/safetyBar/icons/safety-state-error.svg.js +11 -0
- package/dist/components/safetyBar/icons/safety-state-error.svg.js.map +1 -0
- package/dist/components/safetyBar/icons/safety-state-estop.svg.cjs +2 -0
- package/dist/components/safetyBar/icons/safety-state-estop.svg.cjs.map +1 -0
- package/dist/components/safetyBar/icons/safety-state-estop.svg.d.ts +3 -0
- package/dist/components/safetyBar/icons/safety-state-estop.svg.js +11 -0
- package/dist/components/safetyBar/icons/safety-state-estop.svg.js.map +1 -0
- package/dist/components/safetyBar/icons/safety-state-manual-action-required.svg.cjs +2 -0
- package/dist/components/safetyBar/icons/safety-state-manual-action-required.svg.cjs.map +1 -0
- package/dist/components/safetyBar/icons/safety-state-manual-action-required.svg.d.ts +3 -0
- package/dist/components/safetyBar/icons/safety-state-manual-action-required.svg.js +11 -0
- package/dist/components/safetyBar/icons/safety-state-manual-action-required.svg.js.map +1 -0
- package/dist/components/safetyBar/icons/safety-state-normal.svg.cjs +2 -0
- package/dist/components/safetyBar/icons/safety-state-normal.svg.cjs.map +1 -0
- package/dist/components/safetyBar/icons/safety-state-normal.svg.d.ts +3 -0
- package/dist/components/safetyBar/icons/safety-state-normal.svg.js +11 -0
- package/dist/components/safetyBar/icons/safety-state-normal.svg.js.map +1 -0
- package/dist/components/safetyBar/icons/safety-state-stop.svg.cjs +2 -0
- package/dist/components/safetyBar/icons/safety-state-stop.svg.cjs.map +1 -0
- package/dist/components/safetyBar/icons/safety-state-stop.svg.d.ts +3 -0
- package/dist/components/safetyBar/icons/safety-state-stop.svg.js +11 -0
- package/dist/components/safetyBar/icons/safety-state-stop.svg.js.map +1 -0
- package/dist/components/utils/converters.cjs +2 -0
- package/dist/components/utils/converters.cjs.map +1 -0
- package/dist/components/utils/converters.js +40 -0
- package/dist/components/utils/converters.js.map +1 -0
- package/dist/components/utils/errorHandling.cjs +2 -0
- package/dist/components/utils/errorHandling.cjs.map +1 -0
- package/dist/components/utils/errorHandling.js +14 -0
- package/dist/components/utils/errorHandling.js.map +1 -0
- package/dist/components/utils/hooks.cjs +2 -0
- package/dist/components/utils/hooks.cjs.map +1 -0
- package/dist/components/utils/hooks.js +29 -0
- package/dist/components/utils/hooks.js.map +1 -0
- package/dist/components/utils/interpolation.cjs +2 -0
- package/dist/components/utils/interpolation.cjs.map +1 -0
- package/dist/components/utils/interpolation.js +138 -0
- package/dist/components/utils/interpolation.js.map +1 -0
- package/dist/core.cjs +2 -0
- package/dist/core.cjs.map +1 -0
- package/dist/core.js +81 -0
- package/dist/core.js.map +1 -0
- package/dist/externalizeComponent.cjs +2 -0
- package/dist/externalizeComponent.cjs.map +1 -0
- package/dist/externalizeComponent.js +13 -0
- package/dist/externalizeComponent.js.map +1 -0
- package/dist/i18n/config.cjs +2 -0
- package/dist/i18n/config.cjs.map +1 -0
- package/dist/i18n/config.js +25 -0
- package/dist/i18n/config.js.map +1 -0
- package/dist/i18n/locales/de/translations.json.cjs +3 -0
- package/dist/i18n/locales/de/translations.json.cjs.map +1 -0
- package/dist/i18n/locales/de/translations.json.js +94 -0
- package/dist/i18n/locales/de/translations.json.js.map +1 -0
- package/dist/i18n/locales/en/translations.json.cjs +2 -0
- package/dist/i18n/locales/en/translations.json.cjs.map +1 -0
- package/dist/i18n/locales/en/translations.json.js +94 -0
- package/dist/i18n/locales/en/translations.json.js.map +1 -0
- package/dist/icons/DropdownArrowIcon.cjs +2 -0
- package/dist/icons/DropdownArrowIcon.cjs.map +1 -0
- package/dist/icons/DropdownArrowIcon.js +14 -0
- package/dist/icons/DropdownArrowIcon.js.map +1 -0
- package/dist/icons/axis-x.svg.cjs +2 -0
- package/dist/icons/axis-x.svg.cjs.map +1 -0
- package/dist/icons/axis-x.svg.d.ts +3 -0
- package/dist/icons/axis-x.svg.js +11 -0
- package/dist/icons/axis-x.svg.js.map +1 -0
- package/dist/icons/axis-y.svg.cjs +2 -0
- package/dist/icons/axis-y.svg.cjs.map +1 -0
- package/dist/icons/axis-y.svg.d.ts +3 -0
- package/dist/icons/axis-y.svg.js +11 -0
- package/dist/icons/axis-y.svg.js.map +1 -0
- package/dist/icons/axis-z.svg.cjs +2 -0
- package/dist/icons/axis-z.svg.cjs.map +1 -0
- package/dist/icons/axis-z.svg.d.ts +3 -0
- package/dist/icons/axis-z.svg.js +11 -0
- package/dist/icons/axis-z.svg.js.map +1 -0
- package/dist/icons/home.svg.cjs +2 -0
- package/dist/icons/home.svg.cjs.map +1 -0
- package/dist/icons/home.svg.d.ts +3 -0
- package/dist/icons/home.svg.js +11 -0
- package/dist/icons/home.svg.js.map +1 -0
- package/dist/icons/jog-minus.svg.cjs +2 -0
- package/dist/icons/jog-minus.svg.cjs.map +1 -0
- package/dist/icons/jog-minus.svg.d.ts +3 -0
- package/dist/icons/jog-minus.svg.js +11 -0
- package/dist/icons/jog-minus.svg.js.map +1 -0
- package/dist/icons/jog-plus.svg.cjs +2 -0
- package/dist/icons/jog-plus.svg.cjs.map +1 -0
- package/dist/icons/jog-plus.svg.d.ts +3 -0
- package/dist/icons/jog-plus.svg.js +11 -0
- package/dist/icons/jog-plus.svg.js.map +1 -0
- package/dist/icons/jogging.svg.cjs +2 -0
- package/dist/icons/jogging.svg.cjs.map +1 -0
- package/dist/icons/jogging.svg.d.ts +3 -0
- package/dist/icons/jogging.svg.js +11 -0
- package/dist/icons/jogging.svg.js.map +1 -0
- package/dist/icons/orientation-coord-system.svg.cjs +2 -0
- package/dist/icons/orientation-coord-system.svg.cjs.map +1 -0
- package/dist/icons/orientation-coord-system.svg.d.ts +3 -0
- package/dist/icons/orientation-coord-system.svg.js +11 -0
- package/dist/icons/orientation-coord-system.svg.js.map +1 -0
- package/dist/icons/orientation-tool.svg.cjs +2 -0
- package/dist/icons/orientation-tool.svg.cjs.map +1 -0
- package/dist/icons/orientation-tool.svg.d.ts +3 -0
- package/dist/icons/orientation-tool.svg.js +11 -0
- package/dist/icons/orientation-tool.svg.js.map +1 -0
- package/dist/icons/robot.svg.cjs +2 -0
- package/dist/icons/robot.svg.cjs.map +1 -0
- package/dist/icons/robot.svg.d.ts +3 -0
- package/dist/icons/robot.svg.js +11 -0
- package/dist/icons/robot.svg.js.map +1 -0
- package/dist/icons/rotation.svg.cjs +2 -0
- package/dist/icons/rotation.svg.cjs.map +1 -0
- package/dist/icons/rotation.svg.d.ts +3 -0
- package/dist/icons/rotation.svg.js +11 -0
- package/dist/icons/rotation.svg.js.map +1 -0
- package/dist/icons/wbLogo.svg.cjs +2 -0
- package/dist/icons/wbLogo.svg.cjs.map +1 -0
- package/dist/icons/wbLogo.svg.d.ts +3 -0
- package/dist/icons/wbLogo.svg.js +11 -0
- package/dist/icons/wbLogo.svg.js.map +1 -0
- package/dist/index.cjs +2 -0
- package/dist/index.cjs.map +1 -0
- package/dist/index.js +153 -0
- package/dist/index.js.map +1 -0
- package/dist/lib/ConnectedMotionGroup.cjs +4 -0
- package/dist/lib/ConnectedMotionGroup.cjs.map +1 -0
- package/dist/lib/ConnectedMotionGroup.d.ts +1 -0
- package/dist/lib/ConnectedMotionGroup.d.ts.map +1 -1
- package/dist/lib/ConnectedMotionGroup.js +250 -0
- package/dist/lib/ConnectedMotionGroup.js.map +1 -0
- package/dist/lib/JoggerConnection.cjs +2 -0
- package/dist/lib/JoggerConnection.cjs.map +1 -0
- package/dist/lib/JoggerConnection.d.ts +1 -0
- package/dist/lib/JoggerConnection.d.ts.map +1 -1
- package/dist/lib/JoggerConnection.js +342 -0
- package/dist/lib/JoggerConnection.js.map +1 -0
- package/dist/lib/MotionStreamConnection.cjs +3 -0
- package/dist/lib/MotionStreamConnection.cjs.map +1 -0
- package/dist/lib/MotionStreamConnection.d.ts +1 -0
- package/dist/lib/MotionStreamConnection.d.ts.map +1 -1
- package/dist/lib/MotionStreamConnection.js +94 -0
- package/dist/lib/MotionStreamConnection.js.map +1 -0
- package/dist/lib/motionStateUpdate.cjs +2 -0
- package/dist/lib/motionStateUpdate.cjs.map +1 -0
- package/dist/lib/motionStateUpdate.js +49 -0
- package/dist/lib/motionStateUpdate.js.map +1 -0
- package/dist/test/consumer.test.d.ts +2 -0
- package/dist/test/consumer.test.d.ts.map +1 -0
- package/dist/themes/createDarkTheme.cjs +2 -0
- package/dist/themes/createDarkTheme.cjs.map +1 -0
- package/dist/themes/createDarkTheme.js +344 -0
- package/dist/themes/createDarkTheme.js.map +1 -0
- package/dist/themes/createLightTheme.cjs +2 -0
- package/dist/themes/createLightTheme.cjs.map +1 -0
- package/dist/themes/createLightTheme.js +9 -0
- package/dist/themes/createLightTheme.js.map +1 -0
- package/dist/themes/theming.cjs +2 -0
- package/dist/themes/theming.cjs.map +1 -0
- package/dist/themes/theming.js +14 -0
- package/dist/themes/theming.js.map +1 -0
- package/dist/wb-icons.cjs +2 -0
- package/dist/wb-icons.cjs.map +1 -0
- package/dist/wb-icons.js +47 -0
- package/dist/wb-icons.js.map +1 -0
- package/package.json +20 -9
- package/src/components/3d-viewport/CoordinateSystemTransform.tsx +2 -0
- package/src/components/3d-viewport/PresetEnvironment.tsx +2 -0
- package/src/components/3d-viewport/SafetyZonesRenderer.tsx +2 -0
- package/src/components/3d-viewport/TrajectoryRenderer.tsx +2 -0
- package/src/components/AppHeader.tsx +2 -0
- package/src/components/CopyableText.tsx +2 -0
- package/src/components/CycleTimer/CycleTimer.ts +2 -0
- package/src/components/CycleTimer/index.tsx +2 -0
- package/src/components/CycleTimer.tsx +2 -0
- package/src/components/DataGrid.tsx +2 -0
- package/src/components/LoadingCover.tsx +2 -0
- package/src/components/LogPanel.tsx +2 -0
- package/src/components/LogStore.ts +2 -0
- package/src/components/LogViewer.tsx +2 -0
- package/src/components/ProgramControl.tsx +2 -0
- package/src/components/ProgramStateIndicator.tsx +2 -0
- package/src/components/RobotCard.tsx +2 -0
- package/src/components/RobotListItem.tsx +2 -0
- package/src/components/RobotSetupReadinessIndicator.tsx +2 -0
- package/src/components/SelectableFab.tsx +2 -0
- package/src/components/TabBar.tsx +2 -0
- package/src/components/ThemeSelect.tsx +4 -2
- package/src/components/Timer/Timer.ts +2 -0
- package/src/components/Timer/index.tsx +2 -0
- package/src/components/Timer.ts +4 -0
- package/src/components/TransparentOverlay.tsx +2 -0
- package/src/components/VelocitySlider.tsx +5 -3
- package/src/components/jogging/JoggingCartesianAxisControl.tsx +2 -0
- package/src/components/jogging/JoggingJointLimitDetector.tsx +1 -1
- package/src/components/jogging/JoggingJointValueControl.tsx +5 -3
- package/src/components/jogging/JoggingPanel.tsx +2 -0
- package/src/components/jogging/JoggingStore.ts +4 -2
- package/src/components/jogging/PoseCartesianValues.tsx +2 -0
- package/src/components/jogging/PoseJointValues.tsx +2 -0
- package/src/components/modal/NoMotionGroupModal.tsx +2 -0
- package/src/components/robots/DHLinearAxis.tsx +2 -0
- package/src/components/robots/DHRobot.tsx +2 -0
- package/src/components/robots/GenericRobot.tsx +2 -0
- package/src/components/robots/LinearAxis.tsx +2 -0
- package/src/components/robots/MotionGroupVisualizer.tsx +2 -0
- package/src/components/robots/Robot.tsx +2 -0
- package/src/components/robots/SupportedLinearAxis.tsx +2 -0
- package/src/components/robots/SupportedRobot.tsx +2 -0
- package/src/components/safetyBar/ControllerTypeIndicator.tsx +2 -0
- package/src/components/safetyBar/IndicatorWithExplanation.tsx +2 -0
- package/src/components/safetyBar/OperationModeIndicator.tsx +2 -0
- package/src/components/safetyBar/SafetyBar.tsx +2 -0
- package/src/components/safetyBar/SafetyStateIndicator.tsx +2 -0
- package/src/lib/ConnectedMotionGroup.ts +2 -0
- package/src/lib/JoggerConnection.ts +2 -0
- package/src/lib/MotionStreamConnection.ts +2 -0
- package/src/test/consumer.test.ts +257 -0
- package/dist/3d.cjs.js +0 -2
- package/dist/3d.cjs.js.map +0 -1
- package/dist/3d.es.js +0 -19
- package/dist/3d.es.js.map +0 -1
- package/dist/MotionGroupVisualizer-B-e22qXF.cjs +0 -2
- package/dist/MotionGroupVisualizer-B-e22qXF.cjs.map +0 -1
- package/dist/MotionGroupVisualizer-CIASsBC6.js +0 -1433
- package/dist/MotionGroupVisualizer-CIASsBC6.js.map +0 -1
- package/dist/auth0-spa-js.production.esm-CVEdrQ4-.cjs +0 -5
- package/dist/auth0-spa-js.production.esm-CVEdrQ4-.cjs.map +0 -1
- package/dist/auth0-spa-js.production.esm-Cr9w0sUa.js +0 -4217
- package/dist/auth0-spa-js.production.esm-Cr9w0sUa.js.map +0 -1
- package/dist/core.cjs.js +0 -2
- package/dist/core.cjs.js.map +0 -1
- package/dist/core.es.js +0 -52
- package/dist/core.es.js.map +0 -1
- package/dist/index.cjs.js +0 -2
- package/dist/index.cjs.js.map +0 -1
- package/dist/index.es.js +0 -92
- package/dist/index.es.js.map +0 -1
- package/dist/interpolation-BIB6FC35.cjs +0 -198
- package/dist/interpolation-BIB6FC35.cjs.map +0 -1
- package/dist/interpolation-lSTX6ZXZ.js +0 -14559
- package/dist/interpolation-lSTX6ZXZ.js.map +0 -1
- package/dist/safety-state-stop-ClWLVLMl.cjs +0 -2
- package/dist/safety-state-stop-ClWLVLMl.cjs.map +0 -1
- package/dist/safety-state-stop-DuMBCxN5.js +0 -91
- package/dist/safety-state-stop-DuMBCxN5.js.map +0 -1
- package/dist/theming-D_pShDEg.js +0 -32236
- package/dist/theming-D_pShDEg.js.map +0 -1
- package/dist/theming-L5E8VSae.cjs +0 -84
- package/dist/theming-L5E8VSae.cjs.map +0 -1
- package/dist/wb-icons.cjs.js +0 -2
- package/dist/wb-icons.cjs.js.map +0 -1
- package/dist/wb-icons.es.js +0 -27
- package/dist/wb-icons.es.js.map +0 -1
- package/dist/wbLogo-CObCmqTw.js +0 -31
- package/dist/wbLogo-CObCmqTw.js.map +0 -1
- package/dist/wbLogo-G_IfZ03l.cjs +0 -2
- package/dist/wbLogo-G_IfZ03l.cjs.map +0 -1
package/dist/3d.cjs
ADDED
|
@@ -0,0 +1,2 @@
|
|
|
1
|
+
"use strict";Object.defineProperty(exports,Symbol.toStringTag,{value:"Module"});const r=require("./components/3d-viewport/collider/CollisionSceneRenderer.cjs"),o=require("./components/3d-viewport/PresetEnvironment.cjs"),t=require("./components/3d-viewport/SafetyZonesRenderer.cjs"),n=require("./components/3d-viewport/TrajectoryRenderer.cjs"),i=require("./components/RobotCard.cjs"),u=require("./components/robots/AxisConfig.cjs"),s=require("./components/robots/LinearAxis.cjs"),e=require("./components/robots/manufacturerHomePositions.cjs"),a=require("./components/robots/Robot.cjs"),d=require("./components/robots/robotModelLogic.cjs"),c=require("./components/robots/SupportedLinearAxis.cjs"),R=require("./components/robots/SupportedRobot.cjs"),l=require("./components/robots/MotionGroupVisualizer.cjs");exports.CollisionSceneRenderer=r.default;exports.PresetEnvironment=o.PresetEnvironment;exports.SafetyZonesRenderer=t.SafetyZonesRenderer;exports.TrajectoryRenderer=n.TrajectoryRenderer;exports.RobotCard=i.RobotCard;exports.defaultAxisConfig=u.defaultAxisConfig;exports.LinearAxis=s.LinearAxis;exports.MANUFACTURER_HOME_CONFIGS=e.MANUFACTURER_HOME_CONFIGS;exports.extractManufacturer=e.extractManufacturer;exports.getDefaultHomeConfig=e.getDefaultHomeConfig;exports.Robot=a.Robot;exports.defaultGetModel=d.defaultGetModel;exports.SupportedLinearAxis=c.SupportedLinearAxis;exports.SupportedRobot=R.SupportedRobot;exports.MotionGroupVisualizer=l.MotionGroupVisualizer;
|
|
2
|
+
//# sourceMappingURL=3d.cjs.map
|
package/dist/3d.cjs.map
ADDED
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"3d.cjs","sources":[],"sourcesContent":[],"names":[],"mappings":""}
|
package/dist/3d.js
ADDED
|
@@ -0,0 +1,31 @@
|
|
|
1
|
+
import { default as e } from "./components/3d-viewport/collider/CollisionSceneRenderer.js";
|
|
2
|
+
import { PresetEnvironment as f } from "./components/3d-viewport/PresetEnvironment.js";
|
|
3
|
+
import { SafetyZonesRenderer as x } from "./components/3d-viewport/SafetyZonesRenderer.js";
|
|
4
|
+
import { TrajectoryRenderer as n } from "./components/3d-viewport/TrajectoryRenderer.js";
|
|
5
|
+
import { RobotCard as i } from "./components/RobotCard.js";
|
|
6
|
+
import { defaultAxisConfig as u } from "./components/robots/AxisConfig.js";
|
|
7
|
+
import { LinearAxis as s } from "./components/robots/LinearAxis.js";
|
|
8
|
+
import { MANUFACTURER_HOME_CONFIGS as C, extractManufacturer as A, getDefaultHomeConfig as M } from "./components/robots/manufacturerHomePositions.js";
|
|
9
|
+
import { Robot as c } from "./components/robots/Robot.js";
|
|
10
|
+
import { defaultGetModel as g } from "./components/robots/robotModelLogic.js";
|
|
11
|
+
import { SupportedLinearAxis as G } from "./components/robots/SupportedLinearAxis.js";
|
|
12
|
+
import { SupportedRobot as F } from "./components/robots/SupportedRobot.js";
|
|
13
|
+
import { MotionGroupVisualizer as L } from "./components/robots/MotionGroupVisualizer.js";
|
|
14
|
+
export {
|
|
15
|
+
e as CollisionSceneRenderer,
|
|
16
|
+
s as LinearAxis,
|
|
17
|
+
C as MANUFACTURER_HOME_CONFIGS,
|
|
18
|
+
L as MotionGroupVisualizer,
|
|
19
|
+
f as PresetEnvironment,
|
|
20
|
+
c as Robot,
|
|
21
|
+
i as RobotCard,
|
|
22
|
+
x as SafetyZonesRenderer,
|
|
23
|
+
G as SupportedLinearAxis,
|
|
24
|
+
F as SupportedRobot,
|
|
25
|
+
n as TrajectoryRenderer,
|
|
26
|
+
u as defaultAxisConfig,
|
|
27
|
+
g as defaultGetModel,
|
|
28
|
+
A as extractManufacturer,
|
|
29
|
+
M as getDefaultHomeConfig
|
|
30
|
+
};
|
|
31
|
+
//# sourceMappingURL=3d.js.map
|
package/dist/3d.js.map
ADDED
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"3d.js","sources":[],"sourcesContent":[],"names":[],"mappings":";;;;;;;;;;;;;"}
|
|
@@ -8,4 +8,5 @@ export declare const CoordinateSystemTransform: ({ coordinateSystem, children, }
|
|
|
8
8
|
coordinateSystem?: CoordinateSystem;
|
|
9
9
|
children: ReactNode;
|
|
10
10
|
}) => import("react/jsx-runtime").JSX.Element;
|
|
11
|
+
export default CoordinateSystemTransform;
|
|
11
12
|
//# sourceMappingURL=CoordinateSystemTransform.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"CoordinateSystemTransform.d.ts","sourceRoot":"","sources":["../../../src/components/3d-viewport/CoordinateSystemTransform.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,gBAAgB,EAAE,MAAM,wBAAwB,CAAA;AAC9D,OAAO,KAAK,EAAE,SAAS,EAAE,MAAM,OAAO,CAAA;AAGtC;;;GAGG;AACH,eAAO,MAAM,yBAAyB,GAAI,iCAGvC;IACD,gBAAgB,CAAC,EAAE,gBAAgB,CAAA;IACnC,QAAQ,EAAE,SAAS,CAAA;CACpB,4CAwCA,CAAA"}
|
|
1
|
+
{"version":3,"file":"CoordinateSystemTransform.d.ts","sourceRoot":"","sources":["../../../src/components/3d-viewport/CoordinateSystemTransform.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,gBAAgB,EAAE,MAAM,wBAAwB,CAAA;AAC9D,OAAO,KAAK,EAAE,SAAS,EAAE,MAAM,OAAO,CAAA;AAGtC;;;GAGG;AACH,eAAO,MAAM,yBAAyB,GAAI,iCAGvC;IACD,gBAAgB,CAAC,EAAE,gBAAgB,CAAA;IACnC,QAAQ,EAAE,SAAS,CAAA;CACpB,4CAwCA,CAAA;AAED,eAAe,yBAAyB,CAAA"}
|
|
@@ -0,0 +1,2 @@
|
|
|
1
|
+
"use strict";Object.defineProperties(exports,{__esModule:{value:!0},[Symbol.toStringTag]:{value:"Module"}});const t=require("react/jsx-runtime"),i=require("@react-three/drei");function r(){return t.jsx(i.Environment,{children:t.jsx(s,{})})}function s({positions:n=[2,0,2,0,2,0,2,0]}){return t.jsxs(t.Fragment,{children:[t.jsx(i.Lightformer,{intensity:5,"rotation-x":Math.PI/2,position:[0,5,-9],scale:[10,10,1]}),t.jsx("group",{rotation:[0,.5,0],children:t.jsx("group",{children:n.map((o,e)=>t.jsx(i.Lightformer,{form:"circle",intensity:5,rotation:[Math.PI/2,0,0],position:[o,4,e*4],scale:[3,1,1]},e))})}),t.jsx(i.Lightformer,{intensity:40,"rotation-y":Math.PI/2,position:[-5,1,-1],scale:[20,.1,1]}),t.jsx(i.Lightformer,{intensity:20,"rotation-y":-Math.PI,position:[-5,-2,-1],scale:[20,.1,1]}),t.jsx(i.Lightformer,{"rotation-y":Math.PI/2,position:[-5,-1,-1],scale:[20,.5,1],intensity:5}),t.jsx(i.Lightformer,{"rotation-y":-Math.PI/2,position:[10,1,0],scale:[20,1,1],intensity:10}),t.jsx(i.Lightformer,{form:"ring",color:"white",intensity:5,scale:10,position:[-15,4,-18],target:[0,0,0]})]})}exports.PresetEnvironment=r;exports.default=r;
|
|
2
|
+
//# sourceMappingURL=PresetEnvironment.cjs.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"PresetEnvironment.cjs","sources":["../../../src/components/3d-viewport/PresetEnvironment.tsx"],"sourcesContent":["import { Environment, Lightformer } from \"@react-three/drei\"\n\n/**\n * Renders a preset environment for the 3D scene.\n * This component wraps the scene with an `Environment` component\n * and builds a lightmap build with `Lightformers`.\n */\nexport function PresetEnvironment() {\n return (\n <Environment>\n <Lightformers />\n </Environment>\n )\n}\n\nfunction Lightformers({ positions = [2, 0, 2, 0, 2, 0, 2, 0] }) {\n return (\n <>\n {/* Ceiling */}\n <Lightformer\n intensity={5}\n rotation-x={Math.PI / 2}\n position={[0, 5, -9]}\n scale={[10, 10, 1]}\n />\n <group rotation={[0, 0.5, 0]}>\n <group>\n {positions.map((x, i) => (\n <Lightformer\n // biome-ignore lint/suspicious/noArrayIndexKey: pre-biome code\n key={i}\n form=\"circle\"\n intensity={5}\n rotation={[Math.PI / 2, 0, 0]}\n position={[x, 4, i * 4]}\n scale={[3, 1, 1]}\n />\n ))}\n </group>\n </group>\n {/* Sides */}\n <Lightformer\n intensity={40}\n rotation-y={Math.PI / 2}\n position={[-5, 1, -1]}\n scale={[20, 0.1, 1]}\n />\n <Lightformer\n intensity={20}\n rotation-y={-Math.PI}\n position={[-5, -2, -1]}\n scale={[20, 0.1, 1]}\n />\n\n <Lightformer\n rotation-y={Math.PI / 2}\n position={[-5, -1, -1]}\n scale={[20, 0.5, 1]}\n intensity={5}\n />\n <Lightformer\n rotation-y={-Math.PI / 2}\n position={[10, 1, 0]}\n scale={[20, 1, 1]}\n intensity={10}\n />\n\n {/* Key */}\n <Lightformer\n form=\"ring\"\n color=\"white\"\n intensity={5}\n scale={10}\n position={[-15, 4, -18]}\n target={[0, 0, 0]}\n />\n </>\n )\n}\n\nexport default PresetEnvironment\n"],"names":["PresetEnvironment","jsx","Environment","Lightformers","positions","jsxs","Fragment","Lightformer","x","i"],"mappings":"gLAOO,SAASA,GAAoB,CAClC,OACEC,EAAAA,IAACC,EAAAA,YAAA,CACC,SAAAD,EAAAA,IAACE,EAAA,CAAA,CAAa,EAChB,CAEJ,CAEA,SAASA,EAAa,CAAE,UAAAC,EAAY,CAAC,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,CAAC,GAAK,CAC9D,OACEC,EAAAA,KAAAC,WAAA,CAEE,SAAA,CAAAL,EAAAA,IAACM,EAAAA,YAAA,CACC,UAAW,EACX,aAAY,KAAK,GAAK,EACtB,SAAU,CAAC,EAAG,EAAG,EAAE,EACnB,MAAO,CAAC,GAAI,GAAI,CAAC,CAAA,CAAA,EAEnBN,EAAAA,IAAC,QAAA,CAAM,SAAU,CAAC,EAAG,GAAK,CAAC,EACzB,SAAAA,EAAAA,IAAC,QAAA,CACE,SAAAG,EAAU,IAAI,CAACI,EAAGC,IACjBR,EAAAA,IAACM,EAAAA,YAAA,CAGC,KAAK,SACL,UAAW,EACX,SAAU,CAAC,KAAK,GAAK,EAAG,EAAG,CAAC,EAC5B,SAAU,CAACC,EAAG,EAAGC,EAAI,CAAC,EACtB,MAAO,CAAC,EAAG,EAAG,CAAC,CAAA,EALVA,CAAA,CAOR,EACH,CAAA,CACF,EAEAR,EAAAA,IAACM,EAAAA,YAAA,CACC,UAAW,GACX,aAAY,KAAK,GAAK,EACtB,SAAU,CAAC,GAAI,EAAG,EAAE,EACpB,MAAO,CAAC,GAAI,GAAK,CAAC,CAAA,CAAA,EAEpBN,EAAAA,IAACM,EAAAA,YAAA,CACC,UAAW,GACX,aAAY,CAAC,KAAK,GAClB,SAAU,CAAC,GAAI,GAAI,EAAE,EACrB,MAAO,CAAC,GAAI,GAAK,CAAC,CAAA,CAAA,EAGpBN,EAAAA,IAACM,EAAAA,YAAA,CACC,aAAY,KAAK,GAAK,EACtB,SAAU,CAAC,GAAI,GAAI,EAAE,EACrB,MAAO,CAAC,GAAI,GAAK,CAAC,EAClB,UAAW,CAAA,CAAA,EAEbN,EAAAA,IAACM,EAAAA,YAAA,CACC,aAAY,CAAC,KAAK,GAAK,EACvB,SAAU,CAAC,GAAI,EAAG,CAAC,EACnB,MAAO,CAAC,GAAI,EAAG,CAAC,EAChB,UAAW,EAAA,CAAA,EAIbN,EAAAA,IAACM,EAAAA,YAAA,CACC,KAAK,OACL,MAAM,QACN,UAAW,EACX,MAAO,GACP,SAAU,CAAC,IAAK,EAAG,GAAG,EACtB,OAAQ,CAAC,EAAG,EAAG,CAAC,CAAA,CAAA,CAClB,EACF,CAEJ"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"PresetEnvironment.d.ts","sourceRoot":"","sources":["../../../src/components/3d-viewport/PresetEnvironment.tsx"],"names":[],"mappings":"AAEA;;;;GAIG;AACH,wBAAgB,iBAAiB,4CAMhC"}
|
|
1
|
+
{"version":3,"file":"PresetEnvironment.d.ts","sourceRoot":"","sources":["../../../src/components/3d-viewport/PresetEnvironment.tsx"],"names":[],"mappings":"AAEA;;;;GAIG;AACH,wBAAgB,iBAAiB,4CAMhC;AAmED,eAAe,iBAAiB,CAAA"}
|
|
@@ -0,0 +1,81 @@
|
|
|
1
|
+
import { jsx as t, jsxs as e, Fragment as s } from "react/jsx-runtime";
|
|
2
|
+
import { Environment as a, Lightformer as i } from "@react-three/drei";
|
|
3
|
+
function p() {
|
|
4
|
+
return /* @__PURE__ */ t(a, { children: /* @__PURE__ */ t(c, {}) });
|
|
5
|
+
}
|
|
6
|
+
function c({ positions: o = [2, 0, 2, 0, 2, 0, 2, 0] }) {
|
|
7
|
+
return /* @__PURE__ */ e(s, { children: [
|
|
8
|
+
/* @__PURE__ */ t(
|
|
9
|
+
i,
|
|
10
|
+
{
|
|
11
|
+
intensity: 5,
|
|
12
|
+
"rotation-x": Math.PI / 2,
|
|
13
|
+
position: [0, 5, -9],
|
|
14
|
+
scale: [10, 10, 1]
|
|
15
|
+
}
|
|
16
|
+
),
|
|
17
|
+
/* @__PURE__ */ t("group", { rotation: [0, 0.5, 0], children: /* @__PURE__ */ t("group", { children: o.map((r, n) => /* @__PURE__ */ t(
|
|
18
|
+
i,
|
|
19
|
+
{
|
|
20
|
+
form: "circle",
|
|
21
|
+
intensity: 5,
|
|
22
|
+
rotation: [Math.PI / 2, 0, 0],
|
|
23
|
+
position: [r, 4, n * 4],
|
|
24
|
+
scale: [3, 1, 1]
|
|
25
|
+
},
|
|
26
|
+
n
|
|
27
|
+
)) }) }),
|
|
28
|
+
/* @__PURE__ */ t(
|
|
29
|
+
i,
|
|
30
|
+
{
|
|
31
|
+
intensity: 40,
|
|
32
|
+
"rotation-y": Math.PI / 2,
|
|
33
|
+
position: [-5, 1, -1],
|
|
34
|
+
scale: [20, 0.1, 1]
|
|
35
|
+
}
|
|
36
|
+
),
|
|
37
|
+
/* @__PURE__ */ t(
|
|
38
|
+
i,
|
|
39
|
+
{
|
|
40
|
+
intensity: 20,
|
|
41
|
+
"rotation-y": -Math.PI,
|
|
42
|
+
position: [-5, -2, -1],
|
|
43
|
+
scale: [20, 0.1, 1]
|
|
44
|
+
}
|
|
45
|
+
),
|
|
46
|
+
/* @__PURE__ */ t(
|
|
47
|
+
i,
|
|
48
|
+
{
|
|
49
|
+
"rotation-y": Math.PI / 2,
|
|
50
|
+
position: [-5, -1, -1],
|
|
51
|
+
scale: [20, 0.5, 1],
|
|
52
|
+
intensity: 5
|
|
53
|
+
}
|
|
54
|
+
),
|
|
55
|
+
/* @__PURE__ */ t(
|
|
56
|
+
i,
|
|
57
|
+
{
|
|
58
|
+
"rotation-y": -Math.PI / 2,
|
|
59
|
+
position: [10, 1, 0],
|
|
60
|
+
scale: [20, 1, 1],
|
|
61
|
+
intensity: 10
|
|
62
|
+
}
|
|
63
|
+
),
|
|
64
|
+
/* @__PURE__ */ t(
|
|
65
|
+
i,
|
|
66
|
+
{
|
|
67
|
+
form: "ring",
|
|
68
|
+
color: "white",
|
|
69
|
+
intensity: 5,
|
|
70
|
+
scale: 10,
|
|
71
|
+
position: [-15, 4, -18],
|
|
72
|
+
target: [0, 0, 0]
|
|
73
|
+
}
|
|
74
|
+
)
|
|
75
|
+
] });
|
|
76
|
+
}
|
|
77
|
+
export {
|
|
78
|
+
p as PresetEnvironment,
|
|
79
|
+
p as default
|
|
80
|
+
};
|
|
81
|
+
//# sourceMappingURL=PresetEnvironment.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"PresetEnvironment.js","sources":["../../../src/components/3d-viewport/PresetEnvironment.tsx"],"sourcesContent":["import { Environment, Lightformer } from \"@react-three/drei\"\n\n/**\n * Renders a preset environment for the 3D scene.\n * This component wraps the scene with an `Environment` component\n * and builds a lightmap build with `Lightformers`.\n */\nexport function PresetEnvironment() {\n return (\n <Environment>\n <Lightformers />\n </Environment>\n )\n}\n\nfunction Lightformers({ positions = [2, 0, 2, 0, 2, 0, 2, 0] }) {\n return (\n <>\n {/* Ceiling */}\n <Lightformer\n intensity={5}\n rotation-x={Math.PI / 2}\n position={[0, 5, -9]}\n scale={[10, 10, 1]}\n />\n <group rotation={[0, 0.5, 0]}>\n <group>\n {positions.map((x, i) => (\n <Lightformer\n // biome-ignore lint/suspicious/noArrayIndexKey: pre-biome code\n key={i}\n form=\"circle\"\n intensity={5}\n rotation={[Math.PI / 2, 0, 0]}\n position={[x, 4, i * 4]}\n scale={[3, 1, 1]}\n />\n ))}\n </group>\n </group>\n {/* Sides */}\n <Lightformer\n intensity={40}\n rotation-y={Math.PI / 2}\n position={[-5, 1, -1]}\n scale={[20, 0.1, 1]}\n />\n <Lightformer\n intensity={20}\n rotation-y={-Math.PI}\n position={[-5, -2, -1]}\n scale={[20, 0.1, 1]}\n />\n\n <Lightformer\n rotation-y={Math.PI / 2}\n position={[-5, -1, -1]}\n scale={[20, 0.5, 1]}\n intensity={5}\n />\n <Lightformer\n rotation-y={-Math.PI / 2}\n position={[10, 1, 0]}\n scale={[20, 1, 1]}\n intensity={10}\n />\n\n {/* Key */}\n <Lightformer\n form=\"ring\"\n color=\"white\"\n intensity={5}\n scale={10}\n position={[-15, 4, -18]}\n target={[0, 0, 0]}\n />\n </>\n )\n}\n\nexport default PresetEnvironment\n"],"names":["PresetEnvironment","jsx","Environment","Lightformers","positions","jsxs","Fragment","Lightformer","x","i"],"mappings":";;AAOO,SAASA,IAAoB;AAClC,SACE,gBAAAC,EAACC,GAAA,EACC,UAAA,gBAAAD,EAACE,GAAA,CAAA,CAAa,GAChB;AAEJ;AAEA,SAASA,EAAa,EAAE,WAAAC,IAAY,CAAC,GAAG,GAAG,GAAG,GAAG,GAAG,GAAG,GAAG,CAAC,KAAK;AAC9D,SACE,gBAAAC,EAAAC,GAAA,EAEE,UAAA;AAAA,IAAA,gBAAAL;AAAA,MAACM;AAAA,MAAA;AAAA,QACC,WAAW;AAAA,QACX,cAAY,KAAK,KAAK;AAAA,QACtB,UAAU,CAAC,GAAG,GAAG,EAAE;AAAA,QACnB,OAAO,CAAC,IAAI,IAAI,CAAC;AAAA,MAAA;AAAA,IAAA;AAAA,IAEnB,gBAAAN,EAAC,SAAA,EAAM,UAAU,CAAC,GAAG,KAAK,CAAC,GACzB,UAAA,gBAAAA,EAAC,SAAA,EACE,UAAAG,EAAU,IAAI,CAACI,GAAGC,MACjB,gBAAAR;AAAA,MAACM;AAAA,MAAA;AAAA,QAGC,MAAK;AAAA,QACL,WAAW;AAAA,QACX,UAAU,CAAC,KAAK,KAAK,GAAG,GAAG,CAAC;AAAA,QAC5B,UAAU,CAACC,GAAG,GAAGC,IAAI,CAAC;AAAA,QACtB,OAAO,CAAC,GAAG,GAAG,CAAC;AAAA,MAAA;AAAA,MALVA;AAAA,IAAA,CAOR,GACH,EAAA,CACF;AAAA,IAEA,gBAAAR;AAAA,MAACM;AAAA,MAAA;AAAA,QACC,WAAW;AAAA,QACX,cAAY,KAAK,KAAK;AAAA,QACtB,UAAU,CAAC,IAAI,GAAG,EAAE;AAAA,QACpB,OAAO,CAAC,IAAI,KAAK,CAAC;AAAA,MAAA;AAAA,IAAA;AAAA,IAEpB,gBAAAN;AAAA,MAACM;AAAA,MAAA;AAAA,QACC,WAAW;AAAA,QACX,cAAY,CAAC,KAAK;AAAA,QAClB,UAAU,CAAC,IAAI,IAAI,EAAE;AAAA,QACrB,OAAO,CAAC,IAAI,KAAK,CAAC;AAAA,MAAA;AAAA,IAAA;AAAA,IAGpB,gBAAAN;AAAA,MAACM;AAAA,MAAA;AAAA,QACC,cAAY,KAAK,KAAK;AAAA,QACtB,UAAU,CAAC,IAAI,IAAI,EAAE;AAAA,QACrB,OAAO,CAAC,IAAI,KAAK,CAAC;AAAA,QAClB,WAAW;AAAA,MAAA;AAAA,IAAA;AAAA,IAEb,gBAAAN;AAAA,MAACM;AAAA,MAAA;AAAA,QACC,cAAY,CAAC,KAAK,KAAK;AAAA,QACvB,UAAU,CAAC,IAAI,GAAG,CAAC;AAAA,QACnB,OAAO,CAAC,IAAI,GAAG,CAAC;AAAA,QAChB,WAAW;AAAA,MAAA;AAAA,IAAA;AAAA,IAIb,gBAAAN;AAAA,MAACM;AAAA,MAAA;AAAA,QACC,MAAK;AAAA,QACL,OAAM;AAAA,QACN,WAAW;AAAA,QACX,OAAO;AAAA,QACP,UAAU,CAAC,KAAK,GAAG,GAAG;AAAA,QACtB,QAAQ,CAAC,GAAG,GAAG,CAAC;AAAA,MAAA;AAAA,IAAA;AAAA,EAClB,GACF;AAEJ;"}
|
|
@@ -0,0 +1,2 @@
|
|
|
1
|
+
"use strict";Object.defineProperties(exports,{__esModule:{value:!0},[Symbol.toStringTag]:{value:"Module"}});const o=require("react/jsx-runtime"),O=require("react"),R=require("three"),g=require("three-stdlib"),y=require("../utils/converters.cjs");function T(r){const p=Object.create(null,{[Symbol.toStringTag]:{value:"Module"}});if(r){for(const i in r)if(i!=="default"){const l=Object.getOwnPropertyDescriptor(r,i);Object.defineProperty(p,i,l.get?l:{enumerable:!0,get:()=>r[i]})}}return p.default=r,Object.freeze(p)}const n=T(R);function b({safetyZones:r,dhParameters:p,...i}){const l={attach:"material",color:"#009f4d",opacity:.2,depthTest:!1,depthWrite:!1,transparent:!0,polygonOffset:!0},d=y.dhParametersToPlaneSize(p??[]),_=(u,e)=>{var f,m;if(!((f=e==null?void 0:e.pose)!=null&&f.position)||!((m=e==null?void 0:e.pose)!=null&&m.orientation))return null;const x=new n.Vector3(e.pose.position[0]/1e3,e.pose.position[1]/1e3,e.pose.position[2]/1e3),S=new n.Vector3(e.pose.orientation[0],e.pose.orientation[1],e.pose.orientation[2]);let c;const v=e.shape.shape_type==="plane"?{...l,side:n.DoubleSide}:{...l,side:n.FrontSide};switch(e.shape.shape_type){case"plane":c=o.jsx("planeGeometry",{args:[d,d]});break;case"sphere":{const t=(e==null?void 0:e.shape).radius/1e3;c=o.jsx("sphereGeometry",{args:[t]});break}case"capsule":{const t=(e==null?void 0:e.shape).radius/1e3,s=(e==null?void 0:e.shape).cylinder_height/1e3;c=o.jsx("capsuleGeometry",{args:[t,s]});break}case"convex_hull":{const t=(e==null?void 0:e.shape).vertices.map(a=>new n.Vector3(a[0]/1e3,a[1]/1e3,a[2]/1e3)),s=y.verticesToCoplanarity(t);if(s.isCoplanar&&s.normal){const h=new n.Vector3().addVectors(t[0],s.normal.multiplyScalar(1e-4));t.push(h)}try{c=o.jsx("primitive",{object:new g.ConvexGeometry(t),attach:"geometry"})}catch(a){return console.log("Error creating ConvexGeometry:",a),null}break}case"rectangular_capsule":{const t=e.shape,s=t.radius/1e3,a=t.sphere_center_distance_x/1e3,h=t.sphere_center_distance_y/1e3,w=s*2;c=o.jsx("primitive",{object:new g.RoundedBoxGeometry(a,h,w,2,s),attach:"geometry"});break}default:console.warn("Unsupported safety zone shape type:",e.shape.shape_type),c=null}return o.jsxs("mesh",{renderOrder:u,position:x,quaternion:y.orientationToQuaternion(S),children:[c,o.jsx("meshStandardMaterial",{...v,polygonOffsetFactor:-u})]},`safety-zone-${e.shape.shape_type}-${u}`)},j=O.useMemo(()=>Object.values(r??{}).map((u,e)=>_(e,u)),[r,d]);return o.jsx("group",{...i,children:j})}exports.SafetyZonesRenderer=b;exports.default=b;
|
|
2
|
+
//# sourceMappingURL=SafetyZonesRenderer.cjs.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"SafetyZonesRenderer.cjs","sources":["../../../src/components/3d-viewport/SafetyZonesRenderer.tsx"],"sourcesContent":["import type { ThreeElements } from \"@react-three/fiber\"\nimport { useMemo } from \"react\"\nimport * as THREE from \"three\"\nimport { ConvexGeometry, RoundedBoxGeometry } from \"three-stdlib\"\n\nimport type {\n Capsule,\n Collider,\n ConvexHull,\n DHParameter,\n MotionGroupDescription,\n RectangularCapsule,\n Sphere,\n} from \"@wandelbots/nova-js/v2\"\n\nimport {\n dhParametersToPlaneSize,\n orientationToQuaternion,\n verticesToCoplanarity,\n} from \"../utils/converters\"\n\nexport type SafetyZonesRendererProps = {\n safetyZones: MotionGroupDescription[\"safety_zones\"]\n dhParameters?: DHParameter[]\n} & ThreeElements[\"group\"]\n\nexport function SafetyZonesRenderer({\n safetyZones,\n dhParameters,\n ...props\n}: SafetyZonesRendererProps) {\n /**\n * Common material properties for safety zone meshes\n */\n const safetyZoneMaterialProps = {\n attach: \"material\" as const,\n color: \"#009f4d\",\n opacity: 0.2,\n depthTest: false,\n depthWrite: false,\n transparent: true,\n polygonOffset: true,\n }\n\n /**\n * Plane size for the plane safety zones, returns the reach distance\n * of the robot\n */\n const planeSize = dhParametersToPlaneSize(dhParameters ?? [])\n\n /**\n * Helper function to render plane, sphere, and capsule meshes\n * @param id number\n * @param zone Collider\n */\n const renderMesh = (id: number, zone: Collider) => {\n if (!zone?.pose?.position || !zone?.pose?.orientation) {\n return null\n }\n\n const position = new THREE.Vector3(\n zone.pose.position[0] / 1000,\n zone.pose.position[1] / 1000,\n zone.pose.position[2] / 1000,\n )\n const orientation = new THREE.Vector3(\n zone.pose.orientation[0],\n zone.pose.orientation[1],\n zone.pose.orientation[2],\n )\n\n let geometry: React.ReactElement | null\n\n const materialProps =\n zone.shape.shape_type === \"plane\"\n ? { ...safetyZoneMaterialProps, side: THREE.DoubleSide }\n : { ...safetyZoneMaterialProps, side: THREE.FrontSide }\n\n switch (zone.shape.shape_type) {\n /**\n * Plane shape, uses DH parameters to calculate the size of the plane (reach distance of a robot)\n */\n case \"plane\":\n geometry = <planeGeometry args={[planeSize, planeSize]} />\n break\n\n /**\n * Sphere shape\n */\n case \"sphere\": {\n const radius = (zone?.shape as Sphere).radius / 1000\n geometry = <sphereGeometry args={[radius]} />\n break\n }\n\n /**\n * Capsule shape\n */\n case \"capsule\": {\n const capsuleRadius = (zone?.shape as Capsule).radius / 1000\n const height = (zone?.shape as Capsule).cylinder_height / 1000\n geometry = <capsuleGeometry args={[capsuleRadius, height]} />\n break\n }\n\n /**\n * Convex hull, checks at first if the vertices are coplanar - if yes, adds a small offset for\n * renderer to be able to visualize the convex hull.\n */\n case \"convex_hull\": {\n const vertices = (zone?.shape as ConvexHull).vertices.map(\n (v) => new THREE.Vector3(v[0] / 1000, v[1] / 1000, v[2] / 1000),\n )\n // Check if the vertices are on the same plane\n const coplanarityResult = verticesToCoplanarity(vertices)\n if (coplanarityResult.isCoplanar && coplanarityResult.normal) {\n const offset = 0.0001\n const newVertex = new THREE.Vector3().addVectors(\n vertices[0],\n coplanarityResult.normal.multiplyScalar(offset),\n )\n vertices.push(newVertex)\n }\n try {\n geometry = (\n <primitive\n object={new ConvexGeometry(vertices)}\n attach=\"geometry\"\n />\n )\n } catch (error) {\n console.log(\"Error creating ConvexGeometry:\", error)\n return null\n }\n break\n }\n\n /**\n * Convex hull around four spheres. Sphere center points in x/y-plane,\n * offset by either combination \"+/- sizeX\" or \"+/- sizeY\".\n * Alternative description: Rectangle in x/y-plane with a 3D padding (source: nova-api docs)\n *\n * Basically a rounded box with a rectangular cross-section.\n */\n case \"rectangular_capsule\": {\n const shape = zone.shape as RectangularCapsule\n const rcRadius = shape.radius / 1000\n const width = shape.sphere_center_distance_x / 1000\n const height = shape.sphere_center_distance_y / 1000\n const depth = rcRadius * 2\n\n geometry = (\n <primitive\n object={new RoundedBoxGeometry(width, height, depth, 2, rcRadius)}\n attach=\"geometry\"\n />\n )\n break\n }\n\n default: {\n console.warn(\n \"Unsupported safety zone shape type:\",\n zone.shape.shape_type,\n )\n geometry = null\n }\n }\n\n return (\n <mesh\n key={`safety-zone-${zone.shape.shape_type}-${id}`}\n renderOrder={id}\n position={position}\n quaternion={orientationToQuaternion(orientation)}\n >\n {geometry}\n <meshStandardMaterial {...materialProps} polygonOffsetFactor={-id} />\n </mesh>\n )\n }\n\n /**\n * Helper variable render safety zones\n */\n // biome-ignore lint/correctness/useExhaustiveDependencies: pre-biome code\n const renderedSafetyZones = useMemo(() => {\n return Object.values(safetyZones ?? {}).map(\n (zone: Collider, index: number) => {\n return renderMesh(index, zone)\n },\n )\n }, [safetyZones, planeSize])\n\n return <group {...props}>{renderedSafetyZones}</group>\n}\n\nexport default SafetyZonesRenderer\n"],"names":["SafetyZonesRenderer","safetyZones","dhParameters","props","safetyZoneMaterialProps","planeSize","dhParametersToPlaneSize","renderMesh","id","zone","_a","_b","position","THREE","orientation","geometry","materialProps","radius","jsx","capsuleRadius","height","vertices","v","coplanarityResult","verticesToCoplanarity","newVertex","ConvexGeometry","error","shape","rcRadius","width","depth","RoundedBoxGeometry","jsxs","orientationToQuaternion","renderedSafetyZones","useMemo","index"],"mappings":"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"}
|
|
@@ -5,4 +5,5 @@ export type SafetyZonesRendererProps = {
|
|
|
5
5
|
dhParameters?: DHParameter[];
|
|
6
6
|
} & ThreeElements["group"];
|
|
7
7
|
export declare function SafetyZonesRenderer({ safetyZones, dhParameters, ...props }: SafetyZonesRendererProps): import("react/jsx-runtime").JSX.Element;
|
|
8
|
+
export default SafetyZonesRenderer;
|
|
8
9
|
//# sourceMappingURL=SafetyZonesRenderer.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"SafetyZonesRenderer.d.ts","sourceRoot":"","sources":["../../../src/components/3d-viewport/SafetyZonesRenderer.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,aAAa,EAAE,MAAM,oBAAoB,CAAA;AAKvD,OAAO,KAAK,EAIV,WAAW,EACX,sBAAsB,EAGvB,MAAM,wBAAwB,CAAA;AAQ/B,MAAM,MAAM,wBAAwB,GAAG;IACrC,WAAW,EAAE,sBAAsB,CAAC,cAAc,CAAC,CAAA;IACnD,YAAY,CAAC,EAAE,WAAW,EAAE,CAAA;CAC7B,GAAG,aAAa,CAAC,OAAO,CAAC,CAAA;AAE1B,wBAAgB,mBAAmB,CAAC,EAClC,WAAW,EACX,YAAY,EACZ,GAAG,KAAK,EACT,EAAE,wBAAwB,2CAqK1B"}
|
|
1
|
+
{"version":3,"file":"SafetyZonesRenderer.d.ts","sourceRoot":"","sources":["../../../src/components/3d-viewport/SafetyZonesRenderer.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,aAAa,EAAE,MAAM,oBAAoB,CAAA;AAKvD,OAAO,KAAK,EAIV,WAAW,EACX,sBAAsB,EAGvB,MAAM,wBAAwB,CAAA;AAQ/B,MAAM,MAAM,wBAAwB,GAAG;IACrC,WAAW,EAAE,sBAAsB,CAAC,cAAc,CAAC,CAAA;IACnD,YAAY,CAAC,EAAE,WAAW,EAAE,CAAA;CAC7B,GAAG,aAAa,CAAC,OAAO,CAAC,CAAA;AAE1B,wBAAgB,mBAAmB,CAAC,EAClC,WAAW,EACX,YAAY,EACZ,GAAG,KAAK,EACT,EAAE,wBAAwB,2CAqK1B;AAED,eAAe,mBAAmB,CAAA"}
|
|
@@ -0,0 +1,131 @@
|
|
|
1
|
+
import { jsx as o, jsxs as S } from "react/jsx-runtime";
|
|
2
|
+
import { useMemo as v } from "react";
|
|
3
|
+
import * as i from "three";
|
|
4
|
+
import { RoundedBoxGeometry as G, ConvexGeometry as R } from "three-stdlib";
|
|
5
|
+
import { dhParametersToPlaneSize as V, verticesToCoplanarity as j, orientationToQuaternion as k } from "../utils/converters.js";
|
|
6
|
+
function P({
|
|
7
|
+
safetyZones: l,
|
|
8
|
+
dhParameters: m,
|
|
9
|
+
...y
|
|
10
|
+
}) {
|
|
11
|
+
const h = {
|
|
12
|
+
attach: "material",
|
|
13
|
+
color: "#009f4d",
|
|
14
|
+
opacity: 0.2,
|
|
15
|
+
depthTest: !1,
|
|
16
|
+
depthWrite: !1,
|
|
17
|
+
transparent: !0,
|
|
18
|
+
polygonOffset: !0
|
|
19
|
+
}, c = V(m ?? []), f = (p, e) => {
|
|
20
|
+
var u, d;
|
|
21
|
+
if (!((u = e == null ? void 0 : e.pose) != null && u.position) || !((d = e == null ? void 0 : e.pose) != null && d.orientation))
|
|
22
|
+
return null;
|
|
23
|
+
const _ = new i.Vector3(
|
|
24
|
+
e.pose.position[0] / 1e3,
|
|
25
|
+
e.pose.position[1] / 1e3,
|
|
26
|
+
e.pose.position[2] / 1e3
|
|
27
|
+
), w = new i.Vector3(
|
|
28
|
+
e.pose.orientation[0],
|
|
29
|
+
e.pose.orientation[1],
|
|
30
|
+
e.pose.orientation[2]
|
|
31
|
+
);
|
|
32
|
+
let a;
|
|
33
|
+
const b = e.shape.shape_type === "plane" ? { ...h, side: i.DoubleSide } : { ...h, side: i.FrontSide };
|
|
34
|
+
switch (e.shape.shape_type) {
|
|
35
|
+
/**
|
|
36
|
+
* Plane shape, uses DH parameters to calculate the size of the plane (reach distance of a robot)
|
|
37
|
+
*/
|
|
38
|
+
case "plane":
|
|
39
|
+
a = /* @__PURE__ */ o("planeGeometry", { args: [c, c] });
|
|
40
|
+
break;
|
|
41
|
+
/**
|
|
42
|
+
* Sphere shape
|
|
43
|
+
*/
|
|
44
|
+
case "sphere": {
|
|
45
|
+
const t = (e == null ? void 0 : e.shape).radius / 1e3;
|
|
46
|
+
a = /* @__PURE__ */ o("sphereGeometry", { args: [t] });
|
|
47
|
+
break;
|
|
48
|
+
}
|
|
49
|
+
/**
|
|
50
|
+
* Capsule shape
|
|
51
|
+
*/
|
|
52
|
+
case "capsule": {
|
|
53
|
+
const t = (e == null ? void 0 : e.shape).radius / 1e3, r = (e == null ? void 0 : e.shape).cylinder_height / 1e3;
|
|
54
|
+
a = /* @__PURE__ */ o("capsuleGeometry", { args: [t, r] });
|
|
55
|
+
break;
|
|
56
|
+
}
|
|
57
|
+
/**
|
|
58
|
+
* Convex hull, checks at first if the vertices are coplanar - if yes, adds a small offset for
|
|
59
|
+
* renderer to be able to visualize the convex hull.
|
|
60
|
+
*/
|
|
61
|
+
case "convex_hull": {
|
|
62
|
+
const t = (e == null ? void 0 : e.shape).vertices.map(
|
|
63
|
+
(s) => new i.Vector3(s[0] / 1e3, s[1] / 1e3, s[2] / 1e3)
|
|
64
|
+
), r = j(t);
|
|
65
|
+
if (r.isCoplanar && r.normal) {
|
|
66
|
+
const n = new i.Vector3().addVectors(
|
|
67
|
+
t[0],
|
|
68
|
+
r.normal.multiplyScalar(1e-4)
|
|
69
|
+
);
|
|
70
|
+
t.push(n);
|
|
71
|
+
}
|
|
72
|
+
try {
|
|
73
|
+
a = /* @__PURE__ */ o(
|
|
74
|
+
"primitive",
|
|
75
|
+
{
|
|
76
|
+
object: new R(t),
|
|
77
|
+
attach: "geometry"
|
|
78
|
+
}
|
|
79
|
+
);
|
|
80
|
+
} catch (s) {
|
|
81
|
+
return console.log("Error creating ConvexGeometry:", s), null;
|
|
82
|
+
}
|
|
83
|
+
break;
|
|
84
|
+
}
|
|
85
|
+
/**
|
|
86
|
+
* Convex hull around four spheres. Sphere center points in x/y-plane,
|
|
87
|
+
* offset by either combination "+/- sizeX" or "+/- sizeY".
|
|
88
|
+
* Alternative description: Rectangle in x/y-plane with a 3D padding (source: nova-api docs)
|
|
89
|
+
*
|
|
90
|
+
* Basically a rounded box with a rectangular cross-section.
|
|
91
|
+
*/
|
|
92
|
+
case "rectangular_capsule": {
|
|
93
|
+
const t = e.shape, r = t.radius / 1e3, s = t.sphere_center_distance_x / 1e3, n = t.sphere_center_distance_y / 1e3, x = r * 2;
|
|
94
|
+
a = /* @__PURE__ */ o(
|
|
95
|
+
"primitive",
|
|
96
|
+
{
|
|
97
|
+
object: new G(s, n, x, 2, r),
|
|
98
|
+
attach: "geometry"
|
|
99
|
+
}
|
|
100
|
+
);
|
|
101
|
+
break;
|
|
102
|
+
}
|
|
103
|
+
default:
|
|
104
|
+
console.warn(
|
|
105
|
+
"Unsupported safety zone shape type:",
|
|
106
|
+
e.shape.shape_type
|
|
107
|
+
), a = null;
|
|
108
|
+
}
|
|
109
|
+
return /* @__PURE__ */ S(
|
|
110
|
+
"mesh",
|
|
111
|
+
{
|
|
112
|
+
renderOrder: p,
|
|
113
|
+
position: _,
|
|
114
|
+
quaternion: k(w),
|
|
115
|
+
children: [
|
|
116
|
+
a,
|
|
117
|
+
/* @__PURE__ */ o("meshStandardMaterial", { ...b, polygonOffsetFactor: -p })
|
|
118
|
+
]
|
|
119
|
+
},
|
|
120
|
+
`safety-zone-${e.shape.shape_type}-${p}`
|
|
121
|
+
);
|
|
122
|
+
}, g = v(() => Object.values(l ?? {}).map(
|
|
123
|
+
(p, e) => f(e, p)
|
|
124
|
+
), [l, c]);
|
|
125
|
+
return /* @__PURE__ */ o("group", { ...y, children: g });
|
|
126
|
+
}
|
|
127
|
+
export {
|
|
128
|
+
P as SafetyZonesRenderer,
|
|
129
|
+
P as default
|
|
130
|
+
};
|
|
131
|
+
//# sourceMappingURL=SafetyZonesRenderer.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"SafetyZonesRenderer.js","sources":["../../../src/components/3d-viewport/SafetyZonesRenderer.tsx"],"sourcesContent":["import type { ThreeElements } from \"@react-three/fiber\"\nimport { useMemo } from \"react\"\nimport * as THREE from \"three\"\nimport { ConvexGeometry, RoundedBoxGeometry } from \"three-stdlib\"\n\nimport type {\n Capsule,\n Collider,\n ConvexHull,\n DHParameter,\n MotionGroupDescription,\n RectangularCapsule,\n Sphere,\n} from \"@wandelbots/nova-js/v2\"\n\nimport {\n dhParametersToPlaneSize,\n orientationToQuaternion,\n verticesToCoplanarity,\n} from \"../utils/converters\"\n\nexport type SafetyZonesRendererProps = {\n safetyZones: MotionGroupDescription[\"safety_zones\"]\n dhParameters?: DHParameter[]\n} & ThreeElements[\"group\"]\n\nexport function SafetyZonesRenderer({\n safetyZones,\n dhParameters,\n ...props\n}: SafetyZonesRendererProps) {\n /**\n * Common material properties for safety zone meshes\n */\n const safetyZoneMaterialProps = {\n attach: \"material\" as const,\n color: \"#009f4d\",\n opacity: 0.2,\n depthTest: false,\n depthWrite: false,\n transparent: true,\n polygonOffset: true,\n }\n\n /**\n * Plane size for the plane safety zones, returns the reach distance\n * of the robot\n */\n const planeSize = dhParametersToPlaneSize(dhParameters ?? [])\n\n /**\n * Helper function to render plane, sphere, and capsule meshes\n * @param id number\n * @param zone Collider\n */\n const renderMesh = (id: number, zone: Collider) => {\n if (!zone?.pose?.position || !zone?.pose?.orientation) {\n return null\n }\n\n const position = new THREE.Vector3(\n zone.pose.position[0] / 1000,\n zone.pose.position[1] / 1000,\n zone.pose.position[2] / 1000,\n )\n const orientation = new THREE.Vector3(\n zone.pose.orientation[0],\n zone.pose.orientation[1],\n zone.pose.orientation[2],\n )\n\n let geometry: React.ReactElement | null\n\n const materialProps =\n zone.shape.shape_type === \"plane\"\n ? { ...safetyZoneMaterialProps, side: THREE.DoubleSide }\n : { ...safetyZoneMaterialProps, side: THREE.FrontSide }\n\n switch (zone.shape.shape_type) {\n /**\n * Plane shape, uses DH parameters to calculate the size of the plane (reach distance of a robot)\n */\n case \"plane\":\n geometry = <planeGeometry args={[planeSize, planeSize]} />\n break\n\n /**\n * Sphere shape\n */\n case \"sphere\": {\n const radius = (zone?.shape as Sphere).radius / 1000\n geometry = <sphereGeometry args={[radius]} />\n break\n }\n\n /**\n * Capsule shape\n */\n case \"capsule\": {\n const capsuleRadius = (zone?.shape as Capsule).radius / 1000\n const height = (zone?.shape as Capsule).cylinder_height / 1000\n geometry = <capsuleGeometry args={[capsuleRadius, height]} />\n break\n }\n\n /**\n * Convex hull, checks at first if the vertices are coplanar - if yes, adds a small offset for\n * renderer to be able to visualize the convex hull.\n */\n case \"convex_hull\": {\n const vertices = (zone?.shape as ConvexHull).vertices.map(\n (v) => new THREE.Vector3(v[0] / 1000, v[1] / 1000, v[2] / 1000),\n )\n // Check if the vertices are on the same plane\n const coplanarityResult = verticesToCoplanarity(vertices)\n if (coplanarityResult.isCoplanar && coplanarityResult.normal) {\n const offset = 0.0001\n const newVertex = new THREE.Vector3().addVectors(\n vertices[0],\n coplanarityResult.normal.multiplyScalar(offset),\n )\n vertices.push(newVertex)\n }\n try {\n geometry = (\n <primitive\n object={new ConvexGeometry(vertices)}\n attach=\"geometry\"\n />\n )\n } catch (error) {\n console.log(\"Error creating ConvexGeometry:\", error)\n return null\n }\n break\n }\n\n /**\n * Convex hull around four spheres. Sphere center points in x/y-plane,\n * offset by either combination \"+/- sizeX\" or \"+/- sizeY\".\n * Alternative description: Rectangle in x/y-plane with a 3D padding (source: nova-api docs)\n *\n * Basically a rounded box with a rectangular cross-section.\n */\n case \"rectangular_capsule\": {\n const shape = zone.shape as RectangularCapsule\n const rcRadius = shape.radius / 1000\n const width = shape.sphere_center_distance_x / 1000\n const height = shape.sphere_center_distance_y / 1000\n const depth = rcRadius * 2\n\n geometry = (\n <primitive\n object={new RoundedBoxGeometry(width, height, depth, 2, rcRadius)}\n attach=\"geometry\"\n />\n )\n break\n }\n\n default: {\n console.warn(\n \"Unsupported safety zone shape type:\",\n zone.shape.shape_type,\n )\n geometry = null\n }\n }\n\n return (\n <mesh\n key={`safety-zone-${zone.shape.shape_type}-${id}`}\n renderOrder={id}\n position={position}\n quaternion={orientationToQuaternion(orientation)}\n >\n {geometry}\n <meshStandardMaterial {...materialProps} polygonOffsetFactor={-id} />\n </mesh>\n )\n }\n\n /**\n * Helper variable render safety zones\n */\n // biome-ignore lint/correctness/useExhaustiveDependencies: pre-biome code\n const renderedSafetyZones = useMemo(() => {\n return Object.values(safetyZones ?? {}).map(\n (zone: Collider, index: number) => {\n return renderMesh(index, zone)\n },\n )\n }, [safetyZones, planeSize])\n\n return <group {...props}>{renderedSafetyZones}</group>\n}\n\nexport default SafetyZonesRenderer\n"],"names":["SafetyZonesRenderer","safetyZones","dhParameters","props","safetyZoneMaterialProps","planeSize","dhParametersToPlaneSize","renderMesh","id","zone","_a","_b","position","THREE","orientation","geometry","materialProps","radius","jsx","capsuleRadius","height","vertices","v","coplanarityResult","verticesToCoplanarity","newVertex","ConvexGeometry","error","shape","rcRadius","width","depth","RoundedBoxGeometry","jsxs","orientationToQuaternion","renderedSafetyZones","useMemo","index"],"mappings":"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"}
|
|
@@ -0,0 +1,2 @@
|
|
|
1
|
+
"use strict";Object.defineProperties(exports,{__esModule:{value:!0},[Symbol.toStringTag]:{value:"Module"}});const s=require("react/jsx-runtime"),c=require("@react-three/drei"),f=require("three");function a(e){const i=Object.create(null,{[Symbol.toStringTag]:{value:"Module"}});if(e){for(const n in e)if(n!=="default"){const t=Object.getOwnPropertyDescriptor(e,n);Object.defineProperty(i,n,t.get?t:{enumerable:!0,get:()=>e[n]})}}return i.default=e,Object.freeze(i)}const d=a(f);function l({trajectory:e,...i}){const n=(e==null?void 0:e.map(t=>{if(t.position&&t.position.length>=3){const[r,o,u]=t.position;if(Number.isFinite(r)&&Number.isFinite(o)&&Number.isFinite(u))return new d.Vector3(r/1e3,u/1e3,-o/1e3)}return null}).filter(t=>t!==null))||[];return s.jsx("group",{...i,children:n.length>0&&s.jsx(c.Line,{points:n,lineWidth:3,polygonOffset:!0,polygonOffsetFactor:10,polygonOffsetUnits:10})})}exports.TrajectoryRenderer=l;exports.default=l;
|
|
2
|
+
//# sourceMappingURL=TrajectoryRenderer.cjs.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"TrajectoryRenderer.cjs","sources":["../../../src/components/3d-viewport/TrajectoryRenderer.tsx"],"sourcesContent":["import { Line } from \"@react-three/drei\"\nimport type { Pose } from \"@wandelbots/nova-js/v2\"\nimport * as THREE from \"three\"\n\nexport type TrajectoryRendererProps = {\n trajectory: Pose[]\n} & React.JSX.IntrinsicElements[\"group\"]\n\nexport function TrajectoryRenderer({\n trajectory,\n ...props\n}: TrajectoryRendererProps) {\n const points =\n trajectory\n ?.map((pose: Pose) => {\n if (pose.position && pose.position.length >= 3) {\n const [x, y, z] = pose.position\n if (Number.isFinite(x) && Number.isFinite(y) && Number.isFinite(z)) {\n return new THREE.Vector3(x / 1000, z / 1000, -y / 1000)\n }\n }\n return null\n })\n .filter((point): point is THREE.Vector3 => point !== null) || []\n\n return (\n <group {...props}>\n {points.length > 0 && (\n <Line\n points={points}\n lineWidth={3}\n polygonOffset={true}\n polygonOffsetFactor={10}\n polygonOffsetUnits={10}\n />\n )}\n </group>\n )\n}\n\nexport default TrajectoryRenderer\n"],"names":["TrajectoryRenderer","trajectory","props","points","pose","x","y","z","THREE","point","jsx","Line"],"mappings":"6dAQO,SAASA,EAAmB,CACjC,WAAAC,EACA,GAAGC,CACL,EAA4B,CAC1B,MAAMC,GACJF,GAAA,YAAAA,EACI,IAAKG,GAAe,CACpB,GAAIA,EAAK,UAAYA,EAAK,SAAS,QAAU,EAAG,CAC9C,KAAM,CAACC,EAAGC,EAAGC,CAAC,EAAIH,EAAK,SACvB,GAAI,OAAO,SAASC,CAAC,GAAK,OAAO,SAASC,CAAC,GAAK,OAAO,SAASC,CAAC,EAC/D,OAAO,IAAIC,EAAM,QAAQH,EAAI,IAAME,EAAI,IAAM,CAACD,EAAI,GAAI,CAE1D,CACA,OAAO,IACT,GACC,OAAQG,GAAkCA,IAAU,QAAS,CAAA,EAElE,aACG,QAAA,CAAO,GAAGP,EACR,SAAAC,EAAO,OAAS,GACfO,EAAAA,IAACC,EAAAA,KAAA,CACC,OAAAR,EACA,UAAW,EACX,cAAe,GACf,oBAAqB,GACrB,mBAAoB,EAAA,CAAA,EAG1B,CAEJ"}
|
|
@@ -3,4 +3,5 @@ export type TrajectoryRendererProps = {
|
|
|
3
3
|
trajectory: Pose[];
|
|
4
4
|
} & React.JSX.IntrinsicElements["group"];
|
|
5
5
|
export declare function TrajectoryRenderer({ trajectory, ...props }: TrajectoryRendererProps): import("react/jsx-runtime").JSX.Element;
|
|
6
|
+
export default TrajectoryRenderer;
|
|
6
7
|
//# sourceMappingURL=TrajectoryRenderer.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"TrajectoryRenderer.d.ts","sourceRoot":"","sources":["../../../src/components/3d-viewport/TrajectoryRenderer.tsx"],"names":[],"mappings":"AACA,OAAO,KAAK,EAAE,IAAI,EAAE,MAAM,wBAAwB,CAAA;AAGlD,MAAM,MAAM,uBAAuB,GAAG;IACpC,UAAU,EAAE,IAAI,EAAE,CAAA;CACnB,GAAG,KAAK,CAAC,GAAG,CAAC,iBAAiB,CAAC,OAAO,CAAC,CAAA;AAExC,wBAAgB,kBAAkB,CAAC,EACjC,UAAU,EACV,GAAG,KAAK,EACT,EAAE,uBAAuB,2CA2BzB"}
|
|
1
|
+
{"version":3,"file":"TrajectoryRenderer.d.ts","sourceRoot":"","sources":["../../../src/components/3d-viewport/TrajectoryRenderer.tsx"],"names":[],"mappings":"AACA,OAAO,KAAK,EAAE,IAAI,EAAE,MAAM,wBAAwB,CAAA;AAGlD,MAAM,MAAM,uBAAuB,GAAG;IACpC,UAAU,EAAE,IAAI,EAAE,CAAA;CACnB,GAAG,KAAK,CAAC,GAAG,CAAC,iBAAiB,CAAC,OAAO,CAAC,CAAA;AAExC,wBAAgB,kBAAkB,CAAC,EACjC,UAAU,EACV,GAAG,KAAK,EACT,EAAE,uBAAuB,2CA2BzB;AAED,eAAe,kBAAkB,CAAA"}
|
|
@@ -0,0 +1,31 @@
|
|
|
1
|
+
import { jsx as f } from "react/jsx-runtime";
|
|
2
|
+
import { Line as l } from "@react-three/drei";
|
|
3
|
+
import * as u from "three";
|
|
4
|
+
function g({
|
|
5
|
+
trajectory: n,
|
|
6
|
+
...s
|
|
7
|
+
}) {
|
|
8
|
+
const e = (n == null ? void 0 : n.map((i) => {
|
|
9
|
+
if (i.position && i.position.length >= 3) {
|
|
10
|
+
const [t, o, r] = i.position;
|
|
11
|
+
if (Number.isFinite(t) && Number.isFinite(o) && Number.isFinite(r))
|
|
12
|
+
return new u.Vector3(t / 1e3, r / 1e3, -o / 1e3);
|
|
13
|
+
}
|
|
14
|
+
return null;
|
|
15
|
+
}).filter((i) => i !== null)) || [];
|
|
16
|
+
return /* @__PURE__ */ f("group", { ...s, children: e.length > 0 && /* @__PURE__ */ f(
|
|
17
|
+
l,
|
|
18
|
+
{
|
|
19
|
+
points: e,
|
|
20
|
+
lineWidth: 3,
|
|
21
|
+
polygonOffset: !0,
|
|
22
|
+
polygonOffsetFactor: 10,
|
|
23
|
+
polygonOffsetUnits: 10
|
|
24
|
+
}
|
|
25
|
+
) });
|
|
26
|
+
}
|
|
27
|
+
export {
|
|
28
|
+
g as TrajectoryRenderer,
|
|
29
|
+
g as default
|
|
30
|
+
};
|
|
31
|
+
//# sourceMappingURL=TrajectoryRenderer.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"TrajectoryRenderer.js","sources":["../../../src/components/3d-viewport/TrajectoryRenderer.tsx"],"sourcesContent":["import { Line } from \"@react-three/drei\"\nimport type { Pose } from \"@wandelbots/nova-js/v2\"\nimport * as THREE from \"three\"\n\nexport type TrajectoryRendererProps = {\n trajectory: Pose[]\n} & React.JSX.IntrinsicElements[\"group\"]\n\nexport function TrajectoryRenderer({\n trajectory,\n ...props\n}: TrajectoryRendererProps) {\n const points =\n trajectory\n ?.map((pose: Pose) => {\n if (pose.position && pose.position.length >= 3) {\n const [x, y, z] = pose.position\n if (Number.isFinite(x) && Number.isFinite(y) && Number.isFinite(z)) {\n return new THREE.Vector3(x / 1000, z / 1000, -y / 1000)\n }\n }\n return null\n })\n .filter((point): point is THREE.Vector3 => point !== null) || []\n\n return (\n <group {...props}>\n {points.length > 0 && (\n <Line\n points={points}\n lineWidth={3}\n polygonOffset={true}\n polygonOffsetFactor={10}\n polygonOffsetUnits={10}\n />\n )}\n </group>\n )\n}\n\nexport default TrajectoryRenderer\n"],"names":["TrajectoryRenderer","trajectory","props","points","pose","x","y","z","THREE","point","jsx","Line"],"mappings":";;;AAQO,SAASA,EAAmB;AAAA,EACjC,YAAAC;AAAA,EACA,GAAGC;AACL,GAA4B;AAC1B,QAAMC,KACJF,KAAA,gBAAAA,EACI,IAAI,CAACG,MAAe;AACpB,QAAIA,EAAK,YAAYA,EAAK,SAAS,UAAU,GAAG;AAC9C,YAAM,CAACC,GAAGC,GAAGC,CAAC,IAAIH,EAAK;AACvB,UAAI,OAAO,SAASC,CAAC,KAAK,OAAO,SAASC,CAAC,KAAK,OAAO,SAASC,CAAC;AAC/D,eAAO,IAAIC,EAAM,QAAQH,IAAI,KAAME,IAAI,KAAM,CAACD,IAAI,GAAI;AAAA,IAE1D;AACA,WAAO;AAAA,EACT,GACC,OAAO,CAACG,MAAkCA,MAAU,UAAS,CAAA;AAElE,2BACG,SAAA,EAAO,GAAGP,GACR,UAAAC,EAAO,SAAS,KACf,gBAAAO;AAAA,IAACC;AAAA,IAAA;AAAA,MACC,QAAAR;AAAA,MACA,WAAW;AAAA,MACX,eAAe;AAAA,MACf,qBAAqB;AAAA,MACrB,oBAAoB;AAAA,IAAA;AAAA,EAAA,GAG1B;AAEJ;"}
|
|
@@ -0,0 +1,2 @@
|
|
|
1
|
+
"use strict";Object.defineProperties(exports,{__esModule:{value:!0},[Symbol.toStringTag]:{value:"Module"}});const n=require("react/jsx-runtime"),o=require("./ColliderElement.cjs");function s({name:r,colliders:u,meshChildrenProvider:i,...l}){return n.jsx("group",{name:r,...l,children:Object.entries(u).map(([e,t])=>n.jsx(o.default,{name:e,collider:t,children:i(e,t)},e))})}exports.default=s;
|
|
2
|
+
//# sourceMappingURL=ColliderCollection.cjs.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"ColliderCollection.cjs","sources":["../../../../src/components/3d-viewport/collider/ColliderCollection.tsx"],"sourcesContent":["import type { ThreeElements } from \"@react-three/fiber\"\nimport type { Collider } from \"@wandelbots/nova-js/v2\"\nimport ColliderElement from \"./ColliderElement\"\n\nexport type MeshChildrenProvider = (\n key: string,\n collider: Collider,\n) => React.ReactNode\n\ntype ColliderCollectionProps = {\n name?: string\n colliders: Record<string, Collider>\n meshChildrenProvider: MeshChildrenProvider\n} & ThreeElements[\"group\"]\n\nexport default function ColliderCollection({\n name,\n colliders,\n meshChildrenProvider,\n ...props\n}: ColliderCollectionProps) {\n return (\n <group name={name} {...props}>\n {Object.entries(colliders).map(([colliderKey, collider]) => (\n <ColliderElement\n key={colliderKey}\n name={colliderKey}\n collider={collider}\n >\n {meshChildrenProvider(colliderKey, collider)}\n </ColliderElement>\n ))}\n </group>\n )\n}\n"],"names":["ColliderCollection","name","colliders","meshChildrenProvider","props","jsx","colliderKey","collider","ColliderElement"],"mappings":"oLAeA,SAAwBA,EAAmB,CACzC,KAAAC,EACA,UAAAC,EACA,qBAAAC,EACA,GAAGC,CACL,EAA4B,CAC1B,OACEC,EAAAA,IAAC,QAAA,CAAM,KAAAJ,EAAa,GAAGG,EACpB,SAAA,OAAO,QAAQF,CAAS,EAAE,IAAI,CAAC,CAACI,EAAaC,CAAQ,IACpDF,EAAAA,IAACG,EAAAA,QAAA,CAEC,KAAMF,EACN,SAAAC,EAEC,SAAAJ,EAAqBG,EAAaC,CAAQ,CAAA,EAJtCD,CAAA,CAMR,EACH,CAEJ"}
|
|
@@ -0,0 +1,22 @@
|
|
|
1
|
+
import { jsx as e } from "react/jsx-runtime";
|
|
2
|
+
import p from "./ColliderElement.js";
|
|
3
|
+
function l({
|
|
4
|
+
name: n,
|
|
5
|
+
colliders: o,
|
|
6
|
+
meshChildrenProvider: m,
|
|
7
|
+
...i
|
|
8
|
+
}) {
|
|
9
|
+
return /* @__PURE__ */ e("group", { name: n, ...i, children: Object.entries(o).map(([r, t]) => /* @__PURE__ */ e(
|
|
10
|
+
p,
|
|
11
|
+
{
|
|
12
|
+
name: r,
|
|
13
|
+
collider: t,
|
|
14
|
+
children: m(r, t)
|
|
15
|
+
},
|
|
16
|
+
r
|
|
17
|
+
)) });
|
|
18
|
+
}
|
|
19
|
+
export {
|
|
20
|
+
l as default
|
|
21
|
+
};
|
|
22
|
+
//# sourceMappingURL=ColliderCollection.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"ColliderCollection.js","sources":["../../../../src/components/3d-viewport/collider/ColliderCollection.tsx"],"sourcesContent":["import type { ThreeElements } from \"@react-three/fiber\"\nimport type { Collider } from \"@wandelbots/nova-js/v2\"\nimport ColliderElement from \"./ColliderElement\"\n\nexport type MeshChildrenProvider = (\n key: string,\n collider: Collider,\n) => React.ReactNode\n\ntype ColliderCollectionProps = {\n name?: string\n colliders: Record<string, Collider>\n meshChildrenProvider: MeshChildrenProvider\n} & ThreeElements[\"group\"]\n\nexport default function ColliderCollection({\n name,\n colliders,\n meshChildrenProvider,\n ...props\n}: ColliderCollectionProps) {\n return (\n <group name={name} {...props}>\n {Object.entries(colliders).map(([colliderKey, collider]) => (\n <ColliderElement\n key={colliderKey}\n name={colliderKey}\n collider={collider}\n >\n {meshChildrenProvider(colliderKey, collider)}\n </ColliderElement>\n ))}\n </group>\n )\n}\n"],"names":["ColliderCollection","name","colliders","meshChildrenProvider","props","jsx","colliderKey","collider","ColliderElement"],"mappings":";;AAeA,SAAwBA,EAAmB;AAAA,EACzC,MAAAC;AAAA,EACA,WAAAC;AAAA,EACA,sBAAAC;AAAA,EACA,GAAGC;AACL,GAA4B;AAC1B,SACE,gBAAAC,EAAC,SAAA,EAAM,MAAAJ,GAAa,GAAGG,GACpB,UAAA,OAAO,QAAQF,CAAS,EAAE,IAAI,CAAC,CAACI,GAAaC,CAAQ,MACpD,gBAAAF;AAAA,IAACG;AAAA,IAAA;AAAA,MAEC,MAAMF;AAAA,MACN,UAAAC;AAAA,MAEC,UAAAJ,EAAqBG,GAAaC,CAAQ;AAAA,IAAA;AAAA,IAJtCD;AAAA,EAAA,CAMR,GACH;AAEJ;"}
|
|
@@ -0,0 +1,2 @@
|
|
|
1
|
+
"use strict";Object.defineProperties(exports,{__esModule:{value:!0},[Symbol.toStringTag]:{value:"Module"}});const a=require("react/jsx-runtime"),c=require("three"),l=require("./colliderShapeToBufferGeometry.cjs");function f(e){const t=Object.create(null,{[Symbol.toStringTag]:{value:"Module"}});if(e){for(const o in e)if(o!=="default"){const r=Object.getOwnPropertyDescriptor(e,o);Object.defineProperty(t,o,r.get?r:{enumerable:!0,get:()=>e[o]})}}return t.default=e,Object.freeze(t)}const u=f(c);function p({name:e,collider:t,children:o}){var i,s;const r=((i=t.pose)==null?void 0:i.position)??[0,0,0],n=((s=t.pose)==null?void 0:s.orientation)??[0,0,0];return t.margin&&console.warn(`${e} margin is not supported`),a.jsx("mesh",{name:e,position:new u.Vector3(r[0],r[1],r[2]).divideScalar(1e3),rotation:new u.Euler(n[0],n[1],n[2],"XYZ"),geometry:l.colliderShapeToBufferGeometry(t.shape),children:o})}exports.default=p;
|
|
2
|
+
//# sourceMappingURL=ColliderElement.cjs.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"ColliderElement.cjs","sources":["../../../../src/components/3d-viewport/collider/ColliderElement.tsx"],"sourcesContent":["import type { Collider } from \"@wandelbots/nova-js/v2\"\nimport type React from \"react\"\nimport * as THREE from \"three\"\nimport { colliderShapeToBufferGeometry } from \"./colliderShapeToBufferGeometry\"\n\ntype ColliderElementProps = {\n name?: string\n collider: Collider\n children?: React.ReactNode\n}\n\nexport default function ColliderElement({\n name,\n collider,\n children,\n}: ColliderElementProps) {\n const position = collider.pose?.position ?? [0, 0, 0]\n const rotation = collider.pose?.orientation ?? [0, 0, 0]\n if (collider.margin) {\n console.warn(`${name} margin is not supported`)\n }\n return (\n <mesh\n name={name}\n position={new THREE.Vector3(\n position[0],\n position[1],\n position[2],\n ).divideScalar(1000)}\n rotation={new THREE.Euler(rotation[0], rotation[1], rotation[2], \"XYZ\")}\n geometry={colliderShapeToBufferGeometry(collider.shape)}\n >\n {children}\n </mesh>\n )\n}\n"],"names":["ColliderElement","name","collider","children","position","_a","rotation","_b","jsx","THREE","colliderShapeToBufferGeometry"],"mappings":"+eAWA,SAAwBA,EAAgB,CACtC,KAAAC,EACA,SAAAC,EACA,SAAAC,CACF,EAAyB,SACvB,MAAMC,IAAWC,EAAAH,EAAS,OAAT,YAAAG,EAAe,WAAY,CAAC,EAAG,EAAG,CAAC,EAC9CC,IAAWC,EAAAL,EAAS,OAAT,YAAAK,EAAe,cAAe,CAAC,EAAG,EAAG,CAAC,EACvD,OAAIL,EAAS,QACX,QAAQ,KAAK,GAAGD,CAAI,0BAA0B,EAG9CO,EAAAA,IAAC,OAAA,CACC,KAAAP,EACA,SAAU,IAAIQ,EAAM,QAClBL,EAAS,CAAC,EACVA,EAAS,CAAC,EACVA,EAAS,CAAC,CAAA,EACV,aAAa,GAAI,EACnB,SAAU,IAAIK,EAAM,MAAMH,EAAS,CAAC,EAAGA,EAAS,CAAC,EAAGA,EAAS,CAAC,EAAG,KAAK,EACtE,SAAUI,EAAAA,8BAA8BR,EAAS,KAAK,EAErD,SAAAC,CAAA,CAAA,CAGP"}
|
|
@@ -0,0 +1,29 @@
|
|
|
1
|
+
import { jsx as a } from "react/jsx-runtime";
|
|
2
|
+
import * as s from "three";
|
|
3
|
+
import { colliderShapeToBufferGeometry as m } from "./colliderShapeToBufferGeometry.js";
|
|
4
|
+
function c({
|
|
5
|
+
name: r,
|
|
6
|
+
collider: o,
|
|
7
|
+
children: p
|
|
8
|
+
}) {
|
|
9
|
+
var i, n;
|
|
10
|
+
const t = ((i = o.pose) == null ? void 0 : i.position) ?? [0, 0, 0], e = ((n = o.pose) == null ? void 0 : n.orientation) ?? [0, 0, 0];
|
|
11
|
+
return o.margin && console.warn(`${r} margin is not supported`), /* @__PURE__ */ a(
|
|
12
|
+
"mesh",
|
|
13
|
+
{
|
|
14
|
+
name: r,
|
|
15
|
+
position: new s.Vector3(
|
|
16
|
+
t[0],
|
|
17
|
+
t[1],
|
|
18
|
+
t[2]
|
|
19
|
+
).divideScalar(1e3),
|
|
20
|
+
rotation: new s.Euler(e[0], e[1], e[2], "XYZ"),
|
|
21
|
+
geometry: m(o.shape),
|
|
22
|
+
children: p
|
|
23
|
+
}
|
|
24
|
+
);
|
|
25
|
+
}
|
|
26
|
+
export {
|
|
27
|
+
c as default
|
|
28
|
+
};
|
|
29
|
+
//# sourceMappingURL=ColliderElement.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"ColliderElement.js","sources":["../../../../src/components/3d-viewport/collider/ColliderElement.tsx"],"sourcesContent":["import type { Collider } from \"@wandelbots/nova-js/v2\"\nimport type React from \"react\"\nimport * as THREE from \"three\"\nimport { colliderShapeToBufferGeometry } from \"./colliderShapeToBufferGeometry\"\n\ntype ColliderElementProps = {\n name?: string\n collider: Collider\n children?: React.ReactNode\n}\n\nexport default function ColliderElement({\n name,\n collider,\n children,\n}: ColliderElementProps) {\n const position = collider.pose?.position ?? [0, 0, 0]\n const rotation = collider.pose?.orientation ?? [0, 0, 0]\n if (collider.margin) {\n console.warn(`${name} margin is not supported`)\n }\n return (\n <mesh\n name={name}\n position={new THREE.Vector3(\n position[0],\n position[1],\n position[2],\n ).divideScalar(1000)}\n rotation={new THREE.Euler(rotation[0], rotation[1], rotation[2], \"XYZ\")}\n geometry={colliderShapeToBufferGeometry(collider.shape)}\n >\n {children}\n </mesh>\n )\n}\n"],"names":["ColliderElement","name","collider","children","position","_a","rotation","_b","jsx","THREE","colliderShapeToBufferGeometry"],"mappings":";;;AAWA,SAAwBA,EAAgB;AAAA,EACtC,MAAAC;AAAA,EACA,UAAAC;AAAA,EACA,UAAAC;AACF,GAAyB;;AACvB,QAAMC,MAAWC,IAAAH,EAAS,SAAT,gBAAAG,EAAe,aAAY,CAAC,GAAG,GAAG,CAAC,GAC9CC,MAAWC,IAAAL,EAAS,SAAT,gBAAAK,EAAe,gBAAe,CAAC,GAAG,GAAG,CAAC;AACvD,SAAIL,EAAS,UACX,QAAQ,KAAK,GAAGD,CAAI,0BAA0B,GAG9C,gBAAAO;AAAA,IAAC;AAAA,IAAA;AAAA,MACC,MAAAP;AAAA,MACA,UAAU,IAAIQ,EAAM;AAAA,QAClBL,EAAS,CAAC;AAAA,QACVA,EAAS,CAAC;AAAA,QACVA,EAAS,CAAC;AAAA,MAAA,EACV,aAAa,GAAI;AAAA,MACnB,UAAU,IAAIK,EAAM,MAAMH,EAAS,CAAC,GAAGA,EAAS,CAAC,GAAGA,EAAS,CAAC,GAAG,KAAK;AAAA,MACtE,UAAUI,EAA8BR,EAAS,KAAK;AAAA,MAErD,UAAAC;AAAA,IAAA;AAAA,EAAA;AAGP;"}
|
|
@@ -0,0 +1,2 @@
|
|
|
1
|
+
"use strict";Object.defineProperties(exports,{__esModule:{value:!0},[Symbol.toStringTag]:{value:"Module"}});const l=require("react/jsx-runtime"),t=require("./ColliderCollection.cjs");function i({scene:r,meshChildrenProvider:o}){const e=r.colliders;return l.jsx("group",{children:e&&l.jsx(t.default,{meshChildrenProvider:o,colliders:e})})}exports.default=i;
|
|
2
|
+
//# sourceMappingURL=CollisionSceneRenderer.cjs.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"CollisionSceneRenderer.cjs","sources":["../../../../src/components/3d-viewport/collider/CollisionSceneRenderer.tsx"],"sourcesContent":["import type { CollisionSetup } from \"@wandelbots/nova-js/v2\"\nimport ColliderCollection, {\n type MeshChildrenProvider,\n} from \"./ColliderCollection\"\n\ntype CollisionSceneRendererProps = {\n scene: CollisionSetup\n meshChildrenProvider: MeshChildrenProvider\n}\n\nexport default function CollisionSceneRenderer({\n scene,\n meshChildrenProvider,\n}: CollisionSceneRendererProps) {\n const colliders = scene.colliders\n return (\n <group>\n {colliders && (\n <ColliderCollection\n meshChildrenProvider={meshChildrenProvider}\n colliders={colliders}\n />\n )}\n </group>\n )\n}\n"],"names":["CollisionSceneRenderer","scene","meshChildrenProvider","colliders","jsx","ColliderCollection"],"mappings":"uLAUA,SAAwBA,EAAuB,CAC7C,MAAAC,EACA,qBAAAC,CACF,EAAgC,CAC9B,MAAMC,EAAYF,EAAM,UACxB,OACEG,EAAAA,IAAC,SACE,SAAAD,GACCC,EAAAA,IAACC,EAAAA,QAAA,CACC,qBAAAH,EACA,UAAAC,CAAA,CAAA,EAGN,CAEJ"}
|
|
@@ -0,0 +1,19 @@
|
|
|
1
|
+
import { jsx as r } from "react/jsx-runtime";
|
|
2
|
+
import i from "./ColliderCollection.js";
|
|
3
|
+
function c({
|
|
4
|
+
scene: e,
|
|
5
|
+
meshChildrenProvider: l
|
|
6
|
+
}) {
|
|
7
|
+
const o = e.colliders;
|
|
8
|
+
return /* @__PURE__ */ r("group", { children: o && /* @__PURE__ */ r(
|
|
9
|
+
i,
|
|
10
|
+
{
|
|
11
|
+
meshChildrenProvider: l,
|
|
12
|
+
colliders: o
|
|
13
|
+
}
|
|
14
|
+
) });
|
|
15
|
+
}
|
|
16
|
+
export {
|
|
17
|
+
c as default
|
|
18
|
+
};
|
|
19
|
+
//# sourceMappingURL=CollisionSceneRenderer.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"CollisionSceneRenderer.js","sources":["../../../../src/components/3d-viewport/collider/CollisionSceneRenderer.tsx"],"sourcesContent":["import type { CollisionSetup } from \"@wandelbots/nova-js/v2\"\nimport ColliderCollection, {\n type MeshChildrenProvider,\n} from \"./ColliderCollection\"\n\ntype CollisionSceneRendererProps = {\n scene: CollisionSetup\n meshChildrenProvider: MeshChildrenProvider\n}\n\nexport default function CollisionSceneRenderer({\n scene,\n meshChildrenProvider,\n}: CollisionSceneRendererProps) {\n const colliders = scene.colliders\n return (\n <group>\n {colliders && (\n <ColliderCollection\n meshChildrenProvider={meshChildrenProvider}\n colliders={colliders}\n />\n )}\n </group>\n )\n}\n"],"names":["CollisionSceneRenderer","scene","meshChildrenProvider","colliders","jsx","ColliderCollection"],"mappings":";;AAUA,SAAwBA,EAAuB;AAAA,EAC7C,OAAAC;AAAA,EACA,sBAAAC;AACF,GAAgC;AAC9B,QAAMC,IAAYF,EAAM;AACxB,SACE,gBAAAG,EAAC,WACE,UAAAD,KACC,gBAAAC;AAAA,IAACC;AAAA,IAAA;AAAA,MACC,sBAAAH;AAAA,MACA,WAAAC;AAAA,IAAA;AAAA,EAAA,GAGN;AAEJ;"}
|
|
@@ -0,0 +1,2 @@
|
|
|
1
|
+
"use strict";Object.defineProperty(exports,Symbol.toStringTag,{value:"Module"});const c=require("three"),u=require("three-stdlib");function i(e){const n=Object.create(null,{[Symbol.toStringTag]:{value:"Module"}});if(e){for(const r in e)if(r!=="default"){const o=Object.getOwnPropertyDescriptor(e,r);Object.defineProperty(n,r,o.get?o:{enumerable:!0,get:()=>e[r]})}}return n.default=e,Object.freeze(n)}const t=i(c);function l(e){switch(e.shape_type){case"convex_hull":return new u.ConvexGeometry(e.vertices.map(r=>new t.Vector3(r[0]/1e3,r[1]/1e3,r[2]/1e3)));case"box":return new t.BoxGeometry(e.size_x/1e3,e.size_y/1e3,e.size_z/1e3);case"sphere":return new t.SphereGeometry(e.radius/1e3);case"capsule":return new t.CapsuleGeometry(e.radius/1e3,e.cylinder_height/1e3);case"cylinder":return new t.CylinderGeometry(e.radius/1e3,e.radius/1e3,e.height/1e3);case"rectangle":return new t.BoxGeometry(e.size_x/1e3,e.size_y/1e3,0);default:return console.warn(`${e.shape_type} is not supported`),new t.BufferGeometry}}exports.colliderShapeToBufferGeometry=l;
|
|
2
|
+
//# sourceMappingURL=colliderShapeToBufferGeometry.cjs.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"colliderShapeToBufferGeometry.cjs","sources":["../../../../src/components/3d-viewport/collider/colliderShapeToBufferGeometry.ts"],"sourcesContent":["import type { ColliderShape } from \"@wandelbots/nova-js/v2\"\nimport * as THREE from \"three\"\nimport { ConvexGeometry } from \"three-stdlib\"\n\nexport function colliderShapeToBufferGeometry(\n shape: ColliderShape,\n): THREE.BufferGeometry {\n const shapeType = shape.shape_type\n switch (shapeType) {\n case \"convex_hull\":\n return new ConvexGeometry(\n shape.vertices.map(\n (vertex) =>\n new THREE.Vector3(\n vertex[0] / 1000,\n vertex[1] / 1000,\n vertex[2] / 1000,\n ),\n ),\n )\n case \"box\":\n return new THREE.BoxGeometry(\n shape.size_x / 1000,\n shape.size_y / 1000,\n shape.size_z / 1000,\n )\n case \"sphere\":\n return new THREE.SphereGeometry(shape.radius / 1000)\n case \"capsule\":\n return new THREE.CapsuleGeometry(\n shape.radius / 1000,\n shape.cylinder_height / 1000,\n )\n case \"cylinder\":\n return new THREE.CylinderGeometry(\n shape.radius / 1000,\n shape.radius / 1000,\n shape.height / 1000,\n )\n case \"rectangle\": {\n return new THREE.BoxGeometry(shape.size_x / 1000, shape.size_y / 1000, 0)\n }\n default: {\n console.warn(`${shape.shape_type} is not supported`)\n return new THREE.BufferGeometry()\n }\n }\n}\n"],"names":["colliderShapeToBufferGeometry","shape","ConvexGeometry","vertex","THREE"],"mappings":"6ZAIO,SAASA,EACdC,EACsB,CAEtB,OADkBA,EAAM,WAChB,CACN,IAAK,cACH,OAAO,IAAIC,EAAAA,eACTD,EAAM,SAAS,IACZE,GACC,IAAIC,EAAM,QACRD,EAAO,CAAC,EAAI,IACZA,EAAO,CAAC,EAAI,IACZA,EAAO,CAAC,EAAI,GAAA,CACd,CACJ,EAEJ,IAAK,MACH,OAAO,IAAIC,EAAM,YACfH,EAAM,OAAS,IACfA,EAAM,OAAS,IACfA,EAAM,OAAS,GAAA,EAEnB,IAAK,SACH,OAAO,IAAIG,EAAM,eAAeH,EAAM,OAAS,GAAI,EACrD,IAAK,UACH,OAAO,IAAIG,EAAM,gBACfH,EAAM,OAAS,IACfA,EAAM,gBAAkB,GAAA,EAE5B,IAAK,WACH,OAAO,IAAIG,EAAM,iBACfH,EAAM,OAAS,IACfA,EAAM,OAAS,IACfA,EAAM,OAAS,GAAA,EAEnB,IAAK,YACH,OAAO,IAAIG,EAAM,YAAYH,EAAM,OAAS,IAAMA,EAAM,OAAS,IAAM,CAAC,EAE1E,QACE,eAAQ,KAAK,GAAGA,EAAM,UAAU,mBAAmB,EAC5C,IAAIG,EAAM,cACnB,CAEJ"}
|