robsite

Puls by Rrrola

Die utimative 256 Byte Demo. 3D per raycasting, animiert, Fischaugeneffekt, Ambient Occlusion. Whoa.

B0 13 53 BA C8 03 CD 10 88 D8 84 CB 7A 05 F6 E8
C1 E8 07 F6 EB 88 E0 EE B2 C9 E2 EC B1 03 4B 75
E9 68 CE 9F 07 B7 56 DB E3 83 00 58 DF 00 D9 FB
DC F9 DF 00 D8 0C D9 FE DE 0C 66 5A 06 55 60 89
1F 8B 05 DF 05 F7 E8 29 17 4F 7B F5 DF 07 66 81
05 CD CC 00 00 D8 CC D9 C0 D8 CE D9 CA D8 CD DC
EA D8 CE DE C1 D9 CA 47 7B EB 4F 6B 10 0A DF 19
89 17 02 34 00 FB 73 F6 99 B4 E6 11 D9 E8 15 00
28 CC D5 04 04 46 89 45 FC 61 45 26 88 02 75 AE
E4 60 48 75 92 B3 00 8B 29 D3 FD 31 D5 01 2F 00
FB 73 F4 D6 DF 10 51 D3 E9 80 C5 25 8B 10 F7 18
69 E8 00 80 2B 29 79 02 F7 DD D1 ED 01 EA 89 2F
00 FB 73 EC 39 CA 40 72 25 B3 02 7A DF 2B 10 40
2B 10 80 EE 60 6B D2 0D 8B 14 70 02 40 99 2B 2F
79 02 F7 DD 01 EA 8B 2F 00 FB 73 F2 39 CA 59 19
D2 F5 18 D1 10 D1 80 F9 06 73 04 00 D4 75 96 C3
```

· whoa, demoscene · ★

Smooth path in canvas

Ich spiel grad mit <canvas> rum und wollte eine Kurve möglichst fließend durch Punkte fĂŒhren:

/images/posts/0000/2068/smooth_path_explanation_big.png

Viele Algorithmen laufen entweder nicht durch jeden Punkt oder setzen voraus, dass man die Pixel selbst malen will, was gerade bei Anti-Aliasing recht mĂŒhselig wird. Ich fand dann einen netten Algorithmus von Jean-Yves QuĂ©inec, der BĂ©zier-Splines so hinbiegt, dass eine durchgehende schöne Kurve entsteht. Manchmal gibts noch leicht merkwĂŒrdige Kurventeile aber insgesamt funktioniert es gut.

Der Code: smooth_path.js

Die Funktion bekommt ein Array von Punkten und erstellt einen Pfad, den man dann selbst malen kann.

  • path - Ein Punkte-Array der Form [{x:0, y:0}, {x:10, y:10}, ...]

  • smoothness - Der Grad der Biegung. 0 glĂ€ttet nichts, 1.05 macht aus einem Quadrat einen Kreis und auch sonst schöne Kurven, alles andere erzeugt lustige Formen.

  • joinPath - Falls true werden die Kurven am Anfang und Ende des Pfades aufeinander ausgerichtet, sodass eine durchgehende Form entsteht, wenn Anfangs- und Endpunkt aufeinander liegen.

  • c - der canvas-Kontext

Wer Fehler findet oder Verbesserungen hat, immer her damit :)

Beispiel:

var canvas = document.getElementById('canvas');
var c = canvas.getContext('2d');
var path = [{x: 100, y: 100}, {x: 20, y: 150}, {x: 200, y: 200}, {x: 100, y: 100}];
var smoothness = 1.05;
var joinPath = true;
c.beginPath();
smoothPath(path, smoothness, joinPath, c);
c.stroke();
c.closePath();

Und eine kleine Demo. Per Maus die Punkte setzen, mit dem Slider die smoothness verÀndern.

· meins, javascript, jquery, grafik, canvas · ★

List of unusual deaths

1814: London Beer Flood, 9 people were killed when 323,000 imperial gallons (1 468 000 L) of beer in the Meux and Company Brewery burst out of their vats and gushed into the streets.

1919: In the Boston Molasses Disaster, 21 people were killed and 150 were injured when a tank containing as much as 2,300,000 US gal (8 700 000 L) of molasses exploded, sending a wave traveling at approximately 35 mph (56 km/h) through part of Boston, Massachusetts.

2008: Gerald Mellin, a U.K. businessman, committed suicide by tying one end of a rope around his neck and the other to a tree. He then hopped into his Aston Martin DB7 and drove down a main road in Swansea until the rope decapitated him. He supposedly did this as an act of revenge against his ex-wife for leaving him.

2009: Martin Cassidy, a 44-year-old stand-up comedian from Blackburn, England, died from asphyxia caused by breathing in large quantities of laughing gas while watching pornography on his laptop computer, according to a coroner. The coroner ruled a case of "Death by misadventure".

· :D, tod · ★

iPhone Screencasts

Einen schönen Screencast eines iPhone-Programms zu machen ist umstĂ€ndlicher als ich dachte. WĂ€hrend Steve Jobs seinen Untergebenen einfach befiehlt, einen Display-Anschluss ins DemogerĂ€t zu löten, mĂŒssen sich schnöde User mit suboptimalen Hacks begnĂŒgen. Die Optionen sind, in aufsteigender VideoqualitĂ€t:

/images/posts/0000/2062/iphone-screencast-zeichnung_big.png

  1. Das ganze GerÀt mit einer Kamera abfilmen.

    • Vorteil: Nur so können Accelerometer-abhĂ€ngige Aktionen gefilmt werden. Drehen, kippen etc.
    • Nachteile: Benötigt eine ruhige Hand, eine gute Kamera und gute LichtverhĂ€ltnisse. FĂŒr beidhĂ€ndig zu bedienende Apps braucht man entweder ein Stativ oder eine zweite Person. Wurstfinger verdecken oft den Bildschirm. Schlechte BildqualitĂ€t (mit den ĂŒblichen Kompakt -und Webcams).
  2. Veency ĂŒber WLAN + Screencast-Software.
    Ein VNC-Server fĂŒr gejailbreakte (jailbreaked, befreite, geknackte, ...?) iPhones. EmpfĂ€ngt also Maus- und Tastatursignale und liefert ein Bild zurĂŒck. Man könnte damit z.B. das iPhone komfortabel in der Schublade lagern und per VNC-Client SMS verschicken. Oder Websiten vom Desktop aus in Mobile-Safari testen. Sicher nĂŒtzlich, wenn die Schublade sehr weit vom Schreibtisch entfernt ist. Oder man sich jeden Finger brach und nicht mehr tippen, nur noch ganzhĂ€ndig klicken kann.

    • Vorteil: Liefert nicht nur ein Bild zurĂŒck, sondern lĂ€sst einen das iPhone fernsteuern. Funktioniert mit jedem VNC-Client unter jedem OS (außer Apples eigenem Screen Sharing)
    • Nachteile: Ruckelt erbĂ€rmlich. Ca. 2 fps. Mag an meinem Netzwerk liegen, wer weiß... Benötigt ein geknacktes iPhone.
  3. ScreenSplitr + Screencast-Programm.
    Sendet den Bildschirminhalt per Bonjour an den Rechner. Dazu einfach das Programm starten und in Safari unter Alle Lesezeichen einblenden > Bonjour das iPhone auswÀhlen. Das Bild dann mit einem Screencast-Programm filmen.

    • Vorteile: Recht einfach, gute Standbild-QualitĂ€t. Kann gut die eingebaute Screenshot-Funktion des iPhones ersetzen.
    • Nachteile: Etwas flĂŒssiger als Veency ĂŒber WLAN, trotzdem entschieden zu langsam. LĂ€uft auch nur auf geknackten iPhones.
  4. Veency ĂŒber USB + Screencast-Software.
    Wie WLAN, nur schneller.

    • Vorteil: Schneller.
    • Nachteile: Nicht schnell genug. Zur Not jedoch akzeptabel. Windows-only und nur nach schmerzhaften Verrenkungen und Blutopfern zum laufen zu bekommen. Siehe unten.
  5. XCode iPhone Simulator + Screencast-Software.
    App-Entwickler erstellen so meist ihre schicken Werbe-Screencasts (Classics, Things, Tweetie).

    • Vorteile: Beste QualitĂ€t, flĂŒssig und in zigtausenden von Millionen von Farben. Am einfachsten, da neben dem Screencast-App nichts weiter nötig ist. Damit ists auch leichter möglich sein Video aufzumotzen, ohne alles mĂŒhselig im Videoeditor nachzubearbeiten (SimFinger).
    • Nachteile: Funktioniert nur mit selbstcompilierten Programmen; AppStore-Apps können nicht im Simulator installiert werden. LĂ€uft nur auf Macs.

Mein bescheidener Plan bestand darin, ein Programm aus dem AppStore zu filmen. Der iPhone Simulator fĂ€llt also raus und ĂŒbrig bleibt das nĂ€chstbeste, VNC ĂŒber USB. Die folgende Anleitung ist nur ein Weg von vielen, hat bei mir jedoch als einziger funktioniert. Und wird beim nĂ€chsten iPhone- oder iTunes-Update, bei unmerkbar verĂ€nderten Netzwerkeinstellungen oder Halbmond sicherlich komplett zusammenbrechen. Aber es schadet kaum, es trotzdem zu dokumentieren. Wenigstens, damit ich mich spĂ€ter noch dran erinnere.

Wir brauchen:

  • iPhone oder iPod touch, geknackt
  • Veency
  • Windows. Nativ oder virtualisiert, egal. Bei mir lĂ€uft es gut1 in Parallels auf dem Mac.
  • iTunes fĂŒr Windows
  • iTunnel fĂŒr Windows. Ein dubioses Programm, aber das einzige, das funktioniert (soweit ich weiß)
  • Ein VNC-Client, z.B. RealVNC Free Edition
  • Eine Screencast-Software. FĂŒr Mac gibts iShowU fĂŒr 30$ , ScreenFlow fĂŒr 99$ oder Snapz X Pro fĂŒr 69$. Ich bin mit iShowU zufrieden. FĂŒr Windows gibts Camtasia Studio fĂŒr 299$ und sicher andere.

Dann:

  1. Falls noch nicht getan, iPhone jailbreaken. Dazu gibts genug Anleitungen. Kurz: redsn0w laden, die passende .ipsw-Datei finden oder laden, den Anweisungen folgen.

  2. Veency installieren. Gibts in Cydia oder Icy.

  3. iTunnel funktioniert nicht auf Anhieb, also: iTunnels iTunesMobileDevice.dll wegschmeißen und dafĂŒr Apples nehmen. Die liegt in C:Program FilesCommon FilesAppleMobile Device Supportbin bzw. C:ProgrammeGemeinsame DateienAppleMobile Device Supportbin

  4. iPhone oder iPod touch anschließen.

  5. iTunnel auf der Commandline starten und den VNC-Port 5900 auf den USB-Anschluß umleiten:
    > iTunnel.exe 5900 5900
    /images/posts/0000/2050/iTunnel_big.png

  6. VNC-Client starten und 127.0.0.1:5900 öffnen. Gibts Fehler, evt. andere Server stoppen (XAMPP, MAMP, ...)

  7. Tadaa! iPhone VNC in brauchbarer Geschwindigkeit. Das ganze dann per Screencast-App filmen.

Ok, doch gar nicht so kompliziert...

Wer jetzt noch einen Weg findet, das ganze direkt unter Mac OS X zu machen, kriegt einen leckeren Keks per Post.

/images/posts/0000/2056/iphone-vnc_big.png

1. fĂŒr alberne Werte von "gut"

· video, windows, iphone · ★

Ich öffne das Fenster und mir entgegen kommt heißere Luft als im Raum ist. Meine Cola ist lauwarm. In der Ferne verbrennen Tauben im Flug. Ich leg mich jetzt in meine mit Eis gefĂŒllte Badewanne und erwarte das Ende aller Tage.

/images/posts/0000/2044/hitzetod_big.jpg

· grr · ★

Rubular

Schicker Regex-Tester zum live ausprobieren von Rubys regulĂ€ren AusdrĂŒcken. Auch nicht ĂŒbel ist RegExr, benötigt allerdings Flash und benutzt Action Scripts Regex-Engine.

· ruby, flash, regex · ★
Mastodon