public static void Draw <C>(AccelMsg message, Drawing3d drawing, Color color, GameObject origin, float lengthScale = 1, float sphereRadius = 1, float thickness = 0.01f) where C : ICoordinateSpace, new() { Vector3 originPos = (origin == null) ? Vector3.zero : origin.transform.position; drawing.DrawArrow(originPos, originPos + message.linear.From <C>() * lengthScale, color, thickness); VisualizationUtils.DrawAngularVelocityArrow(drawing, message.angular.From <C>(), originPos, color, sphereRadius, thickness); }
public override Action CreateGUI(AccelWithCovarianceMsg message, MessageMetadata meta) { return(() => { message.accel.GUI(); VisualizationUtils.GUIGrid(message.covariance, 6, ref m_ViewCovariance); }); }
public override Action CreateGUI(MagneticFieldMsg message, MessageMetadata meta) { return(() => { message.header.GUI(); message.magnetic_field.GUI("Magnetic field (Tesla)"); VisualizationUtils.GUIGrid(message.magnetic_field_covariance, 3, "Covariance", ref m_ViewCovariance); }); }
public override Action CreateGUI(PoseWithCovarianceStampedMsg message, MessageMetadata meta) { return(() => { message.header.GUI(); message.pose.pose.GUI(); VisualizationUtils.GUIGrid(message.pose.covariance, 6, ref m_ViewCovariance); }); }
public static void Draw <C>(PoseMsg message, Drawing3d drawing, float size = 0.1f, bool drawUnityAxes = false) where C : ICoordinateSpace, new() { VisualizationUtils.DrawAxisVectors <C>( drawing, new Vector3Msg(message.position.x, message.position.y, message.position.z), message.orientation, size, drawUnityAxes ); }
public override void Draw(Drawing3d drawing, PointMsg msg, MessageMetadata meta) { // If the user doesn't specify a color, SelectColor helpfully picks one // based on the message topic. Color finalColor = VisualizationUtils.SelectColor(m_Color, meta); // Most of the default visualizers offer static drawing functions // so that your own visualizers can easily send work to them. PointDefaultVisualizer.Draw <FLU>(msg, drawing, finalColor, m_Size); // You can also directly use the drawing functions provided by the Drawing class drawing.DrawLabel(m_Label, msg.From <FLU>(), finalColor, m_Size); }
public override Action CreateGUI(ImuMsg message, MessageMetadata meta) { return(() => { message.header.GUI(); message.orientation.GUI("Orientation"); message.angular_velocity.GUI("Angular velocity"); message.linear_acceleration.GUI("Linear acceleration"); VisualizationUtils.GUIGrid(message.orientation_covariance, 3, "Orientation covariance", ref m_ViewOrientation); VisualizationUtils.GUIGrid(message.angular_velocity_covariance, 3, "Angular velocity covariance", ref m_ViewAngular); VisualizationUtils.GUIGrid(message.linear_acceleration_covariance, 3, "Linear acceleration covariance", ref m_ViewAccel); }); }
public override Action CreateGUI(CameraInfoMsg message, MessageMetadata meta, Texture2D tex) { return(() => { message.header.GUI(); GUILayout.Label($"Height x Width: {message.height}x{message.width}\nDistortion model: {message.distortion_model}"); GUILayout.Label($"Distortion parameters: {string.Join(", ", message.d)}"); VisualizationUtils.GUIGrid(message.k, 3, "K", ref m_ViewK); VisualizationUtils.GUIGrid(message.r, 3, "R", ref m_ViewR); VisualizationUtils.GUIGrid(message.p, 3, "P", ref m_ViewP); GUILayout.Label($"Binning X: {message.binning_x}\nBinning Y: {message.binning_y}"); message.roi.GUI(tex); }); }
public override Texture2D CreateTexture(CameraInfoMsg message) { // False if ROI not used, true if subwindow captured if (!message.roi.do_rectify) { return(null); } ITextureVisual imageVisual = VisualizationUtils.GetVisual(ImageTopic) as ITextureVisual; if (imageVisual == null) { return(null); } return(message.roi.RegionOfInterestTexture(imageVisual.GetTexture())); }
public void AddMessage(Message message) { if (!VisualizationUtils.AssertMessageType <OccupancyGridMsg>(message, m_Topic)) { return; } m_Message = (OccupancyGridMsg)message; m_TextureIsDirty = true; if (m_IsDrawingEnabled && Time.time > m_LastDrawingFrameTime) { Redraw(); } m_LastDrawingFrameTime = Time.time; }
public virtual void AddMessage(Message message) { if (!VisualizationUtils.AssertMessageType <ImageMsg>(message, m_Topic)) { return; } this.message = (ImageMsg)message; m_Texture2D = null; m_CheapTexture2D = null; m_Width = (int)this.message.width; m_Height = (int)this.message.height; m_Encoding = this.message.encoding; //m_CheapTextureMaterial.SetFloat("_gray", this.message.GetNumChannels() == 1 ? 1.0f : 0.0f); m_CheapTextureMaterial.SetFloat("_convertBGR", this.message.EncodingRequiresBGRConversion() ? 1.0f : 0.0f); // if anyone wants to know about the texture, notify them if (m_OnChangeCallbacks.Count > 0) { GetTexture(); } }
static void Main(string[] args) { // load documents Utils.VerboseLine("Loading documents ..."); string[] docs = File.ReadAllLines("C:\\newwork\\testclustering\\data\\yahoofinance.txt"); BowSpace bowSpace = new BowSpace(); bowSpace.StopWords = StopWords.EnglishStopWords; bowSpace.Stemmer = new PorterStemmer(); bowSpace.WordWeightType = WordWeightType.TfIdf; RegexTokenizer tokenizer = new RegexTokenizer(); tokenizer.IgnoreUnknownTokens = true; bowSpace.Tokenizer = tokenizer; bowSpace.Initialize(docs); // compute layout SemanticSpaceLayout semSpc = new SemanticSpaceLayout(bowSpace); Vector2D[] coords = semSpc.ComputeLayout(); // build spatial index //Utils.VerboseLine("Building spatial index ..."); //SpatialIndex2D spatIdx = new SpatialIndex2D(); //spatIdx.BuildIndex(coords); //spatIdx.InsertPoint(9000, new Vector2D(1000, 1000)); //ArrayList<IdxDat<Vector2D>> points = spatIdx.GetPoints(new Vector2D(0.5, 0.5), 0.1); //Utils.VerboseLine("Number of retrieved points: {0}.", points.Count); ArrayList <Vector2D> tmp = new ArrayList <Vector2D>(coords); tmp.Shuffle(); //tmp.RemoveRange(1000, tmp.Count - 1000); // compute elevation StreamWriter writer = new StreamWriter("c:\\elev.txt"); LayoutSettings ls = new LayoutSettings(800, 600); ls.AdjustmentType = LayoutAdjustmentType.Soft; ls.StdDevMult = 2; ls.FitToBounds = true; ls.MarginVert = 50; ls.MarginHoriz = 50; double[,] zMtx = VisualizationUtils.ComputeLayoutElevation(tmp, ls, 150, 200); VisualizationUtils.__DrawElevation__(tmp, ls, 300, 400).Save("c:\\elev.bmp"); for (int row = 0; row < zMtx.GetLength(0); row++) { for (int col = 0; col < zMtx.GetLength(1); col++) { writer.Write("{0}\t", zMtx[row, col]); } writer.WriteLine(); } writer.Close(); // output coordinates StreamWriter tsvWriter = new StreamWriter("c:\\layout.tsv"); for (int i = 0; i < coords.Length; i++) { //if (i < points.Count) //{ // tsvWriter.WriteLine("{0}\t{1}\t{2}\t{3}", coords[i].X, coords[i].Y, points[i].Dat.X, points[i].Dat.Y); //} //else { tsvWriter.WriteLine("{0}\t{1}", coords[i].X, coords[i].Y); } } tsvWriter.Close(); //// get document names //int k = 0; //ArrayList<Pair<string, Vector2D>> layout = new ArrayList<Pair<string, Vector2D>>(); //foreach (string doc in docs) //{ // string[] docInfo = doc.Split(' '); // layout.Add(new Pair<string, Vector2D>(docInfo[0], coords[k++])); //} //Console.WriteLine(coords.Length); //Console.WriteLine(layout.Count); //StreamWriter writer = new StreamWriter("c:\\vidCoords.txt"); //foreach (Pair<string, Vector2D> docPos in layout) //{ // writer.WriteLine("{0}\t{1}\t{2}", docPos.First, docPos.Second.X, docPos.Second.Y); //} //writer.Close(); }
public static void Draw <C>(GridCellsMsg message, Drawing3d drawing, Color color, float radius = 0.01f) where C : ICoordinateSpace, new() { VisualizationUtils.DrawPointCloud <C>(message.cells, drawing, color, radius); }
public static void Draw <C>(ImuMsg message, Drawing3d drawing, Color color, float lengthScale = 1, float sphereRadius = 1, float thickness = 0.01f) where C : ICoordinateSpace, new() { QuaternionDefaultVisualizer.Draw <C>(message.orientation, drawing); drawing.DrawArrow(Vector3.zero, message.linear_acceleration.From <C>() * lengthScale, color, thickness); VisualizationUtils.DrawAngularVelocityArrow(drawing, message.angular_velocity.From <C>(), Vector3.zero, color, sphereRadius, thickness); }