@adobe/data 0.7.4 → 0.8.0
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/blob/blob-handle.d.ts +2 -2
- package/dist/blob/blob-meta.d.ts +2 -2
- package/dist/cache/blob-store.d.ts +2 -2
- package/dist/cache/data-cache.d.ts +1 -1
- package/dist/cache/functions/memoize.d.ts +1 -3
- package/dist/cache/functions/memoize.js +1 -3
- package/dist/cache/functions/memoize.js.map +1 -1
- package/dist/cache/managed-array.d.ts +2 -2
- package/dist/cache/managed-array.js.map +1 -1
- package/dist/cache/memory-allocator.d.ts +1 -1
- package/dist/cache/memory-allocator.js +2 -2
- package/dist/cache/memory-allocator.js.map +1 -1
- package/dist/ecs/archetype/create-archetype.d.ts +2 -2
- package/dist/ecs/archetype/create-archetype.js.map +1 -1
- package/dist/ecs/archetype/create-archetype.test.js +9 -9
- package/dist/ecs/archetype/create-archetype.test.js.map +1 -1
- package/dist/ecs/archetype/delete-row.test.js +4 -4
- package/dist/ecs/archetype/delete-row.test.js.map +1 -1
- package/dist/ecs/component-schemas.d.ts +1 -1
- package/dist/ecs/database/create-database.test.js +6 -6
- package/dist/ecs/database/create-database.test.js.map +1 -1
- package/dist/ecs/database/database-schema/create-database-schema.d.ts +1 -1
- package/dist/ecs/database/database-schema/database-schema.d.ts +1 -1
- package/dist/ecs/database/index.d.ts +1 -0
- package/dist/ecs/database/observe-dependent-value.js +3 -3
- package/dist/ecs/database/observe-dependent-value.js.map +1 -1
- package/dist/ecs/database/observe-select-entities.js +2 -2
- package/dist/ecs/database/observe-select-entities.js.map +1 -1
- package/dist/ecs/database/observe-select-entities.performance.test.js +6 -6
- package/dist/ecs/database/observe-select-entities.performance.test.js.map +1 -1
- package/dist/ecs/database/observe-select-entities.test.js +6 -6
- package/dist/ecs/database/observe-select-entities.test.js.map +1 -1
- package/dist/ecs/database/observed/create-observed-database.js +2 -2
- package/dist/ecs/database/observed/create-observed-database.js.map +1 -1
- package/dist/ecs/database/transactional-store/create-transactional-store.test.js +6 -6
- package/dist/ecs/database/transactional-store/create-transactional-store.test.js.map +1 -1
- package/dist/ecs/entity-location-table/entity-location.d.ts +2 -2
- package/dist/ecs/entity-location-table/entity-location.js +3 -3
- package/dist/ecs/entity-location-table/entity-location.js.map +1 -1
- package/dist/ecs/entity.d.ts +2 -2
- package/dist/ecs/entity.js +2 -2
- package/dist/ecs/entity.js.map +1 -1
- package/dist/ecs/index.d.ts +3 -0
- package/dist/ecs/index.js.map +1 -1
- package/dist/ecs/resource-schemas.d.ts +1 -1
- package/dist/ecs/store/core/core.d.ts +1 -1
- package/dist/ecs/store/core/create-core.d.ts +2 -2
- package/dist/ecs/store/core/create-core.js +2 -2
- package/dist/ecs/store/core/create-core.js.map +1 -1
- package/dist/ecs/store/core/create-core.test.js +6 -6
- package/dist/ecs/store/core/create-core.test.js.map +1 -1
- package/dist/ecs/store/core/select-entities.test.js +3 -3
- package/dist/ecs/store/core/select-entities.test.js.map +1 -1
- package/dist/ecs/store/create-store.d.ts +1 -1
- package/dist/ecs/store/create-store.js.map +1 -1
- package/dist/ecs/store/create-store.test.js +8 -8
- package/dist/ecs/store/create-store.test.js.map +1 -1
- package/dist/ecs/store/index.d.ts +2 -0
- package/dist/ecs/store/store.d.ts +1 -1
- package/dist/ecs/undo-redo-service/create-undo-redo-service.js +5 -7
- package/dist/ecs/undo-redo-service/create-undo-redo-service.js.map +1 -1
- package/dist/ecs/undo-redo-service/create-undo-redo-service.test.js +4 -4
- package/dist/ecs/undo-redo-service/create-undo-redo-service.test.js.map +1 -1
- package/dist/ecs/undo-redo-service/undo-redo-service.d.ts +1 -1
- package/dist/index.d.ts +2 -2
- package/dist/is-data.d.ts +3 -4
- package/dist/lit/hooks/use-drag-observe.d.ts +2 -1
- package/dist/lit/hooks/use-drag-observe.js +2 -2
- package/dist/lit/hooks/use-drag-observe.js.map +1 -1
- package/dist/lit/hooks/use-drag-transaction.js +3 -3
- package/dist/lit/hooks/use-drag-transaction.js.map +1 -1
- package/dist/lit/hooks/use-draggable.d.ts +1 -1
- package/dist/lit/hooks/use-draggable.js +1 -1
- package/dist/lit/hooks/use-draggable.js.map +1 -1
- package/dist/lit/hooks/use-observable-values.js +2 -2
- package/dist/lit/hooks/use-observable-values.js.map +1 -1
- package/dist/lit/index.d.ts +1 -0
- package/dist/math/aabb/center.d.ts +3 -0
- package/dist/math/aabb/center.js +6 -0
- package/dist/math/aabb/center.js.map +1 -0
- package/dist/math/aabb/face/aabb-face.test.js +55 -0
- package/dist/math/aabb/face/aabb-face.test.js.map +1 -0
- package/dist/math/aabb/face/functions.d.ts +47 -0
- package/dist/math/{face/face.js → aabb/face/functions.js} +66 -28
- package/dist/math/aabb/face/functions.js.map +1 -0
- package/dist/math/aabb/face/index.d.ts +4 -0
- package/dist/{ecs/world/world-schema/world-schema.js → math/aabb/face/index.js} +2 -2
- package/dist/math/aabb/face/index.js.map +1 -0
- package/dist/math/aabb/face/public.d.ts +2 -0
- package/dist/{ecs/entity/u32.js → math/aabb/face/public.js} +3 -3
- package/dist/math/aabb/face/public.js.map +1 -0
- package/dist/math/aabb/face/schema.d.ts +5 -0
- package/dist/math/aabb/face/schema.js +27 -0
- package/dist/math/aabb/face/schema.js.map +1 -0
- package/dist/math/aabb/index.d.ts +4 -0
- package/dist/{ecs/world/world-schema → math/aabb}/index.js +1 -2
- package/dist/math/aabb/index.js.map +1 -0
- package/dist/math/aabb/layout.d.ts +1 -0
- package/dist/math/aabb/layout.js +25 -0
- package/dist/math/aabb/layout.js.map +1 -0
- package/dist/math/aabb/line-intersection.d.ts +10 -0
- package/dist/math/aabb/line-intersection.js +42 -0
- package/dist/math/aabb/line-intersection.js.map +1 -0
- package/dist/math/aabb/line-intersection.test.js +1 -1
- package/dist/math/aabb/line-intersection.test.js.map +1 -1
- package/dist/math/aabb/public.d.ts +6 -0
- package/dist/math/aabb/public.js +28 -0
- package/dist/math/aabb/public.js.map +1 -0
- package/dist/math/aabb/schema.d.ts +33 -0
- package/dist/math/aabb/schema.js +36 -0
- package/dist/math/aabb/schema.js.map +1 -0
- package/dist/math/aabb/unit.d.ts +5 -0
- package/dist/math/aabb/unit.js +8 -0
- package/dist/math/aabb/unit.js.map +1 -0
- package/dist/math/f32/index.d.ts +4 -0
- package/dist/math/f32/index.js +23 -0
- package/dist/math/f32/index.js.map +1 -0
- package/dist/math/f32/public.d.ts +1 -0
- package/dist/math/{picking/pick-result.js → f32/public.js} +2 -2
- package/dist/math/f32/public.js.map +1 -0
- package/dist/math/f32/schema.d.ts +5 -0
- package/dist/math/f32/schema.js +27 -0
- package/dist/math/f32/schema.js.map +1 -0
- package/dist/math/f64/index.d.ts +4 -0
- package/dist/math/f64/index.js +2 -0
- package/dist/math/f64/index.js.map +1 -0
- package/dist/math/f64/public.d.ts +1 -0
- package/dist/math/f64/public.js +23 -0
- package/dist/math/f64/public.js.map +1 -0
- package/dist/math/f64/schema.d.ts +5 -0
- package/dist/math/f64/schema.js +6 -0
- package/dist/math/f64/schema.js.map +1 -0
- package/dist/math/i32/index.d.ts +4 -0
- package/dist/math/i32/index.js +23 -0
- package/dist/math/i32/index.js.map +1 -0
- package/dist/math/i32/public.d.ts +1 -0
- package/dist/math/i32/public.js +23 -0
- package/dist/math/i32/public.js.map +1 -0
- package/dist/math/i32/schema.d.ts +6 -0
- package/dist/math/i32/schema.js +28 -0
- package/dist/math/i32/schema.js.map +1 -0
- package/dist/math/index.d.ts +14 -13
- package/dist/math/index.js +14 -13
- package/dist/math/index.js.map +1 -1
- package/dist/math/line2/functions.d.ts +5 -0
- package/dist/math/line2/functions.js +61 -0
- package/dist/math/line2/functions.js.map +1 -0
- package/dist/math/line2/index.d.ts +4 -0
- package/dist/math/line2/index.js +23 -0
- package/dist/math/line2/index.js.map +1 -0
- package/dist/math/line2/layout.d.ts +1 -0
- package/dist/math/line2/layout.js +25 -0
- package/dist/math/line2/layout.js.map +1 -0
- package/dist/math/line2/public.d.ts +3 -0
- package/dist/math/line2/public.js +25 -0
- package/dist/math/line2/public.js.map +1 -0
- package/dist/math/line2/schema.d.ts +33 -0
- package/dist/math/line2/schema.js +37 -0
- package/dist/math/line2/schema.js.map +1 -0
- package/dist/math/line3/functions.d.ts +17 -0
- package/dist/math/line3/functions.js +70 -0
- package/dist/math/line3/functions.js.map +1 -0
- package/dist/math/line3/index.d.ts +4 -0
- package/dist/math/line3/index.js +23 -0
- package/dist/math/line3/index.js.map +1 -0
- package/dist/math/line3/layout.d.ts +1 -0
- package/dist/math/line3/layout.js +25 -0
- package/dist/math/line3/layout.js.map +1 -0
- package/dist/math/line3/public.d.ts +3 -0
- package/dist/math/line3/public.js +25 -0
- package/dist/math/line3/public.js.map +1 -0
- package/dist/math/line3/schema.d.ts +33 -0
- package/dist/math/line3/schema.js +37 -0
- package/dist/math/line3/schema.js.map +1 -0
- package/dist/math/mat4x4/functions.d.ts +23 -0
- package/dist/math/mat4x4/functions.js +236 -0
- package/dist/math/mat4x4/functions.js.map +1 -0
- package/dist/math/mat4x4/index.d.ts +26 -0
- package/dist/math/{picking → mat4x4}/index.js +23 -5
- package/dist/math/mat4x4/index.js.map +1 -0
- package/dist/math/mat4x4/layout.d.ts +1 -0
- package/dist/math/mat4x4/layout.js +25 -0
- package/dist/math/mat4x4/layout.js.map +1 -0
- package/dist/math/mat4x4/public.d.ts +3 -0
- package/dist/math/mat4x4/public.js +25 -0
- package/dist/math/mat4x4/public.js.map +1 -0
- package/dist/math/mat4x4/schema.d.ts +11 -0
- package/dist/math/mat4x4/schema.js +30 -0
- package/dist/math/mat4x4/schema.js.map +1 -0
- package/dist/math/plane/functions.d.ts +16 -0
- package/dist/math/plane/functions.js +55 -0
- package/dist/math/plane/functions.js.map +1 -0
- package/dist/math/plane/index.d.ts +4 -0
- package/dist/math/plane/index.js +23 -0
- package/dist/math/plane/index.js.map +1 -0
- package/dist/math/plane/layout.d.ts +1 -0
- package/dist/math/plane/layout.js +25 -0
- package/dist/math/plane/layout.js.map +1 -0
- package/dist/math/plane/public.d.ts +3 -0
- package/dist/math/plane/public.js +25 -0
- package/dist/math/plane/public.js.map +1 -0
- package/dist/math/plane/schema.d.ts +24 -0
- package/dist/math/plane/schema.js +34 -0
- package/dist/math/plane/schema.js.map +1 -0
- package/dist/math/quat/constants/functions.d.ts +43 -0
- package/dist/math/quat/constants/functions.js +258 -0
- package/dist/math/quat/constants/functions.js.map +1 -0
- package/dist/math/quat/functions.d.ts +43 -0
- package/dist/math/quat/functions.js +258 -0
- package/dist/math/quat/functions.js.map +1 -0
- package/dist/math/quat/index.d.ts +4 -0
- package/dist/math/quat/index.js +23 -0
- package/dist/math/quat/index.js.map +1 -0
- package/dist/math/quat/layout.d.ts +1 -0
- package/dist/math/quat/layout.js +25 -0
- package/dist/math/quat/layout.js.map +1 -0
- package/dist/math/quat/public.d.ts +3 -0
- package/dist/math/quat/public.js +25 -0
- package/dist/math/quat/public.js.map +1 -0
- package/dist/math/quat/schema.d.ts +11 -0
- package/dist/math/quat/schema.js +30 -0
- package/dist/math/quat/schema.js.map +1 -0
- package/dist/math/u32/index.d.ts +4 -0
- package/dist/math/u32/index.js +23 -0
- package/dist/math/u32/index.js.map +1 -0
- package/dist/math/u32/public.d.ts +1 -0
- package/dist/math/u32/public.js +23 -0
- package/dist/math/u32/public.js.map +1 -0
- package/dist/{ecs/entity/u32.d.ts → math/u32/schema.d.ts} +0 -2
- package/dist/math/u32/schema.js +28 -0
- package/dist/math/u32/schema.js.map +1 -0
- package/dist/math/vec2/functions.d.ts +48 -0
- package/dist/math/vec2/functions.js +104 -0
- package/dist/math/vec2/functions.js.map +1 -0
- package/dist/math/vec2/index.d.ts +4 -0
- package/dist/math/vec2/index.js +23 -0
- package/dist/math/vec2/index.js.map +1 -0
- package/dist/math/vec2/layout.d.ts +1 -0
- package/dist/math/vec2/layout.js +25 -0
- package/dist/math/vec2/layout.js.map +1 -0
- package/dist/math/vec2/public.d.ts +3 -0
- package/dist/math/vec2/public.js +25 -0
- package/dist/math/vec2/public.js.map +1 -0
- package/dist/math/vec2/schema.d.ts +11 -0
- package/dist/math/vec2/schema.js +30 -0
- package/dist/math/vec2/schema.js.map +1 -0
- package/dist/math/vec3/functions.d.ts +59 -0
- package/dist/math/vec3/functions.js +159 -0
- package/dist/math/vec3/functions.js.map +1 -0
- package/dist/math/vec3/index.d.ts +4 -0
- package/dist/math/vec3/index.js +23 -0
- package/dist/math/vec3/index.js.map +1 -0
- package/dist/math/vec3/layout.d.ts +1 -0
- package/dist/math/vec3/layout.js +25 -0
- package/dist/math/vec3/layout.js.map +1 -0
- package/dist/math/vec3/public.d.ts +3 -0
- package/dist/math/vec3/public.js +25 -0
- package/dist/math/vec3/public.js.map +1 -0
- package/dist/math/vec3/schema.d.ts +11 -0
- package/dist/math/vec3/schema.js +30 -0
- package/dist/math/vec3/schema.js.map +1 -0
- package/dist/math/vec4/functions.d.ts +49 -0
- package/dist/math/vec4/functions.js +150 -0
- package/dist/math/vec4/functions.js.map +1 -0
- package/dist/math/vec4/index.d.ts +4 -0
- package/dist/math/vec4/index.js +23 -0
- package/dist/math/vec4/index.js.map +1 -0
- package/dist/math/vec4/layout.d.ts +1 -0
- package/dist/math/vec4/layout.js +25 -0
- package/dist/math/vec4/layout.js.map +1 -0
- package/dist/math/vec4/public.d.ts +3 -0
- package/dist/math/vec4/public.js +25 -0
- package/dist/math/vec4/public.js.map +1 -0
- package/dist/math/vec4/schema.d.ts +11 -0
- package/dist/{ecs/world/index.js → math/vec4/schema.js} +9 -6
- package/dist/math/vec4/schema.js.map +1 -0
- package/dist/mutable.d.ts +3 -4
- package/dist/observe/create-event.d.ts +10 -0
- package/dist/observe/create-event.js +22 -0
- package/dist/observe/create-event.js.map +1 -0
- package/dist/observe/create-persisted-state.d.ts +1 -1
- package/dist/observe/create-persisted-state.js +2 -2
- package/dist/observe/create-persisted-state.js.map +1 -1
- package/dist/observe/create-query-state.d.ts +2 -3
- package/dist/observe/create-query-state.js +2 -2
- package/dist/observe/create-query-state.js.map +1 -1
- package/dist/observe/create-state.d.ts +7 -0
- package/dist/observe/create-state.js +27 -0
- package/dist/observe/create-state.js.map +1 -0
- package/dist/observe/from-array.d.ts +1 -1
- package/dist/observe/from-constant.d.ts +1 -1
- package/dist/observe/from-element-id.d.ts +1 -1
- package/dist/observe/from-element-properties-and-events.d.ts +1 -1
- package/dist/observe/from-element-property.d.ts +1 -1
- package/dist/observe/from-promise-with-error.d.ts +1 -1
- package/dist/observe/from-promise.d.ts +1 -1
- package/dist/observe/from-properties.d.ts +1 -1
- package/dist/observe/index.d.ts +16 -30
- package/dist/observe/index.js +1 -32
- package/dist/observe/index.js.map +1 -1
- package/dist/observe/observe.test.js +4 -4
- package/dist/observe/observe.test.js.map +1 -1
- package/dist/observe/public.d.ts +28 -0
- package/dist/{ecs/store/store-schema/create-store-schema-test.js → observe/public.js} +29 -12
- package/dist/observe/public.js.map +1 -0
- package/dist/observe/to-async-generator.d.ts +1 -1
- package/dist/observe/to-promise.d.ts +2 -2
- package/dist/observe/to-promise.js +1 -1
- package/dist/observe/to-properties.d.ts +1 -1
- package/dist/observe/with-async-map.d.ts +1 -1
- package/dist/observe/with-batch.d.ts +1 -1
- package/dist/observe/with-batch.test.js +5 -5
- package/dist/observe/with-batch.test.js.map +1 -1
- package/dist/observe/with-cache.d.ts +1 -1
- package/dist/observe/with-copy.d.ts +1 -1
- package/dist/observe/with-deduplicate-data.d.ts +1 -1
- package/dist/observe/with-deduplicate.d.ts +1 -1
- package/dist/observe/with-default.d.ts +1 -1
- package/dist/observe/with-filter.d.ts +1 -1
- package/dist/observe/with-lazy.d.ts +1 -1
- package/dist/observe/with-lazy.test.js +3 -3
- package/dist/observe/with-lazy.test.js.map +1 -1
- package/dist/observe/with-map-data.d.ts +1 -1
- package/dist/observe/with-map.d.ts +1 -1
- package/dist/observe/with-optional.d.ts +1 -1
- package/dist/observe/with-unwrap.d.ts +1 -1
- package/dist/old-ecs/action-ecs/action-ecs.js +2 -2
- package/dist/old-ecs/action-ecs/action-ecs.js.map +1 -1
- package/dist/old-ecs/action-ecs/action-ecs.test.js +3 -3
- package/dist/old-ecs/action-ecs/action-ecs.test.js.map +1 -1
- package/dist/old-ecs/action-ecs/action-types.d.ts +4 -4
- package/dist/old-ecs/core-ecs/core-ecs-serialization.test.js +3 -3
- package/dist/old-ecs/core-ecs/core-ecs-serialization.test.js.map +1 -1
- package/dist/old-ecs/core-ecs/core-ecs-types.d.ts +3 -3
- package/dist/old-ecs/core-ecs/core-ecs.js +2 -2
- package/dist/old-ecs/core-ecs/core-ecs.js.map +1 -1
- package/dist/old-ecs/core-ecs/core-ecs.test.js +2 -2
- package/dist/old-ecs/core-ecs/core-ecs.test.js.map +1 -1
- package/dist/old-ecs/ecs/ecs-types.d.ts +3 -3
- package/dist/old-ecs/ecs/ecs.test.js +3 -3
- package/dist/old-ecs/ecs/ecs.test.js.map +1 -1
- package/dist/old-ecs/entity.d.ts +2 -2
- package/dist/old-ecs/entity.js +2 -2
- package/dist/old-ecs/entity.js.map +1 -1
- package/dist/old-ecs/transaction-ecs/transaction-types.d.ts +4 -4
- package/dist/perftest/ecs-perf.js +11 -11
- package/dist/perftest/ecs-perf.js.map +1 -1
- package/dist/samples/todo/elements/todo-toolbar/todo-toolbar.js +3 -3
- package/dist/samples/todo/elements/todo-toolbar/todo-toolbar.js.map +1 -1
- package/dist/samples/todo/services/dependent-state-service/create-dependent-state-service.d.ts +3 -3
- package/dist/samples/todo/services/dependent-state-service/dependent-state/all-todos.d.ts +1 -1
- package/dist/samples/todo/services/dependent-state-service/dependent-state/complete-todos.d.ts +1 -1
- package/dist/samples/todo/services/dependent-state-service/dependent-state/incomplete-todos.d.ts +1 -1
- package/dist/samples/todo/services/state-service/create-todo-database.d.ts +2 -2
- package/dist/samples/todo/services/state-service/create-todo-store.d.ts +2 -2
- package/dist/samples/todo/services/state-service/create-todo-store.js +5 -4
- package/dist/samples/todo/services/state-service/create-todo-store.js.map +1 -1
- package/dist/schema/FromSchemas.d.ts +4 -0
- package/dist/schema/FromSchemas.js +2 -0
- package/dist/schema/FromSchemas.js.map +1 -0
- package/dist/schema/boolean/index.d.ts +4 -0
- package/dist/schema/boolean/index.js +23 -0
- package/dist/schema/boolean/index.js.map +1 -0
- package/dist/schema/boolean/public.d.ts +1 -0
- package/dist/schema/boolean/public.js +23 -0
- package/dist/schema/boolean/public.js.map +1 -0
- package/dist/schema/boolean/schema.d.ts +3 -0
- package/dist/schema/boolean/schema.js +4 -0
- package/dist/schema/boolean/schema.js.map +1 -0
- package/dist/schema/from-schemas.d.ts +5 -0
- package/dist/schema/from-schemas.js +2 -0
- package/dist/schema/from-schemas.js.map +1 -0
- package/dist/schema/index.d.ts +9 -8
- package/dist/schema/index.js +6 -7
- package/dist/schema/index.js.map +1 -1
- package/dist/schema/public.d.ts +4 -0
- package/dist/schema/public.js +26 -0
- package/dist/schema/public.js.map +1 -0
- package/dist/schema/schema copy.d.ts +147 -0
- package/dist/schema/schema copy.js +34 -0
- package/dist/schema/schema copy.js.map +1 -0
- package/dist/schema/schema.d.ts +2 -80
- package/dist/schema/schema.js +0 -10
- package/dist/schema/schema.js.map +1 -1
- package/dist/schema/time/index.d.ts +4 -0
- package/dist/schema/time/index.js +23 -0
- package/dist/schema/time/index.js.map +1 -0
- package/dist/schema/time/public.d.ts +1 -0
- package/dist/schema/time/public.js +23 -0
- package/dist/schema/time/public.js.map +1 -0
- package/dist/schema/time/schema.d.ts +5 -0
- package/dist/schema/time/schema.js +24 -0
- package/dist/schema/time/schema.js.map +1 -0
- package/dist/schema/to-type.d.ts +77 -0
- package/dist/schema/to-type.js +33 -0
- package/dist/schema/to-type.js.map +1 -0
- package/dist/schema/to-vertex-buffer-layout.d.ts +2 -2
- package/dist/schema/to-vertex-buffer-layout.js +28 -14
- package/dist/schema/to-vertex-buffer-layout.js.map +1 -1
- package/dist/schema/to-vertex-buffer-layout.test.js +18 -18
- package/dist/schema/to-vertex-buffer-layout.test.js.map +1 -1
- package/dist/schema/true/index.d.ts +4 -0
- package/dist/schema/true/index.js +23 -0
- package/dist/schema/true/index.js.map +1 -0
- package/dist/schema/true/public.d.ts +1 -0
- package/dist/schema/true/public.js +23 -0
- package/dist/schema/true/public.js.map +1 -0
- package/dist/schema/true/schema.d.ts +5 -0
- package/dist/schema/true/schema.js +2 -0
- package/dist/schema/true/schema.js.map +1 -0
- package/dist/schema/type.d.ts +76 -0
- package/dist/schema/type.js +33 -0
- package/dist/schema/type.js.map +1 -0
- package/dist/schema/validation/with-validation.d.ts +2 -2
- package/dist/schema/validation/with-validation.js.map +1 -1
- package/dist/schema/validation/with-validation.test.js.map +1 -1
- package/dist/service/add-observable-actions.d.ts +5 -5
- package/dist/service/add-observable-actions.js +2 -2
- package/dist/service/add-observable-actions.js.map +1 -1
- package/dist/service/index.d.ts +1 -1
- package/dist/service/index.js.map +1 -1
- package/dist/service/progressive-result.d.ts +2 -3
- package/dist/table/add-row.d.ts +2 -2
- package/dist/table/add-row.js +2 -2
- package/dist/table/create-table.d.ts +2 -2
- package/dist/table/create-table.js.map +1 -1
- package/dist/table/delete-row.d.ts +2 -2
- package/dist/table/delete-row.js +2 -2
- package/dist/table/row-index.d.ts +2 -2
- package/dist/table/row-index.js +2 -2
- package/dist/table/row-index.js.map +1 -1
- package/dist/table/table-compact.test.js +9 -9
- package/dist/table/table-compact.test.js.map +1 -1
- package/dist/table/update-row.d.ts +4 -3
- package/dist/table/update-row.js +4 -3
- package/dist/table/update-row.js.map +1 -1
- package/dist/tsconfig.tsbuildinfo +1 -1
- package/dist/typed-buffer/create-array-buffer.d.ts +2 -2
- package/dist/typed-buffer/create-const-buffer.d.ts +1 -1
- package/dist/typed-buffer/create-number-buffer.d.ts +1 -1
- package/dist/typed-buffer/create-number-buffer.js +4 -4
- package/dist/typed-buffer/create-number-buffer.js.map +1 -1
- package/dist/typed-buffer/create-number-buffer.test.js +2 -2
- package/dist/typed-buffer/create-number-buffer.test.js.map +1 -1
- package/dist/typed-buffer/create-struct-buffer.d.ts +3 -3
- package/dist/typed-buffer/create-struct-buffer.js.map +1 -1
- package/dist/typed-buffer/create-struct-buffer.test.js +10 -10
- package/dist/typed-buffer/create-struct-buffer.test.js.map +1 -1
- package/dist/typed-buffer/create-typed-buffer.d.ts +3 -3
- package/dist/typed-buffer/create-typed-buffer.js.map +1 -1
- package/dist/typed-buffer/index.d.ts +1 -0
- package/dist/typed-buffer/structs/assert-struct.d.ts +1 -1
- package/dist/typed-buffer/structs/get-struct-layout.d.ts +1 -1
- package/dist/typed-buffer/structs/get-struct-layout.js +4 -4
- package/dist/typed-buffer/structs/get-struct-layout.js.map +1 -1
- package/dist/typed-buffer/structs/get-struct-layout.test.js +12 -12
- package/dist/typed-buffer/structs/get-struct-layout.test.js.map +1 -1
- package/dist/typed-buffer/structs/struct-layout.d.ts +1 -1
- package/dist/typed-buffer/typed-buffer.d.ts +1 -1
- package/dist/types/index.d.ts +1 -0
- package/dist/types/types.d.ts +1 -2
- package/package.json +1 -1
- package/dist/blob/download-handle.d.ts +0 -4
- package/dist/blob/download-handle.js +0 -2
- package/dist/blob/download-handle.js.map +0 -1
- package/dist/blob/upload-handle.d.ts +0 -4
- package/dist/blob/upload-handle.js +0 -2
- package/dist/blob/upload-handle.js.map +0 -1
- package/dist/ecs/database/transactional-store/entity-id-preservation.test.js +0 -106
- package/dist/ecs/database/transactional-store/entity-id-preservation.test.js.map +0 -1
- package/dist/ecs/entity/entity.d.ts +0 -8
- package/dist/ecs/entity/entity.js +0 -3
- package/dist/ecs/entity/entity.js.map +0 -1
- package/dist/ecs/entity/u32.js.map +0 -1
- package/dist/ecs/store/store-schema/create-store-schema-test.d.ts +0 -1
- package/dist/ecs/store/store-schema/create-store-schema-test.js.map +0 -1
- package/dist/ecs/store/store-schema/create-store-schema.d.ts +0 -1
- package/dist/ecs/store/store-schema/create-store-schema.js +0 -45
- package/dist/ecs/store/store-schema/create-store-schema.js.map +0 -1
- package/dist/ecs/store/store-schema/index.d.ts +0 -1
- package/dist/ecs/store/store-schema/index.js +0 -21
- package/dist/ecs/store/store-schema/index.js.map +0 -1
- package/dist/ecs/store/store-schema/store-schema.d.ts +0 -1
- package/dist/ecs/store/store-schema/store-schema.js +0 -57
- package/dist/ecs/store/store-schema/store-schema.js.map +0 -1
- package/dist/ecs/world/create-world.d.ts +0 -7
- package/dist/ecs/world/create-world.js +0 -113
- package/dist/ecs/world/create-world.js.map +0 -1
- package/dist/ecs/world/create-world.test.d.ts +0 -1
- package/dist/ecs/world/create-world.test.js +0 -499
- package/dist/ecs/world/create-world.test.js.map +0 -1
- package/dist/ecs/world/index.d.ts +0 -5
- package/dist/ecs/world/index.js.map +0 -1
- package/dist/ecs/world/system-phase.d.ts +0 -5
- package/dist/ecs/world/system-phase.js +0 -14
- package/dist/ecs/world/system-phase.js.map +0 -1
- package/dist/ecs/world/system.d.ts +0 -25
- package/dist/ecs/world/system.js +0 -2
- package/dist/ecs/world/system.js.map +0 -1
- package/dist/ecs/world/world-schema/create-world-schema-test.d.ts +0 -1
- package/dist/ecs/world/world-schema/create-world-schema-test.js +0 -55
- package/dist/ecs/world/world-schema/create-world-schema-test.js.map +0 -1
- package/dist/ecs/world/world-schema/create-world-schema.d.ts +0 -19
- package/dist/ecs/world/world-schema/create-world-schema.js +0 -33
- package/dist/ecs/world/world-schema/create-world-schema.js.map +0 -1
- package/dist/ecs/world/world-schema/index.d.ts +0 -2
- package/dist/ecs/world/world-schema/index.js.map +0 -1
- package/dist/ecs/world/world-schema/world-schema.d.ts +0 -18
- package/dist/ecs/world/world-schema/world-schema.js.map +0 -1
- package/dist/ecs/world/world.d.ts +0 -11
- package/dist/ecs/world/world.js +0 -2
- package/dist/ecs/world/world.js.map +0 -1
- package/dist/graphics/camera/camera.d.ts +0 -62
- package/dist/graphics/camera/camera.js +0 -17
- package/dist/graphics/camera/camera.js.map +0 -1
- package/dist/graphics/camera/index.d.ts +0 -4
- package/dist/graphics/camera/index.js +0 -5
- package/dist/graphics/camera/index.js.map +0 -1
- package/dist/graphics/camera/screen-to-world-ray.d.ts +0 -12
- package/dist/graphics/camera/screen-to-world-ray.js +0 -49
- package/dist/graphics/camera/screen-to-world-ray.js.map +0 -1
- package/dist/graphics/camera/screen-to-world-ray.test.d.ts +0 -1
- package/dist/graphics/camera/screen-to-world-ray.test.js +0 -171
- package/dist/graphics/camera/screen-to-world-ray.test.js.map +0 -1
- package/dist/graphics/camera/to-view-projection.d.ts +0 -3
- package/dist/graphics/camera/to-view-projection.js +0 -8
- package/dist/graphics/camera/to-view-projection.js.map +0 -1
- package/dist/graphics/camera/world-to-screen.d.ts +0 -12
- package/dist/graphics/camera/world-to-screen.js +0 -38
- package/dist/graphics/camera/world-to-screen.js.map +0 -1
- package/dist/graphics/camera/world-to-screen.test.d.ts +0 -1
- package/dist/graphics/camera/world-to-screen.test.js +0 -124
- package/dist/graphics/camera/world-to-screen.test.js.map +0 -1
- package/dist/graphics/create-struct-gpu-buffer.d.ts +0 -7
- package/dist/graphics/create-struct-gpu-buffer.js +0 -17
- package/dist/graphics/create-struct-gpu-buffer.js.map +0 -1
- package/dist/graphics/extract-wgsl-bindings.d.ts +0 -5
- package/dist/graphics/extract-wgsl-bindings.js +0 -10
- package/dist/graphics/extract-wgsl-bindings.js.map +0 -1
- package/dist/graphics/frame.d.ts +0 -1
- package/dist/graphics/frame.js +0 -15
- package/dist/graphics/frame.js.map +0 -1
- package/dist/graphics/get-web-gpu-device-and-context.d.ts +0 -1
- package/dist/graphics/get-web-gpu-device-and-context.js +0 -24
- package/dist/graphics/get-web-gpu-device-and-context.js.map +0 -1
- package/dist/graphics/graphics-context.d.ts +0 -1
- package/dist/graphics/graphics-context.js +0 -7
- package/dist/graphics/graphics-context.js.map +0 -1
- package/dist/graphics/index.d.ts +0 -5
- package/dist/graphics/index.js +0 -5
- package/dist/graphics/index.js.map +0 -1
- package/dist/graphics/to-gpu-buffer.d.ts +0 -2
- package/dist/graphics/to-gpu-buffer.js +0 -14
- package/dist/graphics/to-gpu-buffer.js.map +0 -1
- package/dist/internal/array-buffer-like/grow.d.ts +0 -1
- package/dist/internal/array-buffer-like/grow.js +0 -9
- package/dist/internal/array-buffer-like/grow.js.map +0 -1
- package/dist/math/aabb-face/face.d.ts +0 -51
- package/dist/math/aabb-face/face.js +0 -110
- package/dist/math/aabb-face/face.js.map +0 -1
- package/dist/math/aabb-face/face.test.d.ts +0 -1
- package/dist/math/aabb-face/face.test.js +0 -94
- package/dist/math/aabb-face/face.test.js.map +0 -1
- package/dist/math/box/box.d.ts +0 -50
- package/dist/math/box/box.js +0 -23
- package/dist/math/box/box.js.map +0 -1
- package/dist/math/face/face.d.ts +0 -51
- package/dist/math/face/face.js.map +0 -1
- package/dist/math/face/face.test.d.ts +0 -1
- package/dist/math/face/face.test.js +0 -94
- package/dist/math/face/face.test.js.map +0 -1
- package/dist/math/picking/face.d.ts +0 -1
- package/dist/math/picking/face.js +0 -2
- package/dist/math/picking/face.js.map +0 -1
- package/dist/math/picking/get-closest-entity-to-line.d.ts +0 -4
- package/dist/math/picking/get-closest-entity-to-line.js +0 -30
- package/dist/math/picking/get-closest-entity-to-line.js.map +0 -1
- package/dist/math/picking/get-closest-entity-to-point.d.ts +0 -4
- package/dist/math/picking/get-closest-entity-to-point.js +0 -27
- package/dist/math/picking/get-closest-entity-to-point.js.map +0 -1
- package/dist/math/picking/get-intersecting-entities.d.ts +0 -12
- package/dist/math/picking/get-intersecting-entities.js +0 -15
- package/dist/math/picking/get-intersecting-entities.js.map +0 -1
- package/dist/math/picking/getClosestEntityToLine.d.ts +0 -4
- package/dist/math/picking/getClosestEntityToLine.js +0 -29
- package/dist/math/picking/getClosestEntityToLine.js.map +0 -1
- package/dist/math/picking/getClosestEntityToPoint.d.ts +0 -4
- package/dist/math/picking/getClosestEntityToPoint.js +0 -27
- package/dist/math/picking/getClosestEntityToPoint.js.map +0 -1
- package/dist/math/picking/getIntersectingEntities.d.ts +0 -12
- package/dist/math/picking/getIntersectingEntities.js +0 -15
- package/dist/math/picking/getIntersectingEntities.js.map +0 -1
- package/dist/math/picking/index.d.ts +0 -5
- package/dist/math/picking/index.js.map +0 -1
- package/dist/math/picking/pick-from-tables.d.ts +0 -19
- package/dist/math/picking/pick-from-tables.js +0 -63
- package/dist/math/picking/pick-from-tables.js.map +0 -1
- package/dist/math/picking/pick-result.d.ts +0 -12
- package/dist/math/picking/pick-result.js.map +0 -1
- package/dist/math/transform/debug-inverse.d.ts +0 -1
- package/dist/math/transform/debug-inverse.js +0 -28
- package/dist/math/transform/debug-inverse.js.map +0 -1
- package/dist/math/transform/debug-quat.d.ts +0 -1
- package/dist/math/transform/debug-quat.js +0 -23
- package/dist/math/transform/debug-quat.js.map +0 -1
- package/dist/math/transform/debug-test.d.ts +0 -1
- package/dist/math/transform/debug-test.js +0 -34
- package/dist/math/transform/debug-test.js.map +0 -1
- package/dist/math/transform/transform.d.ts +0 -58
- package/dist/math/transform/transform.js +0 -101
- package/dist/math/transform/transform.js.map +0 -1
- package/dist/math/transform/transform.test.d.ts +0 -1
- package/dist/math/transform/transform.test.js +0 -309
- package/dist/math/transform/transform.test.js.map +0 -1
- package/dist/old-ecs/privacy/helper-functions.d.ts +0 -43
- package/dist/old-ecs/privacy/helper-functions.js +0 -76
- package/dist/old-ecs/privacy/helper-functions.js.map +0 -1
- package/dist/old-ecs/privacy/helper-functions.test.d.ts +0 -1
- package/dist/old-ecs/privacy/helper-functions.test.js +0 -173
- package/dist/old-ecs/privacy/helper-functions.test.js.map +0 -1
- /package/dist/{ecs/database/transactional-store/entity-id-preservation.test.d.ts → math/aabb/face/aabb-face.test.d.ts} +0 -0
package/dist/math/box/box.d.ts
DELETED
|
@@ -1,50 +0,0 @@
|
|
|
1
|
-
import { FromSchema } from "../../schema/schema.js";
|
|
2
|
-
export type Box = FromSchema<typeof Box.schema>;
|
|
3
|
-
export declare namespace Box {
|
|
4
|
-
const schema: {
|
|
5
|
-
readonly type: "object";
|
|
6
|
-
readonly properties: {
|
|
7
|
-
readonly position: {
|
|
8
|
-
readonly type: "array";
|
|
9
|
-
readonly items: {
|
|
10
|
-
readonly type: "number";
|
|
11
|
-
readonly precision: 1;
|
|
12
|
-
readonly default: number;
|
|
13
|
-
};
|
|
14
|
-
readonly minItems: 3;
|
|
15
|
-
readonly maxItems: 3;
|
|
16
|
-
readonly default: readonly [0, 0, 0];
|
|
17
|
-
};
|
|
18
|
-
readonly rotation: {
|
|
19
|
-
readonly type: "array";
|
|
20
|
-
readonly items: {
|
|
21
|
-
readonly type: "number";
|
|
22
|
-
readonly precision: 1;
|
|
23
|
-
readonly default: number;
|
|
24
|
-
};
|
|
25
|
-
readonly minItems: 4;
|
|
26
|
-
readonly maxItems: 4;
|
|
27
|
-
readonly default: readonly [0, 0, 0, 1];
|
|
28
|
-
};
|
|
29
|
-
readonly scale: {
|
|
30
|
-
readonly type: "array";
|
|
31
|
-
readonly items: {
|
|
32
|
-
readonly type: "number";
|
|
33
|
-
readonly precision: 1;
|
|
34
|
-
readonly default: number;
|
|
35
|
-
};
|
|
36
|
-
readonly minItems: 3;
|
|
37
|
-
readonly maxItems: 3;
|
|
38
|
-
readonly default: readonly [0, 0, 0];
|
|
39
|
-
};
|
|
40
|
-
};
|
|
41
|
-
readonly required: readonly ["position", "rotation", "scale"];
|
|
42
|
-
readonly additionalProperties: false;
|
|
43
|
-
readonly default: {
|
|
44
|
-
readonly position: readonly [number, number, number];
|
|
45
|
-
readonly rotation: readonly [number, number, number, number];
|
|
46
|
-
readonly scale: readonly [number, number, number];
|
|
47
|
-
};
|
|
48
|
-
};
|
|
49
|
-
const layout: import("../../typed-buffer/index.js").StructLayout;
|
|
50
|
-
}
|
package/dist/math/box/box.js
DELETED
|
@@ -1,23 +0,0 @@
|
|
|
1
|
-
import { getStructLayout } from "../../typed-buffer/index.js";
|
|
2
|
-
import { Quat } from "../quat/quat.js";
|
|
3
|
-
import { Vec3 } from "../vec3/vec3.js";
|
|
4
|
-
export var Box;
|
|
5
|
-
(function (Box) {
|
|
6
|
-
Box.schema = {
|
|
7
|
-
type: 'object',
|
|
8
|
-
properties: {
|
|
9
|
-
position: Vec3.schema,
|
|
10
|
-
rotation: Quat.schema,
|
|
11
|
-
scale: Vec3.schema,
|
|
12
|
-
},
|
|
13
|
-
required: ['position', 'rotation', 'scale'],
|
|
14
|
-
additionalProperties: false,
|
|
15
|
-
default: {
|
|
16
|
-
position: Vec3.zero,
|
|
17
|
-
rotation: Quat.identity,
|
|
18
|
-
scale: Vec3.one,
|
|
19
|
-
},
|
|
20
|
-
};
|
|
21
|
-
Box.layout = getStructLayout(Box.schema);
|
|
22
|
-
})(Box || (Box = {}));
|
|
23
|
-
//# sourceMappingURL=box.js.map
|
package/dist/math/box/box.js.map
DELETED
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"box.js","sourceRoot":"","sources":["../../../src/math/box/box.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,eAAe,EAAE,MAAM,6BAA6B,CAAC;AAC9D,OAAO,EAAE,IAAI,EAAE,MAAM,iBAAiB,CAAC;AACvC,OAAO,EAAE,IAAI,EAAE,MAAM,iBAAiB,CAAC;AAIvC,MAAM,KAAW,GAAG,CAkBnB;AAlBD,WAAiB,GAAG;IACH,UAAM,GAAG;QAClB,IAAI,EAAE,QAAQ;QACd,UAAU,EAAE;YACR,QAAQ,EAAE,IAAI,CAAC,MAAM;YACrB,QAAQ,EAAE,IAAI,CAAC,MAAM;YACrB,KAAK,EAAE,IAAI,CAAC,MAAM;SACrB;QACD,QAAQ,EAAE,CAAC,UAAU,EAAE,UAAU,EAAE,OAAO,CAAC;QAC3C,oBAAoB,EAAE,KAAK;QAC3B,OAAO,EAAE;YACL,QAAQ,EAAE,IAAI,CAAC,IAAI;YACnB,QAAQ,EAAE,IAAI,CAAC,QAAQ;YACvB,KAAK,EAAE,IAAI,CAAC,GAAG;SAClB;KACsB,CAAC;IAEf,UAAM,GAAG,eAAe,CAAC,IAAA,MAAM,CAAC,CAAC;AAClD,CAAC,EAlBgB,GAAG,KAAH,GAAG,QAkBnB"}
|
package/dist/math/face/face.d.ts
DELETED
|
@@ -1,51 +0,0 @@
|
|
|
1
|
-
import { FromSchema } from "../../schema/index.js";
|
|
2
|
-
import { Vec3 } from "../index.js";
|
|
3
|
-
export declare const schema: {
|
|
4
|
-
readonly type: "number";
|
|
5
|
-
readonly minimum: 0;
|
|
6
|
-
readonly maximum: 5;
|
|
7
|
-
};
|
|
8
|
-
export type Type = FromSchema<typeof schema>;
|
|
9
|
-
type Face = Type;
|
|
10
|
-
/**
|
|
11
|
-
* Face direction constants for cube faces
|
|
12
|
-
*/
|
|
13
|
-
export declare const POS_Z: 0;
|
|
14
|
-
export declare const POS_X: 1;
|
|
15
|
-
export declare const NEG_Z: 2;
|
|
16
|
-
export declare const NEG_X: 3;
|
|
17
|
-
export declare const POS_Y: 4;
|
|
18
|
-
export declare const NEG_Y: 5;
|
|
19
|
-
/**
|
|
20
|
-
* Array of all face directions
|
|
21
|
-
*/
|
|
22
|
-
export declare const ALL_FACES: readonly [0, 1, 2, 3, 4, 5];
|
|
23
|
-
/**
|
|
24
|
-
* Face direction names for debugging/logging
|
|
25
|
-
*/
|
|
26
|
-
export declare const FACE_NAMES: readonly ["POS_Z", "POS_X", "NEG_Z", "NEG_X", "POS_Y", "NEG_Y"];
|
|
27
|
-
/**
|
|
28
|
-
* Get the face name for debugging/logging
|
|
29
|
-
*/
|
|
30
|
-
export declare const getName: (face: Face) => string;
|
|
31
|
-
/**
|
|
32
|
-
* Get the normal vector for a given face
|
|
33
|
-
*/
|
|
34
|
-
export declare const getNormal: (face: Face) => Vec3;
|
|
35
|
-
/**
|
|
36
|
-
* Get the opposite face
|
|
37
|
-
*/
|
|
38
|
-
export declare const getOpposite: (face: Face) => Face;
|
|
39
|
-
/**
|
|
40
|
-
* Check if two faces are opposite
|
|
41
|
-
*/
|
|
42
|
-
export declare const isOpposite: (face1: Face, face2: Face) => boolean;
|
|
43
|
-
/**
|
|
44
|
-
* Get all faces adjacent to the given face (faces that share an edge)
|
|
45
|
-
*/
|
|
46
|
-
export declare const getAdjacent: (face: Face) => readonly Face[];
|
|
47
|
-
/**
|
|
48
|
-
* Check if two faces are adjacent (share an edge)
|
|
49
|
-
*/
|
|
50
|
-
export declare const isAdjacent: (face1: Face, face2: Face) => boolean;
|
|
51
|
-
export {};
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"face.js","sourceRoot":"","sources":["../../../src/math/face/face.ts"],"names":[],"mappings":"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"}
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
export {};
|
|
@@ -1,94 +0,0 @@
|
|
|
1
|
-
/*MIT License
|
|
2
|
-
|
|
3
|
-
© Copyright 2025 Adobe. All rights reserved.
|
|
4
|
-
|
|
5
|
-
Permission is hereby granted, free of charge, to any person obtaining a copy
|
|
6
|
-
of this software and associated documentation files (the "Software"), to deal
|
|
7
|
-
in the Software without restriction, including without limitation the rights
|
|
8
|
-
to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
|
|
9
|
-
copies of the Software, and to permit persons to whom the Software is
|
|
10
|
-
furnished to do so, subject to the following conditions:
|
|
11
|
-
|
|
12
|
-
The above copyright notice and this permission notice shall be included in all
|
|
13
|
-
copies or substantial portions of the Software.
|
|
14
|
-
|
|
15
|
-
THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
|
|
16
|
-
IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
|
|
17
|
-
FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
|
|
18
|
-
AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
|
|
19
|
-
LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
|
|
20
|
-
OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE
|
|
21
|
-
SOFTWARE.*/
|
|
22
|
-
import { describe, it, expect } from 'vitest';
|
|
23
|
-
import * as Face from './face.js';
|
|
24
|
-
describe('Face', () => {
|
|
25
|
-
it('should have correct constants', () => {
|
|
26
|
-
expect(Face.POS_Z).toBe(0);
|
|
27
|
-
expect(Face.POS_X).toBe(1);
|
|
28
|
-
expect(Face.NEG_Z).toBe(2);
|
|
29
|
-
expect(Face.NEG_X).toBe(3);
|
|
30
|
-
expect(Face.POS_Y).toBe(4);
|
|
31
|
-
expect(Face.NEG_Y).toBe(5);
|
|
32
|
-
});
|
|
33
|
-
it('should get correct face names', () => {
|
|
34
|
-
expect(Face.getName(Face.POS_Z)).toBe('POS_Z');
|
|
35
|
-
expect(Face.getName(Face.POS_X)).toBe('POS_X');
|
|
36
|
-
expect(Face.getName(Face.NEG_Z)).toBe('NEG_Z');
|
|
37
|
-
expect(Face.getName(Face.NEG_X)).toBe('NEG_X');
|
|
38
|
-
expect(Face.getName(Face.POS_Y)).toBe('POS_Y');
|
|
39
|
-
expect(Face.getName(Face.NEG_Y)).toBe('NEG_Y');
|
|
40
|
-
});
|
|
41
|
-
it('should get correct normal vectors', () => {
|
|
42
|
-
expect(Face.getNormal(Face.POS_Z)).toEqual([0, 0, 1]);
|
|
43
|
-
expect(Face.getNormal(Face.NEG_Z)).toEqual([0, 0, -1]);
|
|
44
|
-
expect(Face.getNormal(Face.POS_X)).toEqual([1, 0, 0]);
|
|
45
|
-
expect(Face.getNormal(Face.NEG_X)).toEqual([-1, 0, 0]);
|
|
46
|
-
expect(Face.getNormal(Face.POS_Y)).toEqual([0, 1, 0]);
|
|
47
|
-
expect(Face.getNormal(Face.NEG_Y)).toEqual([0, -1, 0]);
|
|
48
|
-
});
|
|
49
|
-
it('should get correct opposite faces', () => {
|
|
50
|
-
expect(Face.getOpposite(Face.POS_Z)).toBe(Face.NEG_Z);
|
|
51
|
-
expect(Face.getOpposite(Face.NEG_Z)).toBe(Face.POS_Z);
|
|
52
|
-
expect(Face.getOpposite(Face.POS_X)).toBe(Face.NEG_X);
|
|
53
|
-
expect(Face.getOpposite(Face.NEG_X)).toBe(Face.POS_X);
|
|
54
|
-
expect(Face.getOpposite(Face.POS_Y)).toBe(Face.NEG_Y);
|
|
55
|
-
expect(Face.getOpposite(Face.NEG_Y)).toBe(Face.POS_Y);
|
|
56
|
-
});
|
|
57
|
-
it('should correctly identify opposite faces', () => {
|
|
58
|
-
expect(Face.isOpposite(Face.POS_Z, Face.NEG_Z)).toBe(true);
|
|
59
|
-
expect(Face.isOpposite(Face.POS_X, Face.NEG_X)).toBe(true);
|
|
60
|
-
expect(Face.isOpposite(Face.POS_Y, Face.NEG_Y)).toBe(true);
|
|
61
|
-
expect(Face.isOpposite(Face.POS_Z, Face.POS_X)).toBe(false);
|
|
62
|
-
expect(Face.isOpposite(Face.POS_Z, Face.POS_Z)).toBe(false);
|
|
63
|
-
});
|
|
64
|
-
it('should get correct adjacent faces', () => {
|
|
65
|
-
const posZAdjacent = Face.getAdjacent(Face.POS_Z);
|
|
66
|
-
expect(posZAdjacent).toContain(Face.POS_X);
|
|
67
|
-
expect(posZAdjacent).toContain(Face.NEG_X);
|
|
68
|
-
expect(posZAdjacent).toContain(Face.POS_Y);
|
|
69
|
-
expect(posZAdjacent).toContain(Face.NEG_Y);
|
|
70
|
-
expect(posZAdjacent).not.toContain(Face.NEG_Z);
|
|
71
|
-
expect(posZAdjacent).not.toContain(Face.POS_Z);
|
|
72
|
-
const posXAdjacent = Face.getAdjacent(Face.POS_X);
|
|
73
|
-
expect(posXAdjacent).toContain(Face.POS_Z);
|
|
74
|
-
expect(posXAdjacent).toContain(Face.NEG_Z);
|
|
75
|
-
expect(posXAdjacent).toContain(Face.POS_Y);
|
|
76
|
-
expect(posXAdjacent).toContain(Face.NEG_Y);
|
|
77
|
-
expect(posXAdjacent).not.toContain(Face.NEG_X);
|
|
78
|
-
expect(posXAdjacent).not.toContain(Face.POS_X);
|
|
79
|
-
});
|
|
80
|
-
it('should correctly identify adjacent faces', () => {
|
|
81
|
-
expect(Face.isAdjacent(Face.POS_Z, Face.POS_X)).toBe(true);
|
|
82
|
-
expect(Face.isAdjacent(Face.POS_Z, Face.NEG_X)).toBe(true);
|
|
83
|
-
expect(Face.isAdjacent(Face.POS_Z, Face.POS_Y)).toBe(true);
|
|
84
|
-
expect(Face.isAdjacent(Face.POS_Z, Face.NEG_Y)).toBe(true);
|
|
85
|
-
expect(Face.isAdjacent(Face.POS_Z, Face.NEG_Z)).toBe(false);
|
|
86
|
-
expect(Face.isAdjacent(Face.POS_Z, Face.POS_Z)).toBe(false);
|
|
87
|
-
});
|
|
88
|
-
it('should throw error for invalid face indices', () => {
|
|
89
|
-
expect(() => Face.getNormal(6)).toThrow('Invalid face index: 6');
|
|
90
|
-
expect(() => Face.getOpposite(6)).toThrow('Invalid face index: 6');
|
|
91
|
-
expect(() => Face.getAdjacent(6)).toThrow('Invalid face index: 6');
|
|
92
|
-
});
|
|
93
|
-
});
|
|
94
|
-
//# sourceMappingURL=face.test.js.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"face.test.js","sourceRoot":"","sources":["../../../src/math/face/face.test.ts"],"names":[],"mappings":"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"}
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
export {};
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"face.js","sourceRoot":"","sources":["../../../src/math/picking/face.ts"],"names":[],"mappings":""}
|
|
@@ -1,30 +0,0 @@
|
|
|
1
|
-
import { Aabb, Line3, Vec3 } from "../index.js";
|
|
2
|
-
export function getClosestEntityToLine(rows, line) {
|
|
3
|
-
let closestEntity = null;
|
|
4
|
-
let closestDistanceSquared = Infinity;
|
|
5
|
-
let closestAlpha = Infinity;
|
|
6
|
-
let pickedPosition = null;
|
|
7
|
-
for (const [id, aabb] of rows) {
|
|
8
|
-
const aabbCenter = Aabb.center(aabb);
|
|
9
|
-
const alpha = Line3.closestPointOnLine(line, aabbCenter);
|
|
10
|
-
const closestPointOnLineSegment = Line3.interpolate(line, alpha);
|
|
11
|
-
const distSquared = Vec3.distanceSquared(aabbCenter, closestPointOnLineSegment);
|
|
12
|
-
if (distSquared < closestDistanceSquared ||
|
|
13
|
-
(distSquared === closestDistanceSquared && alpha < closestAlpha)) {
|
|
14
|
-
closestDistanceSquared = distSquared;
|
|
15
|
-
closestAlpha = alpha;
|
|
16
|
-
closestEntity = id;
|
|
17
|
-
pickedPosition = closestPointOnLineSegment;
|
|
18
|
-
}
|
|
19
|
-
}
|
|
20
|
-
if (closestEntity !== null && pickedPosition) {
|
|
21
|
-
return {
|
|
22
|
-
entity: closestEntity,
|
|
23
|
-
lineAlpha: closestAlpha,
|
|
24
|
-
worldPosition: pickedPosition,
|
|
25
|
-
// face: AabbFace.fromPosition(pickedPosition, rows.get(closestEntity)!),
|
|
26
|
-
};
|
|
27
|
-
}
|
|
28
|
-
return null;
|
|
29
|
-
}
|
|
30
|
-
//# sourceMappingURL=get-closest-entity-to-line.js.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"get-closest-entity-to-line.js","sourceRoot":"","sources":["../../../src/math/picking/get-closest-entity-to-line.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,IAAI,EAAE,KAAK,EAAE,IAAI,EAAE,MAAM,aAAa,CAAC;AAGhD,MAAM,UAAU,sBAAsB,CAAC,IAAuB,EAAE,IAAW;IACvE,IAAI,aAAa,GAAkB,IAAI,CAAC;IACxC,IAAI,sBAAsB,GAAG,QAAQ,CAAC;IACtC,IAAI,YAAY,GAAG,QAAQ,CAAC;IAC5B,IAAI,cAAc,GAAgB,IAAI,CAAC;IACvC,KAAK,MAAM,CAAC,EAAE,EAAE,IAAI,CAAC,IAAI,IAAI,EAAE,CAAC;QAC5B,MAAM,UAAU,GAAG,IAAI,CAAC,MAAM,CAAC,IAAI,CAAC,CAAC;QACrC,MAAM,KAAK,GAAG,KAAK,CAAC,kBAAkB,CAAC,IAAI,EAAE,UAAU,CAAC,CAAC;QACzD,MAAM,yBAAyB,GAAG,KAAK,CAAC,WAAW,CAAC,IAAI,EAAE,KAAK,CAAC,CAAC;QACjE,MAAM,WAAW,GAAG,IAAI,CAAC,eAAe,CAAC,UAAU,EAAE,yBAAyB,CAAC,CAAC;QAChF,IAAI,WAAW,GAAG,sBAAsB;YACpC,CAAC,WAAW,KAAK,sBAAsB,IAAI,KAAK,GAAG,YAAY,CAAC,EAAE,CAAC;YACnE,sBAAsB,GAAG,WAAW,CAAC;YACrC,YAAY,GAAG,KAAK,CAAC;YACrB,aAAa,GAAG,EAAE,CAAC;YACnB,cAAc,GAAG,yBAAyB,CAAC;QAC/C,CAAC;IACL,CAAC;IACD,IAAI,aAAa,KAAK,IAAI,IAAI,cAAc,EAAE,CAAC;QAC3C,OAAO;YACH,MAAM,EAAE,aAAa;YACrB,SAAS,EAAE,YAAY;YACvB,aAAa,EAAE,cAAc;YAC7B,yEAAyE;SAC5E,CAAC;IACN,CAAC;IACD,OAAO,IAAI,CAAC;AAChB,CAAC"}
|
|
@@ -1,27 +0,0 @@
|
|
|
1
|
-
import { Aabb, Vec3 } from "../index.js";
|
|
2
|
-
export function getClosestEntityToPoint(rows, point) {
|
|
3
|
-
let closestRow = -1;
|
|
4
|
-
let closestDistanceSquared = Infinity;
|
|
5
|
-
let closestAabb = null;
|
|
6
|
-
for (const [row, aabb] of rows) {
|
|
7
|
-
const distSquared = Vec3.distanceSquared(point, Aabb.center(aabb));
|
|
8
|
-
if (distSquared < closestDistanceSquared) {
|
|
9
|
-
closestDistanceSquared = distSquared;
|
|
10
|
-
closestRow = row;
|
|
11
|
-
closestAabb = aabb;
|
|
12
|
-
}
|
|
13
|
-
}
|
|
14
|
-
if (closestRow !== -1 && closestAabb) {
|
|
15
|
-
// For point-based picking, we need to calculate the alpha along the line
|
|
16
|
-
// that would put us at the closest point to the AABB center
|
|
17
|
-
// Since this function is called with a point (line.a), alpha should be 0
|
|
18
|
-
return {
|
|
19
|
-
entity: closestRow,
|
|
20
|
-
lineAlpha: 0,
|
|
21
|
-
worldPosition: point,
|
|
22
|
-
// face: AabbFace.fromPosition(point, closestAabb),
|
|
23
|
-
};
|
|
24
|
-
}
|
|
25
|
-
return null;
|
|
26
|
-
}
|
|
27
|
-
//# sourceMappingURL=get-closest-entity-to-point.js.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"get-closest-entity-to-point.js","sourceRoot":"","sources":["../../../src/math/picking/get-closest-entity-to-point.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,IAAI,EAAE,IAAI,EAAE,MAAM,aAAa,CAAC;AAGzC,MAAM,UAAU,uBAAuB,CAAC,IAAuB,EAAE,KAAW;IACxE,IAAI,UAAU,GAAG,CAAC,CAAC,CAAC;IACpB,IAAI,sBAAsB,GAAG,QAAQ,CAAC;IACtC,IAAI,WAAW,GAAgB,IAAI,CAAC;IACpC,KAAK,MAAM,CAAC,GAAG,EAAE,IAAI,CAAC,IAAI,IAAI,EAAE,CAAC;QAC7B,MAAM,WAAW,GAAG,IAAI,CAAC,eAAe,CAAC,KAAK,EAAE,IAAI,CAAC,MAAM,CAAC,IAAI,CAAC,CAAC,CAAC;QACnE,IAAI,WAAW,GAAG,sBAAsB,EAAE,CAAC;YACvC,sBAAsB,GAAG,WAAW,CAAC;YACrC,UAAU,GAAG,GAAG,CAAC;YACjB,WAAW,GAAG,IAAI,CAAC;QACvB,CAAC;IACL,CAAC;IACD,IAAI,UAAU,KAAK,CAAC,CAAC,IAAI,WAAW,EAAE,CAAC;QACnC,yEAAyE;QACzE,4DAA4D;QAC5D,yEAAyE;QACzE,OAAO;YACH,MAAM,EAAE,UAAU;YAClB,SAAS,EAAE,CAAC;YACZ,aAAa,EAAE,KAAK;YACpB,mDAAmD;SACtD,CAAC;IACN,CAAC;IACD,OAAO,IAAI,CAAC;AAChB,CAAC"}
|
|
@@ -1,12 +0,0 @@
|
|
|
1
|
-
import { Entity } from "../../ecs/index.js";
|
|
2
|
-
import { Table } from "../../table/table.js";
|
|
3
|
-
import { Aabb, Line3 } from "../index.js";
|
|
4
|
-
export declare function getIntersectingEntities<T extends Table<{
|
|
5
|
-
id: Entity;
|
|
6
|
-
boundingBox: Aabb;
|
|
7
|
-
}>>(options: {
|
|
8
|
-
tables: readonly T[];
|
|
9
|
-
line: Line3;
|
|
10
|
-
radius?: number;
|
|
11
|
-
predicate?: (table: T, row: number) => boolean;
|
|
12
|
-
}): Map<Entity, Aabb>;
|
|
@@ -1,15 +0,0 @@
|
|
|
1
|
-
import { Aabb } from "../index.js";
|
|
2
|
-
export function getIntersectingEntities(options) {
|
|
3
|
-
const { tables, line, radius = 0, predicate } = options;
|
|
4
|
-
const rows = new Map();
|
|
5
|
-
for (const table of tables) {
|
|
6
|
-
for (let row = 0; row < table.rowCount; row++) {
|
|
7
|
-
const boundingBox = table.columns.boundingBox.get(row);
|
|
8
|
-
if (Aabb.lineIntersection(boundingBox, line, radius) !== -1 && (predicate?.(table, row) ?? true)) {
|
|
9
|
-
rows.set(table.columns.id.get(row), boundingBox);
|
|
10
|
-
}
|
|
11
|
-
}
|
|
12
|
-
}
|
|
13
|
-
return rows;
|
|
14
|
-
}
|
|
15
|
-
//# sourceMappingURL=get-intersecting-entities.js.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"get-intersecting-entities.js","sourceRoot":"","sources":["../../../src/math/picking/get-intersecting-entities.ts"],"names":[],"mappings":"AAEA,OAAO,EAAE,IAAI,EAAS,MAAM,aAAa,CAAC;AAE1C,MAAM,UAAU,uBAAuB,CAAsD,OAK5F;IACG,MAAM,EAAE,MAAM,EAAE,IAAI,EAAE,MAAM,GAAG,CAAC,EAAE,SAAS,EAAE,GAAG,OAAO,CAAC;IACxD,MAAM,IAAI,GAAG,IAAI,GAAG,EAAgB,CAAC;IACrC,KAAK,MAAM,KAAK,IAAI,MAAM,EAAE,CAAC;QACzB,KAAK,IAAI,GAAG,GAAG,CAAC,EAAE,GAAG,GAAG,KAAK,CAAC,QAAQ,EAAE,GAAG,EAAE,EAAE,CAAC;YAC5C,MAAM,WAAW,GAAG,KAAK,CAAC,OAAO,CAAC,WAAW,CAAC,GAAG,CAAC,GAAG,CAAC,CAAC;YACvD,IAAI,IAAI,CAAC,gBAAgB,CAAC,WAAW,EAAE,IAAI,EAAE,MAAM,CAAC,KAAK,CAAC,CAAC,IAAI,CAAC,SAAS,EAAE,CAAC,KAAK,EAAE,GAAG,CAAC,IAAI,IAAI,CAAC,EAAE,CAAC;gBAC/F,IAAI,CAAC,GAAG,CAAC,KAAK,CAAC,OAAO,CAAC,EAAE,CAAC,GAAG,CAAC,GAAG,CAAC,EAAE,WAAW,CAAC,CAAC;YACrD,CAAC;QACL,CAAC;IACL,CAAC;IACD,OAAO,IAAI,CAAC;AAChB,CAAC"}
|
|
@@ -1,29 +0,0 @@
|
|
|
1
|
-
import { Aabb, Line3, Vec3, AabbFace } from "../index.js";
|
|
2
|
-
export function getClosestEntityToLine(rows, line) {
|
|
3
|
-
let closestEntity = null;
|
|
4
|
-
let closestDistanceSquared = Infinity;
|
|
5
|
-
let closestAlpha = Infinity;
|
|
6
|
-
let pickedPosition = null;
|
|
7
|
-
for (const [id, aabb] of rows) {
|
|
8
|
-
const aabbCenter = Aabb.center(aabb);
|
|
9
|
-
const alpha = Line3.closestPointOnLine(line, aabbCenter);
|
|
10
|
-
const closestPointOnLineSegment = Line3.interpolate(line, alpha);
|
|
11
|
-
const distSquared = Vec3.distanceSquared(aabbCenter, closestPointOnLineSegment);
|
|
12
|
-
if (distSquared < closestDistanceSquared ||
|
|
13
|
-
(distSquared === closestDistanceSquared && alpha < closestAlpha)) {
|
|
14
|
-
closestDistanceSquared = distSquared;
|
|
15
|
-
closestAlpha = alpha;
|
|
16
|
-
closestEntity = id;
|
|
17
|
-
pickedPosition = closestPointOnLineSegment;
|
|
18
|
-
}
|
|
19
|
-
}
|
|
20
|
-
if (closestEntity !== null && pickedPosition) {
|
|
21
|
-
return {
|
|
22
|
-
entity: closestEntity,
|
|
23
|
-
position: pickedPosition,
|
|
24
|
-
face: AabbFace.fromPosition(pickedPosition, rows.get(closestEntity)),
|
|
25
|
-
};
|
|
26
|
-
}
|
|
27
|
-
return null;
|
|
28
|
-
}
|
|
29
|
-
//# sourceMappingURL=getClosestEntityToLine.js.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"getClosestEntityToLine.js","sourceRoot":"","sources":["../../../src/math/picking/getClosestEntityToLine.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,IAAI,EAAE,KAAK,EAAE,IAAI,EAAE,QAAQ,EAAE,MAAM,aAAa,CAAC;AAG1D,MAAM,UAAU,sBAAsB,CAAC,IAAuB,EAAE,IAAW;IACvE,IAAI,aAAa,GAAkB,IAAI,CAAC;IACxC,IAAI,sBAAsB,GAAG,QAAQ,CAAC;IACtC,IAAI,YAAY,GAAG,QAAQ,CAAC;IAC5B,IAAI,cAAc,GAAgB,IAAI,CAAC;IACvC,KAAK,MAAM,CAAC,EAAE,EAAE,IAAI,CAAC,IAAI,IAAI,EAAE,CAAC;QAC5B,MAAM,UAAU,GAAG,IAAI,CAAC,MAAM,CAAC,IAAI,CAAC,CAAC;QACrC,MAAM,KAAK,GAAG,KAAK,CAAC,kBAAkB,CAAC,IAAI,EAAE,UAAU,CAAC,CAAC;QACzD,MAAM,yBAAyB,GAAG,KAAK,CAAC,WAAW,CAAC,IAAI,EAAE,KAAK,CAAC,CAAC;QACjE,MAAM,WAAW,GAAG,IAAI,CAAC,eAAe,CAAC,UAAU,EAAE,yBAAyB,CAAC,CAAC;QAChF,IAAI,WAAW,GAAG,sBAAsB;YACpC,CAAC,WAAW,KAAK,sBAAsB,IAAI,KAAK,GAAG,YAAY,CAAC,EAAE,CAAC;YACnE,sBAAsB,GAAG,WAAW,CAAC;YACrC,YAAY,GAAG,KAAK,CAAC;YACrB,aAAa,GAAG,EAAE,CAAC;YACnB,cAAc,GAAG,yBAAyB,CAAC;QAC/C,CAAC;IACL,CAAC;IACD,IAAI,aAAa,KAAK,IAAI,IAAI,cAAc,EAAE,CAAC;QAC3C,OAAO;YACH,MAAM,EAAE,aAAa;YACrB,QAAQ,EAAE,cAAc;YACxB,IAAI,EAAE,QAAQ,CAAC,YAAY,CAAC,cAAc,EAAE,IAAI,CAAC,GAAG,CAAC,aAAa,CAAE,CAAC;SACxE,CAAC;IACN,CAAC;IACD,OAAO,IAAI,CAAC;AAChB,CAAC"}
|
|
@@ -1,27 +0,0 @@
|
|
|
1
|
-
import { Aabb, Vec3, AabbFace } from "../index.js";
|
|
2
|
-
export function getClosestEntityToPoint(rows, point) {
|
|
3
|
-
let closestRow = -1;
|
|
4
|
-
let closestDistanceSquared = Infinity;
|
|
5
|
-
let closestAabb = null;
|
|
6
|
-
for (const [row, aabb] of rows) {
|
|
7
|
-
const distSquared = Vec3.distanceSquared(point, Aabb.center(aabb));
|
|
8
|
-
if (distSquared < closestDistanceSquared) {
|
|
9
|
-
closestDistanceSquared = distSquared;
|
|
10
|
-
closestRow = row;
|
|
11
|
-
closestAabb = aabb;
|
|
12
|
-
}
|
|
13
|
-
}
|
|
14
|
-
if (closestRow !== -1 && closestAabb) {
|
|
15
|
-
// For direct intersection, use the intersection point if possible
|
|
16
|
-
// We'll use the intersection alpha from Aabb.lineIntersection
|
|
17
|
-
// If the line starts inside, alpha=0, so position is line.a
|
|
18
|
-
// Otherwise, Line3.interpolate at alpha
|
|
19
|
-
return {
|
|
20
|
-
entity: closestRow,
|
|
21
|
-
position: point,
|
|
22
|
-
face: AabbFace.fromPosition(point, closestAabb),
|
|
23
|
-
};
|
|
24
|
-
}
|
|
25
|
-
return null;
|
|
26
|
-
}
|
|
27
|
-
//# sourceMappingURL=getClosestEntityToPoint.js.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"getClosestEntityToPoint.js","sourceRoot":"","sources":["../../../src/math/picking/getClosestEntityToPoint.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,IAAI,EAAE,IAAI,EAAE,QAAQ,EAAE,MAAM,aAAa,CAAC;AAGnD,MAAM,UAAU,uBAAuB,CAAC,IAAuB,EAAE,KAAW;IACxE,IAAI,UAAU,GAAG,CAAC,CAAC,CAAC;IACpB,IAAI,sBAAsB,GAAG,QAAQ,CAAC;IACtC,IAAI,WAAW,GAAgB,IAAI,CAAC;IACpC,KAAK,MAAM,CAAC,GAAG,EAAE,IAAI,CAAC,IAAI,IAAI,EAAE,CAAC;QAC7B,MAAM,WAAW,GAAG,IAAI,CAAC,eAAe,CAAC,KAAK,EAAE,IAAI,CAAC,MAAM,CAAC,IAAI,CAAC,CAAC,CAAC;QACnE,IAAI,WAAW,GAAG,sBAAsB,EAAE,CAAC;YACvC,sBAAsB,GAAG,WAAW,CAAC;YACrC,UAAU,GAAG,GAAG,CAAC;YACjB,WAAW,GAAG,IAAI,CAAC;QACvB,CAAC;IACL,CAAC;IACD,IAAI,UAAU,KAAK,CAAC,CAAC,IAAI,WAAW,EAAE,CAAC;QACnC,kEAAkE;QAClE,8DAA8D;QAC9D,4DAA4D;QAC5D,wCAAwC;QACxC,OAAO;YACH,MAAM,EAAE,UAAU;YAClB,QAAQ,EAAE,KAAK;YACf,IAAI,EAAE,QAAQ,CAAC,YAAY,CAAC,KAAK,EAAE,WAAW,CAAC;SAClD,CAAC;IACN,CAAC;IACD,OAAO,IAAI,CAAC;AAChB,CAAC"}
|
|
@@ -1,12 +0,0 @@
|
|
|
1
|
-
import { Entity } from "../../ecs/index.js";
|
|
2
|
-
import { Table } from "../../table/table.js";
|
|
3
|
-
import { Aabb, Line3 } from "../index.js";
|
|
4
|
-
export declare function getIntersectingEntities<T extends Table<{
|
|
5
|
-
id: Entity;
|
|
6
|
-
boundingBox: Aabb;
|
|
7
|
-
}>>(options: {
|
|
8
|
-
tables: readonly T[];
|
|
9
|
-
line: Line3;
|
|
10
|
-
radius?: number;
|
|
11
|
-
predicate?: (table: T, row: number) => boolean;
|
|
12
|
-
}): Map<Entity, Aabb>;
|
|
@@ -1,15 +0,0 @@
|
|
|
1
|
-
import { Aabb } from "../index.js";
|
|
2
|
-
export function getIntersectingEntities(options) {
|
|
3
|
-
const { tables, line, radius = 0, predicate } = options;
|
|
4
|
-
const rows = new Map();
|
|
5
|
-
for (const table of tables) {
|
|
6
|
-
for (let row = 0; row < table.rowCount; row++) {
|
|
7
|
-
const boundingBox = table.columns.boundingBox.get(row);
|
|
8
|
-
if (Aabb.lineIntersection(boundingBox, line, radius) !== -1 && (predicate?.(table, row) ?? true)) {
|
|
9
|
-
rows.set(table.columns.id.get(row), boundingBox);
|
|
10
|
-
}
|
|
11
|
-
}
|
|
12
|
-
}
|
|
13
|
-
return rows;
|
|
14
|
-
}
|
|
15
|
-
//# sourceMappingURL=getIntersectingEntities.js.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"getIntersectingEntities.js","sourceRoot":"","sources":["../../../src/math/picking/getIntersectingEntities.ts"],"names":[],"mappings":"AAEA,OAAO,EAAE,IAAI,EAAS,MAAM,aAAa,CAAC;AAE1C,MAAM,UAAU,uBAAuB,CAAsD,OAK5F;IACG,MAAM,EAAE,MAAM,EAAE,IAAI,EAAE,MAAM,GAAG,CAAC,EAAE,SAAS,EAAE,GAAG,OAAO,CAAC;IACxD,MAAM,IAAI,GAAG,IAAI,GAAG,EAAgB,CAAC;IACrC,KAAK,MAAM,KAAK,IAAI,MAAM,EAAE,CAAC;QACzB,KAAK,IAAI,GAAG,GAAG,CAAC,EAAE,GAAG,GAAG,KAAK,CAAC,QAAQ,EAAE,GAAG,EAAE,EAAE,CAAC;YAC5C,MAAM,WAAW,GAAG,KAAK,CAAC,OAAO,CAAC,WAAW,CAAC,GAAG,CAAC,GAAG,CAAC,CAAC;YACvD,IAAI,IAAI,CAAC,gBAAgB,CAAC,WAAW,EAAE,IAAI,EAAE,MAAM,CAAC,KAAK,CAAC,CAAC,IAAI,CAAC,SAAS,EAAE,CAAC,KAAK,EAAE,GAAG,CAAC,IAAI,IAAI,CAAC,EAAE,CAAC;gBAC/F,IAAI,CAAC,GAAG,CAAC,KAAK,CAAC,OAAO,CAAC,EAAE,CAAC,GAAG,CAAC,GAAG,CAAC,EAAE,WAAW,CAAC,CAAC;YACrD,CAAC;QACL,CAAC;IACL,CAAC;IACD,OAAO,IAAI,CAAC;AAChB,CAAC"}
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../../src/math/picking/index.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;;;;WAoBW;AAGX,cAAc,uBAAuB,CAAC;AACtC,cAAc,kBAAkB,CAAC;AACjC,cAAc,kCAAkC,CAAC;AACjD,cAAc,iCAAiC,CAAC;AAChD,cAAc,gCAAgC,CAAC"}
|
|
@@ -1,19 +0,0 @@
|
|
|
1
|
-
import { Table } from "../../table/index.js";
|
|
2
|
-
import { Aabb } from "../index.js";
|
|
3
|
-
import { Line3 } from "../index.js";
|
|
4
|
-
import { Entity } from "../../ecs/index.js";
|
|
5
|
-
import { PickResult } from "./pick-result.js";
|
|
6
|
-
/**
|
|
7
|
-
* Picks the closest intersecting row from a table.
|
|
8
|
-
* This would be the broad phase picking step.
|
|
9
|
-
* @returns The entity id and picked position, or null if no entity is found.
|
|
10
|
-
*/
|
|
11
|
-
export declare function pickFromTables<T extends Table<{
|
|
12
|
-
id: Entity;
|
|
13
|
-
boundingBox: Aabb;
|
|
14
|
-
}>>(options: {
|
|
15
|
-
tables: readonly T[];
|
|
16
|
-
line: Line3;
|
|
17
|
-
radius?: number;
|
|
18
|
-
predicate?: (table: T, row: number) => boolean;
|
|
19
|
-
}): PickResult | null;
|
|
@@ -1,63 +0,0 @@
|
|
|
1
|
-
/*MIT License
|
|
2
|
-
|
|
3
|
-
© Copyright 2025 Adobe. All rights reserved.
|
|
4
|
-
|
|
5
|
-
Permission is hereby granted, free of charge, to any person obtaining a copy
|
|
6
|
-
of this software and associated documentation files (the "Software"), to deal
|
|
7
|
-
in the Software without restriction, including without limitation the rights
|
|
8
|
-
to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
|
|
9
|
-
copies of the Software, and to permit persons to whom the Software is
|
|
10
|
-
furnished to do so, subject to the following conditions:
|
|
11
|
-
|
|
12
|
-
The above copyright notice and this permission notice shall be included in all
|
|
13
|
-
copies or substantial portions of the Software.
|
|
14
|
-
|
|
15
|
-
THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
|
|
16
|
-
IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
|
|
17
|
-
FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
|
|
18
|
-
AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
|
|
19
|
-
LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
|
|
20
|
-
OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE
|
|
21
|
-
SOFTWARE.*/
|
|
22
|
-
import { Aabb } from "../index.js";
|
|
23
|
-
import { Line3 } from "../index.js";
|
|
24
|
-
import { getIntersectingEntities } from "./get-intersecting-entities.js";
|
|
25
|
-
import { getClosestEntityToPoint } from "./get-closest-entity-to-point.js";
|
|
26
|
-
import { getClosestEntityToLine } from "./get-closest-entity-to-line.js";
|
|
27
|
-
/**
|
|
28
|
-
* Picks the closest intersecting row from a table.
|
|
29
|
-
* This would be the broad phase picking step.
|
|
30
|
-
* @returns The entity id and picked position, or null if no entity is found.
|
|
31
|
-
*/
|
|
32
|
-
export function pickFromTables(options) {
|
|
33
|
-
const { tables, line, radius = 0, predicate } = options;
|
|
34
|
-
let rows = getIntersectingEntities({ tables, line, radius: 0, predicate });
|
|
35
|
-
if (rows.size > 0) {
|
|
36
|
-
// For direct intersection, find the alpha for the closest intersecting entity
|
|
37
|
-
let best = null;
|
|
38
|
-
for (const [id, aabb] of rows) {
|
|
39
|
-
const alpha = Aabb.lineIntersection(aabb, line, 0);
|
|
40
|
-
if (alpha !== -1 && (best === null || alpha < best.alpha)) {
|
|
41
|
-
best = { id, alpha };
|
|
42
|
-
}
|
|
43
|
-
}
|
|
44
|
-
if (best) {
|
|
45
|
-
return {
|
|
46
|
-
entity: best.id,
|
|
47
|
-
lineAlpha: best.alpha,
|
|
48
|
-
worldPosition: Line3.interpolate(line, best.alpha),
|
|
49
|
-
// face: AabbFace.fromPosition(Line3.interpolate(line, best.alpha), rows.get(best.id)!),
|
|
50
|
-
};
|
|
51
|
-
}
|
|
52
|
-
// fallback (should not happen):
|
|
53
|
-
return getClosestEntityToPoint(rows, line.a);
|
|
54
|
-
}
|
|
55
|
-
else if (radius > 0) {
|
|
56
|
-
rows = getIntersectingEntities({ tables, line, radius, predicate });
|
|
57
|
-
if (rows.size > 0) {
|
|
58
|
-
return getClosestEntityToLine(rows, line);
|
|
59
|
-
}
|
|
60
|
-
}
|
|
61
|
-
return null;
|
|
62
|
-
}
|
|
63
|
-
//# sourceMappingURL=pick-from-tables.js.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"pick-from-tables.js","sourceRoot":"","sources":["../../../src/math/picking/pick-from-tables.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;;;;WAoBW;AAGX,OAAO,EAAE,IAAI,EAAE,MAAM,aAAa,CAAC;AACnC,OAAO,EAAE,KAAK,EAAE,MAAM,aAAa,CAAC;AAGpC,OAAO,EAAE,uBAAuB,EAAE,MAAM,gCAAgC,CAAC;AACzE,OAAO,EAAE,uBAAuB,EAAE,MAAM,kCAAkC,CAAC;AAC3E,OAAO,EAAE,sBAAsB,EAAE,MAAM,iCAAiC,CAAC;AAEzE;;;;GAIG;AACH,MAAM,UAAU,cAAc,CAAqD,OAKlF;IACG,MAAM,EAAE,MAAM,EAAE,IAAI,EAAE,MAAM,GAAG,CAAC,EAAE,SAAS,EAAE,GAAG,OAAO,CAAC;IACxD,IAAI,IAAI,GAAG,uBAAuB,CAAC,EAAE,MAAM,EAAE,IAAI,EAAE,MAAM,EAAE,CAAC,EAAE,SAAS,EAAE,CAAC,CAAC;IAC3E,IAAI,IAAI,CAAC,IAAI,GAAG,CAAC,EAAE,CAAC;QAChB,8EAA8E;QAC9E,IAAI,IAAI,GAAyC,IAAI,CAAC;QACtD,KAAK,MAAM,CAAC,EAAE,EAAE,IAAI,CAAC,IAAI,IAAI,EAAE,CAAC;YAC5B,MAAM,KAAK,GAAG,IAAI,CAAC,gBAAgB,CAAC,IAAI,EAAE,IAAI,EAAE,CAAC,CAAC,CAAC;YACnD,IAAI,KAAK,KAAK,CAAC,CAAC,IAAI,CAAC,IAAI,KAAK,IAAI,IAAI,KAAK,GAAG,IAAI,CAAC,KAAK,CAAC,EAAE,CAAC;gBACxD,IAAI,GAAG,EAAE,EAAE,EAAE,KAAK,EAAE,CAAC;YACzB,CAAC;QACL,CAAC;QACD,IAAI,IAAI,EAAE,CAAC;YACP,OAAO;gBACH,MAAM,EAAE,IAAI,CAAC,EAAE;gBACf,SAAS,EAAE,IAAI,CAAC,KAAK;gBACrB,aAAa,EAAE,KAAK,CAAC,WAAW,CAAC,IAAI,EAAE,IAAI,CAAC,KAAK,CAAC;gBAClD,wFAAwF;aAC3F,CAAC;QACN,CAAC;QACD,gCAAgC;QAChC,OAAO,uBAAuB,CAAC,IAAI,EAAE,IAAI,CAAC,CAAC,CAAC,CAAC;IACjD,CAAC;SAAM,IAAI,MAAM,GAAG,CAAC,EAAE,CAAC;QACpB,IAAI,GAAG,uBAAuB,CAAC,EAAE,MAAM,EAAE,IAAI,EAAE,MAAM,EAAE,SAAS,EAAE,CAAC,CAAC;QACpE,IAAI,IAAI,CAAC,IAAI,GAAG,CAAC,EAAE,CAAC;YAChB,OAAO,sBAAsB,CAAC,IAAI,EAAE,IAAI,CAAC,CAAC;QAC9C,CAAC;IACL,CAAC;IACD,OAAO,IAAI,CAAC;AAChB,CAAC"}
|
|
@@ -1,12 +0,0 @@
|
|
|
1
|
-
import { Entity } from "../../ecs/index.js";
|
|
2
|
-
import { Vec3 } from "../index.js";
|
|
3
|
-
export interface PickResult {
|
|
4
|
-
/** The entity that was picked. */
|
|
5
|
-
entity: Entity;
|
|
6
|
-
/** Alpha value (0-1) along the picking line where the intersection/closest point occurs. */
|
|
7
|
-
lineAlpha: number;
|
|
8
|
-
/** World-space position of the picked entity. */
|
|
9
|
-
worldPosition: Vec3;
|
|
10
|
-
/** Model-space position on the picked entity. */
|
|
11
|
-
modelPosition?: Vec3;
|
|
12
|
-
}
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"pick-result.js","sourceRoot":"","sources":["../../../src/math/picking/pick-result.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;;;;WAoBW"}
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
export {};
|