Forum: Poser Python Scripting


Subject: Script for setting U/V_Scale of image maps in current figure/actor (nearly done)

3dcheapskate opened this issue on Mar 01, 2012 · 18 posts


3dcheapskate posted Thu, 01 March 2012 at 2:51 AM

def GetTilingPercent():
    global aborted
    tp = poser.DialogSimple.AskInt("Enter the percentage you want to scale by.n(Integer values only, no % sign)")
    if tp is None:
        poser.DialogSimple.MessageBox("Invalid entry (or user cancelled)nnOperation cancelled.")    
        aborted = True
        return 0
    if tp == 0:
        yn = poser.DialogSimple.YesNo("Zero will turn off tiling?nnDid you intend to do this?")
        if yn == 0:
            poser.DialogSimple.MessageBox("Operation cancelled.")
            aborted = True
            return 0
        else:
            return 0
    if tp == 100:
        poser.DialogSimple.MessageBox("A value of 100% will have no effect.n(makes the tiles exactly the same size)nnOperation cancelled.")
        aborted = True
        return 0
    if tp         yn = poser.DialogSimple.YesNo("Negative values ("+str(tp) + "%) invert the texture.nnDid you intend to do this?")
        if yn == 0:
            poser.DialogSimple.MessageBox("Ignoring the minus sign.n Proceeding with "+str(-tp) + "%")
            tp = -tp
    if tp > 1000 or tp         yn = poser.DialogSimple.YesNo(str(tp)+"% will make the tiles "+str(tp/100)+" times bigger.nnDid you intend to do this?")
        if yn == 0:
            poser.DialogSimple.MessageBox("Operation cancelled.")
            aborted = True
            return 0
    elif (tp   0) or (tp >-10 and tp         yn = poser.DialogSimple.YesNo(str(tp)+"% will make the tiles "+str(100/tp)+" times smaller?.nnDid you intend to do this?")
        if yn == 0:
            poser.DialogSimple.MessageBox("Operation cancelled.")
            aborted = True
            return 0
    else:
        return tp


The 3Dcheapskate* occasionally posts sensible stuff. Usually by accident.
And it usually uses Poser 11, with units set to inches. Except when it's using Poser 6 or PP2014, or when its units are set to PNU.

*also available in ShareCG, DAZ, and HiveWire3D flavours (the DeviantArt and CGBytes flavour have been discontinued).