@openglobus/og
Version:
[openglobus](https://www.openglobus.org/) is a javascript/typescript library designed to display interactive 3d maps and planets with map tiles, imagery and vector data, markers, and 3D objects. It uses the WebGL technology, open source, and completely fr
37 lines (36 loc) • 1.2 kB
TypeScript
import { Vec3 } from "../math/Vec3";
import { RenderNode } from "../scene/RenderNode";
export interface ILightSourceParams {
position?: Vec3;
ambient?: Vec3;
diffuse?: Vec3;
specular?: Vec3;
shininess?: number;
}
declare class LightSource {
protected _renderNode: RenderNode | null;
_position: Vec3;
protected _ambient: Vec3;
protected _diffuse: Vec3;
protected _specular: Vec3;
protected _shininess: number;
protected _active: boolean;
protected _tempAmbient: Vec3;
protected _tempDiffuse: Vec3;
protected _tempSpecular: Vec3;
protected _tempShininess: number;
constructor(params: ILightSourceParams);
isActive(): boolean;
setPosition3v(position: Vec3): void;
setPosition(x: number, y: number, z: number): void;
getPosition(): Vec3;
setAmbient3v(rgb: Vec3): void;
setDiffuse3v(rgb: Vec3): void;
setSpecular3v(rgb: Vec3): void;
setAmbient(r: number, g: number, b: number): void;
setDiffuse(r: number, g: number, b: number): void;
setSpecular(r: number, g: number, b: number): void;
setShininess(shininess: number): void;
addTo(renderNode: RenderNode): void;
}
export { LightSource };