@konitif/viewer-3d 0.284.2 → 0.285.1

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.
@@ -1,32 +1,6 @@
1
+ import { type ViewerVisualGroundComponentId, type ViewerVisualGroundConfig, type ViewerVisualGroundOptions } from '../visualGroundConfig.js';
2
+ export { type ViewerVisualGroundComponentId, type ViewerVisualGroundComponents, type ViewerVisualGroundConfig, type ViewerVisualGroundOptions, DEFAULT_VIEWER_VISUAL_GROUND_CONFIG, DEFAULT_VIEWER_VISUAL_GROUND_PALETTE, normalizeViewerVisualGroundConfig } from '../visualGroundConfig.js';
1
3
  import { Color, Group, type ColorRepresentation } from 'three';
2
- export type ViewerVisualGroundComponentId = 'tilePattern' | 'surfaceVariation' | 'fogFade' | 'receiveShadows' | 'reflection' | 'focusTilt';
3
- export interface ViewerVisualGroundComponents {
4
- tilePattern: boolean;
5
- surfaceVariation: boolean;
6
- fogFade: boolean;
7
- receiveShadows: boolean;
8
- reflection: boolean;
9
- focusTilt: boolean;
10
- }
11
- export interface ViewerVisualGroundConfig {
12
- size: number;
13
- tileSize: number;
14
- jointWidth: number;
15
- majorJointWidth: number;
16
- majorJointOpacity: number;
17
- variationStrength: number;
18
- surfaceOpacity: number;
19
- roughness: number;
20
- metalness: number;
21
- reflectionOpacity: number;
22
- reflectionResolution: number;
23
- reflectionBlurRadius: number;
24
- fogDensity: number;
25
- components: ViewerVisualGroundComponents;
26
- }
27
- export type ViewerVisualGroundOptions = Omit<Partial<ViewerVisualGroundConfig>, 'components'> & {
28
- components?: Partial<ViewerVisualGroundComponents>;
29
- };
30
4
  export interface ViewerVisualGroundPalette {
31
5
  base: Color;
32
6
  alternate: Color;
@@ -49,14 +23,6 @@ export interface ViewerGroundReflectionRefreshDecision {
49
23
  * and timeline interactions do not need a second full scene render at 120 Hz.
50
24
  */
51
25
  export declare function shouldRefreshViewerGroundReflection({ forced, lastRefreshAt, minimumIntervalMs, now }: ViewerGroundReflectionRefreshDecision): boolean;
52
- export declare const DEFAULT_VIEWER_VISUAL_GROUND_CONFIG: ViewerVisualGroundConfig;
53
- export declare const DEFAULT_VIEWER_VISUAL_GROUND_PALETTE: {
54
- readonly base: "#172c40";
55
- readonly alternate: "#203a50";
56
- readonly joint: "#102235";
57
- readonly majorJoint: "#afc7d5";
58
- readonly reflection: "#b6d1e2";
59
- };
60
26
  /**
61
27
  * Removes the planar mirror before its oblique clip plane becomes unstable at
62
28
  * grazing incidence. The opaque visual ground remains continuous underneath.
@@ -104,7 +70,6 @@ export declare class VisualGroundLayer {
104
70
  private prepareReflectionFacingPass;
105
71
  private resolveReflectionMaterialVariant;
106
72
  }
107
- export declare function normalizeViewerVisualGroundConfig(config?: ViewerVisualGroundOptions): ViewerVisualGroundConfig;
108
73
  export declare function injectGroundVertexShader(source: string): string;
109
74
  export declare function injectGroundFragmentShader(source: string): string;
110
75
  //# sourceMappingURL=VisualGroundLayer.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"VisualGroundLayer.d.ts","sourceRoot":"","sources":["../../src/renderer/VisualGroundLayer.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"VisualGroundLayer.d.ts","sourceRoot":"","sources":["../../src/renderer/VisualGroundLayer.ts"],"names":[],"mappings":"AAAA,OAAO,EACL,KAAK,6BAA6B,EAElC,KAAK,wBAAwB,EAC7B,KAAK,yBAAyB,EAI/B,MAAM,0BAA0B,CAAC;AAClC,OAAO,EACL,KAAK,6BAA6B,EAClC,KAAK,4BAA4B,EACjC,KAAK,wBAAwB,EAC7B,KAAK,yBAAyB,EAC9B,mCAAmC,EACnC,oCAAoC,EACpC,iCAAiC,EAClC,MAAM,0BAA0B,CAAC;AAElC,OAAO,EACL,KAAK,EAGL,KAAK,EASL,KAAK,mBAAmB,EAGzB,MAAM,OAAO,CAAC;AAWf,MAAM,WAAW,yBAAyB;IACxC,IAAI,EAAE,KAAK,CAAC;IACZ,SAAS,EAAE,KAAK,CAAC;IACjB,KAAK,EAAE,KAAK,CAAC;IACb,UAAU,EAAE,KAAK,CAAC;IAClB,UAAU,EAAE,KAAK,CAAC;CACnB;AAED,MAAM,MAAM,gCAAgC,GAAG,OAAO,CAAC;KACpD,GAAG,IAAI,MAAM,yBAAyB,GAAG,mBAAmB;CAC9D,CAAC,CAAC;AAEH,MAAM,WAAW,qCAAqC;IACpD,MAAM,EAAE,OAAO,CAAC;IAChB,aAAa,EAAE,MAAM,CAAC;IACtB,iBAAiB,EAAE,MAAM,CAAC;IAC1B,GAAG,EAAE,MAAM,CAAC;CACb;AAED;;;;GAIG;AACH,wBAAgB,mCAAmC,CAAC,EAClD,MAAM,EACN,aAAa,EACb,iBAAiB,EACjB,GAAG,EACJ,EAAE,qCAAqC,GAAG,OAAO,CAEjD;AAkCD;;;GAGG;AACH,wBAAgB,6CAA6C,CAAC,SAAS,EAAE,MAAM,GAAG,MAAM,CAOvF;AAED;;;;;GAKG;AACH,qBAAa,iBAAiB;IAC5B,QAAQ,CAAC,KAAK,0CAAe;IAE7B,OAAO,CAAC,MAAM,CAA2B;IACzC,OAAO,CAAC,OAAO,CAA4B;IAC3C,OAAO,CAAC,QAAQ,CAAgB;IAChC,OAAO,CAAC,kBAAkB,CAAgB;IAC1C,OAAO,CAAC,QAAQ,CAAC,eAAe,CAAuB;IACvD,OAAO,CAAC,QAAQ,CAAC,WAAW,CAA4C;IACxE,OAAO,CAAC,QAAQ,CAAC,cAAc,CAAY;IAC3C,OAAO,CAAC,QAAQ,CAAC,kBAAkB,CAAiB;IACpD,OAAO,CAAC,QAAQ,CAAC,0BAA0B,CAAkD;IAC7F,OAAO,CAAC,gBAAgB,CAA+B;IACvD,OAAO,CAAC,kCAAkC,CAAK;IAC/C,OAAO,CAAC,uBAAuB,CAAQ;IACvC,OAAO,CAAC,uBAAuB,CAA4B;gBAE/C,MAAM,GAAE,yBAA8B,EAAE,OAAO,GAAE,gCAAqC;IAwElG,UAAU,CAAC,OAAO,EAAE,OAAO,GAAG,IAAI;IAOlC,mCAAmC,CAAC,iBAAiB,EAAE,MAAM,GAAG,IAAI;IAMpE,wBAAwB,IAAI,IAAI;IAIhC,mBAAmB,CAAC,WAAW,EAAE,6BAA6B,EAAE,OAAO,EAAE,OAAO,GAAG,IAAI;IA6BvF,SAAS,CAAC,MAAM,EAAE,yBAAyB,GAAG,IAAI;IA2DlD,YAAY,CAAC,OAAO,EAAE,gCAAgC,GAAG,IAAI;IAO7D,SAAS,IAAI,wBAAwB;IAOrC,OAAO,IAAI,IAAI;IAaf,OAAO,CAAC,mBAAmB;IAkB3B,OAAO,CAAC,yBAAyB;IAwDjC;;;;;;OAMG;IACH,OAAO,CAAC,2BAA2B;IA0EnC,OAAO,CAAC,gCAAgC;CAqBzC;AAID,wBAAgB,wBAAwB,CAAC,MAAM,EAAE,MAAM,GAAG,MAAM,CAI/D;AAED,wBAAgB,0BAA0B,CAAC,MAAM,EAAE,MAAM,GAAG,MAAM,CAiGjE"}
@@ -1,3 +1,5 @@
1
+ import { DEFAULT_VIEWER_VISUAL_GROUND_CONFIG, DEFAULT_VIEWER_VISUAL_GROUND_PALETTE, normalizeViewerVisualGroundConfig } from '../visualGroundConfig.js';
2
+ export { DEFAULT_VIEWER_VISUAL_GROUND_CONFIG, DEFAULT_VIEWER_VISUAL_GROUND_PALETTE, normalizeViewerVisualGroundConfig } from '../visualGroundConfig.js';
1
3
  import { Color, DoubleSide, FrontSide, Group, MathUtils, Mesh, MeshStandardMaterial, PlaneGeometry, ShaderMaterial, Vector2, Vector3 } from 'three';
2
4
  import { Reflector } from 'three/examples/jsm/objects/Reflector.js';
3
5
  /**
@@ -8,42 +10,6 @@ import { Reflector } from 'three/examples/jsm/objects/Reflector.js';
8
10
  export function shouldRefreshViewerGroundReflection({ forced, lastRefreshAt, minimumIntervalMs, now }) {
9
11
  return forced || minimumIntervalMs <= 0 || now - lastRefreshAt >= minimumIntervalMs;
10
12
  }
11
- export const DEFAULT_VIEWER_VISUAL_GROUND_CONFIG = {
12
- // Orthographic/isometric projections preserve their footprint with depth.
13
- // The visual plane must therefore extend beyond the distance at which the
14
- // exponential fog becomes opaque, otherwise its near edge remains visible.
15
- size: 160,
16
- tileSize: 0.5,
17
- jointWidth: 0,
18
- majorJointWidth: 0.003,
19
- majorJointOpacity: 0.55,
20
- variationStrength: 0.11,
21
- surfaceOpacity: 1,
22
- roughness: 0.58,
23
- metalness: 0.04,
24
- reflectionOpacity: 0.14,
25
- reflectionResolution: 1024,
26
- reflectionBlurRadius: 1.2,
27
- // Keep the robot readable at working distance while absorbing the tile
28
- // pattern before it reaches the horizon. The previous 0.068 density left a
29
- // visible checker band between the ground and the sky on wide viewports.
30
- fogDensity: 0.095,
31
- components: {
32
- tilePattern: true,
33
- surfaceVariation: true,
34
- fogFade: true,
35
- receiveShadows: true,
36
- reflection: true,
37
- focusTilt: true
38
- }
39
- };
40
- export const DEFAULT_VIEWER_VISUAL_GROUND_PALETTE = {
41
- base: '#172c40',
42
- alternate: '#203a50',
43
- joint: '#102235',
44
- majorJoint: '#afc7d5',
45
- reflection: '#b6d1e2'
46
- };
47
13
  const VIEWER_GROUND_REFLECTION_GRAZING_FADE_OUT = 0.035;
48
14
  const VIEWER_GROUND_REFLECTION_GRAZING_FADE_IN = 0.13;
49
15
  /**
@@ -411,32 +377,6 @@ uniform float konitifReflectionBlurRadius;`)
411
377
  return material;
412
378
  }
413
379
  }
414
- export function normalizeViewerVisualGroundConfig(config = {}) {
415
- const components = config.components ?? {};
416
- return {
417
- size: clampFinite(config.size, DEFAULT_VIEWER_VISUAL_GROUND_CONFIG.size, 2, 320),
418
- tileSize: clampFinite(config.tileSize, DEFAULT_VIEWER_VISUAL_GROUND_CONFIG.tileSize, 0.05, 4),
419
- jointWidth: clampFinite(config.jointWidth, DEFAULT_VIEWER_VISUAL_GROUND_CONFIG.jointWidth, 0, 0.2),
420
- majorJointWidth: clampFinite(config.majorJointWidth, DEFAULT_VIEWER_VISUAL_GROUND_CONFIG.majorJointWidth, 0.001, 0.1),
421
- majorJointOpacity: clampFinite(config.majorJointOpacity, DEFAULT_VIEWER_VISUAL_GROUND_CONFIG.majorJointOpacity, 0, 1),
422
- variationStrength: clampFinite(config.variationStrength, DEFAULT_VIEWER_VISUAL_GROUND_CONFIG.variationStrength, 0, 0.5),
423
- surfaceOpacity: clampFinite(config.surfaceOpacity, DEFAULT_VIEWER_VISUAL_GROUND_CONFIG.surfaceOpacity, 0, 1),
424
- roughness: clampFinite(config.roughness, DEFAULT_VIEWER_VISUAL_GROUND_CONFIG.roughness, 0, 1),
425
- metalness: clampFinite(config.metalness, DEFAULT_VIEWER_VISUAL_GROUND_CONFIG.metalness, 0, 1),
426
- reflectionOpacity: clampFinite(config.reflectionOpacity, DEFAULT_VIEWER_VISUAL_GROUND_CONFIG.reflectionOpacity, 0, 0.5),
427
- reflectionResolution: Math.round(clampFinite(config.reflectionResolution, DEFAULT_VIEWER_VISUAL_GROUND_CONFIG.reflectionResolution, 128, 2048)),
428
- reflectionBlurRadius: clampFinite(config.reflectionBlurRadius, DEFAULT_VIEWER_VISUAL_GROUND_CONFIG.reflectionBlurRadius, 0, 2.5),
429
- fogDensity: clampFinite(config.fogDensity, DEFAULT_VIEWER_VISUAL_GROUND_CONFIG.fogDensity, 0.001, 0.5),
430
- components: {
431
- tilePattern: components.tilePattern ?? DEFAULT_VIEWER_VISUAL_GROUND_CONFIG.components.tilePattern,
432
- surfaceVariation: components.surfaceVariation ?? DEFAULT_VIEWER_VISUAL_GROUND_CONFIG.components.surfaceVariation,
433
- fogFade: components.fogFade ?? DEFAULT_VIEWER_VISUAL_GROUND_CONFIG.components.fogFade,
434
- receiveShadows: components.receiveShadows ?? DEFAULT_VIEWER_VISUAL_GROUND_CONFIG.components.receiveShadows,
435
- reflection: components.reflection ?? DEFAULT_VIEWER_VISUAL_GROUND_CONFIG.components.reflection,
436
- focusTilt: components.focusTilt ?? DEFAULT_VIEWER_VISUAL_GROUND_CONFIG.components.focusTilt
437
- }
438
- };
439
- }
440
380
  export function injectGroundVertexShader(source) {
441
381
  return source
442
382
  .replace('void main() {', 'varying vec2 vKonitifGroundPosition;\nvoid main() {')
@@ -567,10 +507,4 @@ function normalizeViewerVisualGroundPalette(palette) {
567
507
  function normalizePaletteColor(value, fallback) {
568
508
  return value instanceof Color ? value.clone() : new Color(value ?? fallback);
569
509
  }
570
- function clampFinite(value, fallback, minimum, maximum) {
571
- if (!Number.isFinite(value)) {
572
- return fallback;
573
- }
574
- return Math.min(maximum, Math.max(minimum, value));
575
- }
576
510
  //# sourceMappingURL=VisualGroundLayer.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"VisualGroundLayer.js","sourceRoot":"","sources":["../../src/renderer/VisualGroundLayer.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"VisualGroundLayer.js","sourceRoot":"","sources":["../../src/renderer/VisualGroundLayer.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,38 @@
1
+ export type ViewerVisualGroundComponentId = 'tilePattern' | 'surfaceVariation' | 'fogFade' | 'receiveShadows' | 'reflection' | 'focusTilt';
2
+ export interface ViewerVisualGroundComponents {
3
+ tilePattern: boolean;
4
+ surfaceVariation: boolean;
5
+ fogFade: boolean;
6
+ receiveShadows: boolean;
7
+ reflection: boolean;
8
+ focusTilt: boolean;
9
+ }
10
+ export interface ViewerVisualGroundConfig {
11
+ size: number;
12
+ tileSize: number;
13
+ jointWidth: number;
14
+ majorJointWidth: number;
15
+ majorJointOpacity: number;
16
+ variationStrength: number;
17
+ surfaceOpacity: number;
18
+ roughness: number;
19
+ metalness: number;
20
+ reflectionOpacity: number;
21
+ reflectionResolution: number;
22
+ reflectionBlurRadius: number;
23
+ fogDensity: number;
24
+ components: ViewerVisualGroundComponents;
25
+ }
26
+ export type ViewerVisualGroundOptions = Omit<Partial<ViewerVisualGroundConfig>, 'components'> & {
27
+ components?: Partial<ViewerVisualGroundComponents>;
28
+ };
29
+ export declare const DEFAULT_VIEWER_VISUAL_GROUND_CONFIG: ViewerVisualGroundConfig;
30
+ export declare const DEFAULT_VIEWER_VISUAL_GROUND_PALETTE: {
31
+ readonly base: "#172c40";
32
+ readonly alternate: "#203a50";
33
+ readonly joint: "#102235";
34
+ readonly majorJoint: "#afc7d5";
35
+ readonly reflection: "#b6d1e2";
36
+ };
37
+ export declare function normalizeViewerVisualGroundConfig(config?: ViewerVisualGroundOptions): ViewerVisualGroundConfig;
38
+ //# sourceMappingURL=visualGroundConfig.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"visualGroundConfig.d.ts","sourceRoot":"","sources":["../src/visualGroundConfig.ts"],"names":[],"mappings":"AAAA,MAAM,MAAM,6BAA6B,GACrC,aAAa,GACb,kBAAkB,GAClB,SAAS,GACT,gBAAgB,GAChB,YAAY,GACZ,WAAW,CAAC;AAEhB,MAAM,WAAW,4BAA4B;IAC3C,WAAW,EAAE,OAAO,CAAC;IACrB,gBAAgB,EAAE,OAAO,CAAC;IAC1B,OAAO,EAAE,OAAO,CAAC;IACjB,cAAc,EAAE,OAAO,CAAC;IACxB,UAAU,EAAE,OAAO,CAAC;IACpB,SAAS,EAAE,OAAO,CAAC;CACpB;AAED,MAAM,WAAW,wBAAwB;IACvC,IAAI,EAAE,MAAM,CAAC;IACb,QAAQ,EAAE,MAAM,CAAC;IACjB,UAAU,EAAE,MAAM,CAAC;IACnB,eAAe,EAAE,MAAM,CAAC;IACxB,iBAAiB,EAAE,MAAM,CAAC;IAC1B,iBAAiB,EAAE,MAAM,CAAC;IAC1B,cAAc,EAAE,MAAM,CAAC;IACvB,SAAS,EAAE,MAAM,CAAC;IAClB,SAAS,EAAE,MAAM,CAAC;IAClB,iBAAiB,EAAE,MAAM,CAAC;IAC1B,oBAAoB,EAAE,MAAM,CAAC;IAC7B,oBAAoB,EAAE,MAAM,CAAC;IAC7B,UAAU,EAAE,MAAM,CAAC;IACnB,UAAU,EAAE,4BAA4B,CAAC;CAC1C;AAED,MAAM,MAAM,yBAAyB,GAAG,IAAI,CAAC,OAAO,CAAC,wBAAwB,CAAC,EAAE,YAAY,CAAC,GAAG;IAC9F,UAAU,CAAC,EAAE,OAAO,CAAC,4BAA4B,CAAC,CAAC;CACpD,CAAC;AAEF,eAAO,MAAM,mCAAmC,EAAE,wBA4BjD,CAAC;AAEF,eAAO,MAAM,oCAAoC;;;;;;CAMvC,CAAC;AAEX,wBAAgB,iCAAiC,CAC/C,MAAM,GAAE,yBAA8B,GACrC,wBAAwB,CAgE1B"}
@@ -0,0 +1,69 @@
1
+ export const DEFAULT_VIEWER_VISUAL_GROUND_CONFIG = {
2
+ // Orthographic/isometric projections preserve their footprint with depth.
3
+ // The visual plane must therefore extend beyond the distance at which the
4
+ // exponential fog becomes opaque, otherwise its near edge remains visible.
5
+ size: 160,
6
+ tileSize: 0.5,
7
+ jointWidth: 0,
8
+ majorJointWidth: 0.003,
9
+ majorJointOpacity: 0.55,
10
+ variationStrength: 0.11,
11
+ surfaceOpacity: 1,
12
+ roughness: 0.58,
13
+ metalness: 0.04,
14
+ reflectionOpacity: 0.14,
15
+ reflectionResolution: 1024,
16
+ reflectionBlurRadius: 1.2,
17
+ // Keep the robot readable at working distance while absorbing the tile
18
+ // pattern before it reaches the horizon. The previous 0.068 density left a
19
+ // visible checker band between the ground and the sky on wide viewports.
20
+ fogDensity: 0.095,
21
+ components: {
22
+ tilePattern: true,
23
+ surfaceVariation: true,
24
+ fogFade: true,
25
+ receiveShadows: true,
26
+ reflection: true,
27
+ focusTilt: true
28
+ }
29
+ };
30
+ export const DEFAULT_VIEWER_VISUAL_GROUND_PALETTE = {
31
+ base: '#172c40',
32
+ alternate: '#203a50',
33
+ joint: '#102235',
34
+ majorJoint: '#afc7d5',
35
+ reflection: '#b6d1e2'
36
+ };
37
+ export function normalizeViewerVisualGroundConfig(config = {}) {
38
+ const components = config.components ?? {};
39
+ return {
40
+ size: clampFinite(config.size, DEFAULT_VIEWER_VISUAL_GROUND_CONFIG.size, 2, 320),
41
+ tileSize: clampFinite(config.tileSize, DEFAULT_VIEWER_VISUAL_GROUND_CONFIG.tileSize, 0.05, 4),
42
+ jointWidth: clampFinite(config.jointWidth, DEFAULT_VIEWER_VISUAL_GROUND_CONFIG.jointWidth, 0, 0.2),
43
+ majorJointWidth: clampFinite(config.majorJointWidth, DEFAULT_VIEWER_VISUAL_GROUND_CONFIG.majorJointWidth, 0.001, 0.1),
44
+ majorJointOpacity: clampFinite(config.majorJointOpacity, DEFAULT_VIEWER_VISUAL_GROUND_CONFIG.majorJointOpacity, 0, 1),
45
+ variationStrength: clampFinite(config.variationStrength, DEFAULT_VIEWER_VISUAL_GROUND_CONFIG.variationStrength, 0, 0.5),
46
+ surfaceOpacity: clampFinite(config.surfaceOpacity, DEFAULT_VIEWER_VISUAL_GROUND_CONFIG.surfaceOpacity, 0, 1),
47
+ roughness: clampFinite(config.roughness, DEFAULT_VIEWER_VISUAL_GROUND_CONFIG.roughness, 0, 1),
48
+ metalness: clampFinite(config.metalness, DEFAULT_VIEWER_VISUAL_GROUND_CONFIG.metalness, 0, 1),
49
+ reflectionOpacity: clampFinite(config.reflectionOpacity, DEFAULT_VIEWER_VISUAL_GROUND_CONFIG.reflectionOpacity, 0, 0.5),
50
+ reflectionResolution: Math.round(clampFinite(config.reflectionResolution, DEFAULT_VIEWER_VISUAL_GROUND_CONFIG.reflectionResolution, 128, 2048)),
51
+ reflectionBlurRadius: clampFinite(config.reflectionBlurRadius, DEFAULT_VIEWER_VISUAL_GROUND_CONFIG.reflectionBlurRadius, 0, 2.5),
52
+ fogDensity: clampFinite(config.fogDensity, DEFAULT_VIEWER_VISUAL_GROUND_CONFIG.fogDensity, 0.001, 0.5),
53
+ components: {
54
+ tilePattern: components.tilePattern ?? DEFAULT_VIEWER_VISUAL_GROUND_CONFIG.components.tilePattern,
55
+ surfaceVariation: components.surfaceVariation ?? DEFAULT_VIEWER_VISUAL_GROUND_CONFIG.components.surfaceVariation,
56
+ fogFade: components.fogFade ?? DEFAULT_VIEWER_VISUAL_GROUND_CONFIG.components.fogFade,
57
+ receiveShadows: components.receiveShadows ?? DEFAULT_VIEWER_VISUAL_GROUND_CONFIG.components.receiveShadows,
58
+ reflection: components.reflection ?? DEFAULT_VIEWER_VISUAL_GROUND_CONFIG.components.reflection,
59
+ focusTilt: components.focusTilt ?? DEFAULT_VIEWER_VISUAL_GROUND_CONFIG.components.focusTilt
60
+ }
61
+ };
62
+ }
63
+ function clampFinite(value, fallback, minimum, maximum) {
64
+ if (!Number.isFinite(value)) {
65
+ return fallback;
66
+ }
67
+ return Math.min(maximum, Math.max(minimum, value));
68
+ }
69
+ //# sourceMappingURL=visualGroundConfig.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"visualGroundConfig.js","sourceRoot":"","sources":["../src/visualGroundConfig.ts"],"names":[],"mappings":"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"}
package/package.json CHANGED
@@ -1,10 +1,10 @@
1
1
  {
2
2
  "name": "@konitif/viewer-3d",
3
3
  "license": "PolyForm-Noncommercial-1.0.0",
4
- "version": "0.284.2",
4
+ "version": "0.285.1",
5
5
  "private": false,
6
6
  "type": "module",
7
- "description": "Product-neutral Three.js projection contracts and explicit-provider renderer for KONITIF viewers.",
7
+ "description": "Three.js spatial projection contracts and an explicit-provider renderer for KONITIF viewers.",
8
8
  "repository": {
9
9
  "type": "git",
10
10
  "url": "git+https://github.com/LeMouf/konitif-viewer-3d.git"
@@ -23,6 +23,22 @@
23
23
  "./renderer": {
24
24
  "types": "./dist/renderer/index.d.ts",
25
25
  "import": "./dist/renderer/index.js"
26
+ },
27
+ "./orientation": {
28
+ "types": "./dist/orientationGizmoProjection.d.ts",
29
+ "import": "./dist/orientationGizmoProjection.js"
30
+ },
31
+ "./visual-ground": {
32
+ "types": "./dist/visualGroundConfig.d.ts",
33
+ "import": "./dist/visualGroundConfig.js"
34
+ },
35
+ "./projectile": {
36
+ "types": "./dist/renderer/ProjectileInteraction.d.ts",
37
+ "import": "./dist/renderer/ProjectileInteraction.js"
38
+ },
39
+ "./led-calibration": {
40
+ "types": "./dist/ledRingCalibration.d.ts",
41
+ "import": "./dist/ledRingCalibration.js"
26
42
  }
27
43
  },
28
44
  "files": [
@@ -40,7 +56,7 @@
40
56
  "prepublishOnly": "npm run build && npm test"
41
57
  },
42
58
  "dependencies": {
43
- "@konitif/physics": "0.284.1",
59
+ "@konitif/physics": "0.285.0",
44
60
  "@konitif/temporal": "0.284.1",
45
61
  "@konitif/tools": "0.284.3",
46
62
  "@konitif/viewer": "0.284.1",
@@ -6,5 +6,5 @@ This directory contains authored, machine-readable documentation for
6
6
  - [`catalog.json`](catalog.json) groups spatial contracts and renderer responsibilities.
7
7
  - [`diagrams.json`](diagrams.json) describes the subject-to-scene boundary.
8
8
 
9
- These files support documentation tooling. They do not identify a robot,
10
- configure product physics or transfer subject authority to the renderer.
9
+ These files support documentation tooling. They do not identify a subject,
10
+ configure simulation policy or transfer subject authority to the renderer.
@@ -3,6 +3,16 @@
3
3
  "package": "@konitif/viewer-3d",
4
4
  "intent": "Project a subject into a 3D scene without granting the view authority over the subject.",
5
5
  "clusters": [
6
+ {
7
+ "id": "orientation-projection",
8
+ "title": "Camera orientation projection",
9
+ "summary": "Pure camera quaternion projection into a CSS orientation compass.",
10
+ "authority": "Derived view rotation; the camera remains the orientation authority.",
11
+ "owns": ["quaternion normalization", "camera-to-view rotation", "CSS axis bridge"],
12
+ "doesNotOwn": ["camera state", "DOM", "subject pose"],
13
+ "workflow": ["Observe", "Normalize", "Project"],
14
+ "symbolNames": ["ViewerOrientationQuaternion", "resolveViewerOrientationGizmoTransform", "createViewerOrientationGizmoMatrix"]
15
+ },
6
16
  {
7
17
  "id": "spatial-contracts",
8
18
  "title": "Spatial contracts",
@@ -62,10 +72,10 @@
62
72
  "renderer lifecycle"
63
73
  ],
64
74
  "doesNotOwn": [
65
- "robot identity",
66
- "physics policy",
67
- "experimental campaign",
68
- "Workbench shell"
75
+ "subject identity",
76
+ "simulation policy",
77
+ "observation protocol",
78
+ "host shell"
69
79
  ],
70
80
  "workflow": [
71
81
  "Receive",
@@ -80,12 +90,12 @@
80
90
  ]
81
91
  },
82
92
  {
83
- "id": "workflow-integration",
84
- "title": "Workflow and tool",
85
- "summary": "3D specialization of a composition source and a Workbench contribution.",
93
+ "id": "composition-integration",
94
+ "title": "Composition and host contribution",
95
+ "summary": "3D specialization of a composition source and a portable host contribution.",
86
96
  "authority": "Amodal Viewer contract specialized by the 3D incarnation.",
87
97
  "owns": [
88
- "workflow source",
98
+ "composition source",
89
99
  "intent",
90
100
  "module"
91
101
  ],