Code Monkey home page Code Monkey logo

fusion360-exportcutlist's People

Contributors

bluekeyes avatar lucaschilders avatar sposnjak avatar

Stargazers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

Watchers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

fusion360-exportcutlist's Issues

Export Error

received the following stack trace when trying to export to Cutlist Evo format:

Failed:
Traceback (most recent call last):
  File "/Users/mike/Downloads/Fusion360-ExportCutlist-0.5.1/ExportCutlist.py", line 44, in wrapper
    return func(*args, **kwargs)
           ^^^^^^^^^^^^^^^^^^^^^
  File "/Users/mike/Downloads/Fusion360-ExportCutlist-0.5.1/ExportCutlist.py", line 281, in notify
    cutlist.add(selectionInput.selection(i).entity)
  File "/Users/mike/Downloads/Fusion360-ExportCutlist-0.5.1/ExportCutlist.py", line 151, in add
    self.add(child, self._joinname(name, obj.component.name))
  File "/Users/mike/Downloads/Fusion360-ExportCutlist-0.5.1/ExportCutlist.py", line 151, in add
    self.add(child, self._joinname(name, obj.component.name))
  File "/Users/mike/Downloads/Fusion360-ExportCutlist-0.5.1/ExportCutlist.py", line 149, in add
    self.add_body(body, self._joinname(name, obj.component.name, body.name))
  File "/Users/mike/Downloads/Fusion360-ExportCutlist-0.5.1/ExportCutlist.py", line 128, in add_body
    minimal_body = get_minimal_body(body)
                   ^^^^^^^^^^^^^^^^^^^^^^
  File "/Users/mike/Downloads/Fusion360-ExportCutlist-0.5.1/lib/geometry/bodies.py", line 45, in get_minimal_body
    transform.setToAlignCoordinateSystems(origin, orientation, cross_orientation, normal, origin, target_x, target_y, target_z)
  File "/Users/mike/Library/Application Support/Autodesk/webdeploy/production/d1fe173da69e6a3d046df6e4dd1bd5a29091fcf5/Autodesk Fusion 360.app/Contents/Api/Python/packages/adsk/core.py", line 13030, in setToAlignCoordinateSystems
    return _core.Matrix3D_setToAlignCoordinateSystems(self, fromOrigin, fromXAxis, fromYAxis, fromZAxis, toOrigin, toXAxis, toYAxis, toZAxis)
           ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
RuntimeError: 3 : invalid argument fromXAxis

I got the same or similar error when trying to export to Cutlist Optimizer format:

Failed:
Traceback (most recent call last):
  File "/Users/mike/Downloads/Fusion360-ExportCutlist-0.5.1/ExportCutlist.py", line 44, in wrapper
    return func(*args, **kwargs)
           ^^^^^^^^^^^^^^^^^^^^^
  File "/Users/mike/Downloads/Fusion360-ExportCutlist-0.5.1/ExportCutlist.py", line 281, in notify
    cutlist.add(selectionInput.selection(i).entity)
  File "/Users/mike/Downloads/Fusion360-ExportCutlist-0.5.1/ExportCutlist.py", line 151, in add
    self.add(child, self._joinname(name, obj.component.name))
  File "/Users/mike/Downloads/Fusion360-ExportCutlist-0.5.1/ExportCutlist.py", line 151, in add
    self.add(child, self._joinname(name, obj.component.name))
  File "/Users/mike/Downloads/Fusion360-ExportCutlist-0.5.1/ExportCutlist.py", line 149, in add
    self.add_body(body, self._joinname(name, obj.component.name, body.name))
  File "/Users/mike/Downloads/Fusion360-ExportCutlist-0.5.1/ExportCutlist.py", line 128, in add_body
    minimal_body = get_minimal_body(body)
                   ^^^^^^^^^^^^^^^^^^^^^^
  File "/Users/mike/Downloads/Fusion360-ExportCutlist-0.5.1/lib/geometry/bodies.py", line 45, in get_minimal_body
    transform.setToAlignCoordinateSystems(origin, orientation, cross_orientation, normal, origin, target_x, target_y, target_z)
  File "/Users/mike/Library/Application Support/Autodesk/webdeploy/production/d1fe173da69e6a3d046df6e4dd1bd5a29091fcf5/Autodesk Fusion 360.app/Contents/Api/Python/packages/adsk/core.py", line 13030, in setToAlignCoordinateSystems
    return _core.Matrix3D_setToAlignCoordinateSystems(self, fromOrigin, fromXAxis, fromYAxis, fromZAxis, toOrigin, toXAxis, toYAxis, toZAxis)
           ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
