Drawing Shape in DebugView (Farseer)
- by keyvan kazemi
As the title says, I need to draw a shape/polygon in Farseer using debugview.
I have this piece of code which converts a Texture to polygon:
//load texture that will represent the tray
        trayTexture = Content.Load<Texture2D>("tray");
        //Create an array to hold the data from the texture
        uint[] data = new uint[trayTexture.Width * trayTexture.Height];
        //Transfer the texture data to the array
        trayTexture.GetData(data);
        //Find the vertices that makes up the outline of the shape in the texture
        Vertices verts = PolygonTools.CreatePolygon(data, trayTexture.Width, false);
        //Since it is a concave polygon, we need to partition it into several smaller convex polygons
        _list = BayazitDecomposer.ConvexPartition(verts);
        Vector2 vertScale = new Vector2(ConvertUnits.ToSimUnits(1));
        foreach (Vertices verti in _list)
        {
            verti.Scale(ref vertScale);
        }
        tray = BodyFactory.CreateCompoundPolygon(MyWorld, _list, 10);
Now in DebugView I guess I have to use "DrawShape" method which requires:
DrawShape(Fixture fixture, Transform xf, Color color)
My question is how can I get the variables needed for this method, namely Fixture and Transform?