Skip to content

Instantly share code, notes, and snippets.

View nikolas's full-sized avatar

nikolas

  • Columbia University
  • New York, NY
View GitHub Profile
@nikolas
nikolas / insert-into-sorted-array.js
Last active January 15, 2020 20:12 — forked from mir4ef/insert-into-sorted-array.js
insert an element into a sorted array of objects
// 1d array
for (var i = 0, len = arr.length; i < len; i++) {
if (somevalue < arr[i]) {
arr.splice(i, 0, somevalue);
break;
}
}
return arr;
@nikolas
nikolas / insert-into-sorted-array.js
Created January 15, 2020 20:11 — forked from mir4ef/insert-into-sorted-array.js
insert an element into a sorted array of objects
// 1d array
for (var i = 0, len = arr.length; i < len; i++) {
if (somevalue < arr[i]) {
arr.splice(i, 0, somevalue);
break;
}
}
return arr;
from collections import Iterable, Mapping
from operator import methodcaller
def flatten(it, map_iter='values', max_depth=128):
if max_depth < 0:
try:
raise RecursionError('maximum recursion depth exceded in flatten')
except NameError:
raise Exception('maximum recursion depth exceded in flatten')
elif isinstance(it, str):
static void DrawSurfaceToScreen()
{
int n = _num_dirty_rects;
if (n == 0) return;
_num_dirty_rects = 0;
if (n > MAX_DIRTY_RECTS) {
SDL_CALL SDL_UpdateTexture(
_sdl_texture, NULL, _sdl_surface->pixels, _sdl_surface->pitch);
static void DrawSurfaceToScreen()
{
int n = _num_dirty_rects;
if (n == 0) return;
_num_dirty_rects = 0;
if (n > MAX_DIRTY_RECTS) {
if (_sdl_screen != _sdl_realscreen) {
SDL_CALL SDL_BlitSurface(_sdl_screen, NULL, _sdl_realscreen, NULL);
}
let q = orbitGroup.quaternion.clone();
const rotation = new THREE.Quaternion();
rotation.setFromAxisAngle(new THREE.Vector3(1, 0, 0), -Math.PI / 2);
q.multiply(rotation);
orbitPlane.normal.set(0, 0, 1).applyQuaternion(q);
@nikolas
nikolas / lerp-color.js
Last active June 29, 2023 14:12 — forked from rosszurowski/lerp-color.js
Linear interpolation for hexadecimal colors.
/**
* A linear interpolator for hex colors.
*
* Based on:
* https://gist.github.com/rosszurowski/67f04465c424a9bc0dae
*
* @param {Number} a (hex color start val)
* @param {Number} b (hex color end val)
* @param {Number} amount (the amount to fade from a to b)
*
const shuffleArray = function(array) {
const a = array.slice();
for (let i = a.length - 1; i > 0; i--) {
const j = Math.floor(Math.random() * (i + 1));
[a[i], a[j]] = [a[j], a[i]];
}
return a;
};
/script exec -perm Irssi::signal_add('message public', sub { $_[0]->window_find_name($_[4])->set_active })
@nikolas
nikolas / gist:7603812
Last active December 29, 2015 02:58 — forked from jalcine/gist:7297333
require 'spec_helper'
describe Users::OauthCallbacksController, "handle facebook authentication callback" do
describe "#annonymous user" do
context "when facebook email doesn't exist in the system" do
before(:each) do
stub_env_for_omniauth
get :facebook