Wayback Machinekoobas.hobune.stream
May JUN Jul
Previous capture 12 Next capture
2021 2022 2023
1 capture
12 Jun 22 - 12 Jun 22
sparklines
Close Help
  • Products
  • Solutions
  • Made with Unity
  • Learning
  • Support & Services
  • Community
  • Asset Store
  • Get Unity

UNITY ACCOUNT

You need a Unity Account to shop in the Online and Asset Stores, participate in the Unity Community and manage your license portfolio. Login Create account
  • Blog
  • Forums
  • Answers
  • Evangelists
  • User Groups
  • Beta Program
  • Advisory Panel

Navigation

  • Home
  • Products
  • Solutions
  • Made with Unity
  • Learning
  • Support & Services
  • Community
    • Blog
    • Forums
    • Answers
    • Evangelists
    • User Groups
    • Beta Program
    • Advisory Panel

Unity account

You need a Unity Account to shop in the Online and Asset Stores, participate in the Unity Community and manage your license portfolio. Login Create account

Language

  • Chinese
  • Spanish
  • Japanese
  • Korean
  • Portuguese
  • Ask a question
  • Spaces
    • Default
    • Help Room
    • META
    • Moderators
    • Topics
    • Questions
    • Users
    • Badges
  • Home /
  • Help Room /
avatar image
0
Question by kabehzad · Nov 29, 2015 at 04:43 PM · instantiatestruct

Instantiate - Getting specific data from another script

For my final in class I am being asked to visualize data. I've taken earthquake data from an Excel file an converted it to a TXT. In that data set there are multiple columns including Latitude and Longitude.

I am trying to call those specific variables from that data and to create a sphere for each piece. In other words, for every line of data a sphere is going to be created with that specific latitude and longitude. But right now I'm getting an error that reads:

NullReferenceException: Object reference not set to an instance of an object LevelScript.Start () (at Assets/Classes/LevelScript.cs:24)

Here is the data so it matches:

using UnityEngine; using System.Collections; using System.Collections.Generic; using System.IO;

public class LevelScript : MonoBehaviour {

 public TextAsset earthquakeDataFile;
 
 EarthquakeStruct[] earthquakeStructs; // penguins
 
 // Use this for initialization
 void Start () 
 {
     earthquakeStructs = ParseEarthquakeFile();
     for (int i = 0; i < 1; i++)
     {
         // instantiate that sphere 
         GameObject sphere = GameObject.CreatePrimitive(PrimitiveType.Sphere);
         sphere.AddComponent<EarthquakeStruct>();
         sphere.transform.position = new Vector3(0, 0, 0);
             
         // set the variables in that sphere to the same as the ones in our struct
         float tempLat = earthquakeStructs[i].GetLatitude();
         float tempLong = earthquakeStructs[i].GetLongitude();
         **sphere.GetComponent<EarthquakeStruct>().SetLatitude(tempLat);
         sphere.GetComponent<EarthquakeStruct>().SetLongitude(tempLong);**

         
         // call function to move gameobject to latitude / longitude location
         sphere.GetComponent<EarthquakeStruct>().MoveToLocation();
     }    
 }
 
 // Update is called once per frame
 void Update () 
 {
 
 }
 
 private EarthquakeStruct[] ParseEarthquakeFile()
 {
     EarthquakeStruct[] temp = new EarthquakeStruct[0];    // make empty array
     
     //read text file
     string earthquakeFile;
     
     earthquakeFile = earthquakeDataFile.text; // entire file
             
     if (earthquakeFile != null)
     {
         string[] lines = earthquakeFile.Split('#'); //each line
                 
         // initialize array
         temp = new EarthquakeStruct[lines.Length]; // set length of struct array
         
         for (int i = 1; i < lines.Length; i++)
         {
             string[] columns = lines[i].Split(','); // each column
             
             // convert into float
             float latitude = 0;
             float longitude = 0;
             
             if (columns.Length > 15) // has reasonable number of columns for our data set
             {
                 if (columns[1] != null) // isn't a null variable
                 {
                     if (columns[1].Length > 0) // not empty
                     {
                         latitude = float.Parse(columns[1]); // parse data into float
                     }
                 }
                 if (columns[2] != null)
                 {
                     if (columns[2].Length > 0)
                     {
                         longitude = float.Parse(columns[2]);
                     }
                 }
             }
             
             temp[i] = new EarthquakeStruct(latitude, longitude); // set struct info
         }                
     }
     return temp;
 }
 

}

Comment
Add comment
10 |3000 characters needed characters left characters exceeded
▼
  • Viewable by all users
  • Viewable by moderators
  • Viewable by moderators and the original poster
  • Advanced visibility
Viewable by all users

0 Replies

· Add your reply
  • Sort: 

Your answer

Hint: You can notify a user about this post by typing @username

Up to 2 attachments (including images) can be used with a maximum of 524.3 kB each and 1.0 MB total.

Follow this Question

Answers Answers and Comments

3 People are following this question.

avatar image avatar image avatar image

Related Questions

Why is my serialized custom class/struct not properly instantiated (values return null/default) ? 0 Answers

Involve Instatiated objects in Animation 1 Answer

get prefabs instantiated on specific texture 0 Answers

Why cant i instantiate my ship? Error NullReferenceException: Object reference not set to an instance of an object. 1 Answer

Null reference exception instatiante? 0 Answers


Enterprise
Social Q&A

Social
Subscribe on YouTube social-youtube Follow on LinkedIn social-linkedin Follow on Twitter social-twitter Follow on Facebook social-facebook Follow on Instagram social-instagram

Footer

  • Purchase
    • Products
    • Subscription
    • Asset Store
    • Unity Gear
    • Resellers
  • Education
    • Students
    • Educators
    • Certification
    • Learn
    • Center of Excellence
  • Download
    • Unity
    • Beta Program
  • Unity Labs
    • Labs
    • Publications
  • Resources
    • Learn platform
    • Community
    • Documentation
    • Unity QA
    • FAQ
    • Services Status
    • Connect
  • About Unity
    • About Us
    • Blog
    • Events
    • Careers
    • Contact
    • Press
    • Partners
    • Affiliates
    • Security
Copyright © 2020 Unity Technologies
  • Legal
  • Privacy Policy
  • Cookies
  • Do Not Sell My Personal Information
  • Cookies Settings
"Unity", Unity logos, and other Unity trademarks are trademarks or registered trademarks of Unity Technologies or its affiliates in the U.S. and elsewhere (more info here). Other names or brands are trademarks of their respective owners.
  • Anonymous
  • Sign in
  • Create
  • Ask a question
  • Spaces
  • Default
  • Help Room
  • META
  • Moderators
  • Explore
  • Topics
  • Questions
  • Users
  • Badges