No Description

Kevin Lee 0bc7c5487c Add validation 1 year ago
samples 251e02a8b6 Initial config work 1 year ago
src 0bc7c5487c Add validation 1 year ago
tests 3af62100c5 Point/line/curve work 1 year ago
.gitignore 86b86d25ec Init 1 year ago
Cargo.lock 251e02a8b6 Initial config work 1 year ago
Cargo.toml 251e02a8b6 Initial config work 1 year ago
README.md 983524bf67 Update readme 1 year ago
config.yml 0bc7c5487c Add validation 1 year ago
imhex.txt 5ab81b24b7 More cleanup 1 year ago

README.md

EzCAD Patcher

This tool parses and patches EZCAD files with values specified in a YAML config file.

Usage

Usage: ezcad_patcher.exe [OPTIONS] --input <INPUT>

Options:
  -i, --input <INPUT>    Input file to parse
  -o, --output <OUTPUT>  Output file to write to
  -c, --config <CONFIG>  Configuration file
  -v, --verbose...       Increase logging verbosity
  -q, --quiet...         Decrease logging verbosity
  -h, --help             Print help

Patching Pen Settings

Three operations are supported for patching pen settings:

  1. Setting values of specific fields for a given pen:
Pens: 
  - !Patch
    Pen: 0                  # Required - target pen
    Color: [127, 127, 127]  # Optional - target pen RGB color
    Enabled: true           # Optional - target pen enable flag
    LoopCount: 3            # Optional - target pen loop count
    Speed: 1.234            # Optional - target pen speed
    Power: 10.5             # Optional - target pen power 
    Frequency: 10000        # Optional - target pen frequency
  1. Cloning one pen to another (and optionally override settings):
Pens: 
  - !Clone
    From: 0                 # Required - source pen
    To: 1                   # Required - target pen
    # Color: [64, 64, 64]   # Optional - target pen RGB color
    # Enabled: true         # Optional - target pen enable flag
    # LoopCount: 3          # Optional - target pen loop count
    # Speed: 1.234          # Optional - target pen speed
    # Power: 10.5           # Optional - target pen power 
    # Frequency: 10000      # Optional - target pen frequency
  1. Incrementing a specific field across a sequence of pens:
Pens: 
  - !Pattern
    From: 1                 # Required - starting pen to copy settings from
    To: 5                   # Required - ending pen to stop at (inclusive)
    # Field: !Loops 1         # Choose one
    # Field: !Speed 100.0     # Choose one
    # Field: !Power 10.0      # Choose one
    # Field: !Frequency 1000  # Choose one

Patching operations will be applied in the order that they are defined.