-
Notifications
You must be signed in to change notification settings - Fork 89
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
z-dimension stacking isn't accurate #12
Comments
I don't see that, must be missing something. From your data, I get the following output: ::::::::::: large-3-box(23.688x11.750x35.000, max_weight:1000.000) vol(9741.690) First item I see at z-axis > 0 is @ 1.968? |
After removing the decimal formatting methods (which seem to result in highly rounded item positions), for your data set, I now get the following: ::::::::::: large-3-box(23.6875 x 11.75 x 35.0, max_weight:1000.0) vol(9741.484375) Tall item is at z=3.9370 (no rotation), which still seems valid? |
test data as .
|
As the code only compares whether there is an overlapping part between two items in xy-plane, z-dimension stacking isn't accurate.
Just tested with
-> Bin('large-3-box', 23.6875, 11.75, 35.0, 1000.0)
and items
-> packer.add_item(Item('50g [powder 1]', 3.9370, 1.9685, 11.9685, 1))
packer.add_item(Item('50g [powder 2]', 3.9370, 1.9685, 1.9685, 2))
packer.add_item(Item('50g [powder 3]', 3.9370, 1.9685, 1.9685, 3))
packer.add_item(Item('250g [powder 4]', 7.8740, 3.9370, 1.9685, 4))
packer.add_item(Item('250g [powder 5]', 7.8740, 3.9370, 1.9685, 5))
packer.add_item(Item('250g [powder 6]', 7.8740, 3.9370, 1.9685, 6))
packer.add_item(Item('250g [powder 7]', 7.8740, 3.9370, 1.9685, 7))
packer.add_item(Item('250g [powder 8]', 7.8740, 3.9370, 1.9685, 8))
packer.add_item(Item('250g [powder 9]', 7.8740, 3.9370, 1.9685, 9))
packer.add_item(Item('250g [powder 10]', 7.8740, 3.9370, 1.9685, 10))
packer.add_item(Item('250g [powder 11]', 7.8740, 3.9370, 1.9685, 11))
packer.add_item(Item('250g [powder 12]', 7.8740, 3.9370, 1.9685, 6))
packer.add_item(Item('250g [powder 7]', 7.8740, 3.9370, 1.9685, 7))
packer.add_item(Item('250g [powder 8]', 7.8740, 3.9370, 1.9685, 8))
packer.add_item(Item('250g [powder 9]', 7.8740, 3.9370, 1.9685, 9))
packer.add_item(Item('250g [powder 4]', 7.8740, 3.9370, 1.9685, 4))
packer.add_item(Item('250g [powder 5]', 7.8740, 3.9370, 1.9685, 5))
packer.add_item(Item('250g [powder 6]', 7.8740, 3.9370, 1.9685, 6))
packer.add_item(Item('250g [powder 7]', 7.8740, 3.9370, 1.9685, 7))
packer.add_item(Item('250g [powder 8]', 7.8740, 3.9370, 1.9685, 8))
packer.add_item(Item('250g [powder 9]', 7.8740, 3.9370, 1.9685, 9))
I have arbitrarily given 11.9685 as the height of 'powder 1' for a bigger box with dimension [23.6875, 11.75, 35.0] just for the sake of random experiment. Each item gets stacked fine in the base layer (z=0) but when the base layer is all filled, things get stacked at z=11.9685 for the remainder of items, which makes the items float.
The text was updated successfully, but these errors were encountered: