(entryPath: string)
| 133 | } |
| 134 | |
| 135 | export function getColmapArchiveKey(entryPath: string): string { |
| 136 | const filename = entryPath.split('/').pop() ?? entryPath; |
| 137 | |
| 138 | if (!entryPath.includes('sparse/')) { |
| 139 | return `sparse/0/${filename}`; |
| 140 | } |
| 141 | |
| 142 | const match = entryPath.match(/(sparse\/\d+\/[^/]+)$/); |
| 143 | return match ? match[1] : `sparse/0/${filename}`; |
| 144 | } |
| 145 | |
| 146 | export function hasRequiredColmapArchiveFiles(keys: Iterable<string>): boolean { |
| 147 | let foundCameras = false; |
no outgoing calls
no test coverage detected