Skip to content

Instantly share code, notes, and snippets.

@RH2
RH2 / uses file size to determine if it is an image with a trasform that needs to be included.
Created April 2, 2025 04:05
DICOM Houdini to VDB (you will need to remap values, result is not normalized 0-1 density)
import pydicom
import numpy as np
import os
import hou
def create_global_attrib(geo, name, value):
"""Safely create and set a global attribute"""
if geo.findGlobalAttrib(name) is None:
attrib = geo.addAttrib(hou.attribType.Global, name, value)
geo.setGlobalAttribValue(name, value)
@RH2
RH2 / HOT MESS CHARACTER CONTROL
Created March 30, 2025 07:29
Absolutely going to break all boundaries lol (UNITY)
using System.Collections;
using System.Collections.Generic;
using UnityEngine;
using UnityEngine.UI;
public class CharacterMovement10 : MonoBehaviour
{
public Camera playerCamera;
public float mouseSensitivity = 2f;
private float verticalLookRotation;
@RH2
RH2 / LOSPEC.COM .HEX MATERIAL ADDON
Last active February 25, 2025 02:33
LOSPEC.COM .HEX MATERIAL ADDON
bl_info = {
"name": "Hex Color Materials from URL with Color Atlas",
"author": "RH",
"version": (1, 3),
"blender": (3, 0, 0),
"location": "View3D > Sidebar > Hex Materials Tab",
"description": "Create materials and color atlas from hex codes in a URL text file",
"category": "Material",
}
import * as THREE from 'three';
function createBrickWall({
rows = 5,
columns = 10,
brickWidth = 2,
brickHeight = 1,
brickDepth = 0.5,
mortar = 0.1,
color = 0x993333,
//best version yet...
function processElement(element, ALL_IDS) {
let stylesheet = '';
let svgString = '';
// Check if the element has children (e.g., <g> elements)
if (element.children.length > 0) {
// If it's a group, process each child
let groupContent = '';
//logic
//three components:
//front-door
float fd_width = chf("Front_Door_Width");
//wide-garage
float wg_width = chf("Wide_Garage_Width");
//narrow-garage
float ng_width = chf("Narrow_Garage_Width");
//spacing
PS C:\Program Files\Ultimaker Cura 5.2.1> .\CuraEngine.exe
Cura_SteamEngine version 5.2.1
Copyright (C) 2022 Ultimaker
This program is free software: you can redistribute it and/or modify
it under the terms of the GNU Affero General Public License as published by
the Free Software Foundation, either version 3 of the License, or
(at your option) any later version.
C:\Users\Reference>vulkaninfo
==========
VULKANINFO
==========
Vulkan Instance Version: 1.3.201
Instance Extensions: count = 13
===============================
@RH2
RH2 / position of markers
Created May 12, 2022 23:39
sample output
[1, 10, 5]
id:1--------
c0:[Vector((1.0, 1.0, 1.0)), Vector((1.0, 1.0, 1.0)), Vector((2.5952634811401367, 4.673618316650391, 2.528850555419922)), Vector((0.0, 0.0, 0.0)), Vector((-2.174985408782959, 14.062763214111328, 12.237187385559082))]
c1:[Vector((4.53745698928833, 9.417943954467773, 2.810494899749756)), Vector((-2.3082613945007324, 1.2570186853408813, 5.259504795074463)), Vector((-1.3547754287719727, 17.855918884277344, 13.437776565551758))]
c2:[Vector((5.320581436157227, 3.0470848083496094, -3.7964653968811035)), Vector((-4.250454902648926, -3.487306594848633, 4.977860450744629)), Vector((1.1032078266143799, 16.89960289001465, 10.495382308959961))]
c3:[Vector((6.8457183837890625, 8.160924911499023, -2.449009895324707)), Vector((-1.5251367092132568, -5.113840103149414, -1.3474555015563965)), Vector((1.2449270486831665, 13.604747772216797, 8.606368064880371))]
id:10--------
c0:[Vector((1.0, 1.0, 1.0)), Vector((1.0, 1.0, 1.0)), Vector((2.5952634811401367, 4.673618316650391, 2.528850555419922)), Vector((0.
@RH2
RH2 / aprilDirectoryDetect.py
Created May 11, 2022 01:09
aprilDirectoryDetect.py
#pip install opencv-contrib-python --user
import cv2 as cv
import numpy as np
import argparse
import sys
import imutils
import glob
import os
import json