Skip to content

Instantly share code, notes, and snippets.

View palmerc's full-sized avatar

Cameron Lowell Palmer palmerc

View GitHub Profile
@palmerc
palmerc / org.jenkins-ci.plist
Created August 26, 2014 13:23
Start script for Jenkins goes in /Library/LaunchDaemons
<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE plist PUBLIC "-//Apple//DTD PLIST 1.0//EN" "http://www.apple.com/DTDs/PropertyList-1.0.dtd">
<plist version="1.0">
<dict>
<key>StandardOutPath</key>
<string>/var/log/jenkins/jenkins.log</string>
<key>StandardErrorPath</key>
<string>/var/log/jenkins/jenkins.log</string>
<key>EnvironmentVariables</key>
<dict>
@palmerc
palmerc / ves-kiwi-setup.sh
Last active February 8, 2018 12:23
Build VES and Kiwi on Mac
#!/bin/bash
export CC=/usr/bin/clang
export CXX=/usr/bin/clang++
export CMAKE_C_COMPILER=${CC}
export CMAKE_CXX_COMPILER=${CXX}
export ANDROID_NDK=/usr/local/opt/android-ndk
export ANDROID_HOME=${HOME}/Development/android-sdk-macosx
VESKIWI_BUILD_DIR=${PWD}/VES-Kiwi
@palmerc
palmerc / llvm-omp-environment.sh
Last active August 29, 2015 14:05
llvm-omp-environment.sh
#!/bin/bash
OPENMP_DIR=/usr/local/llvm-omp
export CC=${OPENMP_DIR}/bin/clang
export CXX=${OPENMP_DIR}/bin/clang++
export CMAKE_C_COMPILER=${CC}
export CMAKE_CXX_COMPILER=${CXX}
export PATH=${OPENMP_DIR}/bin:${PATH}
export C_INCLUDE_PATH=${OPENMP_DIR}/include:${C_INCLUDE_PATH}
@palmerc
palmerc / blur.m
Last active October 10, 2017 02:38
vImage Blur Example
- (UIImage *)boxblurImage:(UIImage *)image boxSize:(int)boxSize
{
CGImageRef originalImageRef = image.CGImage;
CGColorSpaceRef originalColorSpace = CGColorSpaceRetain(CGImageGetColorSpace(originalImageRef));
if (_pixelBuffer == NULL) {
_pixelBuffer = malloc(CGImageGetBytesPerRow(originalImageRef) * CGImageGetHeight(originalImageRef));
}
vImage_CGImageFormat inputImageFormat =
@palmerc
palmerc / sort.m
Created May 23, 2015 08:28
Obj-C Command-line Sort Example
#import <Foundation/Foundation.h>
#define randomNumber() (arc4random() % ((unsigned)1000000 + 1))
@interface MainHelper : NSObject
+ (NSArray *)largeArrayCreate;
@end
@implementation MainHelper
+ (NSArray *)largeArrayCreate
Eigen::Vector4f planeEq;
Eigen::Matrix4f modelViewMatrix;
Eigen::Vector4f nPrime = modelViewMatrix.inverse() * Eigen::Vector4f(planeEq(0), planeEq(1), planeEq(2), 1.f);
nPrime.normalize();
Eigen::Vector3f clipPlaneNormalObjectSpace = Eigen::Vector3f(nPrime(0)/nPrime(3), nPrime(1)/nPrime(3), nPrime(2)/nPrime(3));
@palmerc
palmerc / naiveHough.m
Created December 11, 2015 14:05
Naive Hough Transform for Matlab
function [ Hough, theta_range, rho_range ] = naiveHough(I)
%NAIVEHOUGH Peforms the Hough transform in a straightforward way.
%
[rows, cols] = size(I);
theta_maximum = 90;
rho_maximum = floor(sqrt(rows^2 + cols^2)) - 1;
theta_range = -theta_maximum:theta_maximum - 1;
rho_range = -rho_maximum:rho_maximum;
@palmerc
palmerc / index.html
Created December 23, 2015 09:05
Autobahn Web Client
<!DOCTYPE html>
<html>
<head>
<script type="text/javascript">
var sock = null;
var ellog = null;
window.onload = function() {
var wsuri;
@palmerc
palmerc / playground.swift
Created January 1, 2016 20:49
Swift String Gymnastics
//: Playground - noun: a place where people can play
import Darwin
import Foundation
let clockFaces: String = "๐Ÿ•›๐Ÿ•๐Ÿ•‘๐Ÿ•’๐Ÿ•“๐Ÿ•”๐Ÿ••๐Ÿ•–๐Ÿ•—๐Ÿ•˜๐Ÿ•™๐Ÿ•š"
let sortedClockFaces = Array(clockFaces.characters).sort()
let threeOClock = sortedClockFaces[2]
let aceOfSpades = "๐Ÿ‚ก"
@palmerc
palmerc / imageRoundtrip.swift
Last active April 15, 2024 03:35
Roundtrip a UIImage to its raw pixel values and back to an image again
import UIKit
import CoreGraphics
func imageFromPixelValues(pixelValues: [UInt8]?, width: Int, height: Int) -> CGImage?
{
var imageRef: CGImage?
if pixelValues != nil {
let imageDataPointer = UnsafeMutablePointer<UInt8>(pixelValues!)
let colorSpaceRef = CGColorSpaceCreateDeviceGray()