Разработка сцены солнечной системы. Я решил, что солнечная система состоит из Pl anet объектов (OOP). Каждый объект Pl anet имеет свойства name, size, distance from Sun, et c. Мне удалось создать объект Pl anet с этими свойствами (я могу получить доступ к атрибутам PlanetArray через консоль). Кажется, я не могу понять, как создавать объекты Pl anet (OOP), где сетки имеют вышеупомянутые свойства. Это вызывает ошибку темы. Я попытался разделить / упростить проблему с помощью новой функции для создания объекта PlanetMe sh - без других свойств. Но функция PlanetMe sh выдает ту же ошибку. Я мог бы воспользоваться некоторыми советами. Это ситуация, когда я должен изучить UserData ?
'' '// создать пустой массив для хранения геометрических объектов Pl anet var planetMeshArray = [];
// create emtpy array to hold 'Planet' objects
var planetArray = [];
var unitSphere = new THREE.SphereBufferGeometry(1, 2 * 32, 2 * 16);
var planetMaterial = new THREE.MeshBasicMaterial({ color: "white" });
// define PlanetMesh object
function PlanetMesh(meshName) {
this.meshName = new THREE.Mesh(unitSphere, planetMaterial);
} // end Person function
console.log("# PlanetMesh object properties: ", PlanetMesh.length);
// define Planet object
function Planet(name, position, distance, size) {
this.name = name
this.position = position;
this.size = size;
} // end Person function
console.log("# Planet object properties: ", Planet.length);
// create the Planet meshes!
for (var i = 0; i < config.planets.length; i++) {
planetMeshArray[i] = new PlanetMesh(config.planets[i].name);
scene.add(planetArray[i]);
} // end for loop
// create the Planets!
for (var i = 0; i < config.planets.length; i++) {
console.log("planets array - Name: ", config.planets[i].name)
planetArray[i] = new Planet(config.planets[i].name, config.planets[i].position, config.planets[i].distance, config.planets[i].size);
//scene.add(planetArray[i]); //stmt throws lots errors...temporarily commented
} // end for loop
console.log("the planetArray is an array of Planet objects : ", planetArray)
console.log("the planetMeshArray is an array of Planet mesh objects : ", planetMeshArray)
'' '