NOVINKA! E-learningové kurzy umělé inteligence. Nyní AI za nejlepší ceny. Zjisti více:
NOVINKA – Víkendový online kurz Software tester, který tě posune dál. Zjisti, jak na to!
Avatar
Jan Procházka:7.2.2018 20:37

Mám 2D pole (souřadnice bodů), předpis pro transformaci (matici 2x2, nebo 3x3) potřebuji výstup.

Ve strukturovaném přístupu nemám problém: Získat pole bodů (matici), přenásobit maticí a vypsat výsledek.

Jak to ale udělat objektově? Přesněji, jak postavit třídy, metody atd.

Na úplném začátku jsou dva obrázky, na obou jsou referenční body pro získání transformačních matic. Cílem je ze souřadnic v prvním obrázku odhadnout kde hledat tytéž body v obrázku druhém. Celý proces bych chtěl co nejvíce automatizovat, ale začínat bych chtěl "jen" s výpočtem z ručně zadaných čísel s tím, že další verze by toto používaly jako "jádro".

 
Odpovědět
7.2.2018 20:37
Avatar
gcx11
Tvůrce
Avatar
Odpovídá na Jan Procházka
gcx11:7.2.2018 22:33

Trochu sis odpověděl už sám:

Mám 2D pole (souřadnice bodů), předpis pro transformaci (matici 2x2, nebo 3x3) potřebuji výstup.

Takže třídy Bod a Matice, kde bod bude mít metodu na transformaci, která bere jako parametr matici.

C# pseudokód

List<Point> points = ...;
for (int i = 0; i < points.length; i++) {
    points[i] *= matrix;
}
foreach (Point p in points) {
    Console.WriteLine(p);
}
Akceptované řešení
+20 Zkušeností
+2,50 Kč
Řešení problému
 
Nahoru Odpovědět
7.2.2018 22:33
Avatar
Odpovídá na gcx11
Jan Procházka:8.2.2018 22:58

Díky. Stačilo jen trochu nakopnout. Zatím stavím "jen" konzolovou aplikaci a třídy už docela bobtnají a už to něco i dělá (zatím teda jen obsazení, vypsání a vynásobení matice)...

 
Nahoru Odpovědět
8.2.2018 22:58
Děláme co je v našich silách, aby byly zdejší diskuze co nejkvalitnější. Proto do nich také mohou přispívat pouze registrovaní členové. Pro zapojení do diskuze se přihlas. Pokud ještě nemáš účet, zaregistruj se, je to zdarma.

Zobrazeno 4 zpráv z 4.