• úvod
  • témata
  • události
  • tržiště
  • diskuze
  • nástěnka
  • přihlásit
    registrace
    ztracené heslo?
    TENCOKACISTROMYProgramovani v C#, F# a dalsich jazycich pro .NET, Mono a ostatni CLI implementace
    NECROMAN
    NECROMAN --- ---
    MORMEGIL: kdyz se tam misto IEnumerable<T> da Array, tak uz to jede :) Jinak hodnoty mimo definici enumu asi neni cilem vracet, ne?
    MORMEGIL
    MORMEGIL --- ---
    NECROMAN: Je otázka, jestli to je jednodušší, čistší nebo co, ale můj první nástřel by byl
    public static IEnumerable<T> GetFlagsBits<T>(T x) where T : struct
    {
    	if (!typeof(T).IsEnum) throw new ArgumentException("Enum value required");
    
    	for(int i = 1; i != 0; i <<= 1)
    	{
    		if (((int)(object)x & i) != 0)
    		{
    			yield return (T)(object)i;
    		}
    	}
    }
    

    Akorát to teda funguje jen na enumy odvozené z intu. To ale ta tvoje verze taky. Navíc ta tvoje verze (plus to, že takhle nejde přeložit ;-) ) nepodporuje hodnoty mimo definici toho enumu.
    NECROMAN
    NECROMAN --- ---
    NECROMAN: neco jsem nasel, to je ale pekna bejkarna :)

    public static List<T> GetItemsList<T>(int enums) where T : struct, IConvertible
    {
    if (!typeof(T).IsEnum)
    {
    throw new Exception("Type given must be an Enum");
    }

    IEnumerable<T> allValues = Enum.GetValues(typeof (T));

    return allValues
    .Cast<int>()
    .Where(i => (enums & i) == i)
    .Select(i => (T) Enum.Parse(typeof(T), i.ToString(), true))
    .ToList();
    }
    NECROMAN
    NECROMAN --- ---
    lze v C# prevest genericky instanci enumu x
    [Flags]
    enum x { }

    na IEnumerable<x> kde kazda polozka bude ten jeden flag?
    GOSHEWAN
    GOSHEWAN --- ---
    NECROMAN: Aha, uz snad chapu. Tomuhle typu vizualizace se rika TreeMap. Algoritmu pro poskladani bloku je nekolik a lisi se prave tim, zda zachovavaji razeni a jak moc jsou ty bloky ctvercovite. Ja na to vzdy pouzival jen hotove vizualizacni knihovny, ktere vetsinou dovolovaly jakztakz konfigurovat vyslednou podobu.
    NECROMAN
    NECROMAN --- ---
    GOSHEWAN: jaky TreeMap a poskladani? resim, jak neco takoveho vykreslit rucne.
    Hilbertova krivka by se tu hodila, protoze ted se to sklada jak pri cteni. Krivka by zachovala postupne zmensovani bloku v jednom smeru a vypadalo by to vice konzistentne.
    GOSHEWAN
    GOSHEWAN --- ---
    NECROMAN: Neni mi uplne jasne jak jsi do toho zakomponoval tu Hilbertovu krivku. Neposlal bys ukazku? Zda se mi, ze jsem uplne nepochopil ceho presne z toho obrazku chces dosahnout (:
    GOSHEWAN
    GOSHEWAN --- ---
    To vypada jako obycejna TreeMap. Pokud ti jde o to "poskladani" tak vetsina toolu by tohle mela vicemene zvladat.
    NECROMAN
    NECROMAN --- ---
    MICTECH: myslim, ze to mam - hezky rekurzivne. Seradit polozky podle velikosti, vzit prvnich n tolik od nejvetsich, aby byl soucet vetsi nez soucet vsech. takto ziskam dve skupiny a kazdou delim dal podobne.
    Vykreslovani pak delat pripadne pomoci Hilbertovy krivky, at to vypada hezky
    MICTECH
    MICTECH --- ---
    NECROMAN: To nevim, ale muzes se podivat na tuhle javascript knihovnu, ktera umi generovat podobne grafy - http://d3js.org/
    NECROMAN
    NECROMAN --- ---
    Nevite nekdo, jakym algoritmem vygenerovat podobny graf cetnosti? Docela by se hodil :)
    TENCOKACISTROMY
    TENCOKACISTROMY --- ---
    NECROMAN: Nekolikrat jsem je chtel pouzit na nejaky projekt a nekolikrat jsem to nakonec neudelal. A stale me to mrzi :).
    NECROMAN
    NECROMAN --- ---
    mate nekdo zkusenosti s Reactive Extensions? Ted jsem na ne narazil a vypadaji zajimave :)
    Úvod do Reactive Extensions - Zdroják
    http://www.zdrojak.cz/clanky/uvod-do-reactive-extensions/
    BUTHRAKAUR
    BUTHRAKAUR --- ---
    HttpContext.Current.CurrentHandler jsem zkousel, ale ten je casto null - potrebuju napsat custom ResourceProviderFactory, ktera bude pracovat s local embedded resources..
    BUTHRAKAUR
    BUTHRAKAUR --- ---
    netusite nekdo, jak v ASP.NET web app podle virtual path zjistit, ktera user control/page ty ceste odpovida (potrebuju Type, resp. Assembly, ktera tu virtualpath handluje)?
    SHIGORBIRDMAN
    SHIGORBIRDMAN --- ---
    TDA: to uz bylo davno, jen jsem se pripojoval v nadavani. A ano, podle toho clanku to vypada na upgrade wizarda. Nejvic me na tom ale sralo, ze to bylo pure win32 C, bez CLR, ale debil se na tom zasekl a ja to proste nebyl schopny spravit.
    TDA
    TDA --- ---
    SHIGORBIRDMAN: kouk jsem sem az dneska, takze asi pozde, ale jestly jsi potreboval prehodit target framework u C++/CLR projektu ve VS2010 tak tohle mi pomohlo http://qualapps.blogspot.com/2010/04/targeting-cclr-v20-with-visual-studio.html
    SAJAGI
    SAJAGI --- ---
    SHIGORBIRDMAN:
    ANDY_WARHOL: Tak, hotovo. Přeinstaloval jsem celé VS ( včetně multitargeting packu). To ještě nepomohlo, ale poté se podařilo přeinstalovat .NET tools z Win7 SDK 7.1, což předtím nešlo. A nyní už vše funguje vez chybičky.
    ANDY_WARHOL
    ANDY_WARHOL --- ---
    v takovym pripade co nezbyva nez rucne podeitovat projektovy fajly, tam sou ty reference napsany, melo by se to dat prepsat i u toho typu projektu kde to normalne nejde. ale musite zkusit
    NECROMAN
    NECROMAN --- ---
    mate nekdo zkusenosti s Telerik komponentami pro Windows Phone? Jsou opravdu o tech 50 dolaru lepsi, nez, WP7 toolkit? :)
    SHIGORBIRDMAN
    SHIGORBIRDMAN --- ---
    SAJAGI: tak nejak.... nacetl jsem hotovy projekt, nevsiml jsem si ho, ze mi ho debilni nova verze vstudia upgradla na 4.0 a zpatky uz jsem to nedostal. vcetne toho, ze se target nastavil na 4.0 u ciste C projektu (stub na c++ knihovnu) a tam prisla totalni smrt, protoze zmena na 2.0 framework mimo jine rvala, ze nemuzu mit framework 2.0, kdyz mam jeden projekt ve 4.0.... coz byl ten ceckovy, ale u toho to pochoptielne neslo nikde zmenit
    Kliknutím sem můžete změnit nastavení reklam