Skip to content

Instantly share code, notes, and snippets.

@Frank-Buss
Frank-Buss / place_circle.py
Created February 14, 2021 13:27
Places components in Pcbnew in KiCad 5.x in a circle
# Python script to place components in a circle
# based on http://kevincuzner.com/2017/04/28/arranging-components-in-a-circle-with-kicad/
# but ported to Python 3 and KiCad 5.x
# You can just open "Tools->Scripting Console" and paste the whole thing.
# Needs to be in 3 parts: first the import line, then the function definition (and hit enter twice),
# and finally the place_circle call.
# Since refs can't have spaces in the name, I also simplified the list creation with the split function.
import math, pcbnew
@Frank-Buss
Frank-Buss / Toolbar.cs
Created October 20, 2020 05:13
creates a toolbar with two buttons with a C# script, without prefabs
using UnityEngine;
using UnityEngine.Events;
using UnityEngine.EventSystems;
using UnityEngine.UI;
// creates a toolbar with two buttons with a C# script, without prefabs
// extension method to set all values of a RectOffset to the same value
public static class Extensions
{
@Frank-Buss
Frank-Buss / happy.rb
Last active August 26, 2020 21:54
Ruby script which prints all happy numbers <= 100
#!/usr/bin/env ruby
# prints all happy numbers <= 100
# https://en.wikipedia.org/wiki/Happy_number
# returns true, if the number is happy
def happy?(n)
n = n.digits.sum { |x| x * x } while n > 6
n == 1
end
@Frank-Buss
Frank-Buss / TilemapTest.cs
Created June 27, 2020 09:02
load a tileset PNG from the streamingAssets folder, and create a Unity Tilemap and all necessary objects with a C# script
using UnityEngine;
using UnityEngine.Tilemaps;
// Load a tileset PNG from the streamingAssets folder, and create a
// Unity Tilemap and all necessary objects with a C# script.
// Attach this script to an empty GameObject.
// Copyright 2020 by Frank Buss. Can be used for free in any project.
public class TilemapTest : MonoBehaviour
@Frank-Buss
Frank-Buss / clean.bat
Created April 19, 2020 13:35
Unity clean script
rd /s /q Library
rd /s /q Temp
rd /s /q obj
rd /s /q logs
rd /s /q .vs
del /s /q /f *.csproj
del /s /q /f *.pidb
del /s /q /f *.unityproj
del /s /q /f *.DS_Store
del /s /q /f *.sln
@Frank-Buss
Frank-Buss / png2ansi.py
Last active July 18, 2021 12:42
Converts a PNG image to an echo command with ANSI codes. Example: https://i.imgur.com/Kw6LUbG.png
#!/usr/bin/env python3
# Converts a PNG image to an echo command with ANSI codes
# Copyright (c) 2020, Frank Buss
# All rights reserved.
# Redistribution and use in source and binary forms, with or without
# modification, are permitted provided that the following conditions are met:
@Frank-Buss
Frank-Buss / dynamic-test.cs
Created April 1, 2020 10:54
using "dynamic" in C# to call overloaded methods
using System;
using System.Collections.Generic;
abstract class Tile
{
}
class SeaTile : Tile
{
}
@Frank-Buss
Frank-Buss / barcode.py
Created March 31, 2020 12:51
Australia Post tracking number extractor
#!/usr/bin/python3
# Converts the 56 digits 2D Australia Post barcode to the 22 digits tracking number.
# Reads from stdin until newline, and copies the tracking number to the clipboard.
# Other characters then digits are removed.
#
# Needs Python3 and the clipboard library. Install from the command line like this:
# pip3 install clipboard
# Then save this file as barcode.py and start the script like this:
# python barcode.py
@Frank-Buss
Frank-Buss / OlympicRings.hs
Created March 25, 2020 23:59
creates an olympic rings image and saves it as test.tga
-- creates an olympic rings image and saves it as test.tga
-- output: http://www.frank-buss.de/haskell/OlympicRings.png
import Data.Binary
-- image size
data Size =
Size
{ width :: Integer
, height :: Integer
using System.Collections;
using System.Collections.Generic;
using UnityEngine;
public class NewBehaviourScript : MonoBehaviour
{
private static System.Type[] types = {
typeof(Integer),
typeof(Long),
typeof(String)};