Je dois couper une planche selon une courbe. J'aimerais savoir je pourrai effectuer cette opération à l'aide de ma scie à ruban ou si la planche est trop grande pour elle : en orientant la planche selon le trait de coupe, va-t-elle donner dans le bâti de la scie ?

Pour modéliser cela, j'ai dessiné la planche et le trait de coupe :

\documentclass[border = 1 cm]{standalone}
% pour intégrer des dessins MetaPost compilés directement avec LuaLaTeX
\usepackage{luamplib}
\begin{document}
\begin{mplibcode}
beginfig(1);
% planche
draw unitsquare xscaled 113 cm yscaled 26 cm ;
% trait de coupe
draw (9cm,0) .. (25cm,14cm) .. (88cm,14cm) .. (104cm,0);
endfig;
\end{mplibcode}
\end{document}
הההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההה
XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX

J'aimerais maintenant déplacer cette figure sur un point fixe, de la même manière que j'orienterai la planche sur la table de manière à ce que le ruban de la scie suive le trait de coupe. Comment faire ? J'aimerais une figure tous les cinq centimètres à peu près.

Posée 11 Fév, 22:12

Pathe's gravatar image

Pathe ♦♦
7.6k49208252
Taux d'acceptation : 55%


Ah, problème rigolo :). Comme je vois bien la problématique du menuisier, je crois que j’ai compris ce que tu voulais faire. J’ai rajouté en pointillé le bord de la scie pour visualisé si on tape dedans ou pas. Si ton bord de scie est à 30cm, et a une largeur de 40cm, ça passe :). J’ai utilisé u=0.1cm comme unité pour faire un dessin à l’échelle.

Voilà le code.

