Notifications
Clear all

3mf file import bug?  

Page 1 / 2
  RSS
Savage
(@savage)
Active Member
3mf file import bug?

Hi,

I recently tried to move over to 3mf files.

I'm experiencing a lot of problems in the PrusaSlicer.

  1. Multi 3mf file import: Bodies get spread all over and also outside build plate. Arranging is a pain.
  2. Arranging the bodies: All bodies decentralize from build plate.
  3. Slicing: The bodies get sliced into each other.

 

So, question is, is there a bug in the program, or what am I doing wrong?

BR

Johan

Posted : 28/09/2021 12:29 pm
fuchsr
(@fuchsr)
Famed Member

What version of Prusaslicer?

I haven't seen the kinds of problems you have described. Maybe you can take two or three 3mfs that give you that behavior, put them in a ZIP archive, and upload it here, so we can try to replicate the issue.

Posted : 29/09/2021 12:33 am
Lynn
 Lynn
(@lynn)
Estimable Member
I too have this problem

This happens every time more than 1 object is loaded for slicing. Single objects are centered on the plate.  See screen shot.

Attachment removed
Posted : 29/09/2021 2:21 am
fuchsr
(@fuchsr)
Famed Member

Weird. Never seen this. As I suggested earlier, maybe you can take two or three 3mfs that give you that behavior, put them in a ZIP archive, and upload it here, so we can try to replicate the issue. I just tried with three random 3mfs I loaded, they all got centered on the sheet and then nicely distributed when I clicked on Arrange.

Posted : 29/09/2021 2:43 am
Neophyl
(@neophyl)
Illustrious Member
RE: 3mf file import bug?

We would need one of your 3mf files as saved from your cad software to confirm like Fuchsr requests but I think I know what is happening.  

When you use something like stl for file interchange it stores object shape data but very little else.  It certainly does not contain any positional/location information.  3mf CAN (but doesnt always) store location.  
So to use a simple example, if you create a simple cylinder in your cad software with the centre of the object at your CAD home location (0,0,0) then when you load it into PS it will be placed at X=0 and Y=0, so part of it will be off the build plate as the centre is at home.  With PS rules for objects being placed at the bed height though its likely that the object will be adjusted in Z axis to put the bottom level with z=0 rather than the middle of the object being at z=0.

If you design a part at x=-100, y=-100 in your CAD software its going to be placed well off the build plate.  The other caveat to this is if you have automatically centre objects on build plate enabled in your PS settings.  I'm not sure if that would still place an object imported as 3mf to the centre.  With your 3mf file as requested we can check.

The example image posted with multiple objects should also follow the same sort of rules, except as they are all part of the same 3mf they are treated as 1 object.  So placement would be where they happened to be placed within your CAD environment and the whole group moved in z so the lowest object is level with the bed (I think).  That seems to be what the picture is showing as the the small arched blue part closest to the bed is at the bed height and all the others are arranged around it

There's already at least one issue opened on github regarding this so it may change in future but at the moment the software is behaving as designed.  So its not a bug technically but may be unwanted behaviour that needs changing, so a feature change in effect.

The 3mf file standard is pretty loose.  In that it seems to define how things in the file should be organised but it does not really define what things can be stored in the file.  This is not really surprising as it can be used for many purposes.  For example cad software wont generally store extruder data for an object as it doesnt know anything about extruders, but it might store texture data.  PS of course doesnt know anything about any assigned textures and so should ignore that data.  There are bound to be some issues in the long run as more and more programs come to support 3mf and all start using the format in slightly different ways.

Posted : 29/09/2021 6:03 am
fuchsr liked
Savage
(@savage)
Active Member
Topic starter answered:
RE: 3mf files

Here is the files:

Proximity sensors fixtures Workbee

Problem is probably the world coordinates. 

Because it doesn't matter if I import just one of the files or all, they never end up on the build plate unless I guess there is only 1 body in the CAD with only one origo.

