Skip to content

Instantly share code, notes, and snippets.

View kamicane's full-sized avatar

Valerio Proietti kamicane

View GitHub Profile
using System;
using UVtools.Core;
using UVtools.Core.Extensions;
using UVtools.Core.Scripting;
namespace UVtools.ScriptSample;
public class LayerDuper : ScriptGlobals
{
readonly ScriptNumericalInput<ushort> NumClonesInput = new()
@kamicane
kamicane / promicro-sega-joystick.ino
Last active May 23, 2019 02:38
[Sega Joystick to DirectInput] #arduino
#include <SegaController.h>
#include <Joystick.h>
#define USE_DEBUG 1
// Controller DB9 pins (looking face-on to the end of the plug):
//
// 5 4 3 2 1
// 9 8 7 6
@kamicane
kamicane / psx-controller-xinput.ino
Last active May 23, 2019 02:37
[psx-controller-xinput] PSX controller adapter to XInput with Arduino pro micro #arduino
// https://bitbucket.org/kamicane/psxpad/src/master/
#include <PSXPad.h>
// https://github.com/dmadison/ArduinoXInput
#include <XInput.h>
const int ATT_PIN = 9;
PSXPad* pad;
void setup() {
@kamicane
kamicane / README.md
Last active May 23, 2019 02:30
[cubic-bezier-solver]

a cubic-bezier solver.

@kamicane
kamicane / camelize.js
Last active May 23, 2019 02:28
[Clint 2] a command line parser
'use strict'
const CAMEL_REGEXP = /[-_]+([A-z])/g
module.exports = function camelize (string) {
return string.replace(CAMEL_REGEXP, (full, match) => match.toUpperCase())
}
@kamicane
kamicane / README.md
Last active May 23, 2019 02:23
[async-sequence] a generator runner

a generator runner. yield promises. be async.

"use strict";
var fragmentText = function(ctx, lines, index, maxWidth) {
var line = lines[index];
var nextLine;
var tooLong = true;
while (tooLong) {
var width = ctx.measureText(line.join(" ")).width;
// Array shuffle for MooTools
Array.implement({
shuffle: function(){
var i = this.length;
if (i == 0) return;
while (--i){
var j = Math.floor(Math.random() * ( i + 1 ));
var tempi = this[i];
import { Component } from 'react'
import { observe } from '@nx-js/observer-util'
export default class ObserverComponent extends Component {
componentWillMount () {
const render = this.render
const initialRender = (...args) => {
let result
@kamicane
kamicane / color-conversion-algorithms.js
Last active January 16, 2017 09:05 — forked from mjackson/color-conversion-algorithms.js
RGB, HSV, and HSL color conversion algorithms in JavaScript
/**
* Converts an RGB color value to HSL. Conversion formula
* adapted from http://en.wikipedia.org/wiki/HSL_color_space.
* Assumes r, g, and b are contained in the set [0, 255] and
* returns h, s, and l in the set [0, 1].
*
* @param Number r The red color value
* @param Number g The green color value
* @param Number b The blue color value
* @return Array The HSL representation