Pie Menu Box Overlapping Python Question
Not an idea solution, but it gets the job done. I went ahead and just made it 4 menus that are broken up using "column_flow".



here is the code example...

class EditorSwitcherMenu(bpy.types.Menu):
    bl_idname = "editor_switcher_pie_menu"
    bl_label = "Ian's Tools"

    def draw(self, context):

        layout = self.layout
        #layout.scale_x = 50
        #layout.scale_y = 50
        pie = layout.menu_pie()
        #pie.scale_y = 1

        box = pie.split().box().row().column().column_flow(2)
        box.scale_x = 2
        #box.scale_y = .6

        box.operator("ian.recalc", text="Recalc Normals", icon='TIME')
        box.operator("ian.flip", text="Flip Normals", icon='TIME')
        #box.operator("mesh.primitive_cube_add", text="", icon='DOT')
        box.separator()
        box.operator("ian.ngon", text="ngon convert", icon='GO_LEFT')
        box.operator("ian.tri", text="tri convert", icon='ACTION')
        #box.operator("mesh.primitive_cube_add", text="", icon='DOT')
        #row = box.row(align=True).column_flow(2)
        box.separator()
        box.operator("ian.cpiv", text="Set Pivot Curve", icon='POSE_HLT')
        #box.operator("mesh.primitive_cube_add", text="", icon='DOT')
        box.operator("ian.cpipe", text="Curve Wire 1", icon='IPO')
        box.operator("ian.cpipe2", text="Curve Wire 2", icon='IPO')
        box.operator("ian.cpipe3", text="Curve Wire 3", icon='IPO')
        box.operator("ian.cpipe4", text="Curve Wire 4", icon='IPO')
        box.operator("ian.cpipe4", text="Curve Wire 5", icon='IPO')

        #box = pie.split(percentage=.80).box().row(align=True).column()
        box = pie.split().box().row().column().column_flow(2)
        box.scale_x = 2


        #box.operator("mesh.primitive_cube_add", text="", icon='DOT')
        #box = pie.split(percentage=.80).box().row(align=True).column()
        box.operator("ian.modelprep", text="Ian's Obj Prep", icon='VPAINT_HLT')
        box.operator("ian.modelprepnv", text="Ian's Obj Prep NO VPaint", icon='WPAINT_HLT')
        #box.operator("mesh.primitive_cube_add", text="", icon='DOT')
        box.separator()

        box.operator("ian.batch_export", text="Export to Substance", icon='RECOVER_LAST')
        #box.operator("mesh.primitive_cube_add", text="", icon='DOT')

        #box = pie.split(percentage=.80).box().row(align=True).column()

        box.operator("ian.exddo", text="Export to DDO", icon='RECOVER_LAST')
        #box.operator("mesh.primitive_cube_add", text="", icon='DOT')
        box.separator()
        box.operator("ian.pbrmap", text="PBR Map", icon='COLOR')