|
1 |
| -@{ |
2 |
| -# Script module or binary module file associated with this manifest. |
3 |
| -RootModule = 'Turtle.psm1' |
4 |
| -# Version number of this module. |
5 |
| -ModuleVersion = '0.1' |
6 |
| -# ID used to uniquely identify this module |
7 |
| -GUID = '80a19066-8558-4a56-a279-88464ef47ac8' |
8 |
| -# Author of this module |
9 |
| -Author = 'JamesBrundage' |
10 |
| -# Company or vendor of this module |
11 |
| -CompanyName = 'Start-Automating' |
12 |
| -# Copyright statement for this module |
13 |
| -Copyright = '2025 Start-Automating' |
14 |
| -# Type files (.ps1xml) to be loaded when importing this module |
15 |
| -TypesToProcess = @('Turtle.types.ps1xml') |
16 |
| -# Format files (.ps1xml) to be loaded when importing this module |
17 |
| -# FormatsToProcess = @() |
18 |
| -# Functions to export from this module, for best performance, do not use wildcards and do not delete the entry, use an empty array if there are no functions to export. |
19 |
| -FunctionsToExport = '*' |
20 |
| -# Cmdlets to export from this module, for best performance, do not use wildcards and do not delete the entry, use an empty array if there are no cmdlets to export. |
21 |
| -CmdletsToExport = '*' |
22 |
| -# Variables to export from this module |
23 |
| -VariablesToExport = '*' |
24 |
| -# Aliases to export from this module, for best performance, do not use wildcards and do not delete the entry, use an empty array if there are no aliases to export. |
25 |
| -AliasesToExport = '*' |
26 |
| -# Private data to pass to the module specified in RootModule/ModuleToProcess. This may also contain a PSData hashtable with additional module metadata used by PowerShell. |
27 |
| -PrivateData = @{ |
28 |
| - PSData = @{ |
29 |
| - # Tags applied to this module. These help with module discovery in online galleries. |
30 |
| - Tags = 'PowerShell', 'Turtle', 'SVG', 'Graphics', 'Drawing', 'L-System', 'Fractal' |
31 |
| - # A URL to the main website for this project. |
32 |
| - ProjectURI = 'https://github.com/PowerShellWeb/Turtle' |
33 |
| - # A URL to the license for this module. |
34 |
| - LicenseURI = 'https://github.com/PowerShellWeb/Turtle/blob/main/LICENSE' |
35 |
| - } |
36 |
| -} |
| 1 | +@{ |
| 2 | + # Version number of this module. |
| 3 | + ModuleVersion = '0.1' |
| 4 | + # Description of the module |
| 5 | + Description = "Turtles in a PowerShell" |
| 6 | + # Script module or binary module file associated with this manifest. |
| 7 | + RootModule = 'Turtle.psm1' |
| 8 | + # ID used to uniquely identify this module |
| 9 | + GUID = '71b29fe9-fc00-4531-82ca-db5d2630d72c' |
| 10 | + # Author of this module |
| 11 | + Author = 'James Brundage' |
| 12 | + |
| 13 | + # Company or vendor of this module |
| 14 | + CompanyName = 'Start-Automating' |
| 15 | + # Copyright statement for this module |
| 16 | + Copyright = '2025 Start-Automating' |
| 17 | + # Type files (.ps1xml) to be loaded when importing this module |
| 18 | + TypesToProcess = @('Turtle.types.ps1xml') |
| 19 | + # Format files (.ps1xml) to be loaded when importing this module |
| 20 | + # FormatsToProcess = @() |
| 21 | + # Functions to export from this module, for best performance, do not use wildcards and do not delete the entry, use an empty array if there are no functions to export. |
| 22 | + VariablesToExport = '*' |
| 23 | + AliasesToExport = '*' |
| 24 | + PrivateData = @{ |
| 25 | + PSData = @{ |
| 26 | + # Tags applied to this module. These help with module discovery in online galleries. |
| 27 | + Tags = 'PowerShell', 'Turtle', 'SVG', 'Graphics', 'Drawing', 'L-System', 'Fractal' |
| 28 | + # A URL to the main website for this project. |
| 29 | + ProjectURI = 'https://github.com/PowerShellWeb/Turtle' |
| 30 | + # A URL to the license for this module. |
| 31 | + LicenseURI = 'https://github.com/PowerShellWeb/Turtle/blob/main/LICENSE' |
| 32 | + ReleaseNotes = @' |
| 33 | +## Turtle 0.1: |
| 34 | +
|
| 35 | +* Initial Release |
| 36 | +* Builds a Turtle Graphics engine in PowerShell |
| 37 | +* Core commands |
| 38 | + * `Get-Turtle` (alias `turtle`) runs multiple moves |
| 39 | + * `New-Turtle` create a turtle |
| 40 | + * `Move-Turtle` performas a single move |
| 41 | + * `Set-Turtle` changes a turtle |
| 42 | + * `Save-Turtle` saves a turtle |
37 | 43 |
|
38 |
| -# HelpInfo URI of this module |
39 |
| -# HelpInfoURI = '' |
| 44 | +~~~PowerShell |
| 45 | +turtle Forward 10 Rotate 120 Forward 10 Roate 120 Forward 10 Rotate 120 | |
| 46 | + Set-Turtle Stroke '#4488ff' | |
| 47 | + Save-Turtle ./Triangle.svg |
| 48 | +~~~ |
| 49 | +
|
| 50 | +* Core Object |
| 51 | + * `.Heading` controls the turtle heading |
| 52 | + * `.Steps` stores a list of moves as an SVG path |
| 53 | + * `.IsPenDown` controls the pen |
| 54 | + * `.Forward()` moves forward at heading |
| 55 | + * `.Rotate()` rotates the heading |
| 56 | + * `.Square()` draws a square |
| 57 | + * `.Polygon()` draws a polygon |
| 58 | + * `.Circle()` draws a circle (or partial circle) |
| 59 | +* LSystems |
| 60 | + * Turtle can draw a L system. Several are included: |
| 61 | + * `BoxFractal` |
| 62 | + * `GosperCurve` |
| 63 | + * `HilbertCurve` |
| 64 | + * `KochCurve` |
| 65 | + * `KochIsland` |
| 66 | + * `KochSnowflake` |
| 67 | + * `MooreCurve` |
| 68 | + * `PeanoCurve` |
| 69 | + * `SierpinskiTriangle` |
| 70 | + * `SierpinskiCurve` |
| 71 | + * `SierpinskiSquareCurve` |
| 72 | + * `SierpinskiArrowheadCurve` |
| 73 | + * `TerdragonCurve` |
| 74 | + * `TwinDragonCurve` |
| 75 | + |
| 76 | +~~~PowerShell |
| 77 | +turtle SierpinskiTriangle 10 4 | |
| 78 | + Set-Turtle Stroke '#4488ff' | |
| 79 | + Save-Turtle ./SierpinskiTriangle.svg |
| 80 | +~~~ |
| 81 | +
|
| 82 | +'@ |
| 83 | + } |
| 84 | + } |
40 | 85 |
|
41 |
| -# Default prefix for commands exported from this module. Override the default prefix using Import-Module -Prefix. |
42 |
| -# DefaultCommandPrefix = '' |
| 86 | + # HelpInfo URI of this module |
| 87 | + # HelpInfoURI = '' |
43 | 88 |
|
| 89 | + # Default prefix for commands exported from this module. Override the default prefix using Import-Module -Prefix. |
| 90 | + # DefaultCommandPrefix = '' |
44 | 91 | }
|
45 | 92 |
|
0 commit comments