fullseye

gs_catalog_html — DRIVE gsplat op

使い方

複数の 3DGS をサムネイルの一覧から選んで見る、1 枚で完結するカタログの HTML を書く。

各品のサムネイルは :func:gsplatnp.gs_render(numpy の EWA 描画)が、ページの最初の視点と同じカメラで描いた PNG (thumb_px 四方)。押すと同じページの中で 3-D の表示に切り替わり、「一覧に戻る」(Esc でも)で戻る。 データは選ばれた品の分だけ DecompressionStream で伸ばし、切り替えると前の品のテクスチャ・バッファを解放する。 容量の上限 max_bytes は全体で、品ごとの割り当て = (上限 − ページ − サムネイル) をガウシアンの数に比例して配る。 割り当てを超える品は :func:gs_viewer_html と同じ順で間引き、品ごとの記録を返す。

Parameters

items : list of dict {"gs": dict | "path": str, "name": str|{lang}, "desc": str|{lang}, "note": str|{lang}, "hotspots": [...], "camera": {...}}。name は必須。 out_path, title, lang, up, bg, max_bytes, unit_mm, fov_deg, dims, spin, bake_light, ambient, max_radius, mobile_quality : :func:gs_viewer_html と同じ。 thumb_px : int サムネイルの 1 辺(画素)。

Returns

dict path・bytes・items(品ごとの n_input / n_kept / n_dropped / thinned / dims_mm / thumb_bytes / camera)・n_dropped_total・external_urls(= 0)。out_path が None なら html も。

Raises

ValueError items が空・name が無い・gs と path のどちらも無い、ほかは :func:gs_viewer_html と同じ。

空の入力(items が空の list)は ValueError。

Examples

import gsviewer r = gsviewer.gs_catalog_html([{“path”: “mug.ply”, “name”: “Mug”}, {“path”: “shoe.splat”, “name”: “Shoe”}], … “catalog.html”, title=”Shop”) # doctest: +SKIP

参考(サンプルデータ・文献)

実行できる例(この op を実際に呼ぶ検証済みサンプル)

型が繋がる次の op(table を入力に取れる)

course_layout · course_occupancy · course_contains · world_build · world_camera · world_move · lidar_scan · rss_longitudinal_same

同カテゴリ(gsplat)

gs_from_world · gs_update · gs_render · gs_render_fn · gs_read_file · gs_viewer_html


Provenance: gsviewer.py — DRIVE operator registry. この per-op ノートは tools/opdocs.py md が自動生成(手編集しない)。

© 2026 Kazufumi Furuse — Fullseye operator documentation. Licensed under Apache-2.0.