Bildung neuer Polygone auf Grundlage eines Shapefi

Ich habe folgende Aufgabe. Ausgang ist eine Biotoptypenkartierung bestehend aus ca. 10-15 Klassen. Ziel ist es, zwischen den einzelnen Klassengrenzen neue Polygone einzufügen und die alten Polygone in Abhängigkeit von der Ausdehnung der neuen Polygone zu verkleinern. Der Nutzer gibt in Abhängikeit der aufeinandertreffenden Klassen einen Abstand x vor. Zwischen den beiden Klassen wird nun das neue Polygon von der Breitenausdehnung x gebildet. Natürlich wird die Sache komplexer, je mehr Klassen beteiligt sind. Es wird auch zu Mehrfachüberschneidungen kommen. Genauso kann der Fall auftreten, dass die angegebene Breite so groß ist, dass keine Restfläche übrig bleibt. Gibt es Erfahrungen bzgl. Ansätze bzw. nutzbaren Erweiterungen, die mir hier weiterhelfen könnten?