Beiträge von _Linuxhippy

    Hallo,

    Kennt jemand einen Algorythmus zum Auffinden freien, rechteckigen Flächen auf 2D-Ebenen.
    z.B. hab ich eine Liste mit rechtecken:
    A[width: 5, height: 10]
    B[width: 25, height 22]
    ......

    und weiß meine Fläche wo ich die Rechtecke drauflegen kann ist 100x100. Nun möchte ich (ohne in dem Daten-"Array" selbst suchen zu müssen) einen Fleck finden, in dem noch genug Plart für mein Rechteck ist, ohne dass es sich mit anderen überschneidet.

    Ich würde sowas brauchen um glyphen in OpenGL-Texturen zu cachen, derzeit verwendet Java einen glyph-cache aus 16x16px großen Blöcken was bei kleinen Glyphen Platzverschwendung ist und bei größeren dazu führt das der Glyph nicht gecacht werden kann :-/

    Würd mich über ein paar Tips sehr freuen, bin sicher sowas hat schonmal wer gemacht nur hab ich hald keine Ahnung wo ich zu suchen beginnen sollte...

    Danke im Vorraus, lg Clemens

    · (zukünftig auch MS Visual Studio 2005 unter Verwendung von C#)
    · MS XML 6 (XML, XPath, XSLT) für flexible Datenhaltung
    · HTML /CSS/JavaScript für Reporting im MS Internet Explorer 7
    · MS SQL Server 2005 für Datawarehousing und Replikation
    · MS Windows XP / Server 2003 als Betriebssysteme

    Kriegt ihr dafür gezahlt dass ihr lauten Lock-In Produkte von Microsoft verwendet, oder ist der Trend zu Multiplatform an euch einfach spurlos verübergegangen.
    Die Liste ließt sich wie eine Tragödie in 5 Akten :-/

    Zitat

    Und ob JavaFX etwas taugt bleibt
    abzuwarten, aber bis jetzt ist JavaFX nichts weiter als eine neue Scriptsprache für
    Java. Und von denen gibt es ja eh schon eine ganze Menge.


    Oh ich denke JavaFX hat seine Berechtigung. Es ist damit ziemlich leicht möglich animierte Oberflächen zu gestalten, ein gutes Tool noch dazu (was wahrscheinlich mit Netbeans geliefert wird) und Flash-a-like Oberflächen sind in null-komma-nix erstellt. Ob solche Oberflächen wirklich der Produktivität dienen sei dahingestellt, aber sie sind im Moment hald "in".
    Sowas in der Art gabs für Java noch nicht, ich denke es kann ganz praktisch sein.

    So revolutionär wie das ganze ge-hyped wird ists natürlich nicht ;)

    Zitat


    Es gibt Gerüchte übr eine 5 MB JDK 6 runtime,


    Nunja, die basteln für Java-7 an irgendsoeiner modularen Java-Version herum.
    Ich fürchte mich schon wenn sich Anwender aufregen, weshalb java immer Komponenten aus dem netz nachlädt ;)

    lg Clemens

    Naja, wir ham in der HTL mit C++ angefangen, allerdings ham wir nur den Teil davon verwendet, der in C99 mittlerweile eh schon drin ist (also Variablen irgendwo deklarieren und // als Zeilen-Kommentar). Insofern muss man nicht gleich schreien wenn jemand mit C++ anfangt...

    Naja wenn man C programmiert und es mit einem C++-Compiler kompiliert würde ich nicht C++ dazu sagen ;)
    Was ich eher so im hinterkopf hab is expliziter polymorphismus, operator-überladen, die ganze Fallstricke mit der Speicherverwaltung, ...

    lg Clemens

    Ich hab vor langer Zeit mit C begonnen und bin immer noch froh drüber.
    Auch wenn Objektorientierung am Anfang ein harter Knochen war, denk ich C vermittelt ziemlich gut was "hinter den Kulissen" passiert ... auch wenn das natürlich eine persönliche Erfahrung ist. Mit C++ würde ich NIE anfangen, _NIE_, aber es gibt natürlich auch Menschen die damit anfiengen und dich gut zurechtgefunden haben.

    So gemein wie ich bin geb ich "WüstLing" aufgrund der bisherigen Posts keine sehr großen Erfolgsaussichten ^^

    lg Clemens

    Naja der Artikel hat meiner Meinung nach einen ziemlichen Bias.

    Ich bin ein Befürworter von HTML dort wo es meiner Meinung nach Sinn macht - für Webseiten. Dort kann HTML seine guten Eigenschaften ausspielen. Ich bin z.B. ein Feind von Webseiten welche Flash nur wegen den optischen Spielereien einsetzen.

    Auf der anderen Seite vergisst dieser Artikel Web-Applikationen - und da steht HTML+Javascript für alles was ein bisschen mehr Interaktivität erfordert ziemlich schlecht da. Der Grund dass z.B. GMail so gut funktioniert ist, dass Google unvorstellbar viel Manpower ins Interface steckt - ein interface dass (von Funktionaler sicht) so mickrig ist dass man es mit Swing-Widgets an einem tag nachbauen könnt. Selbriges gilt für Google-Docs&Spreadsheets.
    Hier wird HTML+Javascript für Sachen verwendet für die es eigentlich nicht gedacht war - drum ist auch (das sehr mickrige) Google-Spreadsheets auch auf meinem Core2Duo noch extrem langsam.

    Meiner Meinung nach sollte eine Technik dort eingesetzt werden wo sie ihre Stärke hat. Und da Java eigentlich überall stark ist (dank JavaFX nun auch bei RAD) und seit einer Woche auch opensource ... würd ich mich freuen wenn vieleicht java sich ein bisschen weiter verbreitet im Web und am Desktop. Das Problem des langsamen Strarts wird sich hoffentlich noch bessern - der Ram-Verbrauch ist ja schon verschmerzbar ;)

    lg Clemens

    Ach ja, ich arbeite im Moment gerade an einer Bibliothek bei welcher man das GUI mittels API am Server programmieren kann (wie wenn das "JFrame" lokal am server angezeigt werden würde), das Interface aber an den Client weitergeleitet wird. An Gui-Builder Unterstützung wird gearbeitet ;)

    Das ganze ist hauptsächlich für LAN-Anwendungen gedacht, und nimmt dem Programmierer die Bürde sich um die Kommunikation/Datensynchronisation kümmern zu müssen.

    Funktioniert soweit ganz gut, wenns mal mehr kann schnür ich ein Demo und stells auf Sourceforge.

    lg Clemens

    Hallo,

    Ich würde einen Algorythmus (wenns geht in Java ausprogrammiert) suchen, welcher mir aus 2 Strings einen diff-String erstellt - mit dem ich dann den ersten patchen kann damit ich den zweiten draus bekomm.

    Im Grunde also eigentlich was rsync macht, nur für Strings ^^

    Ich habe schon eine Klasse gefunden welche exakt das macht was ich suche:

    Code
    String s1 = "Hello I am a very small string";
            String s2 = "Hella I am a very small ding";
    
    
            String difference = new StringDiff().exec(s1, s2);
            String patchedString = StringDiff.apply(s1, difference);
            --> s2.equals(patchedString) :-)

    Leider ist die Implementierung sehr, sehr schlecht (ich glaub theta(n^2)) und der Speicherverbrauch enorm.
    Wenn der String 1000 zeichen lang ist, wird ein 1000x1000-int[] angelegt (4MB) :-/

    Kennt ihr zufällig Implementierungen welche auch bei großen Datenmengen noch zuverlässig Arbeiten?

    Danke im Vorraus, lg Clemens

    Zitat

    Niemand wird gezwungen dieses Betriebssystem zu verwenden.

    Genau das ist das Haupt-Problem!
    Man wird gezwungen Windows zu verwenden - sonst kann man viele Dinge einfach nicht machen.
    Auf das laufen auch große Anstrengungen von Microsoft hinaus dass das so bleibt - von proprietären Formaten und non-cross-platform APIs.
    Ich würde mir überhaupt keine Sorgen machen wenn es eine Standard-OS-Api geben würde die alle implementieren und auch alle programme verwenden, und ich einsetzen könnte was ich mag und trotzdem läuft alles.

    Beispiele:
    1.) Internet Explorer:
    Der Hauptgrund weshalb MS Netscape "entfernt" hat war die große Befürchtung der browser könnte sich zu einem betriebsystem-im-betriebsystem entwickeln und über kurz oder lang würde es egal sein welches OS man verwendet wenn man einen Browser hat.

    2.) Java:
    Es gibt MS-interne Emails (die irgendwie bei einem Prozess ausgegraben worden sind) wo definitiv erwähnt wird dass man Java zerstören muss und so der Welt zeigt dass Cross-Platform nicht funktionieren kann.
    Die eigene java-runtime hat man absichtlich inkompatibel gemacht und mit eigenen Erweiterungen versehen. Hat ein programmierer diese "Zuckerl" verwendet, wars schon vorbei mit der Platformunabhängigkeit.

    3.) OpenGL:
    Zuerst (mit Windows-NT 3.5) hat man den OpenGL-Standard in Windows integriert um in den Markt zu kommen (damals zielte man auf den Workstation-Markt).
    Nun da man 85% des Marktes beherrscht stört diese Schnittstelle eigentlich nur mehr, da man damit 3d-Anwendungen/Spiele programmieren kann die unter allen möglichen Systemen laufen - und man ja selber Direct3D hat, das das selbe macht aber hald nur unter Windows.
    Microsoft wollte deshalb die OpenGL-Unterstützung von Vista total verstümmeln und hat sich erst nach großem Druck vieler Kunden bereiterklärt doch noch Treiberprogrammierern die Chance zu geben OpenGL nativ zu unterstützen.

    Die meisten Leute die da am lautesten schreien haben zuhause meistens auch Windows laufen oder vielleicht mal die


    Nun ja ich kann hier nur von mir sprechen und ich hab nur Linux im Produktiveinsatz, sogar auf meinem PDA.
    Einzig am Desktop hab ich noch Win98 und XP da ich öfters testen muss ob des was ich gezaubert hab auch dort ordentlich läuft.