Change Attachment Tutorial Links

This commit is contained in:
Richard Milewski
2025-06-16 15:13:53 -07:00
parent 270821b78c
commit 868ec70bf7

View File

@@ -534,7 +534,7 @@ module position(at,from)
// PARENT() orient(anchor, [spin]) CHILDREN;
// Description:
// Orients children such that their top is tilted in the direction of the specified parent anchor point.
// For a step-by-step explanation of attachments, see the [Attachments Tutorial](Tutorial-Attachments).
// For a step-by-step explanation of attachments, see the [Attachments Tutorial](Tutorial-Attachment-Basic-Positioning).
// Arguments:
// anchor = The anchor on the parent which you want to match the orientation of.
// spin = The spin to add to the children. (Overrides anchor spin.)
@@ -1085,7 +1085,7 @@ module attach(parent, child, overlap, align, spin=0, norot, inset=0, shiftout=0,
// This works by setting the `$tag` variable, but it provides extra error checking and
// handling of scopes. You may set `$tag` directly yourself, but this is not recommended.
// .
// For a step-by-step explanation of attachments, see the [Attachments Tutorial](Tutorial-Attachments).
// For a step-by-step explanation of attachments, see the [Attachments Tutorial](Tutorial-Attachment-Basic-Positioning).
// Arguments:
// tag = tag string, which must not contain any spaces.
// Side Effects:
@@ -1122,7 +1122,7 @@ module tag(tag)
// Assigns the specified tag to the children at the current level only, with tags reverting to
// the previous tag in force for deeper descendents. This works using `$tag` and `$save_tag`.
// .
// For a step-by-step explanation of attachments, see the [Attachments Tutorial](Tutorial-Attachments).
// For a step-by-step explanation of attachments, see the [Attachments Tutorial](Tutorial-Attachment-Basic-Positioning).
// Arguments:
// tag = tag string, which must not contain any spaces.
// Side Effects:
@@ -1176,7 +1176,7 @@ module tag_this(tag)
// get the correct behavior, every non-attachable module needs an invocation of force_tag, even ones
// that are not tagged.
// .
// For a step-by-step explanation of attachments, see the [Attachments Tutorial](Tutorial-Attachments).
// For a step-by-step explanation of attachments, see the [Attachments Tutorial](Tutorial-Attachment-Basic Positioning).
// Arguments:
// tag = tag string, which must not contain any spaces
// Side Effects:
@@ -1223,7 +1223,7 @@ module force_tag(tag)
// specified tag from a parent, which can be very confusing to a user trying to change the tag on a module.
// The `do_tag` parameter allows you to apply a default tag conditionally without having to repeat the children.
// .
// For a step-by-step explanation of attachments, see the [Attachments Tutorial](Tutorial-Attachments).
// For a step-by-step explanation of attachments, see the [Attachments Tutorial](Tutorial-Attachment-Basic-Positioning).
// Arguments:
// tag = tag string, which must not contain any spaces.
// do_tag = if false do not set the tag.
@@ -1378,7 +1378,7 @@ module tag_scope(scope){
// .
// Note that `diff()` invokes its children three times.
// .
// For a step-by-step explanation of attachments, see the [Attachments Tutorial](Tutorial-Attachments).
// For a step-by-step explanation of attachments, see the [Attachments Tutorial](Tutorial-Attachment-Basic-Positioning).
// Arguments:
// remove = String containing space delimited set of tag names of children to difference away. Default: `"remove"`
// keep = String containing space delimited set of tag names of children to keep; that is, to union into the model after differencing is completed. Default: `"keep"`
@@ -1554,7 +1554,7 @@ module diff(remove="remove", keep="keep")
// but if you have kept objects and want to operate on this difference object as a whole object using
// more tag operations, you will probably not get the results you want if you simply use {{tag()}}.
// .
// For a step-by-step explanation of attachments, see the [Attachments Tutorial](Tutorial-Attachments).
// For a step-by-step explanation of attachments, see the [Attachments Tutorial](Tutorial-Attachment-Basic-Positioning).
// Arguments:
// tag = Tag string to apply to this difference object. Default: `""` (no tag)
// remove = String containing space delimited set of tag names of children to difference away. Default: `"remove"`
@@ -1634,7 +1634,7 @@ module tag_diff(tag="",remove="remove", keep="keep")
// .
// Note that `intersect()` invokes its children three times.
// .
// For a step-by-step explanation of attachments, see the [Attachments Tutorial](Tutorial-Attachments).
// For a step-by-step explanation of attachments, see the [Attachments Tutorial](Tutorial-Attachment-Basic-Positioning).
// Arguments:
// intersect = String containing space delimited set of tag names of children to intersect. Default: "intersect"
// keep = String containing space delimited set of tag names of children to keep whole. Default: "keep"
@@ -1697,7 +1697,7 @@ module intersect(intersect="intersect",keep="keep")
// but if you have kept objects and want to operate on this difference object as a whole object using
// more tag operations, you will probably not get the results you want if you simply use {{tag()}}.
// .
// For a step-by-step explanation of attachments, see the [Attachments Tutorial](Tutorial-Attachments).
// For a step-by-step explanation of attachments, see the [Attachments Tutorial](Tutorial-Attachment-Basic-Positioning).
// Arguments:
// tag = Tag to set for the intersection. Default: `""` (no tag)
// intersect = String containing space delimited set of tag names of children to intersect. Default: "intersect"
@@ -1753,7 +1753,7 @@ module tag_intersect(tag="",intersect="intersect",keep="keep")
// .
// Note that `conv_hull()` invokes its children twice.
// .
// For a step-by-step explanation of attachments, see the [Attachments Tutorial](Tutorial-Attachments).
// For a step-by-step explanation of attachments, see the [Attachments Tutorial](Tutorial-Attachment-Basic-Positioning).
// Arguments:
// keep = String containing space delimited set of tag names of children to keep out of the hull. Default: "keep"
// Example:
@@ -1792,7 +1792,7 @@ module conv_hull(keep="keep")
// but if you have kept objects and want to operate on the hull object as a whole object using
// more tag operations, you will probably not get the results you want if you simply use {{tag()}}.
// .
// For a step-by-step explanation of attachments, see the [Attachments Tutorial](Tutorial-Attachments).
// For a step-by-step explanation of attachments, see the [Attachments Tutorial](Tutorial-Attachment-Basic-Positioning).
// Arguments:
// tag = Tag string to apply to this convex hull object. Default: `""` (no tag)
// keep = String containing space delimited set of tag names of children to keep out of the hull. Default: "keep"
@@ -1839,7 +1839,7 @@ module tag_conv_hull(tag="",keep="keep")
// hide(tags) CHILDREN;
// Description:
// Hides all attachable children with the given tags, which you supply as a space separated string. Previously hidden objects remain hidden, so hiding is cumulative, unlike `show_only()`.
// For a step-by-step explanation of attachments, see the [Attachments Tutorial](Tutorial-Attachments).
// For a step-by-step explanation of attachments, see the [Attachments Tutorial](Tutorial-Attachment-Basic-Positioning).
// Side Effects:
// Sets `$tags_hidden` to include the tags you specify.
// Example: Hides part of the model.
@@ -1874,7 +1874,7 @@ module hide(tags)
// hide_this() CHILDREN;
// Description:
// Hides all attachable children at the current level, while still displaying descendants.
// For a step-by-step explanation of attachments, see the [Attachments Tutorial](Tutorial-Attachments).
// For a step-by-step explanation of attachments, see the [Attachments Tutorial](Tutorial-Attachment-Basic-Positioning).
// Side Effects:
// Sets `$tag` and `$save_tag`
// Example: Use an invisible parent to position children. Unlike with {{hide()}} we do not need to explicitly use any tags.
@@ -1907,7 +1907,7 @@ module hide_this()
// show_only(tags) CHILDREN;
// Description:
// Show only the children with the listed tags, which you supply as a space separated string. Only unhidden objects will be shown, so if an object is hidden either before or after the `show_only()` call then it will remain hidden. This overrides any previous `show_only()` calls. Unlike `hide()`, calls to `show_only()` are not cumulative.
// For a step-by-step explanation of attachments, see the [Attachments Tutorial](Tutorial-Attachments).
// For a step-by-step explanation of attachments, see the [Attachments Tutorial](Tutorial-Attachment-Basic-Positioning).
// Side Effects:
// Sets `$tags_shown` to the tag you specify.
// Example: Display the attachments but not the parent
@@ -1986,7 +1986,7 @@ module show_int(tags)
// (Z-) shaped to be diffed away from the face of parent attachable shape. If no tag is set then
// `face_mask()` sets the tag for children to "remove" so that it will work with the default {{diff()}} tag.
// For details on specifying the faces to mask see [Specifying Faces](attachments.scad#subsection-specifying-faces).
// For a step-by-step explanation of attachments, see the [Attachments Tutorial](Tutorial-Attachments).
// For a step-by-step explanation of attachments, see the [Attachments Tutorial](Tutorial-Attachment-Basic-Positioning).
// Arguments:
// edges = Faces to mask. See [Specifying Faces](attachments.scad#subsection-specifying-faces) for information on specifying faces. Default: All faces
// Side Effects:
@@ -2029,7 +2029,7 @@ module face_mask(faces=[LEFT,RIGHT,FRONT,BACK,BOT,TOP]) {
// quadrant (X+Y+) shaped to be diffed away from the edge of parent attachable shape. If no tag is set
// then `edge_mask` sets the tag for children to "remove" so that it will work with the default {{diff()}} tag.
// For details on specifying the edges to mask see [Specifying Edges](attachments.scad#subsection-specifying-edges).
// For a step-by-step explanation of attachments, see the [Attachments Tutorial](Tutorial-Attachments).
// For a step-by-step explanation of attachments, see the [Attachments Tutorial](Tutorial-Attachment-Basic-Positioning).
// Figure: A Typical Edge Rounding Mask
// module roundit(l,r) difference() {
// translate([-1,-1,-l/2])
@@ -2092,7 +2092,7 @@ module edge_mask(edges=EDGES_ALL, except=[]) {
// be differenced away. The 3D corner mask shape should be designed to mask away the X+Y+Z+ octant. If no tag is set
// then `corner_mask` sets the tag for children to "remove" so that it will work with the default {{diff()}} tag.
// See [Specifying Corners](attachments.scad#subsection-specifying-corners) for information on how to specify corner sets.
// For a step-by-step explanation of attachments, see the [Attachments Tutorial](Tutorial-Attachments).
// For a step-by-step explanation of attachments, see the [Attachments Tutorial](Tutorial-Attachment-Basic-Positioning).
// Arguments:
// corners = Corners to mask. See [Specifying Corners](attachments.scad#subsection-specifying-corners). Default: All corners.
// except = Corners to explicitly NOT mask. See [Specifying Corners](attachments.scad#subsection-specifying-corners). Default: No corners.
@@ -2140,7 +2140,7 @@ module corner_mask(corners=CORNERS_ALL, except=[]) {
// Given a 2D edge profile, extrudes it into a mask for all edges and corners bounding each given face. If no tag is set
// then `face_profile` sets the tag for children to "remove" so that it will work with the default {{diff()}} tag.
// See [Specifying Faces](attachments.scad#subsection-specifying-faces) for information on specifying faces.
// For a step-by-step explanation of attachments, see the [Attachments Tutorial](Tutorial-Attachments).
// For a step-by-step explanation of attachments, see the [Attachments Tutorial](Tutorial-Attachment-Basic-Positioning).
// Arguments:
// faces = Faces to mask edges and corners of.
// r = Radius of corner mask.
@@ -2277,7 +2277,7 @@ module edge_profile(edges=EDGES_ALL, except=[], excess=0.01, convexity=10) {
// orientation and extruded length to be `diff()`ed away, to give the edges and corners a matching profile.
// If no tag is set then `edge_profile_asym()` sets the tag for children to "remove" so that it will work
// with the default {{diff()}} tag. For details on specifying the edges to mask see [Specifying Edges](attachments.scad#subsection-specifying-edges).
// For a step-by-step explanation of attachments, see the [Attachments Tutorial](Tutorial-Attachments).
// For a step-by-step explanation of attachments, see the [Attachments Tutorial](Tutorial-Attachment-Basic-Positioning).
// .
// The asymmetric profiles are joined consistently at the corners. This is impossible if all three edges at a corner use the profile, hence
// this situation is not permitted. The profile orientation can be inverted using the `flip=true` parameter.
@@ -2629,7 +2629,7 @@ module edge_profile_asym(
// to the selected corners with the appropriate orientation. If no tag is set then `corner_profile()`
// sets the tag for children to "remove" so that it will work with the default {{diff()}} tag.
// See [Specifying Corners](attachments.scad#subsection-specifying-corners) for information on how to specify corner sets.
// For a step-by-step explanation of attachments, see the [Attachments Tutorial](Tutorial-Attachments).
// For a step-by-step explanation of attachments, see the [Attachments Tutorial](Tutorial-Attachment-Basic-Positioning).
// Arguments:
// corners = Corners to mask. See [Specifying Corners](attachments.scad#subsection-specifying-corners). Default: All corners.
// except = Corners to explicitly NOT mask. See [Specifying Corners](attachments.scad#subsection-specifying-corners). Default: No corners.
@@ -2772,7 +2772,7 @@ module corner_profile(corners=CORNERS_ALL, except=[], r, d, convexity=10) {
// Note that anchors created by attachable() are generally intended for use by the user-supplied children of the attachable object, but they
// are available internally and can be used in the object's definition.
// .
// For a step-by-step explanation of attachments, see the [Attachments Tutorial](Tutorial-Attachments).
// For a step-by-step explanation of attachments, see the [Attachments Tutorial](Tutorial-Attachment-Basic-Positioning).
//
// Arguments:
// anchor = Translate so anchor point is at origin (0,0,0). See [anchor](attachments.scad#subsection-anchor). Default: `CENTER`
@@ -3212,7 +3212,7 @@ module _show_ghost()
// * Rotates this part so its anchor direction vector exactly opposes the parent's anchor direction vector.
// * Rotates this part so its anchor spin matches the parent's anchor spin.
// .
// For a step-by-step explanation of attachments, see the [Attachments Tutorial](Tutorial-Attachments).
// For a step-by-step explanation of attachments, see the [Attachments Tutorial](Tutorial-Attachment-Basic-Positioning).
//
// Arguments:
// anchor = Translate so anchor point is at origin (0,0,0). See [anchor](attachments.scad#subsection-anchor). Default: `CENTER`