Skip to content

Instantly share code, notes, and snippets.

View edgarberm's full-sized avatar
:octocat:
NaN

Edgar Bermejo edgarberm

:octocat:
NaN
View GitHub Profile
@edgarberm
edgarberm / setRegistration.as
Created December 18, 2012 17:14
Change registration point on the fly AS3
private function setRegistration(obj:DisplayObject):void
{
obj.x = -obj.width >> 1;
obj.y = -obj.width >> 1;
}
@edgarberm
edgarberm / bringToFront.as
Created December 18, 2012 17:43
Bring to front any DisplayObject AS3
function bringToFront(obj:DisplayObject):void
{
var pos:Number = this.getChildIndex(obj);
while(pos < this.numChildren - 1)
{
var next:DisplayObject = this.getChildAt(pos + 1) as DisplayObject;
this.swapChildren(obj, next);
pos = this.getChildIndex(obj);
}
@edgarberm
edgarberm / RotatingBitmapData.as
Created January 11, 2013 23:14
Rotating BitmapData
var bmd:BitmapData = new BitmapData(myBitmap.height, myBitmap.width, false, 0x000000);
var matrix:Matrix = new Matrix();
matrix.translate(-myBitmap.width / 2, -myBitmap.height / 2);
matrix.rotate(90 * (Math.PI / 180));
matrix.translate(myBitmap.height / 2, myBitmap.width / 2);
bmd.draw(myBitmap, matrix);
var bm:Bitmap = new Bitmap(bmd);
var sp:Sprite = new Sprite();
sp.addChild(bm);
addChild(sp);
@edgarberm
edgarberm / Clock.js
Last active December 14, 2015 06:59
OOP Javascript Clock
////////////////////////////////////////////////////////////////////////////////
//
// BUILT BY EDGAR
//
// Clock.js
//
// http://builtbyedgar.com/
// https://twitter.com/BuiltByEdgar
// https://github.com/BuiltByEdgar
//
@edgarberm
edgarberm / Vector3.js
Created October 9, 2013 11:39
Basic Vector3 class
function Vector3( x, y, z )
{
this.x = x;
this.y = y;
this.z = z;
this.tx = 0;
this.ty = 0;
this.tz = 0;
this.sinRX = 0;
@edgarberm
edgarberm / millisecondsToSeconds.js
Created October 30, 2014 19:03
Converts a value in milliseconds to seconds
function millisecondsToSeconds(time) {
var m = Math.floor((((time % 31536000) % 86400) % 3600) / 60);
var s = (((time % 31536000)% 86400) % 3600) % 60;
if (s > 9) {
return m + ":" + Math.round(s);
} else {
return m + ":0" + Math.round(s);
}
@edgarberm
edgarberm / snippets.css
Created December 1, 2014 12:35
CSS Snippets
/* Vertical align */
.verticalcenter{
position: relative;
top: 50%;
-webkit-transform: translateY(-50%);
-o-transform: translateY(-50%);
transform: translateY(-50%);
}
@edgarberm
edgarberm / chrome-fonts-fix.css
Created December 6, 2014 15:46
Google Chrome font visualization fix
/* the fix! simply ADD this block BELOW the above block */
@media screen and (-webkit-min-device-pixel-ratio:0) {
@font-face {
font-family: 'MyWebFont';
src: url('webfont.svg#svgFontName') format('svg');
}
}
@edgarberm
edgarberm / copy.js
Last active August 29, 2015 14:13
The following code creates a copy of a given object.
function copy(o){
var copy = Object.create( Object.getPrototypeOf(o) );
var propNames = Object.getOwnPropertyNames(o);
propNames.forEach(function(name){
var desc = Object.getOwnPropertyDescriptor(o, name);
Object.defineProperty(copy, name, desc);
});
return copy;
@edgarberm
edgarberm / shortOn.js
Created February 20, 2015 20:20
Extend JavaScript Array sortOn
Array.prototype.sortOn = function() {
var b = this.slice();
if (!arguments.length) return b.sort();
var e = Array.prototype.slice.call(arguments);
return b.sort(function(b, g) {
for (var h = e.slice(), c = h.shift(); b[c] == g[c] && h.length;) c = h.shift();
return b[c] == g[c] ? 0 : b[c] > g[c] ? 1 : -1
})
};