1. #1

    Registered
    11/10/12
    Location
    Bree
    Posts
    16
    iTrader
    0
    Mentioned
    0 Post(s)
    Reputation
    0/0

    C# 2D array's elementen invoegen en sorteren

    Hallo,


    Ik zou graag pixelcoördinaten van een afbeelding in een array plaatsen en deze met bijbehorende x- en y-waarden kunnen rangschikken van groot naar klein. Ik weet niet hoe je elementen kunt toevoegen aan een 2D array en deze moet sorteren.

    Alvast bedankt
    no votes  

  2. #2

    Registered
    13/05/06
    Location
    Hoeselt
    Posts
    9,944
    iTrader
    48 (100%)
    Mentioned
    0 Post(s)
    Reputation
    0/72
    Je kan een List gebruiken van Points?
    Dan kan je ook meteen rangschikken (evt. met LINQ)
    no votes  

  3. #3

    Registered
    11/10/12
    Location
    Bree
    Posts
    16
    iTrader
    0
    Mentioned
    0 Post(s)
    Reputation
    0/0
    Hoe zou je dit dan in een List steken? Ik ben niet zo bekend met C# Ik kan de waarden wel in een arraylist steken maar dan krijg ik problemen met het sorteren omwille van die X en Y die voor de cooördinaten staan.

    Fouten.Add(new Point(a, z));
    Fouten.Sort();

    Alvast bedankt
    no votes  

  4. #4
    SideShow's Avatar
    Registered
    21/08/02
    Location
    Roeselare
    Posts
    4,474
    iTrader
    15 (100%)
    Mentioned
    0 Post(s)
    Reputation
    1/35
    class Point
    {
    public int x;
    public int y;
    }

    private void Blabla()
    {
    var list = new List<Point>(); //Create a list of Points
    //.... steek je punten erin
    var sortedList = list.OrderBy(point => point.x);
    }

    *edit: als je problemen hebt met namespaces, kan je een tool zoals resharper installeren (30 day trial) die automatisch je includes zal maken
    no votes  

  5. #5

    Registered
    13/05/06
    Location
    Hoeselt
    Posts
    9,944
    iTrader
    48 (100%)
    Mentioned
    0 Post(s)
    Reputation
    0/72
    Quote Originally Posted by SideShow View Post
    This quote is hidden because you are ignoring this member. Show
    class Point
    {
    public int x;
    public int y;
    }

    private void Blabla()
    {
    var list = new List<Point>(); //Create a list of Points
    //.... steek je punten erin
    var sortedList = list.OrderBy(point => point.x);
    }

    *edit: als je problemen hebt met namespaces, kan je een tool zoals resharper installeren (30 day trial) die automatisch je includes zal maken
    Dat is Linq, right?
    no votes  

  6. #6
    SideShow's Avatar
    Registered
    21/08/02
    Location
    Roeselare
    Posts
    4,474
    iTrader
    15 (100%)
    Mentioned
    0 Post(s)
    Reputation
    1/35
    die methode zit in de namespace "linq" inderdaad
    no votes  

  7. #7

    Registered
    11/10/12
    Location
    Bree
    Posts
    16
    iTrader
    0
    Mentioned
    0 Post(s)
    Reputation
    0/0
    Merci, ik ben nu al een stap verder
    no votes  

  8. #8

    Registered
    11/10/12
    Location
    Bree
    Posts
    16
    iTrader
    0
    Mentioned
    0 Post(s)
    Reputation
    0/0
    Ik heb alleen nog een klein vraagje? is het mogelijk om de elementen die in de sortedList zitten om te zetten naar een integer waarde? Ik heb namelijk de punten nodig om rechthoeken te kunnen tekenen.


    Alvast bedankt
    no votes  

  9. #9

    Registered
    13/05/06
    Location
    Hoeselt
    Posts
    9,944
    iTrader
    48 (100%)
    Mentioned
    0 Post(s)
    Reputation
    0/72
    De elementen bevatten toch interne fields die gedefinieerd staan als ints?

    Vb:
    foreach(Point pnt in list)
    {
    Messagebox.Show("X: " + pnt.x.toString() + " Y: " + pnt.y.toString());
    }

    (ik zou persoonlijk wel fields private maken en gebruik maken van getters&setters)
    no votes  

  10. #10

    Registered
    11/10/12
    Location
    Bree
    Posts
    16
    iTrader
    0
    Mentioned
    0 Post(s)
    Reputation
    0/0
    Ja idd, merci nu heb ik bereikt wat ik wou bereiken
    no votes  

Posting Permissions

  • You may not post new threads
  • You may not post replies
  • You may not post attachments
  • You may not edit your posts
  •  

Log in

Log in