public void drawRecognizedObject(VectorInt recognizedObjectVector) { for (int i = 1; i < recognizedObjectVector.Count(); i++) { recognizedTangible = (TangibleObject)arrayOfTangibleObjects[recognizedObjectVector[i]]; label1.Text = "abc" + recognizedTangible.type.ToString(); Console.WriteLine(recognizedObjectVector[i].ToString()); if (recognizedTangible.type.Equals(TangibleType.Ruler)) { TRTangibleObject tobj = recognizer.getTangibleObjectForId(recognizedObjectVector[i]); float rot = -tobj.getRotation(); TRPoint tran = tobj.getTranslation(); //Graphics g = DrawingTab.CreateGraphics(); tran.x = (int)Math.Round((float)tran.x * (float)glDrawingView.CreateGraphics().DpiX / 2540.0F); tran.y = (int)Math.Round((float)tran.y * (float)glDrawingView.CreateGraphics().DpiY / 2540.0F); float m11, m12, m21, m22; m11 = (float)Math.Cos(rot); m12 = (float)-Math.Sin(rot); m21 = (float)Math.Sin(rot); m22 = (float)Math.Cos(rot); Matrix m = new Matrix(m11, m12, m21, m22, tran.x, tran.y); ArrayList points = (ArrayList)recognizedTangible.outlinePoints.Clone(); pointsToDraw = (Point[])points.ToArray(typeof(Point)); m.TransformPoints(pointsToDraw); // Console.WriteLine(tobj.getRotation()); //Console.WriteLine(tran.x + ":" + tran.y); glDrawingView.Invalidate(); }label2.Text = ""; } }