Exemplo n.º 1
0
        public LightwaveObject[] okolica;     //objekti za okolico robota

        public Robot(int rot1, int rot2, int rot3, int rot4, int rot5, int rot6)
        {
            rotacija1 = rot1;
            rotacija2 = rot2;
            rotacija3 = rot3;
            rotacija4 = rot4;
            rotacija5 = rot5;
            rotacija6 = rot6;
            string dir = Environment.CurrentDirectory;

            dir         = dir.Remove(dir.IndexOf("bin")) + "ModelsLWO\\"; //pot do modelov
            robot_model = new LightwaveObject[10];
            okolica     = new LightwaveObject[10];
            // od tu pa do konca catch zakomentiraj če ne dela model robota :)
            try
            {
                robot_model[0] = LightwaveObject.LoadObject(dir + "MH6_base.lwo");  //poizkusi naložit modele
                robot_model[1] = LightwaveObject.LoadObject(dir + "MH6_saxis.lwo");
                robot_model[2] = LightwaveObject.LoadObject(dir + "MH6_laxis.lwo");
                robot_model[3] = LightwaveObject.LoadObject(dir + "MH6_uaxis.lwo");
                robot_model[4] = LightwaveObject.LoadObject(dir + "MH6_raxis.lwo");
                robot_model[5] = LightwaveObject.LoadObject(dir + "MH6_baxis.lwo");
                robot_model[6] = LightwaveObject.LoadObject(dir + "MH6_taxis.lwo");
                robot_model[7] = LightwaveObject.LoadObject(dir + "TOOL3.lwo");
                // okolica
                okolica[0] = LightwaveObject.LoadObject(dir + "Okolica\\Barrel_6.lwo");
                okolica[1] = LightwaveObject.LoadObject(dir + "Okolica\\Aframe.lwo");
                okolica[2] = LightwaveObject.LoadObject(dir + "Okolica\\floor.lwo");
                modelOK    = true;
            }
            catch
            {
                modelOK = false;  //če so napake to definiraj s to spremenljivko
            }
        }
Exemplo n.º 2
0
 public void risi_model(LightwaveObject model)
 {
     for (int l = 0; l < model.Layers.Count; l++)
     {
         Layer   layer = model.Layers[l];
         Surface s     = new Surface();
         for (int i = 0; i < layer.Polygons.Count; i++)
         {
             Polygon poly = layer.Polygons[i];
             GL.Begin(BeginMode.Polygon);
             s = poly.SurfaceReference;
             GL.Color3(s.color.Red, s.color.Green, s.color.Blue);
             for (int j = 0; j < poly.Vertices.Count; j++)
             {
                 Lightwave.Point p = layer.Points[(int)poly.Vertices[j].Index];
                 GL.Normal3(poly.Vertices[j].normal_x, poly.Vertices[j].normal_y, poly.Vertices[j].normal_z);
                 GL.Vertex3(p.position_x, p.position_y, p.position_z);
             }
             GL.End();
         }
     }
 }