├── .github └── workflows │ └── rspec.yml ├── .gitignore ├── .rspec ├── .travis.yml ├── CONTRIBUTING.md ├── Gemfile ├── LICENSE ├── LICENSE.txt ├── README.md ├── Rakefile ├── bin └── laser-cutter ├── codecov.yml ├── doc └── comparison.jpg ├── laser-cutter.gemspec ├── lib ├── laser-cutter.rb └── laser-cutter │ ├── aggregator.rb │ ├── box.rb │ ├── cli │ ├── opt_parser.rb │ └── serializer.rb │ ├── configuration.rb │ ├── geometry.rb │ ├── geometry │ ├── dimensions.rb │ ├── point.rb │ ├── shape.rb │ ├── shape │ │ ├── line.rb │ │ └── rect.rb │ └── tuple.rb │ ├── notching.rb │ ├── notching │ ├── base.rb │ ├── edge.rb │ └── path_generator.rb │ ├── page_manager.rb │ ├── renderer.rb │ ├── renderer │ ├── base.rb │ ├── box_renderer.rb │ ├── layout_renderer.rb │ ├── line_renderer.rb │ ├── meta_renderer.rb │ └── rect_renderer.rb │ └── version.rb └── spec ├── lib ├── aggregator_spec.rb ├── box_spec.rb ├── configuration_spec.rb ├── dimensions_spec.rb ├── edge_spec.rb ├── line_spec.rb ├── page_manager_spec.rb ├── path_generator_spec.rb ├── point_spec.rb ├── rect_spec.rb └── renderer_spec.rb └── spec_helper.rb /.github/workflows/rspec.yml: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/kigster/laser-cutter/HEAD/.github/workflows/rspec.yml -------------------------------------------------------------------------------- /.gitignore: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/kigster/laser-cutter/HEAD/.gitignore -------------------------------------------------------------------------------- /.rspec: -------------------------------------------------------------------------------- 1 | --color 2 | --format progress 3 | -------------------------------------------------------------------------------- /.travis.yml: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/kigster/laser-cutter/HEAD/.travis.yml -------------------------------------------------------------------------------- /CONTRIBUTING.md: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/kigster/laser-cutter/HEAD/CONTRIBUTING.md -------------------------------------------------------------------------------- /Gemfile: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/kigster/laser-cutter/HEAD/Gemfile -------------------------------------------------------------------------------- /LICENSE: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/kigster/laser-cutter/HEAD/LICENSE -------------------------------------------------------------------------------- /LICENSE.txt: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/kigster/laser-cutter/HEAD/LICENSE.txt -------------------------------------------------------------------------------- /README.md: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/kigster/laser-cutter/HEAD/README.md -------------------------------------------------------------------------------- /Rakefile: -------------------------------------------------------------------------------- 1 | require "bundler/gem_tasks" 2 | 3 | -------------------------------------------------------------------------------- /bin/laser-cutter: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/kigster/laser-cutter/HEAD/bin/laser-cutter -------------------------------------------------------------------------------- /codecov.yml: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/kigster/laser-cutter/HEAD/codecov.yml -------------------------------------------------------------------------------- /doc/comparison.jpg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/kigster/laser-cutter/HEAD/doc/comparison.jpg -------------------------------------------------------------------------------- /laser-cutter.gemspec: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/kigster/laser-cutter/HEAD/laser-cutter.gemspec -------------------------------------------------------------------------------- /lib/laser-cutter.rb: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/kigster/laser-cutter/HEAD/lib/laser-cutter.rb -------------------------------------------------------------------------------- /lib/laser-cutter/aggregator.rb: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/kigster/laser-cutter/HEAD/lib/laser-cutter/aggregator.rb -------------------------------------------------------------------------------- /lib/laser-cutter/box.rb: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/kigster/laser-cutter/HEAD/lib/laser-cutter/box.rb -------------------------------------------------------------------------------- /lib/laser-cutter/cli/opt_parser.rb: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/kigster/laser-cutter/HEAD/lib/laser-cutter/cli/opt_parser.rb -------------------------------------------------------------------------------- /lib/laser-cutter/cli/serializer.rb: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/kigster/laser-cutter/HEAD/lib/laser-cutter/cli/serializer.rb -------------------------------------------------------------------------------- /lib/laser-cutter/configuration.rb: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/kigster/laser-cutter/HEAD/lib/laser-cutter/configuration.rb -------------------------------------------------------------------------------- /lib/laser-cutter/geometry.rb: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/kigster/laser-cutter/HEAD/lib/laser-cutter/geometry.rb -------------------------------------------------------------------------------- /lib/laser-cutter/geometry/dimensions.rb: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/kigster/laser-cutter/HEAD/lib/laser-cutter/geometry/dimensions.rb -------------------------------------------------------------------------------- /lib/laser-cutter/geometry/point.rb: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/kigster/laser-cutter/HEAD/lib/laser-cutter/geometry/point.rb -------------------------------------------------------------------------------- /lib/laser-cutter/geometry/shape.rb: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/kigster/laser-cutter/HEAD/lib/laser-cutter/geometry/shape.rb -------------------------------------------------------------------------------- /lib/laser-cutter/geometry/shape/line.rb: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/kigster/laser-cutter/HEAD/lib/laser-cutter/geometry/shape/line.rb -------------------------------------------------------------------------------- /lib/laser-cutter/geometry/shape/rect.rb: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/kigster/laser-cutter/HEAD/lib/laser-cutter/geometry/shape/rect.rb -------------------------------------------------------------------------------- /lib/laser-cutter/geometry/tuple.rb: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/kigster/laser-cutter/HEAD/lib/laser-cutter/geometry/tuple.rb -------------------------------------------------------------------------------- /lib/laser-cutter/notching.rb: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/kigster/laser-cutter/HEAD/lib/laser-cutter/notching.rb -------------------------------------------------------------------------------- /lib/laser-cutter/notching/base.rb: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/kigster/laser-cutter/HEAD/lib/laser-cutter/notching/base.rb -------------------------------------------------------------------------------- /lib/laser-cutter/notching/edge.rb: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/kigster/laser-cutter/HEAD/lib/laser-cutter/notching/edge.rb -------------------------------------------------------------------------------- /lib/laser-cutter/notching/path_generator.rb: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/kigster/laser-cutter/HEAD/lib/laser-cutter/notching/path_generator.rb -------------------------------------------------------------------------------- /lib/laser-cutter/page_manager.rb: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/kigster/laser-cutter/HEAD/lib/laser-cutter/page_manager.rb -------------------------------------------------------------------------------- /lib/laser-cutter/renderer.rb: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/kigster/laser-cutter/HEAD/lib/laser-cutter/renderer.rb -------------------------------------------------------------------------------- /lib/laser-cutter/renderer/base.rb: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/kigster/laser-cutter/HEAD/lib/laser-cutter/renderer/base.rb -------------------------------------------------------------------------------- /lib/laser-cutter/renderer/box_renderer.rb: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/kigster/laser-cutter/HEAD/lib/laser-cutter/renderer/box_renderer.rb -------------------------------------------------------------------------------- /lib/laser-cutter/renderer/layout_renderer.rb: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/kigster/laser-cutter/HEAD/lib/laser-cutter/renderer/layout_renderer.rb -------------------------------------------------------------------------------- /lib/laser-cutter/renderer/line_renderer.rb: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/kigster/laser-cutter/HEAD/lib/laser-cutter/renderer/line_renderer.rb -------------------------------------------------------------------------------- /lib/laser-cutter/renderer/meta_renderer.rb: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/kigster/laser-cutter/HEAD/lib/laser-cutter/renderer/meta_renderer.rb -------------------------------------------------------------------------------- /lib/laser-cutter/renderer/rect_renderer.rb: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/kigster/laser-cutter/HEAD/lib/laser-cutter/renderer/rect_renderer.rb -------------------------------------------------------------------------------- /lib/laser-cutter/version.rb: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/kigster/laser-cutter/HEAD/lib/laser-cutter/version.rb -------------------------------------------------------------------------------- /spec/lib/aggregator_spec.rb: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/kigster/laser-cutter/HEAD/spec/lib/aggregator_spec.rb -------------------------------------------------------------------------------- /spec/lib/box_spec.rb: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/kigster/laser-cutter/HEAD/spec/lib/box_spec.rb -------------------------------------------------------------------------------- /spec/lib/configuration_spec.rb: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/kigster/laser-cutter/HEAD/spec/lib/configuration_spec.rb -------------------------------------------------------------------------------- /spec/lib/dimensions_spec.rb: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/kigster/laser-cutter/HEAD/spec/lib/dimensions_spec.rb -------------------------------------------------------------------------------- /spec/lib/edge_spec.rb: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/kigster/laser-cutter/HEAD/spec/lib/edge_spec.rb -------------------------------------------------------------------------------- /spec/lib/line_spec.rb: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/kigster/laser-cutter/HEAD/spec/lib/line_spec.rb -------------------------------------------------------------------------------- /spec/lib/page_manager_spec.rb: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/kigster/laser-cutter/HEAD/spec/lib/page_manager_spec.rb -------------------------------------------------------------------------------- /spec/lib/path_generator_spec.rb: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/kigster/laser-cutter/HEAD/spec/lib/path_generator_spec.rb -------------------------------------------------------------------------------- /spec/lib/point_spec.rb: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/kigster/laser-cutter/HEAD/spec/lib/point_spec.rb -------------------------------------------------------------------------------- /spec/lib/rect_spec.rb: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/kigster/laser-cutter/HEAD/spec/lib/rect_spec.rb -------------------------------------------------------------------------------- /spec/lib/renderer_spec.rb: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/kigster/laser-cutter/HEAD/spec/lib/renderer_spec.rb -------------------------------------------------------------------------------- /spec/spec_helper.rb: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/kigster/laser-cutter/HEAD/spec/spec_helper.rb --------------------------------------------------------------------------------