@viamrobotics/motion-tools 1.15.5 → 1.15.7
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/components/Entities/Arrows/Arrows.svelte +6 -3
- package/dist/components/Entities/Frame.svelte +5 -1
- package/dist/components/Entities/GLTF.svelte +2 -0
- package/dist/components/Entities/Geometry.svelte +20 -17
- package/dist/components/Entities/Line.svelte +2 -0
- package/dist/components/Entities/Points.svelte +2 -0
- package/dist/components/Entities/hooks/useEntityEvents.svelte.d.ts +0 -1
- package/dist/components/Entities/hooks/useEntityEvents.svelte.js +3 -8
- package/dist/components/KeyboardControls.svelte +6 -4
- package/dist/components/Scene.svelte +0 -1
- package/dist/components/SceneProviders.svelte +0 -2
- package/dist/components/hover/LinkedHoveredEntity.svelte +6 -12
- package/dist/components/hover/LinkedHoveredEntity.svelte.d.ts +0 -2
- package/dist/components/overlay/FloatingPanel.svelte +1 -1
- package/dist/components/overlay/Logs.svelte +95 -28
- package/dist/components/overlay/left-pane/Tree.svelte +17 -147
- package/dist/components/overlay/left-pane/Tree.svelte.d.ts +3 -3
- package/dist/components/overlay/left-pane/TreeNode.svelte +169 -0
- package/dist/components/overlay/left-pane/TreeNode.svelte.d.ts +10 -0
- package/dist/components/xr/OriginMarker.svelte +44 -83
- package/dist/components/xr/PointDistance.svelte +8 -14
- package/dist/components/xr/XR.svelte +32 -11
- package/dist/components/xr/frame-configure/Controllers.svelte +6 -0
- package/dist/components/xr/{HandCollider.svelte.d.ts → frame-configure/Controllers.svelte.d.ts} +3 -3
- package/dist/components/xr/{Controllers.svelte → teleop/Controllers.svelte} +4 -19
- package/dist/ecs/traits.d.ts +1 -0
- package/dist/ecs/traits.js +1 -0
- package/dist/hooks/use3DModels.svelte.js +1 -1
- package/dist/hooks/useFramelessComponents.svelte.js +3 -3
- package/dist/hooks/useSettings.svelte.d.ts +4 -2
- package/dist/hooks/useSettings.svelte.js +15 -7
- package/package.json +3 -3
- package/dist/components/xr/Draggable.svelte +0 -102
- package/dist/components/xr/Draggable.svelte.d.ts +0 -11
- package/dist/components/xr/HandCollider.svelte +0 -20
- package/dist/hooks/useVisibility.svelte.d.ts +0 -6
- package/dist/hooks/useVisibility.svelte.js +0 -10
- /package/dist/components/xr/{Controllers.svelte.d.ts → teleop/Controllers.svelte.d.ts} +0 -0
|
@@ -1,102 +0,0 @@
|
|
|
1
|
-
<script lang="ts">
|
|
2
|
-
import type { Snippet } from 'svelte'
|
|
3
|
-
|
|
4
|
-
import { RigidBody as RigidBodyType } from '@dimforge/rapier3d-compat'
|
|
5
|
-
import { T, useTask } from '@threlte/core'
|
|
6
|
-
import { useGamepad } from '@threlte/extras'
|
|
7
|
-
import { AutoColliders, RigidBody } from '@threlte/rapier'
|
|
8
|
-
import { useController } from '@threlte/xr'
|
|
9
|
-
import { Group, Vector3 } from 'three'
|
|
10
|
-
|
|
11
|
-
interface Props {
|
|
12
|
-
children: Snippet
|
|
13
|
-
onPointerEnter?: () => void
|
|
14
|
-
onPointerLeave?: () => void
|
|
15
|
-
onPointerDown?: () => void
|
|
16
|
-
onPointerUp?: () => void
|
|
17
|
-
}
|
|
18
|
-
|
|
19
|
-
let { onPointerEnter, onPointerLeave, onPointerDown, onPointerUp, children }: Props = $props()
|
|
20
|
-
|
|
21
|
-
let hovering = $state(false)
|
|
22
|
-
|
|
23
|
-
let dragging = $state(false)
|
|
24
|
-
let rigidBody: RigidBodyType | undefined = $state()
|
|
25
|
-
|
|
26
|
-
const group = new Group()
|
|
27
|
-
const vec3 = new Vector3()
|
|
28
|
-
const offset = new Vector3()
|
|
29
|
-
const position = new Vector3()
|
|
30
|
-
|
|
31
|
-
const left = useController('left')
|
|
32
|
-
const right = useController('right')
|
|
33
|
-
const leftPad = useGamepad({ xr: true, hand: 'left' })
|
|
34
|
-
const rightPad = useGamepad({ xr: true, hand: 'right' })
|
|
35
|
-
|
|
36
|
-
leftPad.trigger.on('down', () => {
|
|
37
|
-
if (!$left) return
|
|
38
|
-
|
|
39
|
-
dragging = true
|
|
40
|
-
group.getWorldPosition(vec3)
|
|
41
|
-
offset.copy($left.grip.position).sub(vec3)
|
|
42
|
-
onPointerDown?.()
|
|
43
|
-
})
|
|
44
|
-
|
|
45
|
-
leftPad.trigger.on('up', () => {
|
|
46
|
-
dragging = false
|
|
47
|
-
onPointerUp?.()
|
|
48
|
-
})
|
|
49
|
-
|
|
50
|
-
rightPad.trigger.on('down', () => {
|
|
51
|
-
if (!$right) return
|
|
52
|
-
|
|
53
|
-
dragging = true
|
|
54
|
-
group.getWorldPosition(vec3)
|
|
55
|
-
offset.copy($right.grip.position).sub(vec3)
|
|
56
|
-
onPointerDown?.()
|
|
57
|
-
})
|
|
58
|
-
|
|
59
|
-
rightPad.trigger.on('up', () => {
|
|
60
|
-
dragging = true
|
|
61
|
-
onPointerUp?.()
|
|
62
|
-
})
|
|
63
|
-
|
|
64
|
-
const onsensorenter = () => {
|
|
65
|
-
hovering = true
|
|
66
|
-
onPointerEnter?.()
|
|
67
|
-
}
|
|
68
|
-
|
|
69
|
-
const onsensorexit = () => {
|
|
70
|
-
hovering = false
|
|
71
|
-
onPointerLeave?.()
|
|
72
|
-
}
|
|
73
|
-
|
|
74
|
-
const { start, stop } = useTask(
|
|
75
|
-
() => {
|
|
76
|
-
if (!$left || !rigidBody) return
|
|
77
|
-
|
|
78
|
-
position.copy($left.grip.position).sub(offset)
|
|
79
|
-
|
|
80
|
-
rigidBody.setNextKinematicTranslation({ x: position.x, y: position.y, z: position.z })
|
|
81
|
-
},
|
|
82
|
-
{ autoStart: false }
|
|
83
|
-
)
|
|
84
|
-
|
|
85
|
-
$effect(() => (hovering && dragging ? start() : stop()))
|
|
86
|
-
</script>
|
|
87
|
-
|
|
88
|
-
<T is={group}>
|
|
89
|
-
<RigidBody
|
|
90
|
-
bind:rigidBody
|
|
91
|
-
type="kinematicPosition"
|
|
92
|
-
>
|
|
93
|
-
<AutoColliders
|
|
94
|
-
sensor
|
|
95
|
-
shape="convexHull"
|
|
96
|
-
{onsensorenter}
|
|
97
|
-
{onsensorexit}
|
|
98
|
-
>
|
|
99
|
-
{@render children?.()}
|
|
100
|
-
</AutoColliders>
|
|
101
|
-
</RigidBody>
|
|
102
|
-
</T>
|
|
@@ -1,11 +0,0 @@
|
|
|
1
|
-
import type { Snippet } from 'svelte';
|
|
2
|
-
interface Props {
|
|
3
|
-
children: Snippet;
|
|
4
|
-
onPointerEnter?: () => void;
|
|
5
|
-
onPointerLeave?: () => void;
|
|
6
|
-
onPointerDown?: () => void;
|
|
7
|
-
onPointerUp?: () => void;
|
|
8
|
-
}
|
|
9
|
-
declare const Draggable: import("svelte").Component<Props, {}, "">;
|
|
10
|
-
type Draggable = ReturnType<typeof Draggable>;
|
|
11
|
-
export default Draggable;
|
|
@@ -1,20 +0,0 @@
|
|
|
1
|
-
<script lang="ts">
|
|
2
|
-
import type { Group } from 'three'
|
|
3
|
-
|
|
4
|
-
import { useParent, useTask } from '@threlte/core'
|
|
5
|
-
import { Collider, useRigidBody } from '@threlte/rapier'
|
|
6
|
-
|
|
7
|
-
const parent = useParent()
|
|
8
|
-
const rb = useRigidBody()
|
|
9
|
-
|
|
10
|
-
useTask(() => {
|
|
11
|
-
const { position } = $parent as Group
|
|
12
|
-
rb?.setNextKinematicTranslation({ x: position.x, y: position.y, z: position.z })
|
|
13
|
-
})
|
|
14
|
-
</script>
|
|
15
|
-
|
|
16
|
-
<Collider
|
|
17
|
-
sensor
|
|
18
|
-
shape="ball"
|
|
19
|
-
args={[0.1]}
|
|
20
|
-
/>
|
|
@@ -1,10 +0,0 @@
|
|
|
1
|
-
import { getContext, setContext } from 'svelte';
|
|
2
|
-
import { SvelteMap } from 'svelte/reactivity';
|
|
3
|
-
const key = Symbol('object-visibility-context');
|
|
4
|
-
export const provideVisibility = () => {
|
|
5
|
-
const map = new SvelteMap();
|
|
6
|
-
setContext(key, map);
|
|
7
|
-
};
|
|
8
|
-
export const useVisibility = () => {
|
|
9
|
-
return getContext(key);
|
|
10
|
-
};
|
|
File without changes
|