In Cura for Ultimaker I can change the world coordinates, but not in PrusaSlicer.

So when importing the 3mf files it keeps the original world coordinates and that is a problem if you're not able to edit them.

Johan

This post was modified 3 years ago by Savage
Posted : 29/09/2021 9:14 am
fuchsr
(@fuchsr)
Famed Member
RE: 3mf file import bug?

@neophyl

Excellent guess. I only thought of 3mfs as generated by Prusaslicer, didn't consider that for example Fusion can now export meshes as 3mfs.

So to test the hypothesis, I created a couple of components in Fusion, each somewhat off the center.  When I save them individually, PS will import each centered on the print bed. If I export them all as one 3mf, the behavior is what's seen by the OP—they're loaded at the locations they were placed in the 3mf file.

I think this is actually desired behavior. This way I can design multi-body models and determine their exact location on the print bed at the design stage. If I don't want that, I can save each component (or even body) as a separate 3mf file, or I can load the multi-body 3mf and use PS's Split function to break it into its components.

Posted : 29/09/2021 10:53 am
Lynn
 Lynn
(@lynn)
Estimable Member
Stl vs 3mf import of the same objects

I've never looked into drawing object file structures, but fuchsia's explanation seems probable.  This behavior started with version 2.3.3 of the slicer, and since I use Fusion 360, it's also possible that they changed the data store structure. I have to note however, that this behavior, but further off the plate, also occurs when importing the same objects in STL format.  In the case of STL objects some of the imported content is completely outside the 3d environment of the slicer.  I've attached 2 screen shots showing the same objects loaded form the two file formats. I've attached one of the objects saved in both formats. 

 

Attachment removed
Posted : 29/09/2021 11:08 am
Savage
(@savage)
Active Member
Topic starter answered:
3mf file import bug?

@fuchsr, 

The 3mf files I sent you was created as separate files from bodies inside a large CAD drawing.

That would mean that the world coordinates does not decouple from the intial drawing.

However, in Cura you are able to correct the world coordinates but in Prusslicer you aren't able to do that!

In certain models, keeping the orignal coordinates is a must, but in my case, going from Fusion to Prusaslicer would mean that I need to create a new drawing from each body and then importing it into PrusaSlicer.
I don't think that is a good solution.

There must be an option to be able to discconect the world coordinates when importing the 3mf's.

Or, at least to be able to manipulate the world coordinates on the bodies. 

BR

JOhan

Posted : 29/09/2021 11:30 am
Savage
(@savage)
Active Member
Topic starter answered:
3mf file import bug?

@fuchsr, 

The 3mf files I sent you was created as separate files from bodies inside a large CAD drawing.

That would mean that the world coordinates does not decouple from the intial drawing.

However, in Cura you are able to correct the world coordinates but in Prusslicer you aren't able to do that!

In certain models, keeping the orignal coordinates is a must, but in my case, going from Fusion to Prusaslicer would mean that I need to create a new drawing from each body and then importing it into PrusaSlicer.
I don't think that is a good solution.

There must be an option to be able to discconect the world coordinates when importing the 3mf's.

Or, at least to be able to manipulate the world coordinates on the bodies. 

BR

JOhan

Posted : 29/09/2021 11:30 am
Neophyl
(@neophyl)
Illustrious Member
RE: 3mf file import bug?

When I open a new PS slicer instance and add your stl model it is placed in the middle of the bed as normal.  Starting PS again to get a clean instance If I use either the add or open option with your 3mf file the object is placed outside the bed area.  Where I presume its coordinates from the cad software place it. 

This is with PS 2.3.3.  This behaviour is exactly as I expected and there is nothing wrong with it.

 

Johan if you are having a similar problem then would you care to share your file(s) so we can all examine it.  As far as I can see with the files so far provided then PS is doing exactly what it should.  With multi part bodies it may be reacting differently but even then I'd like to see and try the Split to parts options available with a multipart 3mf file as saved direct from the cad software

