import GLEnv from "./GLEnv"; import { Area } from "./AreaUtil"; import Primitive from "./Primitive"; import FlakeMesh from "./FlakeMesh"; import Mesh from "./Mesh"; import Entity from "./Entity"; import RenderStage from "./RenderStage"; /** * 地表断片レンダリングためのオブジェクト * * 地表 DEM のメッシュと、地表上の 0 個以上の (Entity, Primitive) を取 * 得することができる。 */ declare class FlakeRenderObject implements Area { readonly z: number; readonly x: number; readonly y: number; /** * @param area 地表断片の領域 * @param glenv WebGL 環境 * @param base_mesh 地表断片の基本メッシュ */ constructor(area: Area, glenv: GLEnv, base_mesh: FlakeMesh); /** * エンティティ・データを追加 */ addEntityData(mesh: Mesh, producer: Entity.FlakePrimitiveProducer): void; /** * 地表断片上のエンティティ数 */ get num_entities(): number; /** * 地表断片の基本メッシュを取得 */ getBaseMesh(): FlakeMesh; /** * @summary エンティティのプリミティブを取得 * * @param index エンティティのインデックス * @param stage レンダリングステージ */ getEntityPrimitive(index: number, stage: RenderStage): EntityPrimitivePair; /** * @summary Flakeの境界箱メッシュを設定 * * @param bbox_mesh_info 境界箱メッシュの情報 */ setDebugMesh(gocs_bbox_mesh: Mesh, geo_bbox_mesh: Mesh): void; get gocs_bbox_mesh(): Mesh | null; get geo_bbox_mesh(): Mesh | null; private readonly _glenv; private readonly _base_mesh; private readonly _edata_list; private _transform; private _gocs_bbox_mesh; private _geo_bbox_mesh; } /** getEntityPrimitive() が返す値の型 */ interface EntityPrimitivePair { entity: Entity; primitive: Primitive; } export default FlakeRenderObject; //# sourceMappingURL=FlakeRenderObject.d.ts.map