Jump to content
Ultimaker Community of 3D Printing Experts
user145

Absolute Coordinates from STL file

Recommended Posts

Hi,

I recently started working with Cura, and I'm wondering if the relation between STL vertices and position on the print bed is well-known (or someone can explain to me). Is there just an offset added in each direction, or is it more complicated?

 

Also, is it possible to tell my printer to use the absolute coordinates found in the STL file (adjusted to meet the print bed specifications), rather than try to automatically adjust/center the print?

Share this post


Link to post
Share on other sites

STL doesn't define what 0,0,0 means, so it's up to the software to pick one. As it's generally a good idea to print in the middle, we put the X&Y on the middle of the build plate. As in most cases you also want to print the entire object, we also place it on top of the buildplate instead of poking through it.

If you want your models to keep your positioning, you need to use a format that actually supports doing that, such as 3MF (which defines the origin as being the lower left corner of the buildplate)

Share this post


Link to post
Share on other sites
31 minutes ago, nallath said:

STL doesn't define what 0,0,0 means, so it's up to the software to pick one. As it's generally a good idea to print in the middle, we put the X&Y on the middle of the build plate. As in most cases you also want to print the entire object, we also place it on top of the buildplate instead of poking through it.

If you want your models to keep your positioning, you need to use a format that actually supports doing that, such as 3MF (which defines the origin as being the lower left corner of the buildplate)

 

Thank you for the quick response! I'll definitely look into 3MF files. So the vertices specified in the 3MF file are directly imported as they are into Cura (without any conversion)?

 

Also, when you say "we put the X&Y on the middle of the build plate", do you mean you find the center of, say, the vertices of the STL file (in x, y) and put that at the center? Is there any automatic rotation involved?


Sorry for the dumb questions 😛 

Share this post


Link to post
Share on other sites

Quite likely your issue is grouping - I've mentioned this and the team says they don't care one iota.

 

But the solution to a lot of my bad STL's I've downloaded is to right click and pick "ungroup". You can tell if this is the problem - when you load in an STL there will be an empty box bigger than the boundaries of the part.

 

When you ungroup it, the empty space ceases to exist. It is effectively reassigning coordinates, and it seems it could be easily implemented - but if you're using Cura, then you'd better get used to doing that on your own. I hope one day the fix this - I haven't heard a good argument why you would want to leave object unslicable because they have an odd origin.

Share this post


Link to post
Share on other sites

I'm really just trying to associate segments in the g-code to vertices in the file. 

 

As I've just started messing around with this, it appears to me that Cura doesn't use the coordinate system defined in the 3MF file? It still seems to center the print even after importing a a 3MF file starting from (0,0). Is there some kind of option I need to check to override this?

Share this post


Link to post
Share on other sites

I don't know much about 3mf files but in gcode files it depends if you use a typical machine where 0,0 is the lower left (front left) corner of the build plate or if you choose a delta type machine where 0,0 is in the center of the build plate.

 

Also realize that cura offsets the vertices by the width of the nozzle (or the line width actually). so that the outer edge of the filament lines up with the outer edges of the model.

 

If you install repetier host you can load a gcode file into it and see what it looks like in 3d and then you can highlight the gcode values and you can see in the left window in color where those gcode values occur.  This really helps a lot with finding the exact gcode for a given vertice.

Share this post


Link to post
Share on other sites
16 hours ago, user145 said:

I'm really just trying to associate segments in the g-code to vertices in the file. 

 

As I've just started messing around with this, it appears to me that Cura doesn't use the coordinate system defined in the 3MF file? It still seems to center the print even after importing a a 3MF file starting from (0,0). Is there some kind of option I need to check to override this?

It should, but i've seen multiple instances of cad programs not adhering to the 3MF spec.

 

Share this post


Link to post
Share on other sites

Odds are you have to select "ungroup" from the menu, on your object.

 

I've mentioned this a bunch of times, and apparently it's not a problem. Unless you download or create objects, then it's a huge problem, but not one the team seems interested in dealing with.

Share this post


Link to post
Share on other sites

Create an account or sign in to comment

You need to be a member in order to leave a comment

Create an account

Sign up for a new account in our community. It's easy!

Register a new account

Sign in

Already have an account? Sign in here.

Sign In Now

×

Important Information

Welcome to the Ultimaker Community of 3D printing experts. Visit the following links to read more about our Terms of Use or our Privacy Policy. Thank you!