170 lines
5.2 KiB
Markdown
170 lines
5.2 KiB
Markdown
# LibFile: quotes.scad
|
|
|
|
|
|
To use, add the following lines to the beginning of your file:
|
|
|
|
include <BOSL2/std.scad>;
|
|
include <quotes.scad>;
|
|
|
|
## File Contents
|
|
|
|
- [`quote()`](#module-quote) – Draws a dimension line with optional text labeling the length.
|
|
- [`arrowed_line()`](#module-arrowed_line) – Draws a straight line with arrowheads at both ends.
|
|
- [`ext_line()`](#module-ext_line) – Draws a straight extruded line between two points.
|
|
|
|
|
|
### Module: quote()
|
|
|
|
**Synopsis:** Draws a dimension line with optional text labeling the length.
|
|
|
|
**Topics:** [Dimensioning](Topics#dimensioning), [Annotation](Topics#annotation)
|
|
|
|
**Description:**
|
|
|
|
Creates a labeled dimension line with extension lines and an optional
|
|
length label. The dimension can be customized in terms of placement,
|
|
orientation, text formatting, and appearance.
|
|
|
|
**Arguments:**
|
|
|
|
<abbr title="These args can be used by position or by name.">By Position</abbr> | What it does
|
|
-------------------- | ------------
|
|
`length` | The length of the dimension line.
|
|
`textSize` | Size of the text label [default: 60].
|
|
`offsetFromOrigin` | Distance of the dimension line from the reference [default: textSize].
|
|
`extendBeyondDimLines` | Length beyond the extension lines [default: textSize / 5].
|
|
`textOffset` | Offset of the text from the dimension line [default: textSize / 3].
|
|
`color` | Color of the dimension line and text [default: "Red"].
|
|
`placement` | Position relative to the model (TOP or BOTTOM) [default: TOP].
|
|
`strokeWidth` | Thickness of the lines [default: 1].
|
|
`font` | Font used for text [default: "Saira Stencil One"].
|
|
`orient` | Text orientation (TOP or BOTTOM) [default: TOP].
|
|
`anchor` | Text alignment reference (CENTER, LEFT, RIGHT) [default: CENTER].
|
|
`spin` | Spin.
|
|
|
|
**Example 1:** Simple quote
|
|
|
|
<img align="left" alt="quote() Example 1" src="images/quotes/quote.png" width="320" height="240">
|
|
|
|
include <BOSL2/std.scad>;
|
|
include <quotes.scad>;
|
|
quote(length=100, textSize=50);
|
|
|
|
<br clear="all" /><br/>
|
|
|
|
**Example 2:** Spin -90
|
|
|
|
<img align="left" alt="quote() Example 2" src="images/quotes/quote_2.png" width="320" height="240">
|
|
|
|
include <BOSL2/std.scad>;
|
|
include <quotes.scad>;
|
|
quote(length=100, textSize=50,spin=-90);
|
|
|
|
<br clear="all" /><br/>
|
|
|
|
**Example 3:** Orient FRONT
|
|
|
|
<img align="left" alt="quote() Example 3" src="images/quotes/quote_3.png" width="320" height="240">
|
|
|
|
include <BOSL2/std.scad>;
|
|
include <quotes.scad>;
|
|
quote(length=100, textSize=50,orient=FRONT);
|
|
|
|
<br clear="all" /><br/>
|
|
|
|
**Example 4:** Orient TOP
|
|
|
|
<img align="left" alt="quote() Example 4" src="images/quotes/quote_4.png" width="320" height="240">
|
|
|
|
include <BOSL2/std.scad>;
|
|
include <quotes.scad>;
|
|
quote(length=100, orient=TOP);
|
|
|
|
<br clear="all" /><br/>
|
|
|
|
**Example 5:** offsetFromOrigin 20
|
|
|
|
<img align="left" alt="quote() Example 5" src="images/quotes/quote_5.png" width="320" height="240">
|
|
|
|
include <BOSL2/std.scad>;
|
|
include <quotes.scad>;
|
|
quote(length=100, offsetFromOrigin=20);
|
|
|
|
<br clear="all" /><br/>
|
|
|
|
**Example 6:** extendBeyondDimLines 20
|
|
|
|
<img align="left" alt="quote() Example 6" src="images/quotes/quote_6.png" width="320" height="240">
|
|
|
|
include <BOSL2/std.scad>;
|
|
include <quotes.scad>;
|
|
quote(length=100, extendBeyondDimLines=20);
|
|
|
|
<br clear="all" /><br/>
|
|
|
|
---
|
|
|
|
### Module: arrowed\_line()
|
|
|
|
**Synopsis:** Draws a straight line with arrowheads at both ends.
|
|
|
|
**Topics:** [Geometry](Topics#geometry), [Arrows](Topics#arrows), [Lines](Topics#lines)
|
|
|
|
**Description:**
|
|
|
|
Creates a linear extrusion representing a line with arrowheads at both ends.
|
|
The line thickness, length, and arrow size can be customized.
|
|
|
|
**Arguments:**
|
|
|
|
<abbr title="These args can be used by position or by name.">By Position</abbr> | What it does
|
|
-------------------- | ------------
|
|
`point1` | [x, y] start point of the line.
|
|
`point2` | [x, y] end point of the line.
|
|
`width` | Thickness of the line [default: 0.1].
|
|
`endcap_width` | Width of the arrowhead at each end [default: 15].
|
|
|
|
**Example 1:**
|
|
|
|
<img align="left" alt="arrowed\_line() Example 1" src="images/quotes/arrowed_line.png" width="320" height="240">
|
|
|
|
include <BOSL2/std.scad>;
|
|
include <quotes.scad>;
|
|
arrowed_line([0,0], [50,50], width=0.5, endcap_width=5);
|
|
|
|
<br clear="all" /><br/>
|
|
|
|
---
|
|
|
|
### Module: ext\_line()
|
|
|
|
**Synopsis:** Draws a straight extruded line between two points.
|
|
|
|
**Topics:** [Geometry](Topics#geometry), [Lines](Topics#lines)
|
|
|
|
**Description:**
|
|
|
|
Creates a linear extrusion representing a straight line segment with a
|
|
specified width between two given points.
|
|
|
|
**Arguments:**
|
|
|
|
<abbr title="These args can be used by position or by name.">By Position</abbr> | What it does
|
|
-------------------- | ------------
|
|
`point1` | [x, y] start point of the line.
|
|
`point2` | [x, y] end point of the line.
|
|
`width` | Thickness of the line [default: 0.1].
|
|
|
|
**Example 1:**
|
|
|
|
<img align="left" alt="ext\_line() Example 1" src="images/quotes/ext_line.png" width="320" height="240">
|
|
|
|
include <BOSL2/std.scad>;
|
|
include <quotes.scad>;
|
|
ext_line([0,0], [50,50], width=0.5);
|
|
|
|
<br clear="all" /><br/>
|
|
|
|
---
|
|
|