Skip to content

Latest commit

 

History

History
84 lines (70 loc) · 1.88 KB

scratch-notes.md

File metadata and controls

84 lines (70 loc) · 1.88 KB

TODO

  • [] filter shapes with empty paths

  • [] should we accept the color arrays or just color strings

  • [] add drag n drop component

  • [] add wire direct manipulation

  • [] add color editor widget for board render

  • [] gerber

  • render function

  • change return to function call

  • [] add error messages

  • fix minus bug

  • [] fix text rendering in gram-js

  • [] firefox rendering bug

  • save

  • [] upload

    • kicad module
    • [] js
  • [] share site

  • converter from python to js board

  • improve gram-js docs

  • switch to full javascript parser

  • recompile ast to javascript

  • optimize js parsing and recompilation

  • manipulation handles for other transformations

  • add component menu

  • python scraper for neil's components

  • update skypack dependency or bundle

https://gitlab.cba.mit.edu/classes/865.21/projects/frep-editor/-/blob/main/extras/PCB_py2js.py

  • render as board
  • clean up menu
  • convert whole boards
  • make tutorial
  • draw wire

https://css-tricks.com/converting-color-spaces-in-javascript/

Bugs

  • fix fontBoundingBoxAscent
    • render text with opentype.js
  • anti-aliasing in firefox

Older

  • Should I use multiple strokes in path?
    • M 0 0 L 80 80 M 0 0 L 78 5
  • Booleans on beziers?
  • Convert to polyline (with Turtle) then boolean
  • Just use colors to union
    • easier selections
  • Accept all svgs
    • could have fill conflicts
    • could be useful for screen printing
    • easier selections
  • My own subset
    • may need this for text anyway
    • easier selections
    • eg
      • wire
        • ["wire", pathdata, thickness] -> <path lineJoin lineCap/>
      • circle
      • rectangle
      • path
      • text

{ "imports": { "gram-js": "https://leomcelroy.com/gram-js/exports.js", "code-mirror": "https://leomcelroy.com/widgets/code-mirror.js" } }