\documentclass{article}
% pour intégrer des dessins MetaPost compilés directement avec LuaLaTeX
\usepackage{luamplib}
\usepackage{pgffor}
\newcommand\etape[2]{
\begin{mplibcode}
beginfig(#1);
% unite
u:=0.1cm;
largeurScie := 3u;
path planche, decoupe;
% planche
planche := unitsquare xscaled 113u yscaled 26u ;
% trait de coupe
decoupe := (9u,0) .. (25u,14u) .. (88u,14u) .. (104u,0);
pair p,lame;
l := length(decoupe);
t := #1/#2;
p := point (t*l) of decoupe;
lame := unitvector direction (t*l) of decoupe;
% angle de rotation
theta := angle lame;
% on dessine la planche tournée autour de p
draw planche shifted -p rotated -theta shifted p;
draw decoupe shifted -p rotated -theta shifted p;
dotlabel.bot(textext("$p$"),p);
% on dessine le ruban
draw p--(xpart p+largeurScie,ypart p) withcolor red withpen pencircle scaled
2pt;
% bord de scie
distanceBordScie := 30u;
largeurBordScie := 20u;
draw (xpart p-largeurBordScie,ypart p-distanceBordScie)--(xpart p+largeurBordScie,ypart p-distanceBordScie)
dashed evenly;
endfig;
\end{mplibcode}
}
\begin{document}
 
הההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההה
XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX
Lien permanent

Publiée 12 Fév, 10:47

Maxime's gravatar image

Maxime ♦
1.5k42839
Taux d'acceptation : 61%

C'est remarquable... et très utile : je suis désormais certain de pouvoir découper cette planche !

Actuellement, la position de l'image sur le papier est fonction de sa hauteur. Si l'on réussissait à donner une position fixe à la lame (trait rouge) sur le papier, on pourrait même utiliser le package animate pour voir la planche se déplacer pendant la découpe !

(12 Fév, 14:20) Pathe ♦♦ Pathe's gravatar image

En ajoutant un carré centré en p suffisamment grand (éventuellement dessiné en blanc...) à la magnifique solution de Maxime, on obtient la lame fixe. Voir la dernière ligne avant le endfig;

\documentclass{article}
% pour intégrer des dessins MetaPost compilés directement avec LuaLaTeX
\usepackage[margin=0.5cm]{geometry}
\usepackage{luamplib}
\usepackage{pgffor}
\newcommand\etape[2]{
\begin{mplibcode}
beginfig(#1);
% unite
u:=0.1cm;
largeurScie := 3u;
path planche, decoupe;
% planche
planche := unitsquare xscaled 113u yscaled 26u ;
% trait de coupe
decoupe := (9u,0) .. (25u,14u) .. (88u,14u) .. (104u,0);
pair p,lame;
l := length(decoupe);
t := #1/#2;
p := point (t*l) of decoupe;
lame := unitvector direction (t*l) of decoupe;
% angle de rotation
theta := angle lame;
% on dessine la planche tournée autour de p
draw planche shifted -p rotated -theta shifted p;
draw decoupe shifted -p rotated -theta shifted p;
dotlabel.bot(textext("$p$"),p);
% on dessine le ruban
draw p--(xpart p+largeurScie,ypart p) withcolor red withpen pencircle scaled
2pt;
% bord de scie
distanceBordScie := 30u;
largeurBordScie := 20u;
draw (xpart p-largeurBordScie,ypart p-distanceBordScie)--(xpart p+largeurBordScie,ypart p-distanceBordScie)
dashed evenly;
draw unitsquare shifted (-0.5,-0.5) scaled 200u shifted p withcolor white;
endfig;
\end{mplibcode}
 
הההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההה
XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX
Lien permanent

Publiée 12 Fév, 15:48

logamath's gravatar image

logamath
52316
Taux d'acceptation : 30%

Mais bien sûr ! Magnifique !

(12 Fév, 19:11) Pathe ♦♦ Pathe's gravatar image

Je ne suis pas sûr de bien comprendre ce que tu veux obtenir, ayant une assez mauvaise imagination spatiale et deux mains gauches. Je te donne donc les opérateurs qui correspondent à ce que je comprends, mais il faudra sûrement adapter.

Si tu veux décaler planche et trait de coupe, quelque chose comme :

picture p; p:= currentpicture;
for i=0 step 5 until 110 :
draw p shifted i*cm;
endfor;
הההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההה
XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX

S’il s’agit de décaler le long du trait de coupe :

\documentclass[border = 1 cm]{standalone}
% pour intégrer des dessins MetaPost compilés directement avec LuaLaTeX
\usepackage{luamplib}
\begin{document}
\begin{mplibcode}
beginfig(1);
path p[];
p0:= unitsquare xscaled 113 cm yscaled 26 cm ;
p1:= (9cm,0) .. (25cm,14cm) .. (88cm,14cm) .. (104cm,0);
draw p1;
d=arclength(p1);
d:=floor(d/5);
for i=0 upto d:
draw p0 shifted (point i*5cm on p1);
endfor;
endfig;
\end{mplibcode}
\end{document}
הההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההה
XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX

NB: Le code compile sur ConTeXt, je n’ai pas LaTeX d’installé.

Lien permanent

Publiée 12 Fév, 00:28

sztruks's gravatar image

sztruks
3781413
Taux d'acceptation : 21%

Modifiée 12 Fév, 20:46

Merci pour cette proposition. Malheureusement, elle ne compile pas chez moi, y compris avec ConTeXt (ce qui est sans doute dû au fait que je ne connais pas ce logiciel).

(12 Fév, 09:11) Pathe ♦♦ Pathe's gravatar image
1

pour compiler sur ConTeXt, tu remplaces les lignes 1 à 6 par \starttext \startMPpageet les lignes 19-21 par \stopMPpage \stoptext

(12 Fév, 11:45) sztruks sztruks's gravatar image

@sztruks : malgré tes instructions, ça ne compile pas avec ConTeXt. Tu aurais un ECM complet ?

(12 Fév, 16:40) Pathe ♦♦ Pathe's gravatar image

Au temps pour moi, en adaptant ce qui compilait chez moi à ton EMC j’ai fait une coquille (oublié de rechanger 9u en 9cm) et posé une équation sans doute insoluble (d=floor(d/5)) au lieu d’assigner la valeur. J’ai corrigé mon EMC, il compile chez moi.

(12 Fév, 20:48) sztruks sztruks's gravatar image

@sztruks : merci pour tes efforts, mais ça ne compile toujours pas, que ce soit avec LaTeX (et \documentclass etc.) ou ConTeXt (avec \starttext etc.). Par ailleurs, je crois avoir un problème de PATH qui fait échouer mes tentatives de compilation avec ConTeXt.

(13 Fév, 08:58) Pathe ♦♦ Pathe's gravatar image

@Pathe J’ai encore vérifié, cela compile bien chez moi. Donc c’est bien une question de PATHen ce qui concerne ConTeXt. Quelle version de ConTeXt as-tu installé? Est-ce bien la branche luametatex?

(13 Fév, 21:48) sztruks sztruks's gravatar image
Affichage de 5 parmi 6 Afficher 1 commentaire(s) en plus
Votre réponse
[Masquer l'aperçu]

Suivre cette question

Par courriel :

Une fois que vous serez enregistré, vous pourrez souscrire à n'importe quelle mise à jour ici

Par flux RSS :

Réponses

Réponses et commentaires

Mots-clés de la question :

×8
×1

Question posée : 11 Fév, 22:12

Question vue : 364 fois

Dernière mise à jour : 13 Fév, 21:48

C'est votre première visite ici ? Consultez la FAQ !

×