Non-uniform scaling


I’d like to have the ability to do non-uniform scaling in preform in case I need to compensate to improve accuracy. This is more important currently because the Form 3 seems to need some compensation, whereas the Form 2 is fine.


In this previous post,
Scale individual axis without locking the other axis, please
it is indicated that preform would be too complicated to use if this function would be added … (I dream?)

It is also indicated that it is enough to modify the scale in a CAD drawing program … yes if you have done the drawing yourself, but that must print files already in STL format I don’t want to complicate my life with another intermediate program !!!

FYI: with CURA that I use with my ultimaker 3, this scale function has been around for a long time




Are the inaccuracies you’re seeing fairly consistent (i.e. printer X is producing models 3% too wide along X) or are they mostly geometry-dependent?

I wonder whether an X/Y/Z Fine Tuning adjustment on the printer itself might be a more suitable place for this (related thread).


I highly doubt it would be too complicated as long as they don’t allow scaling after support generation (ie. non-uniform scaling would only be allowed prior to support generation).


@rkagerer it’ seems mostly geometry dependent, but at least the inaccuracies are repeatable (I’m sure the Form 2 exhibits this to some degree as well). When I do see it, it’s usually oversized by a small percentage.

Based on what I’ve seen, a hardware XYZ fine tuning wouldn’t necessarily solve the problem. That being said, I’ve only done a little bit of test prints here and definitely not nearly enough to say with confidence that what I was seeing is a constant problem. There’s also lots of firmware updates being pushed out repeatedly as you know so it’s hard to gauge and keep track of the issue.


I’d like to add that non-uniform scaling inside PreForm makes sense because because distortions happen based on print orientation (and other parameters – in my case thin-walled parts are very sensitive to this), so they logically belong in the print file, and I don’t buy the complication argument, as the interface is already there, all that’s needed is a little lock symbol where the current input fields are.

What would be a useful addition is scaling in model coordinates as well as “global” coordinates, as the the non-uniform scaling is mostly aligned with geometric features and their shrinkage, eg. a non-axis-aligned thin-walled cylinder is very likely to shrink in circumference, but not length.