//Base init method for map objects
 protected void MapObjectInit()
 {
     on      = true;
     z       = 0;
     manager = GameObject.Find("Manager").GetComponent <Manager>();
     manager.AddMapObject(this);
     display = GetComponentInChildren <SelectDisplay>();
 }
Esempio n. 2
0
        public Molecule(Molecule m)
            : base(m)
        {
            chains = new List<Chain> ();
            residues = new List<Residue> ();
            atoms = new List<Atom> ();

            for (int i = 0; i<m.Chains.Count; i++) {
                Chain c= new Chain(m.Chains[i]);
                this.Chains.Add(c);

                for (int j = 0; j<m.Chains[i].Residues.Count; j++) {
                    Residue r = new Residue(m.Chains[i].Residues[j],c);

                    this.Chains[i].Residues.Add(r);
                    this.Residues.Add(r);

                    for (int k =0; k<m.Chains[i].Residues[j].Atoms.Count; k++) {

                        Atom a = new Atom(m.Chains[i].Residues[j].Atoms[k],r,c);
                        this.Chains[i].Residues[j].Atoms.Add(a);
                        this.Chains[i].Atoms.Add(a);
                        this.Atoms.Add(a);

                    }

                }

            }

            bonds = new List<int[]> (m.Bonds);
            chainsBonds = new List<List<int>> (m.chainsBonds);

            color = m.color;
            type = m.type;
            render = m.render;
            select = m.select;
            energies = m.energies;
        }
Esempio n. 3
0
    public void SetSelect(SelectDisplay s,int index)
    {
        switch (s) {
        case SelectDisplay.Atom :

            if(!selects[index].MinDistAtom.Selected[index]){

                selects[index].MinDistAtom.Selected[index] = true;

                selects[index].MinDistAtom.ForceGameobject[index] = (GameObject)Instantiate (Resources.Load("Prefabs/Arrow") as GameObject,selects[index].MinDistAtom.Location[Main.current_frame], Quaternion.identity);
                selects[index].MinDistAtom.ForceGameobject[index].transform.SetParent(transform,true);
                selects[index].selectedAtoms.Add(selects[index].MinDistAtom);

            }
            else{

                selects[index].MinDistAtom.Selected[index] = false;
                GameObject.Destroy(selects[index].MinDistAtom.ForceGameobject[index]);
                selects[index].selectedAtoms.Remove(selects[index].MinDistAtom);

            }

            break;
        case SelectDisplay.Residue :
            if(!selects[index].MinDistResidue.Selected[index]){
                selects[index].MinDistResidue.Selected[index] = true;

                selects[index].MinDistResidue.ForceGameobject[index] =(GameObject)Instantiate (Resources.Load("Prefabs/Arrow") as GameObject,selects[index].MinDistResidue.Location[Main.current_frame], Quaternion.identity);
                selects[index].MinDistResidue.ForceGameobject[index].transform.SetParent(transform,true);
                selects[index].selectedResidues.Add(selects[index].MinDistResidue);
            }
            else{

                selects[index].MinDistResidue.Selected[index] = false;
                GameObject.Destroy(selects[index].MinDistResidue.ForceGameobject[index]);
                selects[index].selectedResidues.Remove(selects[index].MinDistResidue);

            }
            break;
        case SelectDisplay.Chain :
            if(!selects[index].MinDistChain.Selected[index]){

                selects[index].MinDistChain.Selected[index] = true;
                selects[index].MinDistChain.ForceGameobject[index] = (GameObject)Instantiate (Resources.Load("Prefabs/Arrow") as GameObject,selects[index].MinDistChain.Location[Main.current_frame], Quaternion.identity);
                selects[index].MinDistChain.ForceGameobject[index].transform.SetParent(transform,true);
                selects[index].selectedChains.Add(selects[index].MinDistChain);

            }
            else{

                selects[index].MinDistChain.Selected[index] = false;
                GameObject.Destroy(selects[index].MinDistChain.ForceGameobject[index]);
                selects[index].selectedChains.Remove(selects[index].MinDistChain);

            }
            break;
        default:break;

        }
    }