import { IControl } from "../UiControl"; import { WindowLike } from "./UiWindow"; import { Camera } from "../../Math/Camera"; import { DpiSize_2 } from "../UiCommon"; import { Vec3 } from "../../Math/Vector"; import { Quat } from "../../Math/Quaternion"; import { Mat44 } from "../../Math/Matrix"; import { PixFormat } from "../../Image"; export declare class Container3DMesh { Position: ArrayBuffer; Texcoord: ArrayBuffer; Index: ArrayBuffer; } export declare class Container3DData { Geometry: Container3DMesh; Render: Container3DMesh; } export interface IContainer3DObject { SetData(d: Container3DData): boolean; } export interface IContainer3DControl { GetControl(): T; SetSize(v: DpiSize_2): IContainer3DControl; GetSize(): DpiSize_2; SetCustomObject(o: IContainer3DObject): IContainer3DObject; GetCustomObject(): IContainer3DObject; SetPosition(v: Vec3): IContainer3DControl; SetRotation(q: Quat): IContainer3DControl; SetScaling(v: Vec3): IContainer3DControl; Translate(v: Vec3): IContainer3DControl; Rotate(q: Quat): IContainer3DControl; Scale(v: Vec3): IContainer3DControl; Transform(m: Mat44): IContainer3DControl; GetPosition(): Vec3; GetRotation(): Quat; GetScaling(): Vec3; GetTransform(): Mat44; GetTransformT(): Mat44; } export interface IContainer3D extends IControl { new (window: WindowLike): IContainer3D; ControlAdd(c: IControl): any; ControlRemove(c: IControl): IControl; ControlRemoveAll(): Container3D; GetContainerControl(c: T): IContainer3DControl; SetContent2D(c: IControl): IControl; GetContent2D(): IControl; SetDepthFormat(nFormat: PixFormat): Container3D; GetDepthFormat(): Container3D; GetCamera(): Camera; CreateCustom3DObject(): IContainer3DObject; } declare const Container3D_base: IContainer3D; export declare class Container3D extends Container3D_base { private m_Child; private m_Content2D; constructor(window: WindowLike); ControlAdd(c: T): IContainer3DControl; ControlRemove(c: IControl): IControl; ControlRemoveAll(): Container3D; SetContent2D(c: IControl): IControl; } export {};