@363045841yyt/klinechart-core 0.9.0-alpha.2 → 0.9.0-alpha.4
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/controllers/createChartController.d.ts.map +1 -1
- package/dist/controllers/createChartController.js +9 -8
- package/dist/controllers/createChartController.js.map +1 -1
- package/dist/controllers/index.d.ts +1 -0
- package/dist/controllers/index.d.ts.map +1 -1
- package/dist/controllers/index.js.map +1 -1
- package/dist/controllers/types.d.ts +5 -0
- package/dist/controllers/types.d.ts.map +1 -1
- package/dist/data/binance.d.ts +1 -1
- package/dist/data/binance.d.ts.map +1 -1
- package/dist/data/binance.js +1 -1
- package/dist/data/binance.js.map +1 -1
- package/dist/data/timeShareBuffer.d.ts +3 -0
- package/dist/data/timeShareBuffer.d.ts.map +1 -1
- package/dist/data/timeShareBuffer.js +13 -0
- package/dist/data/timeShareBuffer.js.map +1 -1
- package/dist/engine/chart.d.ts +9 -9
- package/dist/engine/chart.d.ts.map +1 -1
- package/dist/engine/chart.js +87 -101
- package/dist/engine/chart.js.map +1 -1
- package/dist/engine/chartTypes.d.ts +5 -0
- package/dist/engine/chartTypes.d.ts.map +1 -1
- package/dist/engine/controller/interaction.d.ts +4 -2
- package/dist/engine/controller/interaction.d.ts.map +1 -1
- package/dist/engine/controller/interaction.js +18 -10
- package/dist/engine/controller/interaction.js.map +1 -1
- package/dist/engine/data/chartDataManager.d.ts +14 -18
- package/dist/engine/data/chartDataManager.d.ts.map +1 -1
- package/dist/engine/data/chartDataManager.js +55 -37
- package/dist/engine/data/chartDataManager.js.map +1 -1
- package/dist/engine/data/incrementalLoadHint.d.ts +2 -4
- package/dist/engine/data/incrementalLoadHint.d.ts.map +1 -1
- package/dist/engine/data/incrementalLoadHint.js +5 -2
- package/dist/engine/data/incrementalLoadHint.js.map +1 -1
- package/dist/engine/data/scrollCompensator.d.ts +3 -13
- package/dist/engine/data/scrollCompensator.d.ts.map +1 -1
- package/dist/engine/data/scrollCompensator.js +13 -14
- package/dist/engine/data/scrollCompensator.js.map +1 -1
- package/dist/engine/indicators/chartIndicatorManager.d.ts +16 -17
- package/dist/engine/indicators/chartIndicatorManager.d.ts.map +1 -1
- package/dist/engine/indicators/chartIndicatorManager.js +37 -37
- package/dist/engine/indicators/chartIndicatorManager.js.map +1 -1
- package/dist/engine/layout/chartPaneLayout.d.ts +11 -7
- package/dist/engine/layout/chartPaneLayout.d.ts.map +1 -1
- package/dist/engine/layout/chartPaneLayout.js +58 -16
- package/dist/engine/layout/chartPaneLayout.js.map +1 -1
- package/dist/engine/modes/timeShareMath.d.ts +56 -0
- package/dist/engine/modes/timeShareMath.d.ts.map +1 -0
- package/dist/engine/modes/timeShareMath.js +90 -0
- package/dist/engine/modes/timeShareMath.js.map +1 -0
- package/dist/engine/modes/timeShareMode.d.ts +5 -0
- package/dist/engine/modes/timeShareMode.d.ts.map +1 -1
- package/dist/engine/modes/timeShareMode.js +27 -27
- package/dist/engine/modes/timeShareMode.js.map +1 -1
- package/dist/engine/paneRenderer.d.ts +2 -0
- package/dist/engine/paneRenderer.d.ts.map +1 -1
- package/dist/engine/paneRenderer.js +15 -5
- package/dist/engine/paneRenderer.js.map +1 -1
- package/dist/engine/render/chartRenderer.d.ts +28 -22
- package/dist/engine/render/chartRenderer.d.ts.map +1 -1
- package/dist/engine/render/chartRenderer.js +143 -85
- package/dist/engine/render/chartRenderer.js.map +1 -1
- package/dist/engine/render/layers/leftYAxisLayer.d.ts +9 -2
- package/dist/engine/render/layers/leftYAxisLayer.d.ts.map +1 -1
- package/dist/engine/render/layers/leftYAxisLayer.js +11 -2
- package/dist/engine/render/layers/leftYAxisLayer.js.map +1 -1
- package/dist/engine/render/layers/mainIndicatorLegendLayer.d.ts +6 -4
- package/dist/engine/render/layers/mainIndicatorLegendLayer.d.ts.map +1 -1
- package/dist/engine/render/layers/mainIndicatorLegendLayer.js +6 -9
- package/dist/engine/render/layers/mainIndicatorLegendLayer.js.map +1 -1
- package/dist/engine/render/layers/mainIndicatorLegendLayer.test.d.ts +2 -0
- package/dist/engine/render/layers/mainIndicatorLegendLayer.test.d.ts.map +1 -0
- package/dist/engine/render/layers/mainIndicatorLegendLayer.test.js +19 -0
- package/dist/engine/render/layers/mainIndicatorLegendLayer.test.js.map +1 -0
- package/dist/engine/render/layers/yAxisLayer.d.ts +9 -2
- package/dist/engine/render/layers/yAxisLayer.d.ts.map +1 -1
- package/dist/engine/render/layers/yAxisLayer.js +11 -2
- package/dist/engine/render/layers/yAxisLayer.js.map +1 -1
- package/dist/engine/renderers/Indicator/mainIndicatorLegend.d.ts +7 -3
- package/dist/engine/renderers/Indicator/mainIndicatorLegend.d.ts.map +1 -1
- package/dist/engine/renderers/Indicator/mainIndicatorLegend.js +234 -330
- package/dist/engine/renderers/Indicator/mainIndicatorLegend.js.map +1 -1
- package/dist/engine/renderers/Indicator/mainIndicatorLegendContext.d.ts +73 -0
- package/dist/engine/renderers/Indicator/mainIndicatorLegendContext.d.ts.map +1 -0
- package/dist/engine/renderers/Indicator/mainIndicatorLegendContext.js +182 -0
- package/dist/engine/renderers/Indicator/mainIndicatorLegendContext.js.map +1 -0
- package/dist/engine/renderers/leftYAxis.d.ts +15 -2
- package/dist/engine/renderers/leftYAxis.d.ts.map +1 -1
- package/dist/engine/renderers/leftYAxis.js +56 -16
- package/dist/engine/renderers/leftYAxis.js.map +1 -1
- package/dist/engine/renderers/timeShare.d.ts.map +1 -1
- package/dist/engine/renderers/timeShare.js +20 -9
- package/dist/engine/renderers/timeShare.js.map +1 -1
- package/dist/engine/renderers/yAxis.d.ts +16 -6
- package/dist/engine/renderers/yAxis.d.ts.map +1 -1
- package/dist/engine/renderers/yAxis.js +49 -16
- package/dist/engine/renderers/yAxis.js.map +1 -1
- package/dist/engine/state/viewportState.d.ts +4 -1
- package/dist/engine/state/viewportState.d.ts.map +1 -1
- package/dist/engine/state/viewportState.js +40 -8
- package/dist/engine/state/viewportState.js.map +1 -1
- package/dist/engine/subPaneManager.d.ts +5 -3
- package/dist/engine/subPaneManager.d.ts.map +1 -1
- package/dist/engine/subPaneManager.js +3 -2
- package/dist/engine/subPaneManager.js.map +1 -1
- package/dist/engine/utils/chartZoomController.d.ts +9 -7
- package/dist/engine/utils/chartZoomController.d.ts.map +1 -1
- package/dist/engine/utils/chartZoomController.js +13 -12
- package/dist/engine/utils/chartZoomController.js.map +1 -1
- package/dist/engine/viewport/chartViewportManager.d.ts +5 -16
- package/dist/engine/viewport/chartViewportManager.d.ts.map +1 -1
- package/dist/engine/viewport/chartViewportManager.js +7 -48
- package/dist/engine/viewport/chartViewportManager.js.map +1 -1
- package/dist/engine/viewport/viewport.d.ts +14 -0
- package/dist/engine/viewport/viewport.d.ts.map +1 -1
- package/dist/engine/viewport/viewport.js +10 -0
- package/dist/engine/viewport/viewport.js.map +1 -1
- package/dist/foundation/config/chartSettings.d.ts +0 -5
- package/dist/foundation/config/chartSettings.d.ts.map +1 -1
- package/dist/foundation/config/chartSettings.js +14 -0
- package/dist/foundation/config/chartSettings.js.map +1 -1
- package/dist/foundation/plugin/rendererPluginManager.test.js +15 -0
- package/dist/foundation/plugin/rendererPluginManager.test.js.map +1 -1
- package/dist/foundation/plugin/types.d.ts +3 -0
- package/dist/foundation/plugin/types.d.ts.map +1 -1
- package/dist/foundation/plugin/types.js.map +1 -1
- package/dist/foundation/reactivity/frameTransaction.d.ts +11 -0
- package/dist/foundation/reactivity/frameTransaction.d.ts.map +1 -1
- package/dist/foundation/reactivity/frameTransaction.js +17 -2
- package/dist/foundation/reactivity/frameTransaction.js.map +1 -1
- package/dist/foundation/utils/kLineDraw/axis.d.ts +3 -0
- package/dist/foundation/utils/kLineDraw/axis.d.ts.map +1 -1
- package/dist/foundation/utils/kLineDraw/axis.js +40 -9
- package/dist/foundation/utils/kLineDraw/axis.js.map +1 -1
- package/dist/foundation/utils/sessionTimeLabels.d.ts +59 -0
- package/dist/foundation/utils/sessionTimeLabels.d.ts.map +1 -0
- package/dist/foundation/utils/sessionTimeLabels.js +170 -0
- package/dist/foundation/utils/sessionTimeLabels.js.map +1 -0
- package/dist/foundation/utils/timeShareAxisLabels.d.ts +27 -0
- package/dist/foundation/utils/timeShareAxisLabels.d.ts.map +1 -0
- package/dist/foundation/utils/timeShareAxisLabels.js +45 -0
- package/dist/foundation/utils/timeShareAxisLabels.js.map +1 -0
- package/dist/rendering/render/Renderer.d.ts +58 -74
- package/dist/rendering/render/Renderer.d.ts.map +1 -1
- package/dist/rendering/render/Renderer.js +8 -18
- package/dist/rendering/render/Renderer.js.map +1 -1
- package/dist/rendering/render/createWebGPURenderer.d.ts.map +1 -1
- package/dist/rendering/render/createWebGPURenderer.js +30 -17
- package/dist/rendering/render/createWebGPURenderer.js.map +1 -1
- package/dist/rendering/render/createWebGPUSurfaceBackend.js +3 -3
- package/dist/rendering/render/createWebGPUSurfaceBackend.js.map +1 -1
- package/dist/rendering/render/physicalLine.d.ts +4 -0
- package/dist/rendering/render/physicalLine.d.ts.map +1 -0
- package/dist/rendering/render/physicalLine.js +37 -0
- package/dist/rendering/render/physicalLine.js.map +1 -0
- package/dist/rendering/render/physicalRegion.d.ts +14 -0
- package/dist/rendering/render/physicalRegion.d.ts.map +1 -0
- package/dist/rendering/render/physicalRegion.js +15 -0
- package/dist/rendering/render/physicalRegion.js.map +1 -0
- package/dist/rendering/scene/createLayerFromPlugin.d.ts.map +1 -1
- package/dist/rendering/scene/createLayerFromPlugin.js +8 -3
- package/dist/rendering/scene/createLayerFromPlugin.js.map +1 -1
- package/dist/rendering/scene/createScene.d.ts.map +1 -1
- package/dist/rendering/scene/createScene.js +4 -3
- package/dist/rendering/scene/createScene.js.map +1 -1
- package/dist/version.d.ts +1 -1
- package/dist/version.js +1 -1
- package/package.json +1 -1
- package/src/__tests__/stateKernel.test.ts +1 -0
- package/src/controllers/createChartController.ts +9 -8
- package/src/controllers/index.ts +11 -0
- package/src/controllers/types.ts +7 -0
- package/src/data/__tests__/timeShareBuffer.test.ts +45 -0
- package/src/data/binance.ts +1 -1
- package/src/data/timeShareBuffer.ts +15 -0
- package/src/engine/__tests__/chart.dpr.test.ts +31 -2
- package/src/engine/__tests__/paneRenderer.resize.test.ts +52 -54
- package/src/engine/__tests__/subPaneManager.test.ts +5 -3
- package/src/engine/chart.ts +105 -115
- package/src/engine/chartTypes.ts +5 -0
- package/src/engine/controller/__tests__/interaction.dpr.test.ts +39 -2
- package/src/engine/controller/interaction.ts +18 -10
- package/src/engine/data/__tests__/chartDataManager.incrementalLoad.test.ts +37 -17
- package/src/engine/data/__tests__/scrollCompensator.geometry.test.ts +87 -75
- package/src/engine/data/chartDataManager.ts +64 -59
- package/src/engine/data/incrementalLoadHint.ts +8 -7
- package/src/engine/data/scrollCompensator.ts +16 -24
- package/src/engine/indicators/__tests__/chartIndicatorManager.test.ts +18 -26
- package/src/engine/indicators/chartIndicatorManager.ts +62 -62
- package/src/engine/layout/chartPaneLayout.ts +73 -21
- package/src/engine/modes/__tests__/timeShareMath.test.ts +185 -0
- package/src/engine/modes/__tests__/timeShareMode.test.ts +81 -0
- package/src/engine/modes/timeShareMath.ts +150 -0
- package/src/engine/modes/timeShareMode.ts +35 -28
- package/src/engine/paneRenderer.ts +17 -10
- package/src/engine/render/chartRenderer.ts +214 -145
- package/src/engine/render/layers/leftYAxisLayer.ts +29 -7
- package/src/engine/render/layers/mainIndicatorLegendLayer.test.ts +26 -0
- package/src/engine/render/layers/mainIndicatorLegendLayer.ts +13 -10
- package/src/engine/render/layers/yAxisLayer.ts +29 -7
- package/src/engine/renderers/Indicator/mainIndicatorLegend.ts +270 -403
- package/src/engine/renderers/Indicator/mainIndicatorLegendContext.ts +290 -0
- package/src/engine/renderers/__tests__/mainIndicatorLegend.renderer.test.ts +73 -2
- package/src/engine/renderers/__tests__/yAxis.renderer.test.ts +10 -6
- package/src/engine/renderers/leftYAxis.ts +60 -18
- package/src/engine/renderers/timeShare.ts +25 -9
- package/src/engine/renderers/yAxis.ts +57 -22
- package/src/engine/state/__tests__/settingsState.test.ts +9 -0
- package/src/engine/state/viewportState.ts +44 -8
- package/src/engine/subPaneManager.ts +8 -5
- package/src/engine/utils/chartZoomController.ts +22 -19
- package/src/engine/viewport/__tests__/visibleRange.clamp.test.ts +50 -0
- package/src/engine/viewport/chartViewportManager.ts +9 -60
- package/src/engine/viewport/viewport.ts +14 -0
- package/src/foundation/config/chartSettings.ts +13 -0
- package/src/foundation/plugin/rendererPluginManager.test.ts +18 -0
- package/src/foundation/plugin/types.ts +3 -0
- package/src/foundation/reactivity/frameTransaction.ts +20 -6
- package/src/foundation/utils/__tests__/sessionTimeLabels.test.ts +91 -0
- package/src/foundation/utils/kLineDraw/axis.ts +50 -9
- package/src/foundation/utils/sessionTimeLabels.ts +237 -0
- package/src/foundation/utils/timeShareAxisLabels.ts +94 -0
- package/src/rendering/render/Renderer.ts +69 -85
- package/src/rendering/render/__tests__/physicalLine.test.ts +51 -0
- package/src/rendering/render/__tests__/physicalRegion.test.ts +23 -0
- package/src/rendering/render/__tests__/webgpuRenderer.test.ts +31 -1
- package/src/rendering/render/__tests__/webgpuSurfaceBackend.test.ts +11 -0
- package/src/rendering/render/createWebGPURenderer.ts +30 -17
- package/src/rendering/render/createWebGPUSurfaceBackend.ts +3 -3
- package/src/rendering/render/physicalLine.ts +45 -0
- package/src/rendering/render/physicalRegion.ts +32 -0
- package/src/rendering/scene/createLayerFromPlugin.ts +8 -3
- package/src/rendering/scene/createScene.ts +4 -3
- package/src/version.ts +1 -1
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"createWebGPURenderer.d.ts","sourceRoot":"","sources":["../../../src/rendering/render/createWebGPURenderer.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EASV,QAAQ,EACT,MAAM,YAAY,CAAA;AAEnB,OAAO,EAAE,kBAAkB,EAAE,MAAM,gBAAgB,CAAA;
|
|
1
|
+
{"version":3,"file":"createWebGPURenderer.d.ts","sourceRoot":"","sources":["../../../src/rendering/render/createWebGPURenderer.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EASV,QAAQ,EACT,MAAM,YAAY,CAAA;AAEnB,OAAO,EAAE,kBAAkB,EAAE,MAAM,gBAAgB,CAAA;AAgBnD,MAAM,MAAM,2BAA2B,GAAG;IACxC,GAAG,CAAC,EAAE,GAAG,CAAA;IACT,MAAM,CAAC,EAAE,iBAAiB,CAAA;IAC1B,YAAY,CAAC,EAAE,CAAC,IAAI,EAAE,iBAAiB,KAAK,IAAI,CAAA;IAChD,yCAAyC;IACzC,OAAO,CAAC,EAAE,UAAU,CAAC,OAAO,kBAAkB,CAAC,CAAA;CAChD,CAAA;AA2KD,wBAAsB,oBAAoB,CACxC,OAAO,GAAE,2BAAgC,GACxC,OAAO,CAAC,QAAQ,CAAC,CAkenB"}
|
|
@@ -1,5 +1,7 @@
|
|
|
1
1
|
import { createWebGPUSurfaceBackend } from './createWebGPUSurfaceBackend';
|
|
2
2
|
import { createFrameMetrics } from './frameMetrics';
|
|
3
|
+
import { prepareLineStripForPhysicalPixels } from './physicalLine';
|
|
4
|
+
import { toPhysicalRegion } from './physicalRegion';
|
|
3
5
|
import { createWebGPUResourceTable } from './webgpuResourceTable';
|
|
4
6
|
const GPU_BUFFER_COPY_DST = globalThis.GPUBufferUsage?.COPY_DST ?? 0x0008;
|
|
5
7
|
const GPU_BUFFER_INDEX = globalThis.GPUBufferUsage?.INDEX ?? 0x0010;
|
|
@@ -10,8 +12,8 @@ const GPU_TEXTURE_RENDER_ATTACHMENT = globalThis.GPUTextureUsage?.RENDER_ATTACHM
|
|
|
10
12
|
const RECT_SHADER = `
|
|
11
13
|
struct Uniforms {
|
|
12
14
|
resolution: vec2f,
|
|
15
|
+
dpr: f32,
|
|
13
16
|
scrollLeft: f32,
|
|
14
|
-
padding: f32,
|
|
15
17
|
color: vec4f,
|
|
16
18
|
}
|
|
17
19
|
|
|
@@ -24,7 +26,14 @@ fn vertexMain(@builtin(vertex_index) vertexIndex: u32, @location(0) rect: vec4f)
|
|
|
24
26
|
vec2f(0.0, 1.0), vec2f(1.0, 0.0), vec2f(1.0, 1.0)
|
|
25
27
|
);
|
|
26
28
|
let unit = corners[vertexIndex];
|
|
27
|
-
let
|
|
29
|
+
let left = round((rect.x - uniforms.scrollLeft) * uniforms.dpr);
|
|
30
|
+
let top = round(rect.y * uniforms.dpr);
|
|
31
|
+
let right = round((rect.x + rect.z - uniforms.scrollLeft) * uniforms.dpr);
|
|
32
|
+
let bottom = round((rect.y + rect.w) * uniforms.dpr);
|
|
33
|
+
let position = vec2f(
|
|
34
|
+
left + unit.x * max(1.0, right - left),
|
|
35
|
+
top + unit.y * max(1.0, bottom - top),
|
|
36
|
+
);
|
|
28
37
|
let clip = vec2f(position.x / uniforms.resolution.x * 2.0 - 1.0, 1.0 - position.y / uniforms.resolution.y * 2.0);
|
|
29
38
|
return vec4f(clip, 0.0, 1.0);
|
|
30
39
|
}
|
|
@@ -37,8 +46,8 @@ fn fragmentMain() -> @location(0) vec4f {
|
|
|
37
46
|
const LINE_SHADER = `
|
|
38
47
|
struct Uniforms {
|
|
39
48
|
resolution: vec2f,
|
|
49
|
+
dpr: f32,
|
|
40
50
|
scrollLeft: f32,
|
|
41
|
-
padding: f32,
|
|
42
51
|
color: vec4f,
|
|
43
52
|
}
|
|
44
53
|
|
|
@@ -46,7 +55,10 @@ struct Uniforms {
|
|
|
46
55
|
|
|
47
56
|
@vertex
|
|
48
57
|
fn vertexMain(@location(0) point: vec2f) -> @builtin(position) vec4f {
|
|
49
|
-
let position = vec2f(
|
|
58
|
+
let position = vec2f(
|
|
59
|
+
(point.x - uniforms.scrollLeft) * uniforms.dpr,
|
|
60
|
+
point.y * uniforms.dpr,
|
|
61
|
+
);
|
|
50
62
|
let clip = vec2f(position.x / uniforms.resolution.x * 2.0 - 1.0, 1.0 - position.y / uniforms.resolution.y * 2.0);
|
|
51
63
|
return vec4f(clip, 0.0, 1.0);
|
|
52
64
|
}
|
|
@@ -307,10 +319,10 @@ export async function createWebGPURenderer(options = {}) {
|
|
|
307
319
|
if (!color)
|
|
308
320
|
return null;
|
|
309
321
|
const values = new Float32Array([
|
|
310
|
-
region.width,
|
|
311
|
-
region.height,
|
|
322
|
+
Math.round(region.width * region.dpr),
|
|
323
|
+
Math.round(region.height * region.dpr),
|
|
324
|
+
region.dpr,
|
|
312
325
|
scrollLeft,
|
|
313
|
-
0,
|
|
314
326
|
color[0],
|
|
315
327
|
color[1],
|
|
316
328
|
color[2],
|
|
@@ -341,10 +353,10 @@ export async function createWebGPURenderer(options = {}) {
|
|
|
341
353
|
},
|
|
342
354
|
],
|
|
343
355
|
});
|
|
344
|
-
const x
|
|
345
|
-
|
|
346
|
-
|
|
347
|
-
|
|
356
|
+
const { x, y, width, height } = toPhysicalRegion(region, {
|
|
357
|
+
width: canvas.width,
|
|
358
|
+
height: canvas.height,
|
|
359
|
+
});
|
|
348
360
|
if (width <= 0 || height <= 0) {
|
|
349
361
|
pass.end();
|
|
350
362
|
return null;
|
|
@@ -388,10 +400,10 @@ export async function createWebGPURenderer(options = {}) {
|
|
|
388
400
|
for (const draws of groups.values()) {
|
|
389
401
|
const region = draws[0].region;
|
|
390
402
|
rawSurface.bindRegion(region);
|
|
391
|
-
const x
|
|
392
|
-
|
|
393
|
-
|
|
394
|
-
|
|
403
|
+
const { x, y, width, height } = toPhysicalRegion(region, {
|
|
404
|
+
width: canvas.width,
|
|
405
|
+
height: canvas.height,
|
|
406
|
+
});
|
|
395
407
|
if (width > 0 && height > 0) {
|
|
396
408
|
pass.setViewport(x, y, width, height, 0, 1);
|
|
397
409
|
pass.setScissorRect(x, y, width, height);
|
|
@@ -543,8 +555,9 @@ export async function createWebGPURenderer(options = {}) {
|
|
|
543
555
|
for (const strip of params.strips) {
|
|
544
556
|
if (strip.points.length < 2)
|
|
545
557
|
return false;
|
|
546
|
-
const
|
|
547
|
-
const
|
|
558
|
+
const physicalStrip = prepareLineStripForPhysicalPixels(strip, currentRegion.dpr);
|
|
559
|
+
const wide = Math.round((physicalStrip.width ?? 1) * currentRegion.dpr) > 1;
|
|
560
|
+
const values = wide ? buildWideLine(physicalStrip) : linePoints(physicalStrip);
|
|
548
561
|
if (!values)
|
|
549
562
|
return false;
|
|
550
563
|
// 帧内序号作 key:同顺序跨帧复用;revision 未变则不 upload
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"createWebGPURenderer.js","sourceRoot":"","sources":["../../../src/rendering/render/createWebGPURenderer.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"createWebGPURenderer.js","sourceRoot":"","sources":["../../../src/rendering/render/createWebGPURenderer.ts"],"names":[],"mappings":"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"}
|
|
@@ -28,10 +28,10 @@ export function createWebGPUSurfaceBackend(options) {
|
|
|
28
28
|
canvas.width = width;
|
|
29
29
|
if (canvas.height !== height)
|
|
30
30
|
canvas.height = height;
|
|
31
|
-
//
|
|
31
|
+
// CSS 尺寸由物理 buffer 反算,避免浏览器二次缩放。
|
|
32
32
|
if (canvas.style) {
|
|
33
|
-
canvas.style.width = `${
|
|
34
|
-
canvas.style.height = `${
|
|
33
|
+
canvas.style.width = `${width / dpr}px`;
|
|
34
|
+
canvas.style.height = `${height / dpr}px`;
|
|
35
35
|
}
|
|
36
36
|
},
|
|
37
37
|
bindRegion(region) {
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"createWebGPUSurfaceBackend.js","sourceRoot":"","sources":["../../../src/rendering/render/createWebGPUSurfaceBackend.ts"],"names":[],"mappings":"AAgBA,MAAM,UAAU,0BAA0B,CACxC,OAAoC;IAEpC,MAAM,EAAE,MAAM,EAAE,MAAM,EAAE,MAAM,EAAE,GAAG,OAAO,CAAA;IAC1C,MAAM,OAAO,GAAG,MAAM,CAAC,UAAU,CAAC,QAAQ,CAAC,CAAA;IAC3C,IAAI,CAAC,OAAO;QAAE,MAAM,IAAI,KAAK,CAAC,mCAAmC,CAAC,CAAA;IAElE,MAAM,qBAAqB,GAAG,UAAU,CAAC,eAAe,EAAE,iBAAiB,IAAI,IAAI,CAAA;IACnF,OAAO,CAAC,SAAS,CAAC;QAChB,MAAM;QACN,MAAM;QACN,SAAS,EAAE,eAAe;QAC1B,KAAK,EAAE,qBAAqB;KAC7B,CAAC,CAAA;IAEF,IAAI,QAAQ,GAAG,KAAK,CAAA;IACpB,IAAI,WAAW,GAAyB,IAAI,CAAA;IAE5C,OAAO;QACL,MAAM;QACN,MAAM;QACN,MAAM;QACN,WAAW;YACT,OAAO,CAAC,QAAQ,CAAA;QAClB,CAAC;QACD,MAAM,CAAC,YAAoB,EAAE,aAAqB,EAAE,GAAW;YAC7D,IAAI,QAAQ;gBAAE,OAAM;YACpB,MAAM,KAAK,GAAG,IAAI,CAAC,GAAG,CAAC,CAAC,EAAE,IAAI,CAAC,KAAK,CAAC,YAAY,GAAG,GAAG,CAAC,CAAC,CAAA;YACzD,MAAM,MAAM,GAAG,IAAI,CAAC,GAAG,CAAC,CAAC,EAAE,IAAI,CAAC,KAAK,CAAC,aAAa,GAAG,GAAG,CAAC,CAAC,CAAA;YAC3D,IAAI,MAAM,CAAC,KAAK,KAAK,KAAK;gBAAE,MAAM,CAAC,KAAK,GAAG,KAAK,CAAA;YAChD,IAAI,MAAM,CAAC,MAAM,KAAK,MAAM;gBAAE,MAAM,CAAC,MAAM,GAAG,MAAM,CAAA;YACpD,
|
|
1
|
+
{"version":3,"file":"createWebGPUSurfaceBackend.js","sourceRoot":"","sources":["../../../src/rendering/render/createWebGPUSurfaceBackend.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"physicalLine.d.ts","sourceRoot":"","sources":["../../../src/rendering/render/physicalLine.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,aAAa,EAAE,MAAM,YAAY,CAAA;AAe/C,qCAAqC;AACrC,wBAAgB,iCAAiC,CAC/C,KAAK,EAAE,aAAa,EACpB,GAAG,EAAE,MAAM,GACV,aAAa,CAyBf"}
|
|
@@ -0,0 +1,37 @@
|
|
|
1
|
+
function physicalLineWidth(width, dpr) {
|
|
2
|
+
return Math.max(1, Math.round(width * dpr));
|
|
3
|
+
}
|
|
4
|
+
function alignedCenter(value, widthPx, dpr) {
|
|
5
|
+
const base = Math.floor(value * dpr);
|
|
6
|
+
return (base + (widthPx % 2 === 0 ? 0 : 0.5)) / dpr;
|
|
7
|
+
}
|
|
8
|
+
function alignedEdge(value, dpr) {
|
|
9
|
+
return Math.round(value * dpr) / dpr;
|
|
10
|
+
}
|
|
11
|
+
/** 仅对轴向线吸附物理像素;斜线保持原始顶点供 MSAA 平滑。 */
|
|
12
|
+
export function prepareLineStripForPhysicalPixels(strip, dpr) {
|
|
13
|
+
const widthPx = physicalLineWidth(strip.width ?? 1, dpr);
|
|
14
|
+
const width = widthPx / dpr;
|
|
15
|
+
const first = strip.points[0];
|
|
16
|
+
if (!first)
|
|
17
|
+
return { ...strip, width };
|
|
18
|
+
const horizontal = strip.points.every((point) => point.y === first.y);
|
|
19
|
+
const vertical = strip.points.every((point) => point.x === first.x);
|
|
20
|
+
if (!horizontal && !vertical)
|
|
21
|
+
return { ...strip, width };
|
|
22
|
+
if (horizontal) {
|
|
23
|
+
const y = alignedCenter(first.y, widthPx, dpr);
|
|
24
|
+
return {
|
|
25
|
+
...strip,
|
|
26
|
+
width,
|
|
27
|
+
points: strip.points.map((point) => ({ x: alignedEdge(point.x, dpr), y })),
|
|
28
|
+
};
|
|
29
|
+
}
|
|
30
|
+
const x = alignedCenter(first.x, widthPx, dpr);
|
|
31
|
+
return {
|
|
32
|
+
...strip,
|
|
33
|
+
width,
|
|
34
|
+
points: strip.points.map((point) => ({ x, y: alignedEdge(point.y, dpr) })),
|
|
35
|
+
};
|
|
36
|
+
}
|
|
37
|
+
//# sourceMappingURL=physicalLine.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"physicalLine.js","sourceRoot":"","sources":["../../../src/rendering/render/physicalLine.ts"],"names":[],"mappings":"AAEA,SAAS,iBAAiB,CAAC,KAAa,EAAE,GAAW;IACnD,OAAO,IAAI,CAAC,GAAG,CAAC,CAAC,EAAE,IAAI,CAAC,KAAK,CAAC,KAAK,GAAG,GAAG,CAAC,CAAC,CAAA;AAC7C,CAAC;AAED,SAAS,aAAa,CAAC,KAAa,EAAE,OAAe,EAAE,GAAW;IAChE,MAAM,IAAI,GAAG,IAAI,CAAC,KAAK,CAAC,KAAK,GAAG,GAAG,CAAC,CAAA;IACpC,OAAO,CAAC,IAAI,GAAG,CAAC,OAAO,GAAG,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,GAAG,GAAG,CAAA;AACrD,CAAC;AAED,SAAS,WAAW,CAAC,KAAa,EAAE,GAAW;IAC7C,OAAO,IAAI,CAAC,KAAK,CAAC,KAAK,GAAG,GAAG,CAAC,GAAG,GAAG,CAAA;AACtC,CAAC;AAED,qCAAqC;AACrC,MAAM,UAAU,iCAAiC,CAC/C,KAAoB,EACpB,GAAW;IAEX,MAAM,OAAO,GAAG,iBAAiB,CAAC,KAAK,CAAC,KAAK,IAAI,CAAC,EAAE,GAAG,CAAC,CAAA;IACxD,MAAM,KAAK,GAAG,OAAO,GAAG,GAAG,CAAA;IAC3B,MAAM,KAAK,GAAG,KAAK,CAAC,MAAM,CAAC,CAAC,CAAC,CAAA;IAC7B,IAAI,CAAC,KAAK;QAAE,OAAO,EAAE,GAAG,KAAK,EAAE,KAAK,EAAE,CAAA;IAEtC,MAAM,UAAU,GAAG,KAAK,CAAC,MAAM,CAAC,KAAK,CAAC,CAAC,KAAK,EAAE,EAAE,CAAC,KAAK,CAAC,CAAC,KAAK,KAAK,CAAC,CAAC,CAAC,CAAA;IACrE,MAAM,QAAQ,GAAG,KAAK,CAAC,MAAM,CAAC,KAAK,CAAC,CAAC,KAAK,EAAE,EAAE,CAAC,KAAK,CAAC,CAAC,KAAK,KAAK,CAAC,CAAC,CAAC,CAAA;IACnE,IAAI,CAAC,UAAU,IAAI,CAAC,QAAQ;QAAE,OAAO,EAAE,GAAG,KAAK,EAAE,KAAK,EAAE,CAAA;IAExD,IAAI,UAAU,EAAE,CAAC;QACf,MAAM,CAAC,GAAG,aAAa,CAAC,KAAK,CAAC,CAAC,EAAE,OAAO,EAAE,GAAG,CAAC,CAAA;QAC9C,OAAO;YACL,GAAG,KAAK;YACR,KAAK;YACL,MAAM,EAAE,KAAK,CAAC,MAAM,CAAC,GAAG,CAAC,CAAC,KAAK,EAAE,EAAE,CAAC,CAAC,EAAE,CAAC,EAAE,WAAW,CAAC,KAAK,CAAC,CAAC,EAAE,GAAG,CAAC,EAAE,CAAC,EAAE,CAAC,CAAC;SAC3E,CAAA;IACH,CAAC;IAED,MAAM,CAAC,GAAG,aAAa,CAAC,KAAK,CAAC,CAAC,EAAE,OAAO,EAAE,GAAG,CAAC,CAAA;IAC9C,OAAO;QACL,GAAG,KAAK;QACR,KAAK;QACL,MAAM,EAAE,KAAK,CAAC,MAAM,CAAC,GAAG,CAAC,CAAC,KAAK,EAAE,EAAE,CAAC,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,WAAW,CAAC,KAAK,CAAC,CAAC,EAAE,GAAG,CAAC,EAAE,CAAC,CAAC;KAC3E,CAAA;AACH,CAAC"}
|
|
@@ -0,0 +1,14 @@
|
|
|
1
|
+
import type { SurfaceRegion } from './SurfaceBackend';
|
|
2
|
+
export type PhysicalRegion = {
|
|
3
|
+
x: number;
|
|
4
|
+
y: number;
|
|
5
|
+
width: number;
|
|
6
|
+
height: number;
|
|
7
|
+
};
|
|
8
|
+
export type PhysicalBounds = {
|
|
9
|
+
width: number;
|
|
10
|
+
height: number;
|
|
11
|
+
};
|
|
12
|
+
/** 将逻辑 region 的两端分别对齐到物理像素,避免相邻 pane 出现缝隙。 */
|
|
13
|
+
export declare function toPhysicalRegion(region: SurfaceRegion, bounds?: PhysicalBounds): PhysicalRegion;
|
|
14
|
+
//# sourceMappingURL=physicalRegion.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"physicalRegion.d.ts","sourceRoot":"","sources":["../../../src/rendering/render/physicalRegion.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,aAAa,EAAE,MAAM,kBAAkB,CAAA;AAErD,MAAM,MAAM,cAAc,GAAG;IAC3B,CAAC,EAAE,MAAM,CAAA;IACT,CAAC,EAAE,MAAM,CAAA;IACT,KAAK,EAAE,MAAM,CAAA;IACb,MAAM,EAAE,MAAM,CAAA;CACf,CAAA;AAED,MAAM,MAAM,cAAc,GAAG;IAC3B,KAAK,EAAE,MAAM,CAAA;IACb,MAAM,EAAE,MAAM,CAAA;CACf,CAAA;AAED,8CAA8C;AAC9C,wBAAgB,gBAAgB,CAC9B,MAAM,EAAE,aAAa,EACrB,MAAM,CAAC,EAAE,cAAc,GACtB,cAAc,CAahB"}
|
|
@@ -0,0 +1,15 @@
|
|
|
1
|
+
/** 将逻辑 region 的两端分别对齐到物理像素,避免相邻 pane 出现缝隙。 */
|
|
2
|
+
export function toPhysicalRegion(region, bounds) {
|
|
3
|
+
const left = Math.round(region.x * region.dpr);
|
|
4
|
+
const top = Math.round(region.y * region.dpr);
|
|
5
|
+
const right = Math.round((region.x + region.width) * region.dpr);
|
|
6
|
+
const bottom = Math.round((region.y + region.height) * region.dpr);
|
|
7
|
+
const maxWidth = bounds ? Math.max(0, bounds.width) : Infinity;
|
|
8
|
+
const maxHeight = bounds ? Math.max(0, bounds.height) : Infinity;
|
|
9
|
+
const x = Math.max(0, Math.min(left, maxWidth));
|
|
10
|
+
const y = Math.max(0, Math.min(top, maxHeight));
|
|
11
|
+
const clippedRight = Math.max(x, Math.min(right, maxWidth));
|
|
12
|
+
const clippedBottom = Math.max(y, Math.min(bottom, maxHeight));
|
|
13
|
+
return { x, y, width: clippedRight - x, height: clippedBottom - y };
|
|
14
|
+
}
|
|
15
|
+
//# sourceMappingURL=physicalRegion.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"physicalRegion.js","sourceRoot":"","sources":["../../../src/rendering/render/physicalRegion.ts"],"names":[],"mappings":"AAcA,8CAA8C;AAC9C,MAAM,UAAU,gBAAgB,CAC9B,MAAqB,EACrB,MAAuB;IAEvB,MAAM,IAAI,GAAG,IAAI,CAAC,KAAK,CAAC,MAAM,CAAC,CAAC,GAAG,MAAM,CAAC,GAAG,CAAC,CAAA;IAC9C,MAAM,GAAG,GAAG,IAAI,CAAC,KAAK,CAAC,MAAM,CAAC,CAAC,GAAG,MAAM,CAAC,GAAG,CAAC,CAAA;IAC7C,MAAM,KAAK,GAAG,IAAI,CAAC,KAAK,CAAC,CAAC,MAAM,CAAC,CAAC,GAAG,MAAM,CAAC,KAAK,CAAC,GAAG,MAAM,CAAC,GAAG,CAAC,CAAA;IAChE,MAAM,MAAM,GAAG,IAAI,CAAC,KAAK,CAAC,CAAC,MAAM,CAAC,CAAC,GAAG,MAAM,CAAC,MAAM,CAAC,GAAG,MAAM,CAAC,GAAG,CAAC,CAAA;IAClE,MAAM,QAAQ,GAAG,MAAM,CAAC,CAAC,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC,EAAE,MAAM,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,QAAQ,CAAA;IAC9D,MAAM,SAAS,GAAG,MAAM,CAAC,CAAC,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC,EAAE,MAAM,CAAC,MAAM,CAAC,CAAC,CAAC,CAAC,QAAQ,CAAA;IAChE,MAAM,CAAC,GAAG,IAAI,CAAC,GAAG,CAAC,CAAC,EAAE,IAAI,CAAC,GAAG,CAAC,IAAI,EAAE,QAAQ,CAAC,CAAC,CAAA;IAC/C,MAAM,CAAC,GAAG,IAAI,CAAC,GAAG,CAAC,CAAC,EAAE,IAAI,CAAC,GAAG,CAAC,GAAG,EAAE,SAAS,CAAC,CAAC,CAAA;IAC/C,MAAM,YAAY,GAAG,IAAI,CAAC,GAAG,CAAC,CAAC,EAAE,IAAI,CAAC,GAAG,CAAC,KAAK,EAAE,QAAQ,CAAC,CAAC,CAAA;IAC3D,MAAM,aAAa,GAAG,IAAI,CAAC,GAAG,CAAC,CAAC,EAAE,IAAI,CAAC,GAAG,CAAC,MAAM,EAAE,SAAS,CAAC,CAAC,CAAA;IAE9D,OAAO,EAAE,CAAC,EAAE,CAAC,EAAE,KAAK,EAAE,YAAY,GAAG,CAAC,EAAE,MAAM,EAAE,aAAa,GAAG,CAAC,EAAE,CAAA;AACrE,CAAC"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"createLayerFromPlugin.d.ts","sourceRoot":"","sources":["../../../src/rendering/scene/createLayerFromPlugin.ts"],"names":[],"mappings":"AACA,OAAO,KAAK,EAAE,cAAc,EAAE,aAAa,EAAE,MAAM,+BAA+B,CAAA;AAElF,OAAO,KAAK,EAAE,KAAK,EAAqC,MAAM,SAAS,CAAA;AAEvE,wBAAgB,qBAAqB,CACnC,MAAM,EAAE,cAAc,EACtB,UAAU,EAAE,MAAM,aAAa,GAAG,IAAI,EACtC,YAAY,EAAE,MAAM,GACnB,KAAK,
|
|
1
|
+
{"version":3,"file":"createLayerFromPlugin.d.ts","sourceRoot":"","sources":["../../../src/rendering/scene/createLayerFromPlugin.ts"],"names":[],"mappings":"AACA,OAAO,KAAK,EAAE,cAAc,EAAE,aAAa,EAAE,MAAM,+BAA+B,CAAA;AAElF,OAAO,KAAK,EAAE,KAAK,EAAqC,MAAM,SAAS,CAAA;AAEvE,wBAAgB,qBAAqB,CACnC,MAAM,EAAE,cAAc,EACtB,UAAU,EAAE,MAAM,aAAa,GAAG,IAAI,EACtC,YAAY,EAAE,MAAM,GACnB,KAAK,CAwCP"}
|
|
@@ -13,22 +13,27 @@ export function createLayerFromPlugin(plugin, getContext, targetPaneId) {
|
|
|
13
13
|
set visible(v) {
|
|
14
14
|
visible = v;
|
|
15
15
|
},
|
|
16
|
+
/**
|
|
17
|
+
* @Todo 兼容层:把旧 RendererPlugin.draw 包装成 Layer.paint。
|
|
18
|
+
*/
|
|
16
19
|
paint(ctx) {
|
|
17
20
|
if (!visible)
|
|
18
21
|
return;
|
|
19
|
-
//
|
|
22
|
+
// 子图 layer 只画自己的 pane
|
|
20
23
|
if (paneRole === 'sub' && ctx.paneId !== targetPaneId)
|
|
21
24
|
return;
|
|
25
|
+
// 获取业务层 RenderContext(含数据、几何、2D ctx)
|
|
22
26
|
const context = getContext();
|
|
23
27
|
if (!context)
|
|
24
28
|
return;
|
|
25
|
-
// 注入本帧
|
|
29
|
+
// 注入本帧 sceneRenderer,已迁路径走统一 GPU 画笔,未迁路径仍用 context.ctx
|
|
26
30
|
context.sceneRenderer = ctx.renderer;
|
|
27
31
|
try {
|
|
32
|
+
// 调用各个渲染器的绘制能力
|
|
28
33
|
plugin.draw(context);
|
|
29
34
|
}
|
|
30
35
|
catch (e) {
|
|
31
|
-
//
|
|
36
|
+
// 异常隔离,不中断同 pane 后续 layer
|
|
32
37
|
console.error(`[RendererPlugin] ${plugin.name} draw error:`, e);
|
|
33
38
|
}
|
|
34
39
|
},
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"createLayerFromPlugin.js","sourceRoot":"","sources":["../../../src/rendering/scene/createLayerFromPlugin.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,iBAAiB,EAAE,MAAM,+BAA+B,CAAA;AAKjE,MAAM,UAAU,qBAAqB,CACnC,MAAsB,EACtB,UAAsC,EACtC,YAAoB;IAEpB,MAAM,QAAQ,GACZ,YAAY,KAAK,MAAM,CAAC,CAAC,CAAC,MAAM,CAAC,CAAC,CAAC,YAAY,KAAK,QAAQ,CAAC,CAAC,CAAC,QAAQ,CAAC,CAAC,CAAC,KAAK,CAAA;IACjF,IAAI,OAAO,GAAG,MAAM,CAAC,OAAO,KAAK,KAAK,CAAA;IAEtC,OAAO;QACL,EAAE,EAAE,UAAU,MAAM,CAAC,IAAI,EAAE;QAC3B,IAAI,EAAE,oBAAoB,CAAC,MAAM,CAAC,QAAQ,EAAE,MAAM,CAAC;QACnD,QAAQ;QACR,CAAC,EAAE,MAAM,CAAC,QAAQ;QAClB,IAAI,OAAO;YACT,OAAO,OAAO,CAAA;QAChB,CAAC;QACD,IAAI,OAAO,CAAC,CAAU;YACpB,OAAO,GAAG,CAAC,CAAA;QACb,CAAC;QACD,KAAK,CAAC,GAAiB;YACrB,IAAI,CAAC,OAAO;gBAAE,OAAM;YACpB,
|
|
1
|
+
{"version":3,"file":"createLayerFromPlugin.js","sourceRoot":"","sources":["../../../src/rendering/scene/createLayerFromPlugin.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,iBAAiB,EAAE,MAAM,+BAA+B,CAAA;AAKjE,MAAM,UAAU,qBAAqB,CACnC,MAAsB,EACtB,UAAsC,EACtC,YAAoB;IAEpB,MAAM,QAAQ,GACZ,YAAY,KAAK,MAAM,CAAC,CAAC,CAAC,MAAM,CAAC,CAAC,CAAC,YAAY,KAAK,QAAQ,CAAC,CAAC,CAAC,QAAQ,CAAC,CAAC,CAAC,KAAK,CAAA;IACjF,IAAI,OAAO,GAAG,MAAM,CAAC,OAAO,KAAK,KAAK,CAAA;IAEtC,OAAO;QACL,EAAE,EAAE,UAAU,MAAM,CAAC,IAAI,EAAE;QAC3B,IAAI,EAAE,oBAAoB,CAAC,MAAM,CAAC,QAAQ,EAAE,MAAM,CAAC;QACnD,QAAQ;QACR,CAAC,EAAE,MAAM,CAAC,QAAQ;QAClB,IAAI,OAAO;YACT,OAAO,OAAO,CAAA;QAChB,CAAC;QACD,IAAI,OAAO,CAAC,CAAU;YACpB,OAAO,GAAG,CAAC,CAAA;QACb,CAAC;QACD;;WAEG;QACH,KAAK,CAAC,GAAiB;YACrB,IAAI,CAAC,OAAO;gBAAE,OAAM;YACpB,sBAAsB;YACtB,IAAI,QAAQ,KAAK,KAAK,IAAI,GAAG,CAAC,MAAM,KAAK,YAAY;gBAAE,OAAM;YAC7D,qCAAqC;YACrC,MAAM,OAAO,GAAG,UAAU,EAAE,CAAA;YAC5B,IAAI,CAAC,OAAO;gBAAE,OAAM;YACpB,uDAAuD;YACvD,OAAO,CAAC,aAAa,GAAG,GAAG,CAAC,QAAQ,CAAA;YACpC,IAAI,CAAC;gBACH,eAAe;gBACf,MAAM,CAAC,IAAI,CAAC,OAAO,CAAC,CAAA;YACtB,CAAC;YAAC,OAAO,CAAC,EAAE,CAAC;gBACX,0BAA0B;gBAC1B,OAAO,CAAC,KAAK,CAAC,oBAAoB,MAAM,CAAC,IAAI,cAAc,EAAE,CAAC,CAAC,CAAA;YACjE,CAAC;QACH,CAAC;QACD,OAAO;YACL,8DAA8D;QAChE,CAAC;KACF,CAAA;AACH,CAAC;AAED,SAAS,oBAAoB,CAAC,QAAgB,EAAE,MAAsB;IACpE,IAAI,MAAM,CAAC,KAAK,KAAK,SAAS;QAAE,OAAO,SAAS,CAAA;IAChD,IAAI,QAAQ,IAAI,iBAAiB,CAAC,IAAI,IAAI,MAAM,CAAC,IAAI,KAAK,WAAW,IAAI,MAAM,CAAC,IAAI,KAAK,MAAM;QAC7F,OAAO,YAAY,CAAA;IACrB,IAAI,QAAQ,IAAI,iBAAiB,CAAC,SAAS,IAAI,MAAM,CAAC,IAAI,KAAK,QAAQ;QAAE,OAAO,WAAW,CAAA;IAC3F,IAAI,MAAM,CAAC,IAAI,KAAK,QAAQ,IAAI,MAAM,CAAC,IAAI,KAAK,gBAAgB;QAAE,OAAO,SAAS,CAAA;IAClF,IAAI,MAAM,CAAC,IAAI,CAAC,UAAU,CAAC,SAAS,CAAC;QAAE,OAAO,SAAS,CAAA;IACvD,OAAO,WAAW,CAAA;AACpB,CAAC"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"createScene.d.ts","sourceRoot":"","sources":["../../../src/rendering/scene/createScene.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;;GAkBG;AAIH,OAAO,KAAK,EAAkC,KAAK,EAAE,MAAM,SAAS,CAAA;AAEpE,wBAAgB,WAAW,IAAI,KAAK,
|
|
1
|
+
{"version":3,"file":"createScene.d.ts","sourceRoot":"","sources":["../../../src/rendering/scene/createScene.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;;GAkBG;AAIH,OAAO,KAAK,EAAkC,KAAK,EAAE,MAAM,SAAS,CAAA;AAEpE,wBAAgB,WAAW,IAAI,KAAK,CAiGnC"}
|
|
@@ -69,16 +69,17 @@ export function createScene() {
|
|
|
69
69
|
layer.visible = visible;
|
|
70
70
|
return true;
|
|
71
71
|
};
|
|
72
|
+
/** 按 role 和可见性过滤 layer,z 排序后逐层 paint */
|
|
72
73
|
const paintPane = (ctx, roles) => {
|
|
73
74
|
if (disposed)
|
|
74
75
|
return;
|
|
76
|
+
// 选出属于当前 pane 或全局、且可见的 layer
|
|
75
77
|
let candidates = layerList.filter((layer) => (layer.paneRole === ctx.paneRole || layer.paneRole === 'global') && layer.visible);
|
|
78
|
+
// 若传了 roles 参数,进一步按角色过滤(如只画 overlay)
|
|
76
79
|
if (roles) {
|
|
77
80
|
candidates = candidates.filter((layer) => roles.includes(layer.role));
|
|
78
81
|
}
|
|
79
|
-
//
|
|
80
|
-
// by ECMAScript 2019+ to be stable, so equal z values preserve the
|
|
81
|
-
// surviving registration order from the filter pass.
|
|
82
|
+
// 按 z 升序稳定排序,相同时保留注册顺序(ECMAScript 2019+ 保证 sort 稳定)
|
|
82
83
|
candidates.sort((a, b) => a.z - b.z);
|
|
83
84
|
for (const layer of candidates) {
|
|
84
85
|
layer.paint(ctx);
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"createScene.js","sourceRoot":"","sources":["../../../src/rendering/scene/createScene.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;;GAkBG;AAEH,OAAO,EAAE,YAAY,EAAe,MAAM,oCAAoC,CAAA;AAI9E,MAAM,UAAU,WAAW;IACzB,2EAA2E;IAC3E,0EAA0E;IAC1E,sEAAsE;IACtE,IAAI,SAAS,GAAY,EAAE,CAAA;IAC3B,IAAI,QAAQ,GAAG,KAAK,CAAA;IACpB,MAAM,YAAY,GAAiC,YAAY,CAAuB,EAAE,CAAC,CAAA;IAEzF,MAAM,OAAO,GAAG,GAAS,EAAE;QACzB,YAAY,CAAC,GAAG,CAAC,CAAC,GAAG,SAAS,CAAyB,CAAC,CAAA;IAC1D,CAAC,CAAA;IAED,2EAA2E;IAE3E,MAAM,QAAQ,GAAG,CAAC,KAAY,EAAQ,EAAE;QACtC,IAAI,QAAQ;YAAE,OAAM;QACpB,uEAAuE;QACvE,mEAAmE;QACnE,+DAA+D;QAC/D,IAAI,SAAS,CAAC,IAAI,CAAC,CAAC,QAAQ,EAAE,EAAE,CAAC,QAAQ,CAAC,EAAE,KAAK,KAAK,CAAC,EAAE,CAAC;YAAE,OAAM;QAClE,SAAS,GAAG,CAAC,GAAG,SAAS,EAAE,KAAK,CAAC,CAAA;QACjC,OAAO,EAAE,CAAA;IACX,CAAC,CAAA;IAED,MAAM,WAAW,GAAG,CAAC,EAAU,EAAW,EAAE;QAC1C,IAAI,QAAQ;YAAE,OAAO,KAAK,CAAA;QAC1B,MAAM,IAAI,GAAG,SAAS,CAAC,MAAM,CAAC,CAAC,KAAK,EAAE,EAAE,CAAC,KAAK,CAAC,EAAE,KAAK,EAAE,CAAC,CAAA;QACzD,IAAI,IAAI,CAAC,MAAM,KAAK,SAAS,CAAC,MAAM;YAAE,OAAO,KAAK,CAAA;QAClD,SAAS,GAAG,IAAI,CAAA;QAChB,OAAO,EAAE,CAAA;QACT,OAAO,IAAI,CAAA;IACb,CAAC,CAAA;IAED,MAAM,QAAQ,GAAG,CAAC,EAAU,EAAgB,EAAE;QAC5C,IAAI,QAAQ;YAAE,OAAO,IAAI,CAAA;QACzB,MAAM,GAAG,GAAG,SAAS,CAAC,IAAI,CAAC,CAAC,KAAK,EAAE,EAAE,CAAC,KAAK,CAAC,EAAE,KAAK,EAAE,CAAC,CAAA;QACtD,OAAO,GAAG,IAAI,IAAI,CAAA;IACpB,CAAC,CAAA;IAED,MAAM,kBAAkB,GAAG,CAAC,EAAU,EAAE,OAAgB,EAAW,EAAE;QACnE,IAAI,QAAQ;YAAE,OAAO,KAAK,CAAA;QAC1B,MAAM,KAAK,GAAG,SAAS,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,EAAE,KAAK,EAAE,CAAC,CAAA;QAChD,IAAI,CAAC,KAAK;YAAE,OAAO,KAAK,CAAA;QACxB,iEAAiE;QACjE,qEAAqE;QACrE,mEAAmE;QACnE,oEAAoE;QACpE,KAAK,CAAC,OAAO,GAAG,OAAO,CAAA;QACvB,OAAO,IAAI,CAAA;IACb,CAAC,CAAA;IAED,MAAM,SAAS,GAAG,CAAC,GAAiB,EAAE,KAAgC,EAAQ,EAAE;QAC9E,IAAI,QAAQ;YAAE,OAAM;QACpB,IAAI,UAAU,GAAG,SAAS,CAAC,MAAM,CAC/B,CAAC,KAAK,EAAE,EAAE,CAAC,CAAC,KAAK,CAAC,QAAQ,KAAK,GAAG,CAAC,QAAQ,IAAI,KAAK,CAAC,QAAQ,KAAK,QAAQ,CAAC,IAAI,KAAK,CAAC,OAAO,CAC7F,CAAA;QACD,IAAI,KAAK,EAAE,CAAC;YACV,UAAU,GAAG,UAAU,CAAC,MAAM,CAAC,CAAC,KAAK,EAAE,EAAE,CAAC,KAAK,CAAC,QAAQ,CAAC,KAAK,CAAC,IAAI,CAAC,CAAC,CAAA;QACvE,CAAC;QACD,
|
|
1
|
+
{"version":3,"file":"createScene.js","sourceRoot":"","sources":["../../../src/rendering/scene/createScene.ts"],"names":[],"mappings":"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"}
|
package/dist/version.d.ts
CHANGED
|
@@ -1,2 +1,2 @@
|
|
|
1
|
-
export declare const VERSION = "0.9.0-alpha.
|
|
1
|
+
export declare const VERSION = "0.9.0-alpha.4";
|
|
2
2
|
//# sourceMappingURL=version.d.ts.map
|
package/dist/version.js
CHANGED
|
@@ -1,2 +1,2 @@
|
|
|
1
|
-
export const VERSION = '0.9.0-alpha.
|
|
1
|
+
export const VERSION = '0.9.0-alpha.4';
|
|
2
2
|
//# sourceMappingURL=version.js.map
|
package/package.json
CHANGED
|
@@ -145,6 +145,7 @@ describe('viewportState template', () => {
|
|
|
145
145
|
expect(vs.zoomLevel).toBe(5)
|
|
146
146
|
expect(vs.plotWidth).toBe(800)
|
|
147
147
|
expect(vs.plotHeight).toBe(570)
|
|
148
|
+
expect(vs.visibleFrom).toBeGreaterThanOrEqual(0)
|
|
148
149
|
expect(vs.visibleFrom).toBeLessThan(vs.visibleTo)
|
|
149
150
|
expect(vs.kWidth).toBe(8)
|
|
150
151
|
// kGap 由 kGapFromKWidth(8,2)=1.5 推导,不再从 options$ 透传
|
|
@@ -385,20 +385,20 @@ export async function createChartController(opts: ChartMountOptions): Promise<Ch
|
|
|
385
385
|
const comparisonColors = chart.comparisonColors
|
|
386
386
|
const comparisonLoading = chart.comparisonLoading
|
|
387
387
|
|
|
388
|
-
//
|
|
388
|
+
// 优先走 Chart facade;kernel 仅用于尚无 facade 的字段
|
|
389
389
|
const themeSignal: ReadonlySignal<'light' | 'dark'> = chart.theme
|
|
390
390
|
const settingsSignal = chart.kernel.settings.readonly.settings
|
|
391
391
|
const rendererRuntimeSignal = chart.kernel.renderer.readonly.runtime
|
|
392
392
|
const chartModeSignal = chart.kernel.mode.readonly.chartMode
|
|
393
|
-
const drawingTool = chart.
|
|
394
|
-
|
|
395
|
-
const drawings = computed(() => chart.kernel.drawing.readonly.drawings().map(mapDrawingObject))
|
|
393
|
+
const drawingTool = chart.drawingTool
|
|
394
|
+
const drawings = computed(() => chart.drawings().map(mapDrawingObject))
|
|
396
395
|
const selectedDrawingId: ReadonlySignal<string | null> =
|
|
397
396
|
chart.kernel.drawing.readonly.selectedDrawingId
|
|
398
|
-
const paneRatios: ReadonlySignal<Readonly<Record<string, number>>> = chart.
|
|
399
|
-
const paneLayout: ReadonlySignal<ReadonlyArray<PaneSpec>> = chart.
|
|
400
|
-
const interactionState: ReadonlySignal<InteractionSnapshot> = chart.
|
|
401
|
-
const
|
|
397
|
+
const paneRatios: ReadonlySignal<Readonly<Record<string, number>>> = chart.paneRatios
|
|
398
|
+
const paneLayout: ReadonlySignal<ReadonlyArray<PaneSpec>> = chart.paneLayout
|
|
399
|
+
const interactionState: ReadonlySignal<InteractionSnapshot> = chart.interactionState
|
|
400
|
+
const legendTemplateContext = chart.legendTemplateContext
|
|
401
|
+
const symbolCatalog: ReadonlySignal<ReadonlyArray<SymbolInfo>> = chart.symbolCatalog
|
|
402
402
|
|
|
403
403
|
// -------------------------------------------------------------------
|
|
404
404
|
// Apply initial render state + seed data
|
|
@@ -921,6 +921,7 @@ export async function createChartController(opts: ChartMountOptions): Promise<Ch
|
|
|
921
921
|
paneRatios,
|
|
922
922
|
paneLayout,
|
|
923
923
|
interactionState,
|
|
924
|
+
legendTemplateContext,
|
|
924
925
|
comparisonColors,
|
|
925
926
|
comparisonLoading,
|
|
926
927
|
symbolCatalog,
|
package/src/controllers/index.ts
CHANGED
|
@@ -49,6 +49,17 @@ export { getPhysicalKLineConfig } from '../engine/utils/klineConfig'
|
|
|
49
49
|
// Indicator types & config
|
|
50
50
|
export type { SubIndicatorType } from '../engine/renderers/Indicator'
|
|
51
51
|
|
|
52
|
+
// Main-pane legend template context (Vue #legend slot / external renderers)
|
|
53
|
+
export type {
|
|
54
|
+
LegendTemplateContext,
|
|
55
|
+
LegendRenderMode,
|
|
56
|
+
LegendLayout,
|
|
57
|
+
LegendCurrentBar,
|
|
58
|
+
LegendTimeshareRow,
|
|
59
|
+
LegendIndicatorRow,
|
|
60
|
+
LegendComparisonRow,
|
|
61
|
+
} from '../engine/renderers/Indicator/mainIndicatorLegendContext'
|
|
62
|
+
|
|
52
63
|
// Indicator data helpers
|
|
53
64
|
export {
|
|
54
65
|
allIndicators,
|
package/src/controllers/types.ts
CHANGED
|
@@ -314,6 +314,13 @@ export interface ChartController extends DrawingChartAdapter {
|
|
|
314
314
|
readonly paneRatios: ReadonlySignal<Readonly<Record<string, number>>>
|
|
315
315
|
readonly paneLayout: ReadonlySignal<ReadonlyArray<PaneSpec>>
|
|
316
316
|
readonly interactionState: ReadonlySignal<InteractionSnapshot>
|
|
317
|
+
/**
|
|
318
|
+
* 主图左上角图例模板上下文。
|
|
319
|
+
* Vue `#legend` slot 等外部模板消费;null 表示当前帧无图例数据。
|
|
320
|
+
*/
|
|
321
|
+
readonly legendTemplateContext: ReadonlySignal<
|
|
322
|
+
import('../engine/renderers/Indicator/mainIndicatorLegendContext').LegendTemplateContext | null
|
|
323
|
+
>
|
|
317
324
|
readonly comparisonColors: ReadonlySignal<ReadonlyMap<string, string>>
|
|
318
325
|
readonly comparisonLoading: ReadonlySignal<boolean>
|
|
319
326
|
|
|
@@ -0,0 +1,45 @@
|
|
|
1
|
+
import { describe, expect, it, vi } from 'vitest'
|
|
2
|
+
|
|
3
|
+
import { TimeShareBuffer } from '../timeShareBuffer'
|
|
4
|
+
import type { TimeShareData } from '../../foundation/types/price'
|
|
5
|
+
|
|
6
|
+
function point(price: number, ts = 1): TimeShareData {
|
|
7
|
+
return { timestamp: ts, price, average: price, volume: 1, amount: price }
|
|
8
|
+
}
|
|
9
|
+
|
|
10
|
+
describe('TimeShareBuffer', () => {
|
|
11
|
+
it('stores and returns preClose metadata', () => {
|
|
12
|
+
const buf = new TimeShareBuffer()
|
|
13
|
+
expect(buf.getPreClose()).toBeNull()
|
|
14
|
+
buf.setPreClose(10.5)
|
|
15
|
+
expect(buf.getPreClose()).toBe(10.5)
|
|
16
|
+
buf.setPreClose(null)
|
|
17
|
+
expect(buf.getPreClose()).toBeNull()
|
|
18
|
+
})
|
|
19
|
+
|
|
20
|
+
it('clears previous points when a new load starts (no stale date flash)', async () => {
|
|
21
|
+
const buf = new TimeShareBuffer()
|
|
22
|
+
buf.setInlineData([point(10), point(11)])
|
|
23
|
+
expect(buf.getRawData()).toHaveLength(2)
|
|
24
|
+
|
|
25
|
+
let resolveFetch!: (v: ReadonlyArray<TimeShareData>) => void
|
|
26
|
+
const pending = new Promise<ReadonlyArray<TimeShareData>>((resolve) => {
|
|
27
|
+
resolveFetch = resolve
|
|
28
|
+
})
|
|
29
|
+
buf.setFetcher(async () => pending)
|
|
30
|
+
buf.setQueryDate(20260101)
|
|
31
|
+
buf.load({ symbol: '000001', period: 'timeshare', source: 'gotdx' })
|
|
32
|
+
|
|
33
|
+
// 新 load 开始后旧点应被清空,避免显示另一天数据
|
|
34
|
+
expect(buf.getRawData()).toEqual([])
|
|
35
|
+
expect(buf.loading.peek()).toBe(true)
|
|
36
|
+
|
|
37
|
+
resolveFetch([point(12), point(13)])
|
|
38
|
+
await vi.waitFor(() => {
|
|
39
|
+
expect(buf.getRawData()).toHaveLength(2)
|
|
40
|
+
})
|
|
41
|
+
expect(buf.getRawData()[0]?.price).toBe(12)
|
|
42
|
+
expect(buf.loading.peek()).toBe(false)
|
|
43
|
+
buf.dispose()
|
|
44
|
+
})
|
|
45
|
+
})
|
package/src/data/binance.ts
CHANGED
|
@@ -2,7 +2,7 @@ import { KLineChartError } from '../errors'
|
|
|
2
2
|
|
|
3
3
|
import type { DepthDelta, DepthSnapshot, DepthSource, DepthSourceStatus } from './depthTypes'
|
|
4
4
|
|
|
5
|
-
export const DEFAULT_BINANCE_SSE_URL = 'http://localhost:8081/api/
|
|
5
|
+
export const DEFAULT_BINANCE_SSE_URL = 'http://localhost:8081/api/binance/depth-events'
|
|
6
6
|
|
|
7
7
|
/**
|
|
8
8
|
* SSE-based depth source for Binance.
|