UNPKG

@polygonjs/polygonjs

Version:

node-based WebGL 3D engine https://polygonjs.com

61 lines (59 loc) 2.52 kB
import {BaseCoreObject} from '../geometry/entities/object/BaseCoreObject'; import type {Vector4, Vector3, Vector2} from 'three'; import {CoreObjectType, ObjectContent} from '../geometry/ObjectContent'; // vector export function setObjectVector4(object: ObjectContent<CoreObjectType>, attribName: string, value: Vector4) { BaseCoreObject.addAttribute(object, attribName, value); } export function getObjectVector4(object: ObjectContent<CoreObjectType>, attribName: string, target: Vector4) { BaseCoreObject.attribValue(object, attribName, 0, target); } export function setObjectVector3(object: ObjectContent<CoreObjectType>, attribName: string, value: Vector3) { BaseCoreObject.addAttribute(object, attribName, value); } export function getObjectVector3(object: ObjectContent<CoreObjectType>, attribName: string, target: Vector3) { BaseCoreObject.attribValue(object, attribName, 0, target); } export function setObjectVector2(object: ObjectContent<CoreObjectType>, attribName: string, value: Vector2) { BaseCoreObject.addAttribute(object, attribName, value); } export function getObjectVector2(object: ObjectContent<CoreObjectType>, attribName: string, target: Vector2) { BaseCoreObject.attribValue(object, attribName, 0, target); } // number export function setObjectNumber(object: ObjectContent<CoreObjectType>, attribName: string, value: number) { BaseCoreObject.addAttribute(object, attribName, value); } export function getObjectNumber( object: ObjectContent<CoreObjectType>, attribName: string, defaultValue: number ): number { const val = BaseCoreObject.attribValue(object, attribName, 0) as number | undefined; if (val == null) { return defaultValue; } return val; } // boolean export function setObjectBoolean(object: ObjectContent<CoreObjectType>, attribName: string, value: boolean) { BaseCoreObject.addAttribute(object, attribName, value); } export function getObjectBoolean( object: ObjectContent<CoreObjectType>, attribName: string, defaultValue: boolean ): boolean { const val = BaseCoreObject.attribValue(object, attribName, 0) as boolean | undefined; if (val == null) { return defaultValue; } return val; } // string export function setObjectString(object: ObjectContent<CoreObjectType>, attribName: string, value: string) { BaseCoreObject.addAttribute(object, attribName, value); } export function getObjectString(object: ObjectContent<CoreObjectType>, attribName: string): string | undefined { return BaseCoreObject.attribValue(object, attribName, 0) as string | undefined; }