Skip to content

Instantly share code, notes, and snippets.

View paulkaplan's full-sized avatar

Paul Kaplan paulkaplan

View GitHub Profile
@paulkaplan
paulkaplan / measureSort.js
Last active December 19, 2015 11:49
jQuery plugin to sort a list of measurements
(function($){
$.fn.sortByMeasurement = function(child_type){
var element = this;
if(!child_type) child_type = "li";
var SINGLE_REGEX = /\s*(\d*)?([\.\/])?(\d*)\s*([a-zA-z]*)/;
@paulkaplan
paulkaplan / requireConfirmation.css
Last active December 23, 2015 04:49
Make a potentially dangerous function 'confirmable' by wrapping the function call in a confirmation dialog box.
#confirmation-overlay {
position: absolute;
width: 100%;
height:100%;
background: rgba(0,0,0,0.5);
top:0;
left:0;
line-height:18px;
font-size:18px;
z-index:100000000;
@paulkaplan
paulkaplan / motor_controller_repl.py
Last active December 26, 2015 09:39
A brief example of how to connect to a GRBL shield via serial port and send basic machine movements
import serial
import atexit
def initController():
port = serial.Serial(
port='/dev/tty.usbmodem1411',
baudrate=9600
)
closePort(port)
@paulkaplan
paulkaplan / Shapeoko_inch.pp
Created January 10, 2014 18:29
Vectric configuration file for Shapeoko (inch, with arcs)
+================================================
+
+ Vectric machine output configuration file
+
+================================================
+
+ History
+
+ Who When What
+ ======== ========== ===========================
@paulkaplan
paulkaplan / listing.c
Created November 22, 2011 19:39
Requesting and parsing json data from rails app in objective-c
+(NSMutableArray *) loadRemoteListings {
NSMutableArray *listings = [NSMutableArray arrayWithCapacity:20];
NSURL *url = [[NSURL alloc] initWithString:@"http://localhost:3000"];
NSMutableURLRequest *request = [NSMutableURLRequest requestWithURL:url];
[request setValue:@"application/json" forHTTPHeaderField:@"Accept"];
NSURLResponse *response;
NSError *error;
@paulkaplan
paulkaplan / listing.c
Created November 22, 2011 19:43
Post listing to rails app with Devise token-authenticable from Objective-C
// QUESTION: For some reason Devise only sees auth token when passed through url not as param
// WHY? this seems really insecure...
-(NSString *) concatURL {
NSString *base = @"http://localhost:3000";
NSString *auth = [[NSUserDefaults standardUserDefaults] objectForKey:@"token"];
return [NSString stringWithFormat:@"%@?auth_token=%@", base, auth];
}
-(NSDictionary *) postListing {
@paulkaplan
paulkaplan / retina_fabric.js
Created July 21, 2013 22:47
Getting fabric.js to work with Retina screens
if( window.devicePixelRatio !== 1 ){
var c = canvas.getElement(); // canvas = fabric.Canvas
var w = c.width, h = c.height;
// Scale the canvas up by two for retina
// just like for an image
c.setAttribute('width', w*window.devicePixelRatio);
c.setAttribute('height', h*window.devicePixelRatio);
@paulkaplan
paulkaplan / shapeKeysToJSON.py
Last active November 16, 2017 21:40
Blender Shape Keys to JSON
#http://stackoverflow.com/questions/7553726/blender-how-to-export-shape-keys-using-python
#and three js blender exporter
import bpy
import json
# monkeypatch the json encoder to truncate floats
# http://stackoverflow.com/questions/1447287/format-floats-with-standard-json-module
from json import encoder
encoder.FLOAT_REPR = lambda o: format(o, '.15g')
@paulkaplan
paulkaplan / Shapeoko_mm.pp
Last active January 26, 2018 21:55
Vectric configuration file for Shapeoko (mm, with arcs)
+================================================
+
+ Vectric machine output configuration file
+
+================================================
+
+ History
+
+ Who When What
+ ======== ========== ===========================
@paulkaplan
paulkaplan / STLFileSaver.js
Last active September 14, 2020 13:44
Create an ASCII STL file from a THREE.js mesh that can be saved save from browser and 3D printed
/*
Paul Kaplan, @ifitdidntwork
Create an ASCII STL file from a THREE.js mesh
that can be saved save from browser and 3D printed
--------------------------------------------------
See further explanation here:
http://buildaweso.me/project/2013/2/25/converting-threejs-objects-to-stl-files
--------------------------------------------------
Saving the file out of the browser is done using FileSaver.js