public void writeX3DAngles(Scientrace.Object3dEnvironment env, StringBuilder retsb)
        {
            Scientrace.Location tloc;
            foreach (Scientrace.Angle angle in this.angles)
            {
                tloc = angle.getLocation();
                Scientrace.X3DGridPoint x3dgp = new Scientrace.X3DGridPoint(env, tloc,
                                                                            tloc + angle.intersection.enter.flatshape.plane.u.toUnitVector().toLocation() * (env.radius / 100),
                                                                            tloc + angle.intersection.enter.flatshape.plane.v.toUnitVector().toLocation() * (env.radius / 100));
                //Console.WriteLine("Writing spot "+angle.ToString()+" to X3D");
                if (this.drawInteractionPlanes)
                {
                    retsb.Append(x3dgp.exportX3DnosphereRGB("1 1 0"));
                }
                if (this.drawInteractionNormals)
                {
                    retsb.Append(X3DGridPoint.get_RGBA_Line_XML(tloc, tloc + angle.intersection.enter.flatshape.plane.getNorm().negative() * 0.125, "1 0 1 0.4"));
                }
                retsb.Append(@"
<Transform scale='" + (env.radius / 1250).ToString() + " " + (env.radius / 1250).ToString() + " " + (env.radius / 1250).ToString() + @"' translation='" + angle.getLocation().trico() + @"'>
<Shape>
<Sphere /> 
<Appearance>
<Material emissiveColor='0 1 0' transparency='" + (1 - angle.fromTrace.intensity) + @"' /><!--angle-->
</Appearance> 
</Shape>
</Transform> ");
            }
        }
Esempio n. 2
0
 static public string drawLinePiecesXML(List <ObjectLinePiece> linePieces)
 {
     System.Text.StringBuilder retstr = new System.Text.StringBuilder(5000);
     foreach (ObjectLinePiece olp in linePieces)
     {
         // Writing some helpful comments.
         retstr.Append("<!-- Line From: \n" + olp.lp.startingpoint + " To: \n" + olp.lp.endingpoint + " -->");
         retstr.Append(X3DGridPoint.get_RGBA_Line_XML(olp.lp, olp.col));
     }
     return(retstr.ToString());
 }
Esempio n. 3
0
 public string x3DSolidRGBALineTo(Scientrace.Location aLoc, string colorRGBstring)
 {
     return(X3DGridPoint.get_RGBA_Line_XML(aLoc, this.loc, colorRGBstring));
 }
Esempio n. 4
0
 public static string get_RGBA_Line_XML(LinePiece anLP, string colorRGBAstring)
 {
     return(X3DGridPoint.get_RGBA_Line_XML(anLP.startingpoint, anLP.endingpoint, colorRGBAstring));
 }