Posted : 29/09/2021 11:48 am
Savage
(@savage)
Active Member
Topic starter answered:
Online session

Hi,

Are we able to have an online session with Teams so I can show you what I mean?

Posted : 29/09/2021 11:51 am
Lynn
 Lynn
(@lynn)
Estimable Member
parts seperated

I created multiple instancds of hte the same object in fusion -  see "Cad drawing .png"

Then I exported each object as seperate mesh files (3mf)

Then I loaded all for objects at once into the slicer - see "4 3mf objects loaded together.png"

Then I loaded them one at a time to the slicer.  The first objects was centered. The second objects moved both objects off the build plate - see "plate orientation when adding second object.png

 

Attachment removed
Posted : 29/09/2021 12:10 pm
Neophyl
(@neophyl)
Illustrious Member

I'm sorry but to help I need the actual files so they can be loaded to see what it is doing.  For me in 2.3.3 loading your original LowerRight.3mf it always places it off the build plate to the right.  If I load it in and arrange it places it in the middle as expected.  If I load the same part in again it once again imports it and initially places it in the same far right spot.  

What we need are the 4 individually exported 3mf objects and the group exported together.

Posted : 29/09/2021 12:24 pm
Lynn
 Lynn
(@lynn)
Estimable Member
oops

Added the 4 files.  Now I have to do my real job.  I appreciate you efforts.

Attachment removed
Posted : 29/09/2021 12:34 pm
Neophyl
(@neophyl)
Illustrious Member
auto centre parts

Ran out of editing time.  Go to Configuration>Preferences (Ctrl+P) and UNTICK Auto Centre parts.  That option is causing your first instance to be moved to the centre of the bed (correctly as thats what that option does).  Without it the part is placed to the right as your CAD has it.

For some reason loading in the second instance is then loading in with its co-ordinates to the right, which is wrong as it should also place that part in the centre OVER the initial part.  Its also for some reason moving the first part over.  That is ALSO wrong.  So there is definitely a bug in placing subsequent 3mf parts when the auto centre parts option is ticked.  

When unticked then it behaves in a sane and logical way.

You should post an issue with your sample parts explaining the problem with auto centre and 3mf over on github.

Posted : 29/09/2021 12:35 pm
Savage
(@savage)
Active Member
Topic starter answered:
No it does not work like that...

I tried both with and without this and having multiple 3mf's in the same project does not work!

BR

Johan

Posted : 29/09/2021 12:42 pm
Neophyl
(@neophyl)
Illustrious Member

Just to let you know that this behaviour has been changed in PS2.4 +alpha already.  A placed 3mf file now places to the middle of the bed, just like an stl does so they are ignoring the origin coordinates.  

Also the behaviour of the auto centre parts now makes sense to me in 2.3.3.  The first part you place gets translocated to the middle of the bed.  The second part you load is placed in its far right off the bed position initially on loading.  This group of 2 parts is then centred on the bed in effect pushing the first over.  The third one then gets loaded in the right hand position and then this new group of 3 parts is centred, and finally the 4th one is loaded and again pushes the group over to get the wild arrangement you observed.

With 2.4 with all 4 loads of the parts all get placed into the middle of the bed regardless of if the auto centre option is on or off.

They also seem to be treating the name differently due to user feedback.  Loaded 3mf parts in PS2.4 use the saved 3mf file name and not the part name now.  So instead on those parts loading in as LowerRight1 they now load in as 1 and 2 and 3 and 4.

 

Posted : 29/09/2021 12:58 pm
fuchsr
(@fuchsr)
Famed Member

I was in fact using the 2.4 alpha when I tested it, which explains why they all placed in the middle as expected. 

Posted : 29/09/2021 1:04 pm
Lynn
 Lynn
(@lynn)
Estimable Member
Thanks

Thanks for the information.   It's good to know that I was not in fact loosing my mind.  

Posted : 29/09/2021 1:21 pm
Page 1 / 2
Share: