PROJET AUTOBLOG


Warrior du Dimanche

Site original : Warrior du Dimanche

⇐ retour index

Bricolage et gravure: comme on refait son lit, on se couche...

mardi 5 décembre 2023 à 14:50

Je passe sur les circonstances qui m'amènent à changer mon lit pour passer à ce qui m'intéresse: faire un lit façon chalet...

Certains trouveront ça moche ou ouiche...

Celui-ci mérite une explication:  Kitch -> quiche -> ouiche...
Désolé pour ce qui   vient de se passer...

J'ai fait une structure toute en bois avec des pieds de 40cm afin d'avoir une assise haute: 40 cm de pieds + 5 cm de sommier à lattes + environ 17cm de matelas... on est bien, là.

Les pieds

alt

J'y ai ajouté une tête de lit façon bloc étagère en incorporant des prises de courant et USB: hauteur 110 cm et profondeur 22cm.

prises

Ensuite je me suis attaqué au pied de lit: une planche de pin de 60x200 que j'ai découpé façon chalet avec volutes et petits coeurs découpés (c'est la partie plutôt ouiche pour certains...)

Arrive la partie gravure

L'envie d'ajouter des motifs gravés au laser sur le pied de lit s'est imposée à moi.

J'ai opté pour des edelweiss sur les arrondis et une scène de ski que j'avais déjà utilisée sur un plateau entièrement fait à partir de chutes de bois (mais c'est une autre histoire)

gravure

Astuce #1

J'ai étrenné une astuce qui a vraiment bien fonctionné: afin d'éviter la brûlure des bords du motif gravé, qui offre un dégradé allant du marron au jaunâtre fumé du plus mauvais effet, j'ai recouvert la zone à graver de ruban à masquer.

Une fois la gravure terminée, on retire le ruban à masquer et le bois est bien préservé dessous.

Astuce #2

Le plus risqué est toujours de centrer correctement le motif sur le support. Mon truc, c'est d'arrêter de vouloir trouver le bon réglage des marges sur le logiciel de gravure et d'utiliser l'option «centrer le laser»

  1. je marque le centre de la zone à graver au crayon,
  2. je place la graveuse au doigt mouillé pour qu'elle soit alignée correctement horizontalement,
  3. je clique sur «centrer le laser», je déplace la tête du laser à la main pour faire correspondre le spot avec le centre marqué au crayon,
  4. je clique sur «corner» qui replace le laser au coin bas gauche du motif,
  5. c'est parti...

ça marche à tous les coups.

Conclusion

Je vais pas vous péter le joufflu plus longtemps avec les détails, vous regarderez les photos . J'ai tout gravé dehors, sur la terrasse, avec des rallonges USB pour rester le cul bien au chaud derrière la baie vitrée...

Final

pxl_20231201_144314358.webp

pxl_20231201_144327369.webp

pxl_20231201_145555821.webp

pxl_20231201_145600196.webp

pxl_20231201_151317715.webp

pxl_20231201_154148317.webp

pxl_20231201_154226566.webp

pxl_20231201_154624977mp.webp

pxl_20231201_154951512.webp

pxl_20231202_093342875.webp

Petit aparté...

Par contre, quand vous gravez, restez pas loin parce que des fois, ça prend feu...

Exemple, en passant devant pour la dixième fois, j'ai trouvé que ça fumait encore plus que d'habitude... normal vu que le cache avait choisi de se foutre à flamber...

outch c brûlé

Le laser est sans doute passé sur une partie de bois plus tendre ou un peu gondolée vers le haut... et au bout de deux heures... poufcétou.

<link rel="stylesheet" href="http://www.warriordudimanche.net/./plugins/Galart/style.css"/> <link rel="stylesheet" href="http://www.warriordudimanche.net/./plugins/Galart/assets/lightbox.css"/> <script src="http://www.warriordudimanche.net/./plugins/Galart/assets/lightbox.js"> RSS<script>[].forEach.call(document.querySelectorAll("[lightbox]"), function(el) { el.lightbox = new Lightbox(el);});

► Commentaires

FormData API | 12 Days of Web

mardi 5 décembre 2023 à 14:24

Un petit résumé perso de cette page sur l'objet FormData en javascript.

Créer un objet FormData à partir d'un formulaire

let form = document.querySelector('form');
let data = new FormData(form);

Parcourir l'objet FormData

C'est un itérable, donc on le parcourt avec un for et on récupère des ['clé','valeur']

for (let entry of data) {
    console.log(entry);
}

ou

for (let [key, value] of data) {
    console.log(key);
    console.log(value);
}

parcourir les clés / les valeurs

for (let key of data.keys()) {
  console.log(key);
}

Get, set, update des valeurs

GET

Récupérer une valeur (sans rire ?!)

SET

Ajouter une nouvelle valeur à l'objet FormData

data.set('date', '2022-12-25');

APPEND

Ajouter une valeur supplémentaire à une entrée existante (si l'entrée n'existe pas, elle est créée)

data.append('tags', 'vacations');

Divers

Tester si un champ existe

let hasID = data.has('id');

Récupérer un tableau

Convertir un FormData en objet clés valeurs

Si votre FormData ne contient pas plusieurs champs ayant le même nom.

let serialized = Object.fromEntries(data);

Sinon, on paufine

let obj = {};
for (let [key, value] of data) {
    if (obj[key] !== undefined) {
        if (!Array.isArray(obj[key])) {
            obj[key] = [obj[key]];
        }
        obj[key].push(value);
    } else {
        obj[key] = value;
    }
}

Une fois converti en objet, on peut le transformer en JSON

let stringified = JSON.stringify(obj);

<link rel="stylesheet" href="http://www.warriordudimanche.net/./plugins/Galart/style.css"/> <link rel="stylesheet" href="http://www.warriordudimanche.net/./plugins/Galart/assets/lightbox.css"/> <script src="http://www.warriordudimanche.net/./plugins/Galart/assets/lightbox.js"> <script>[].forEach.call(document.querySelectorAll("[lightbox]"), function(el) { el.lightbox = new Lightbox(el);});

► Commentaires

Sécuriser les iframes avec l'attribut sandbox - Alsacreations

lundi 20 novembre 2023 à 14:06

Tiens ? Je découvre l'attribut sandbox pour les iframe. C'est pas que j'en fasse usage en général mais bon...

<link rel="stylesheet" href="http://www.warriordudimanche.net/./plugins/Galart/style.css"/> <link rel="stylesheet" href="http://www.warriordudimanche.net/./plugins/Galart/assets/lightbox.css"/> <script src="http://www.warriordudimanche.net/./plugins/Galart/assets/lightbox.js"> <script>[].forEach.call(document.querySelectorAll("[lightbox]"), function(el) { el.lightbox = new Lightbox(el);});

► Commentaires

How can I listen for a click outside of an element in JavaScript? - 30 seconds of code

mercredi 8 novembre 2023 à 09:48

Pour écouter un click hors d'un élément, on utilise l'event delegation: on vérifie si la target de l'event correspond ou pas à l'objet qu'on veut.

  document.addEventListener('click', e => {
    if (!element.contains(e.target)) callback();
  });
};
onClickOutside('#my-element', () => console.log('Hello'));
// Will log 'Hello' whenever the user clicks outside of #my-element
<link rel="stylesheet" href="http://www.warriordudimanche.net/./plugins/Galart/style.css"/> <link rel="stylesheet" href="http://www.warriordudimanche.net/./plugins/Galart/assets/lightbox.css"/> <script src="http://www.warriordudimanche.net/./plugins/Galart/assets/lightbox.js"> <script>[].forEach.call(document.querySelectorAll("[lightbox]"), function(el) { el.lightbox = new Lightbox(el);});

► Commentaires

How can I listen for an event only once in JavaScript? - 30 seconds of code

vendredi 3 novembre 2023 à 14:23

Tiens, je ne savais pas qu'addEventListener acceptait des paramètres en option, en particulier un { once : true} qui permet de n'exécuter la fonction attachée à l'évènement qu'une seule fois...


const listenOnce = (el, evt, fn) =>
  el.addEventListener(evt, fn, { once: true });

listenOnce(
  document.getElementById('my-btn'),
  'click',
  () => console.log('Hello!')
); // 'Hello!' will only be logged on the first click
<link rel="stylesheet" href="http://www.warriordudimanche.net/./plugins/Galart/style.css"/> <link rel="stylesheet" href="http://www.warriordudimanche.net/./plugins/Galart/assets/lightbox.css"/> <script src="http://www.warriordudimanche.net/./plugins/Galart/assets/lightbox.js"> <script>[].forEach.call(document.querySelectorAll("[lightbox]"), function(el) { el.lightbox = new Lightbox(el);});

► Commentaires