non-linear scaling of STL-files along the Z-Axis I have an STL that is about 400mm in Z. 

I would like it to scale for example 2% for the first 100mm and 1% the rest of the 300mm. This should work for objects that are shorter than 400mm but still scale 2% for the first 100mm.

i am willing to use python to solve this issue. 

How do i go about to tackle this issue? 
I just started learning python and i have gotten a hang of the basics, i just downloaded blender and i see great potential to solve this issue with the two combined. 

best regards, 
Oskar Z
You would need to import the file first. If this is only about different sized separate objects, that would not be very difficult. You would just need to loop through all the objects in your scene, check their size and scale them accordingly. Could look something like this: 

import bpy
from mathutils import Vector

for o in bpy.context.scene.objects: #bpy.context.view_layer.objects in 2.80
    if o.dimensions[2] &gt;= 1: # change the 1 to anything (dimensions[2] is Z)
        scale = Vector((2,2,2)) # change the scale to anything
        o.scale = [a*b for a,b in zip(o.scale, scale)]
    else: 
        scale = Vector((3,3,3)) # change the scale to anything
        o.scale = [a*b for a,b in zip(o.scale, scale)]