MCPcopy Index your code
hub / github.com/ColmapView/Colmapview.github.io / renderCase

Function renderCase

e2e/webgpu-render.spec.ts:643–701  ·  view source on GitHub ↗
({
          sceneId,
          position,
          cameraParams,
          imageOverride = image,
          transform,
        }: {
          sceneId: string;
          position: [number, number, number];
          cameraParams: number[];
          imageOverride?: BrowserColmapImage;
          transform?: BrowserSim3dEuler;
        })

Source from the content-addressed store, hash-verified

641 );
642
643 const renderCase = async ({
644 sceneId,
645 position,
646 cameraParams,
647 imageOverride = image,
648 transform,
649 }: {
650 sceneId: string;
651 position: [number, number, number];
652 cameraParams: number[];
653 imageOverride?: BrowserColmapImage;
654 transform?: BrowserSim3dEuler;
655 }) => {
656 let session: ReturnType<BrowserRendererModule['createSplatRenderSession']> | null = null;
657 let renderedTexture: BrowserGpuTexture | null = null;
658
659 try {
660 const scene = resourceManager.acquire(device, {
661 sceneId,
662 cloud: makeCloud(position),
663 labelPrefix: sceneId,
664 });
665 session = createSplatRenderSession({
666 device,
667 scene,
668 format: 'rgba8unorm',
669 width,
670 height,
671 backgroundColor: [0, 0, 0, 1],
672 debugValidation: true,
673 });
674 renderedTexture = device.createTexture({
675 label: `${sceneId} target`,
676 size: { width, height },
677 format: 'rgba8unorm',
678 usage: textureUsageTextureBinding | textureUsageRenderAttachment,
679 });
680 const frame = createColmapMetricWebGpuSplatFrame({
681 image: imageOverride,
682 camera: makeCamera(cameraParams),
683 width,
684 height,
685 transform,
686 });
687 session.setCamera(frame);
688 await session.renderToTexture(renderedTexture);
689 const centroid = await computeRedCentroidFromTexture(renderedTexture);
690 activeRenderCases.push({ session, texture: renderedTexture });
691 return {
692 readyState: session.getReadyState(),
693 centroid,
694 texture: renderedTexture,
695 };
696 } catch (error) {
697 renderedTexture?.destroy();
698 session?.dispose();
699 throw error;
700 }

Callers 1

Calls 12

createSplatRenderSessionFunction · 0.85
setCameraMethod · 0.80
renderToTextureMethod · 0.80
getReadyStateMethod · 0.80
makeCloudFunction · 0.70
makeCameraFunction · 0.70
acquireMethod · 0.65
createTextureMethod · 0.65
destroyMethod · 0.65
disposeMethod · 0.65

Tested by

no test coverage detected