RuntimeError: 3 : invalid argument fromXAxis

Fusion version: Fusion 2.0.18441 arm64 [Native]
macOS 14.3.1 (23D60)
M1 Mac Studio

Remove units from JSON dimensions

All other formats put the unit in the header, but the JSON format puts the unit in the value. This makes it harder to process the JSON output, since you have to strip out the units and parse the strings to numbers. Move the units to a separate field on the object so that the dimensions can be numbers.

Add option to adjust tolerance

In some of my testing, the default floating point tolerance caused some bodies to not match even though the difference between them was practically zero. Set a higher default tolerance (maybe 0.0001 cm) and then allow users to override the tolerance by providing a new value as a command input.

Add option to disable dimension grouping

From #14:

I would like the option to generate output with one part per line (rather than grouping all parts of the same dimension into a quantity bucket) where each line has the Name of the particular component from the Model. As it is now, the Name of a group of identical components shows up as a long string of the components that are combined. This makes it difficult to create a cut-list where each part is named specifically as it is named in the model.

Duplication of Items

When I apply the cutlist, it seems to list double the amount of items in my design.

Design:
default_bench_v1_v2

Cutlist:
default_bench_v1_v2.txt

Example: There are 16 beams making up the table top, however the cut list lists 32. Same for all other items...

I noticed that bodies are listed twice, once as "Body[XX]" and once as "[Design]/Body[XX]"

Edit: This seems to only happen if I select the object with a mouse drag and the origin is also selected, not if I manually select all the bodies without the origin.

Export Cutlist

This is really a Enhancement or feature request - I see you are using labels or I would have marked it as such

Your tool saved me a significant amount of time this evening - many thanks

It would be fantastic if it remembered what format you have selected for your export

Export Cutlist
.Table
.JSON
.CSV

Misinterprets angled/tilted solids

Cutlist misinterprets the dimensions of titled boards.

Steps to reproduce:

  1. Create a box object either from a sketch or with the box tool.
  2. Use the move tool to tilt the object along the x y or z axis
  3. Create cutlist of that object
  4. The cutlist dimensions will be based on the "bounding box" of the object

Visual:
image

Cutlist Output:

count      material       length (in)   width (in)   height (in)           names        
========================================================================================
    1   Plywood, Finish       5 23/64      3 21/64           3/4   straight board x tilt
----------------------------------------------------------------------------------------
    1   Plywood, Finish        5 3/64        2 1/2       1 39/64   straight board z tilt
----------------------------------------------------------------------------------------
    1   Plywood, Finish             5      2 19/32       1 11/64   straight board y tilt
----------------------------------------------------------------------------------------
    1   Plywood, Finish             5        2 1/2           3/4   straight board       

File:
exportCutlistTest tiltedBoards.f3d.zip

Install Confusing Instructions - Doesn't Show in "Make" dropdown after install

I am a woodworker and would love this capability in F360. However I am not a programmer or familiar with the details of how to install this thing. I did as described, but found out I had to "Create" an add-on (which isn't described in the install instructions). It appears to be installed and running, but I the add-on is not listed in the pull-down under the "Make" menu. HELP!!

Installation problem

I am having trouble installing ExportCutlist. I followed the instructions but after selecting the folder "Fusion360-ExportCutlist-0.5.0" it fails to add it to the list in MyScipts and of course I can go no further.

I'm running a Fusion360 beta release, perhaps that is the problem? Here is the environment:

Fusion 360 2.0.16976 arm64 [Native]
macOS 13.5 (22G74) on MacBookPro18,1

Any ideas on next steps?

Thanks,
Martin

CSV subject line not correct

Very much appreciate the effort in producing the code. Thank you.
I've just installed latest version and noticed a difference between table output and csv output. Table is correct.
Here is what I an seeing....
CSV file
image
TABLE file
image

No bug, just thanks!

No issue to report. I just wanted to thank you for writing this plugin and for making it available. It does the job very well, and is simple and straightforward. Fantastic work!

I'm using it with https://cutlistevo.com/ and it works great: I export a CSV, open it in Numbers and rearrange colums so that they fit one of the formats that CutlistEvo expects, and the data gets imported nicely.

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    ๐Ÿ–– Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. ๐Ÿ“Š๐Ÿ“ˆ๐ŸŽ‰

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google โค๏ธ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.