I've written this like a billion times because it's fun. The above code is pretty gross but it works...
It will kind of ignore commented lines, assuming those lines are commented out with //.
#### | |
# Monitor new files in a directory for changes. | |
#### | |
import os, time | |
# basic ideas from here: | |
# http://timgolden.me.uk/python/win32_how_do_i/watch_directory_for_changes.html#poll_with_listdir | |
dir = "." |
/* This is a work in progress, not done yet (doesn't do anything in fact!).*/ | |
// I don't have a website, so it's just my screen name... feel free to refactor | |
// package name how you like. But credit me plz ;D | |
package shivshank.engine.physics; | |
import somepackage.that.doesnt.exist.yet.Vector2f; | |
import java.util.List; | |
import java.util.ArrayList; |
/* An example implemenation of data structures to support a 2D Renderer in (semi) Java... */ | |
class abstract Body { | |
public Vector2f posNext; | |
public Vector2f posPrev; | |
/** | |
* The actual position of the object at time t = t0 + dt * alpha. | |
*/ | |
protected Vector2f pos = new Vector2f(0f, 0f); |
I've written this like a billion times because it's fun. The above code is pretty gross but it works...
It will kind of ignore commented lines, assuming those lines are commented out with //.
rem add this command to the shortcuts file in Notepad++ | |
rem run_python.bat "$(FULL_CURRENT_PATH)" | |
@echo off | |
Set filename=%1 | |
For %%A in (%filename%) do ( | |
Set Folder=%%~dpA | |
Set Name=%%~nxA | |
) |
fn evaluate_bin_sum(expr: &syn::ConstExpr) -> u64 { | |
match expr { | |
// TODO: Fix the pattern (first match is left == literal, right == binary op, second match should be both are literals) | |
&syn::ConstExpr::Binary(syn::BinOp::Add, ref left, ref right) => { | |
extract_int_value(left) + evaluate_bin_sum(right) | |
}, | |
&syn::ConstExpr::Binary(syn::BinOp::Add, ref left, ref right) => { | |
extract_int_value(left) + extract_int_value(right) | |
}, | |
_ => { |
fn main() { | |
use shape_args::Dot; | |
draw(Dot(5.5)); | |
} | |
// I need a function that works like this: | |
// pub fn draw<D: Drawable, T: Into<D>>(d: T) { | |
// but where Rust can always infer what D is | |
pub fn draw<T: DrawableArg>(d: T) { |
/// Captures are the macro equivalent of enums and macro 1.1 match arms. The capture either
/// contains one anonymous match arm or any number of named match arms. Captures are reusable,
/// i.e. they can be bound to scoped constants which can then be referred to any number of
/// times.
[pub] [macro] capture vertex_attribute {
/// you can use braces, brackets, or parentheses after the colon
unnamed: ( $kind:ty ),
named: {
$name:ident : $kind:ty
use std::fmt::Debug; | |
trait BtreeTrait: Debug {} | |
#[derive(Debug)] | |
struct Btree<T: Debug, Tail: BtreeTrait> { | |
val: T, | |
left: Option<Tail>, | |
right: Option<Tail>, | |
} |
""" | |
This script is designed to export a mass amount of MagicaVoxel .vox files | |
to .obj. Unlike Magica's internal exporter, this exporter preserves the | |
voxel vertices for easy manipulating in a 3d modeling program like Blender. | |
Various meshing algorithms are included (or to be included). MagicaVoxel | |
uses monotone triangulation (I think). The algorithms that will (or do) | |
appear in this script will use methods to potentially reduce rendering | |
artifacts that could be introduced by triangulation of this nature. | |