mirror of
https://github.com/TomHodson/tomhodson.github.com.git
synced 2025-06-26 10:01:18 +02:00
add drafts
This commit is contained in:
parent
682b031b0d
commit
587fda9522
6
_drafts/lego.md
Normal file
6
_drafts/lego.md
Normal file
@ -0,0 +1,6 @@
|
|||||||
|
|
||||||
|
|
||||||
|
Lego Breadboard mount: https://www.thingiverse.com/thing:3622179
|
||||||
|
Custom gears: https://www.thingiverse.com/thing:4258996
|
||||||
|
Lego N20 motor mount https://www.thingiverse.com/thing:3968044
|
||||||
|
Custom part designer: https://marian42.de/partdesigner https://github.com/marian42/partdesigner
|
1
_drafts/part_designer.md
Normal file
1
_drafts/part_designer.md
Normal file
@ -0,0 +1 @@
|
|||||||
|
https://marian42.de/partdesigner/
|
@ -1,22 +1,14 @@
|
|||||||
---
|
---
|
||||||
title: My First Half Marathon
|
title: Running ideas draft post
|
||||||
layout: post
|
layout: post
|
||||||
image: /assets/blog/running/time_vs_distance.svg
|
image: /assets/blog/running/time_vs_distance.svg
|
||||||
social_image: /assets/blog/running/time_vs_distance.png
|
social_image: /assets/blog/running/time_vs_distance.png
|
||||||
alt: A scatter graph of run time vs run distance for all my runs on strava. It shows that I mainly run between 5 and 6 min per kilometer, regardless of distance
|
alt: This shouldn't get committed, it's just a grab bag of ideas for running blog posts.
|
||||||
---
|
---
|
||||||
|
|
||||||
I just ran my first half marathon. To celebrate the occasion I'm going to have a look at my historical run data.
|
[x] download all my runs from strava
|
||||||
|
[x] scatter them on a (distance, time) plot
|
||||||
<figure>
|
[x] plot the (distance, time) curves predicted by the V02 max tables in the running book
|
||||||
<img src="/assets/blog/running/time_vs_distance_plus_hist.svg"/>
|
|
||||||
<figcaption>
|
|
||||||
</figcaption>
|
|
||||||
</figure>
|
|
||||||
|
|
||||||
- download all my runs from strava
|
|
||||||
- scatter them on a (distance, time) plot
|
|
||||||
- plot the (distance, time) curves predicted by the V02 max tables in the running book
|
|
||||||
- interpolate the table to get a smooth function parametrized by V02max
|
- interpolate the table to get a smooth function parametrized by V02max
|
||||||
- fit that to my data
|
- fit that to my data
|
||||||
|
|
||||||
@ -24,5 +16,8 @@ I just ran my first half marathon. To celebrate the occasion I'm going to have a
|
|||||||
- and/or weight by time to get a better estimate of current V02max
|
- and/or weight by time to get a better estimate of current V02max
|
||||||
|
|
||||||
Extensions:
|
Extensions:
|
||||||
- download heart rate data and make a histogram per hour of the day
|
[x] download heart rate data and make a histogram per hour of the day
|
||||||
- could map radius to heart rate and angle to hour of day to make a nice figure
|
[ ] Check that it uses local time not UTC
|
||||||
|
[x] could map radius to heart rate and angle to hour of day to make a nice figure
|
||||||
|
|
||||||
|
garmin db: https://github.com/tcgoetz/GarminDB/tree/master
|
100
_drafts/vasegen.md
Normal file
100
_drafts/vasegen.md
Normal file
@ -0,0 +1,100 @@
|
|||||||
|
---
|
||||||
|
title: Vase Generator
|
||||||
|
excerpt: |
|
||||||
|
|
||||||
|
|
||||||
|
head: |
|
||||||
|
<script async src="https://unpkg.com/es-module-shims@1.8.0/dist/es-module-shims.js"></script>
|
||||||
|
|
||||||
|
<script type="importmap">
|
||||||
|
{
|
||||||
|
"imports": {
|
||||||
|
"three": "https://unpkg.com/three@0.156.1/build/three.module.js",
|
||||||
|
"three/addons/": "https://unpkg.com/three@0.156.1/examples/jsm/"
|
||||||
|
}
|
||||||
|
}
|
||||||
|
</script>
|
||||||
|
layout: post
|
||||||
|
hide_image: true # Only use this image for static previews
|
||||||
|
image: /assets/blog/toothbrush_shelf/spin.gif
|
||||||
|
alt: A render of a 3D printed shelf sitting above a shaver outlet, it spins slowly.
|
||||||
|
---
|
||||||
|
Other vase generators: https://www.vasedjinn.com/
|
||||||
|
http://daisyvases.com/
|
||||||
|
https://threejs.org/examples/webgl_geometry_shapes
|
||||||
|
want to port code from https://github.com/TomHodson/VaseExtruder
|
||||||
|
|
||||||
|
<script type="module">
|
||||||
|
import * as THREE from 'three';
|
||||||
|
import { OrbitControls } from 'three/addons/controls/OrbitControls.js';
|
||||||
|
import { RoomEnvironment } from 'three/addons/environments/RoomEnvironment.js';
|
||||||
|
import { GLTFLoader } from 'three/addons/loaders/GLTFLoader.js';
|
||||||
|
import { DRACOLoader } from 'three/addons/loaders/DRACOLoader.js';
|
||||||
|
|
||||||
|
let mixer;
|
||||||
|
|
||||||
|
// Get background color of the body element
|
||||||
|
const body = document.getElementsByTagName("body")[0];
|
||||||
|
const style = window.getComputedStyle(body);
|
||||||
|
const background_color = style.getPropertyValue("background-color");
|
||||||
|
|
||||||
|
// create the scene and the camera
|
||||||
|
const scene = new THREE.Scene();
|
||||||
|
scene.background = new THREE.Color(background_color);
|
||||||
|
const camera = new THREE.PerspectiveCamera( 75, window.innerWidth / window.innerHeight, 0.1, 1000 );
|
||||||
|
|
||||||
|
const canvas = document.getElementById("threejs");
|
||||||
|
const renderer = new THREE.WebGLRenderer({canvas: canvas, antialias: true, powerPreference: "low-power"});
|
||||||
|
renderer.setPixelRatio( window.devicePixelRatio );
|
||||||
|
|
||||||
|
// setup the controls
|
||||||
|
const controls = new OrbitControls( camera, renderer.domElement );
|
||||||
|
controls.target.set( 0, 0.5, 0 );
|
||||||
|
controls.update();
|
||||||
|
controls.enablePan = false;
|
||||||
|
controls.enableDamping = true;
|
||||||
|
|
||||||
|
const dracoLoader = new DRACOLoader();
|
||||||
|
dracoLoader.setDecoderPath( 'jsm/libs/draco/gltf/' );
|
||||||
|
|
||||||
|
const loader = new GLTFLoader();
|
||||||
|
loader.setDRACOLoader( dracoLoader );
|
||||||
|
loader.load( '/assets/blog/shelves/model/shelves.glb', function ( gltf ) {
|
||||||
|
|
||||||
|
const model = gltf.scene;
|
||||||
|
// model.position.set( 1, 1, 0 );
|
||||||
|
model.scale.set( 1, 1, 1 );
|
||||||
|
scene.add( model );
|
||||||
|
|
||||||
|
animate();
|
||||||
|
|
||||||
|
}, undefined, function ( e ) {
|
||||||
|
|
||||||
|
console.error( e );
|
||||||
|
|
||||||
|
} );
|
||||||
|
|
||||||
|
// const geometry = new THREE.BoxGeometry( 1, 1, 1 );
|
||||||
|
// const material = new THREE.MeshBasicMaterial( { color: 0x00ff00 } );
|
||||||
|
// const cube = new THREE.Mesh( geometry, material );
|
||||||
|
// scene.add( cube );
|
||||||
|
|
||||||
|
camera.position.z = 5;
|
||||||
|
|
||||||
|
function animate() {
|
||||||
|
requestAnimationFrame( animate );
|
||||||
|
|
||||||
|
controls.update();
|
||||||
|
renderer.render( scene, camera );
|
||||||
|
}
|
||||||
|
|
||||||
|
animate();
|
||||||
|
</script>
|
||||||
|
|
||||||
|
<figure>
|
||||||
|
<canvas id = "threejs" style="width:100%"></canvas>
|
||||||
|
<figcaption>
|
||||||
|
Hey look, threeJS!
|
||||||
|
</figcaption>
|
||||||
|
</figure>
|
||||||
|
|
Loading…
x
Reference in New Issue
Block a user