Archief - C# 2D array's elementen invoegen en sorteren

Het archief is een bevroren moment uit een vorige versie van dit forum, met andere regels en andere bazen. Deze posts weerspiegelen op geen enkele manier onze huidige ideeën, waarden of wereldbeelden en zijn op sommige plaatsen gecensureerd wegens ontoelaatbaar. Veel zijn in een andere tijdsgeest gemaakt, al dan niet ironisch - zoals in het ironische subforum Off-Topic - en zouden op dit moment niet meer gepost (mogen) worden. Toch bieden we dit archief nog graag aan als informatiedatabank en naslagwerk. Lees er hier meer over of start een gesprek met anderen.

jos1920

Legacy Member
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 ;)

Recipe4hate

Legacy Member
Je kan een List gebruiken van Points?
Dan kan je ook meteen rangschikken (evt. met LINQ)

jos1920

Legacy Member
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

SideShow

Legacy Member
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

Recipe4hate

Legacy Member
SideShow zei:
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?

jos1920

Legacy Member
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

Recipe4hate

Legacy Member
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)
Het archief is een bevroren moment uit een vorige versie van dit forum, met andere regels en andere bazen. Deze posts weerspiegelen op geen enkele manier onze huidige ideeën, waarden of wereldbeelden en zijn op sommige plaatsen gecensureerd wegens ontoelaatbaar. Veel zijn in een andere tijdsgeest gemaakt, al dan niet ironisch - zoals in het ironische subforum Off-Topic - en zouden op dit moment niet meer gepost (mogen) worden. Toch bieden we dit archief nog graag aan als informatiedatabank en naslagwerk. Lees er hier meer over of start een gesprek met anderen.
Terug
Bovenaan