L'Air du Bois is a Woodworkers Sharing Platform available at https://www.lairdubois.fr
Documentation is stored under docs
in this repository.
This code is under the GNU AGPLv3 license.
See the list of contributors.
OpenCutList is a SketchUp Extension for automating the generation of cut lists for woodworking projects.
Home Page: https://extensions.sketchup.com/extension/00f0bf69-7a42-4295-9e1c-226080814e3e/opencutlist
License: GNU General Public License v3.0
L'Air du Bois is a Woodworkers Sharing Platform available at https://www.lairdubois.fr
Documentation is stored under docs
in this repository.
This code is under the GNU AGPLv3 license.
See the list of contributors.
In the summary there is a shortcut to edit the material, but when no material is defined on the parts of the summary line, then a JavaScript error shows "Edit material ‘’…".
I have several groups that don't show up in the final list, only components
When importing material from a .skm file into a model which already has a material of the same name, no warning is issued. It silently ignores the import.
Should at least a warning be issued? or should the user be given the choice to replace the existing material.
The latest patch does not completely solve the problem. When maximizing/minimizing the window a few times, it can easily be verified that the windows gets 16 px smaller each time. This is probably due to the fact that on Windows the scrollbar is not overlapping the viewport like on Mac.
Maybe this value could be near the file name.
When generating a parts list, sometimes pieces with different materials get put under the same material although when generating a parts list for a single panel, the material gets picked up correctly. Here is the sample file: https://www.dropbox.com/s/ulg7ir4gop050mk/opencutlist-sample.skp?dl=0
Steps to reproduce the issue:
This is a critical issue, do you have any ideas what could be causing this behaviour?
When trying to export a list of instances with no material, it creates the csv export file but fails to write to it.
Here is the console output:
undefined local variable or method `hide_untyped_material_dimensions' for #<Ladb::OpenCutList::CutlistExportWorker:0x0001cece436ec8>
C:/Data/opencutlist/lairdubois-opencutlist-sketchup-extension/src/ladb_opencutlist/ruby/worker/cutlist/cutlist_export_worker.rb:247:in `block (4 levels) in run'
C:/Data/opencutlist/lairdubois-opencutlist-sketchup-extension/src/ladb_opencutlist/ruby/worker/cutlist/cutlist_export_worker.rb:244:in `each'
C:/Data/opencutlist/lairdubois-opencutlist-sketchup-extension/src/ladb_opencutlist/ruby/worker/cutlist/cutlist_export_worker.rb:244:in `block (3 levels) in run'
C:/Data/opencutlist/lairdubois-opencutlist-sketchup-extension/src/ladb_opencutlist/ruby/worker/cutlist/cutlist_export_worker.rb:241:in `each'
C:/Data/opencutlist/lairdubois-opencutlist-sketchup-extension/src/ladb_opencutlist/ruby/worker/cutlist/cutlist_export_worker.rb:241:in `block (2 levels) in run'
C:/Program Files/SketchUp/SketchUp 2017/Tools/RubyStdLib/csv.rb:1157:in `generate'
C:/Data/opencutlist/lairdubois-opencutlist-sketchup-extension/src/ladb_opencutlist/ruby/worker/cutlist/cutlist_export_worker.rb:80:in `block in run'
C:/Data/opencutlist/lairdubois-opencutlist-sketchup-extension/src/ladb_opencutlist/ruby/worker/cutlist/cutlist_export_worker.rb:79:in `open'
C:/Data/opencutlist/lairdubois-opencutlist-sketchup-extension/src/ladb_opencutlist/ruby/worker/cutlist/cutlist_export_worker.rb:79:in `run'
C:/Data/opencutlist/lairdubois-opencutlist-sketchup-extension/src/ladb_opencutlist/ruby/controller/cutlist_controller.rb:103:in `export_command'
C:/Data/opencutlist/lairdubois-opencutlist-sketchup-extension/src/ladb_opencutlist/ruby/controller/cutlist_controller.rb:24:in `block in setup_commands'
C:/Data/opencutlist/lairdubois-opencutlist-sketchup-extension/src/ladb_opencutlist/ruby/plugin.rb:193:in `call'
C:/Data/opencutlist/lairdubois-opencutlist-sketchup-extension/src/ladb_opencutlist/ruby/plugin.rb:193:in `execute_command'
C:/Data/opencutlist/lairdubois-opencutlist-sketchup-extension/src/ladb_opencutlist/ruby/plugin.rb:424:in `block in create_dialog'
SketchUp:1:in `call'
Thanks again to the creator of this gem. No complaints here, but i´m wondering. In my case volumes never get shown. Does this has to do with MY components or is it not working (when we already have the dimensions, the math should be simple)?
Very useful to order/price wood by volume or calculate the weight for transport. Also a already calculated Total by Material by the extension would be amazing.
best
H.
EDIT: i should add, i´m still using Sketchup 2016 Pro
In gulpfile.js:
.pipe(replace(/VERSION = '[0-9.]+(-alpha)?'/g, "VERSION = '" + version + "'"))
instead of:
.pipe(replace(/VERSION = '[0-9.]+'/g, "VERSION = '" + version + "'"))
otherwise version "1.3.0-alpha" does not get updated in plugin.rb.
Just dowloaded and starting using v. 1.9.3 with sketchup make 2017 on mac el capitain. Excellent extension, thanks for all the hard work. I explored and played around for a few hours and suddenly the generate cutting diagrams function stopped working. Came here and noticed that this was a bug that was fixed earlier this day. I figured out it was because I had adjusted the parameter to stop labelling the pieces by letter. I came here and see that this "bug" was corrected as recently as this morning (3 sept), but I'm here to report that it's still an issue. Once I clicked the choice to name the pieces by letter the functionality of cutting diagrams became operative. Otherwise, it was impossible to generate a cutting diagram. Just so you know! Thanks for the developement of this awesome SU extension!
Thanks for making this extension!
How to make a cutting diagram? I manage to make a part list. But how to go from there?
nevermind, I found out. sorry
When the unused material is selected in the Sketchup material tray, it cannot be deleted from the Materials tab.
I've just updated from 1.9.1 to 1.9.2, and with this new version I can no longer generate the cutting diagram on one of my projects. Something seems to be blocking, because I cannot regenerate de cut list or display the list of materials after trying to generate the cutting diagram.
I've tested to downgrade back to 1.9.1 and it is working again. To be sure I update again to 1.9.2 with the same result.
If there is any way to get some logs to see where it is blocking let me know and I'd be very happy to provide more info.
I've also tested the last plugin with another project and it is working, so it is no systematic.
Hello, j'ai un petit bug sur OSX lorsque je veux enregistrer un .skm :
Par exemple je veux enregistrer le materiau "contreplaqué" du plugin pièce de chez BLB.
Lorsque je crée une nouvelle pièce avec ce matériau et le plugin, les attributs ne sont pas reconnus par OCL.
En revanche, si je crée moi même un composant et que j'y colle la matière, les attributs sont bien reconnus mais le nom de la matière devient "auto" dans OCL
Sous windows, aucun problème, ça fonctionne parfaitement dans tous les sens !
When changing the color of a material and refreshing the Materials tab, the icon is not changing. The thumbnail file in the temp directory ... Temp\ladb_toolbox\material_thumbnails\...
is changed, but only closing the plugin window and reopening will refresh the icon.
Deleting the thumbnail on refresh and recreating it does not fix the problem.
It is essential to identify the pieces we work with.
I use Sketchup's "definition" field to bring clarity to complex designs.
It would be very important that in the cutting diagrams this field appears as it appears in "description" in "Part List".
I would greatly appreciate a chek to show the "definition" field in the diagrams.
Is there a way to hide the "part number" (needed internally) and be able to show "definition" on the cutting maps?
It is the field that really matters in the workshop.
Attached image of cut map that I use, note:
To suggest, it would also be good if the identical cutting diagrams do not repeat them, just indicate the number of identical sheets to be cut.
Thank you for assisting me.
Thank you for all the enhanced work.
In the readme, The information on how to run a script is missing. Somewhere I can see how to set up an environment . Please help me to run this script in my local environment.
If a component name contains a quote (") then the component is not drawn on the diagram, but is listed below the diagram. For example, component name is «Drawer Side 4" x 12"».
Otherwise Opencutlist is a great help to woodworkers! I love it.
At the moment, OpenCutList offers a single theme of colours, where we can add or change the few more colours to the theme?
If user adds a space or otherwise wrongly formats sizes in material attributes, the following or similar error occurs:
Error: #<ArgumentError: Cannot convert "5 mm" to Length> C:/Tmp/lairdubois-toolbox-sketchup-plugin/src/ladb_toolbox/ruby/model/material_attributes.rb:95:in 'to_l'
When a Parts List has been generated, then we import a material from a .skm file, then go back to the properties of a piece in the Parts List, the new material is not available.
Should importing material generate a "change of the Parts List"?
When I enter a color that is not valid like "#f", I get this error
Error: #<ArgumentError: Cannot find color named #f>
C:/Data/opencutlist/lairdubois-opencutlist-sketchup-extension/src/ladb_opencutlist/ruby/controller/materials_controller.rb:246:in color=' C:/Data/opencutlist/lairdubois-opencutlist-sketchup-extension/src/ladb_opencutlist/ruby/controller/materials_controller.rb:246:in
update_command'
C:/Data/opencutlist/lairdubois-opencutlist-sketchup-extension/src/ladb_opencutlist/ruby/controller/materials_controller.rb:25:in block in setup_commands' C:/Data/opencutlist/lairdubois-opencutlist-sketchup-extension/src/ladb_opencutlist/ruby/plugin.rb:194:in
call'
C:/Data/opencutlist/lairdubois-opencutlist-sketchup-extension/src/ladb_opencutlist/ruby/plugin.rb:194:in execute_command' C:/Data/opencutlist/lairdubois-opencutlist-sketchup-extension/src/ladb_opencutlist/ruby/plugin.rb:387:in
block in create_dialog'
SketchUp:1:in `call'
Bonjour,
Une idée peut être impossible à mettre en place serait il possible de modifier des côtes finales dans la fiche de débit ?
(J'ai un doute de t'avoir déjà posé la question, si oui tu m'en vois désolé).
When printing the parts list, the sticky header is placed where it was in the scrolling html view.
I downloaded and installed Sketchup 8 for windows from this website: https://designerhacks.com/get-the-google-sketchup-free-download/
On startup of Sketchup 8 I get a "load errors" messagebox with an OK button.
The text of the error reads:
Error Loading File ladb_opencutlist.rb undefined method `require_relative' for Ladb::OpenCutList:Module
I searched on Google and got no results. Let me know if I missed something.
Since parts are grouped by thickness, does "Sorting by Thickness" increasing/decreasing make sense?
Should the sorting by thickness apply to the groups of the Parts List? Is the sorting always done by "thickness decreasing" for groups?
For projects with dimensional lumber (2x4, 2x6, Konstruktionsvollholz, bois de construction), it would be interesting to know the longest part and the total length of each group. Pricelists of this type of wood is usually given in linear meters or feet.
When sawing a large number of birch multiplex, I noticed that it would be nice to be able to display "width" first. This may help to optimize cuts on panel saws, where horizontal cuts are usually done first (pieces cannot be rotated because of grain direction).
Hi, you have created a brilliant extension and I use it in every one of my woodworking projects. The one feature I would love to see is the ability to laminate boards together to create for example a table top. If I have 4 lengths of 25x114 Saligna at 1.2m and wanted to make a table top, OPencutlist could tell me to cut the material in the lengths required and laminate "#'s" to make up the top. I also use this when building cupboards from solid timber, instead of sheet goods.
again thank you for a brilliant product.
regards
Warren
Trying to save the cutting parameters for my materials, but it doesn't seem to save them.
I change a value, hit apply. But then re-open and everything is back to the defaults.
Love this plugin btw.
When only a horizontal or vertical cut is needed, the parts are ignored by the cutlist. For instance, a sheet of plywood is 48" by 96", and I need 3 parts that are 3" by 96". These parts are not placed in the cutting diagram:
I believe this is because OpenCutList requires all sides to be cut, but I don't think this should be necessary for the outside edge in a lot of cases. Maybe this should be an option when defining the material?
Hi, I really impressed with this extension. I’m working one of woodworking factory in Kuwait, the company uses imosAG software (CAD CAM 3D all in one licensed software) and I’m planning to open my own small woodwork shop in my country. I started to search alternative software in the internet and I found your extension. I would like to see if you can add some feature like the finishes, like for instance I have a board and the core material is MDF or Plywood or Solid wood or Chip board and for the finishes for front and back it would be, Laminate or Veneer or Paint or Formica. Similar what you made for the edges.
Thank you so much for the effort.
Best Regards,
Amado
I started to learn Ruby programming so I can also contribute to your project.
Bonjour,
toujours dans mon projet d'ossature, je me disait qu'il manquait Available Sizes quand on choisi comme type de matériaux Dimensional. En effet, on peut paramétrer les sections disponibles mais pas les longueur.
Du coup j'ai changé mes matériaux en Sheet Good, choisi 45mm Thickness pour l'ossature puis dans Available Sizes la largeur et la longueur des bois d'ossatures vendus par mon fournisseur.
Ca me permet aussi de savoir comment couper pour éviter les chutes et commander exactement ce qu'il me faut.
Est-ce qu'il serait possible de rajouter ces fonctions dans "Dimensional" ?
Merci !
When working with dimensional lumber it would be useful to also get a cut list for those parts. This is because it would tell me how many 2x4's I should buy for example. The total length is not useful since the cuts can produce too much scrap.
Below screenshot might illustrate what I'm after more clearly.
A workaround I've been thinking about is labeling all dimensional lumber as sheet goods, but that seems silly.
This plugin is great, but I would like to see an option to easily add edge banding on right click menu as check boxes or something like that.
Version: 1.9.1 DE ( build: 202007050856 )
When I create the cutting plan there is an unnecessary outer cut on the last pieces towards the bottom and right end of the board. This adds saw blade thickness which leads to pieces not fitting onto the board just because of those missing 2-3 mm.
The summary information is exported correctly from what I can see, but the columns headings are missing the Thickness heading when exported and all other headings are shifted one cell backwards, so the exported file has header "Quantity" on the "Thickness " column, the "Length - raw (m)" is on the "Quantity" and so on to the end.
In the Properties of a part, the "description" can be changed, but not the "instance".
Should a comment in the window indicate that it can only be changed in Sketchup?
In the extension "description" corresponds to "Definition" of Sketchup, may that confuse the user?
when cutting sheet good i may not need to rough cut first... My layouts would be more efficient and accurate if i could turn this off when i dont require it.
Components with double quotes in the name break the Cutting Diagram. For example Drawer 2-7/16" Front
. When the quotes exist, the rendered Cutting Diagram just shows a gray shaded area where the part should should be. Also it adds some bizarre summary dimensions below the rendered diagram (which do not exist when the part has no quotes in the name).
Running npm install
in build
directory outputs
npm WARN deprecated [email protected]: gulp-util is deprecated - replace it, following the guidelines at https://medium.com/gulpjs/gulp-util-ca3b1f9f9ac5
npm ls gulp-util
shows that [email protected]
is the root dependency for this.
A declarative, efficient, and flexible JavaScript library for building user interfaces.
🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.
TypeScript is a superset of JavaScript that compiles to clean JavaScript output.
An Open Source Machine Learning Framework for Everyone
The Web framework for perfectionists with deadlines.
A PHP framework for web artisans
Bring data to life with SVG, Canvas and HTML. 📊📈🎉
JavaScript (JS) is a lightweight interpreted programming language with first-class functions.
Some thing interesting about web. New door for the world.
A server is a program made to process requests and deliver data to clients.
Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.
Some thing interesting about visualization, use data art
Some thing interesting about game, make everyone happy.
We are working to build community through open source technology. NB: members must have two-factor auth.
Open source projects and samples from Microsoft.
Google ❤️ Open Source for everyone.
Alibaba Open Source for everyone
Data-Driven Documents codes.
China tencent open source team.