import * as THREE from 'three';
|
|
export const isNullOfUndefined = (param) => {
|
if (null === param || undefined === param) {
|
return true;
|
} else {
|
return false;
|
}
|
}
|
|
export const rotationToNum = (rotation) => {
|
let res = rotation * 180 / Math.PI;
|
if (res < 0) {
|
res += 360;
|
} else if (res > 360) {
|
res -= 360;
|
}
|
return res;
|
}
|
|
export const rotationParseNum = (num) => {
|
return num * Math.PI / 180;
|
}
|
|
export const setShadow = (obj) => {
|
obj.castShadow = true;
|
obj.receiveShadow = true;
|
|
if (obj.children) {
|
obj.children.forEach((child) => {
|
setShadow(child);
|
});
|
}
|
};
|
|
export const setColor = (obj) => {
|
if (obj.material) {
|
obj.material.color.set(0x4680BF);
|
}
|
if (obj.children) {
|
obj.children.forEach((child) => {
|
setColor(child);
|
});
|
}
|
};
|
|
export const deepEqual = (obj1, obj2) => {
|
if (obj1 === obj2) {
|
return true;
|
}
|
if (typeof obj1 !== "object" || obj1 === null || typeof obj2 !== "object" || obj2 === null) {
|
return false;
|
}
|
var keys1 = Object.keys(obj1);
|
var keys2 = Object.keys(obj2);
|
if (keys1.length !== keys2.length) {
|
return false;
|
}
|
for (var key of keys1) {
|
if (!keys2.includes(key) || !deepEqual(obj1[key], obj2[key])) {
|
return false;
|
}
|
}
|
return true;
|
}
|