fullseye

building_prisms — DRIVE japan op

使い方

建物の足跡(footprint)を高さまで押し出し、1 つの三角形メッシュにまとめる。

Args: buildings: plateau_parse の buildings(footprint, height, ground_z)。 color_fn: building -> (r,g,b) 0..1。None なら _default_building_color。 base_z: 全建物の底 z [m]。None なら各建物の ground_z を使う(起伏のある世界向け)。 自前の平らな道路世界には 0.0 が合う。 roof_shade: 屋根面の色の倍率(側面と見分けるための控えめな陰)。

Returns: (V (n,3) float64, F (m,3) int64, colors (m,3) float64 0..1, ids (m,) int64)。 ids[f] は面 f が属する建物の番号(入力列の添字)。建物が 0 件なら各配列は空。

Raises: ValueError: color_fn の返り値が RGB 3 要素 0..1 でない、建物の footprint/height が不正。

空の入力(buildings が 0 件)は空を返す(理由: 建物が 0 件のタイルは実データに普通にある。空の角柱集合が正しい答え)。

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

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

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

course_crank · course_s_curve · course_turnaround · course_slope · course_intersection · course_parallel_parking · course_crossing · course_road

同カテゴリ(japan)

osm_synthetic · osm_parse · osm_road_graph · osm_road_mask · osm_road_loops · osm_route · japan_world · japan_stats


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

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