plateau_parse — DRIVE japan op

• Data kinds: any → table

• Call: import fullseye as fs; fs.ledger.plateau_parse(source: 'str | Path | bytes', *, origin: 'tuple[float, float] | None' = None, max_buildings: 'int | None' = None) -> 'dict[str, Any]' (implementation को सीधे call करना हो तो import driveplateau; driveplateau.plateau_parse(source: 'str | Path | bytes', *, origin: 'tuple[float, float] | None' = None, max_buildings: 'int | None' = None) -> 'dict[str, Any]', registry से लेना हो तो opsdrive.get("plateau_parse"))

उपयोग

PLATEAU CityGML से इमारतों के footprint polygons, ऊँचाई और तल की elevation stream रूप में पढ़ता है।

> नीचे का विस्तृत विवरण मूल text में है — सारांश और headings का अनुवाद हो चुका है।

iterparse で Building(ローカル名)の end イベントごとに処理し、処理後 elem.clear() でメモリを解放する(1 ファイル数百 MB でも動く設計)。

建物ごとに:

• measuredHeight があれば高さに使う。無ければ lod1Solid の最大標高 − 最小標高。

• 足元: lod0FootPrint があればその posList。無ければ lod1Solid の全面のうち 平均標高が最も低い面(LOD1 は押し出し柱なので底面がある)。

• posList は EPSG:6697 の「緯度 経度 標高」3 つ組として読む。

Args:

source: CityGML の文字列(< で始まる)、bytes、またはファイルパス(str/Path)。

origin: 局所座標の原点 (lat0, lon0) [deg]。None なら最初に採用した建物の重心。

max_buildings: 採用する建物数の上限(None で無制限)。到達したら読み取りを止める。

Returns:

{"origin": (lat0, lon0), "buildings": [...], "n_skipped": int, "crs": "EPSG:6697 (lat, lon, alt)"}。各建物は

{"id", "footprint" (k,2) float64(局所 x,y[m]、閉じない、反時計回り), "height", "ground_z", "lat", "lon"}(lat/lon は足元頂点の平均 = 重心)。

Raises:

ValueError: source が空/不正、posList が 3 の倍数でない、XML が壊れている、

max_buildings が負、origin が不正。

संदर्भ (sample data, साहित्य)

• Sample data catalog (DL URL / license) — 2-D के लिए skimage.data (BSD/public) + synthetic, 3-D के लिए real data sources (Stanford/PDS आदि) के DL URL।

• Operators का स्रोत और संदर्भ — इस op family के मूल research/methods के स्रोत।

• Algorithm का मानक स्रोत (लेखक, वर्ष) और उपयोग ऊपर की family usage guide में दिए गए हैं।

चलाए जा सकने वाले उदाहरण (verified samples जो सच में यह op call करते हैं)

• poc_driving_japan_town — py -3.11 examples/poc_driving_japan_town.py

वे अगले ops जिनसे type जुड़ता है (table को input के रूप में लेते हैं)

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

इसी category के (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 note tools/opdocs.py md से अपने-आप generate होता है (हाथ से edit न करें)।*

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