*** empty log message ***

This commit is contained in:
Mark Mine 2001-01-10 18:57:30 +00:00
parent 62fc8c17dc
commit 5bcdbdf7ee

View File

@ -43,9 +43,11 @@ class Placer(Pmw.MegaToplevel):
self.nodePathNames = ['selected', 'camera'] self.nodePathNames = ['selected', 'camera']
self.refNodePathDict = {} self.refNodePathDict = {}
self.refNodePathDict['parent'] = self['nodePath'].getParent()
self.refNodePathDict['render'] = render self.refNodePathDict['render'] = render
self.refNodePathDict['camera'] = camera self.refNodePathDict['camera'] = camera
self.refNodePathNames = ['self', 'render', 'camera', 'selected', 'coa'] self.refNodePathNames = ['self', 'parent', 'render',
'camera', 'selected', 'coa']
# Initial state # Initial state
self.initPos = Vec3(0) self.initPos = Vec3(0)
@ -107,7 +109,7 @@ class Placer(Pmw.MegaToplevel):
self.nodePathMenu.pack(side = 'left', expand = 0) self.nodePathMenu.pack(side = 'left', expand = 0)
modeMenu = Pmw.OptionMenu(menuFrame, modeMenu = Pmw.OptionMenu(menuFrame,
items = ('Absolute', 'Relative To:', items = ('Relative To:',
'Orbit:'), 'Orbit:'),
initialitem = 'Relative To:', initialitem = 'Relative To:',
command = self.setMovementMode, command = self.setMovementMode,
@ -342,25 +344,16 @@ class Placer(Pmw.MegaToplevel):
# Set prefix # Set prefix
namePrefix = '' namePrefix = ''
self.movementMode = movementMode self.movementMode = movementMode
if (movementMode == 'Absolute'): if (movementMode == 'Relative To:'):
namePrefix = 'Absolute '
elif (movementMode == 'Relative To:'):
namePrefix = 'Relative ' namePrefix = 'Relative '
elif (movementMode == 'Orbit'): elif (movementMode == 'Orbit:'):
namePrefix = 'Orbit' namePrefix = 'Orbit '
# Enable/disable wrt menu
if (movementMode == 'Absolute'):
self.refNodePathMenu.configure(entry_foreground = 'gray50')
self.refNodePathMenu.configure(entry_background = '#E0E0E0')
else:
self.refNodePathMenu.configure(entry_foreground = 'Black')
self.refNodePathMenu.configure(entry_background = 'SystemWindow')
# Update pos widgets # Update pos widgets
self.posX['text'] = namePrefix + 'X' self.posX['text'] = namePrefix + 'X'
self.posY['text'] = namePrefix + 'Y' self.posY['text'] = namePrefix + 'Y'
self.posZ['text'] = namePrefix + 'Z' self.posZ['text'] = namePrefix + 'Z'
# Update hpr widgets # Update hpr widgets
if (movementMode == 'Orbit'): if (movementMode == 'Orbit:'):
namePrefix = 'Orbit delta ' namePrefix = 'Orbit delta '
self.hprH['text'] = namePrefix + 'H' self.hprH['text'] = namePrefix + 'H'
self.hprP['text'] = namePrefix + 'P' self.hprP['text'] = namePrefix + 'P'
@ -468,7 +461,7 @@ class Placer(Pmw.MegaToplevel):
return return
# Get node path's name # Get node path's name
name = nodePath.getName() name = nodePath.getName()
if((name == 'render') | (name == 'camera')): if name in ['parent', 'render', 'camera']:
dictName = name dictName = name
else: else:
# Generate a unique name for the dict # Generate a unique name for the dict
@ -491,18 +484,14 @@ class Placer(Pmw.MegaToplevel):
# Update temp CS # Update temp CS
self.updateAuxiliaryCoordinateSystems() self.updateAuxiliaryCoordinateSystems()
# Update widgets # Update widgets
if self.movementMode == 'Absolute': if self.movementMode == 'Orbit:':
pos.assign(np.getPos())
hpr.assign(np.getHpr())
scale.assign(np.getScale())
elif self.movementMode == 'Orbit:':
pos.assign(self.posOffset) pos.assign(self.posOffset)
hpr.assign(ZERO_VEC) hpr.assign(ZERO_VEC)
scale.assign(np.getScale()) scale.assign(np.getScale())
elif self.refCS: elif self.refCS:
pos.assign(np.getPos(self.refCS)) pos.assign(np.getPos(self.refCS))
hpr.assign(np.getHpr(self.refCS)) hpr.assign(np.getHpr(self.refCS))
scale.assign(np.getScale(self.refCS)) scale.assign(np.getScale())
self.updatePosWidgets(pos) self.updatePosWidgets(pos)
self.updateHprWidgets(hpr) self.updateHprWidgets(hpr)
self.updateScaleWidgets(scale) self.updateScaleWidgets(scale)
@ -531,8 +520,6 @@ class Placer(Pmw.MegaToplevel):
def xform(self, value, axis): def xform(self, value, axis):
if axis in ['sx', 'sy', 'sz']: if axis in ['sx', 'sy', 'sz']:
self.xformScale(value,axis) self.xformScale(value,axis)
elif self.movementMode == 'Absolute':
self.xformAbsolute(value, axis)
elif self.movementMode == 'Relative To:': elif self.movementMode == 'Relative To:':
self.xformRelative(value, axis) self.xformRelative(value, axis)
elif self.movementMode == 'Orbit:': elif self.movementMode == 'Orbit:':
@ -550,24 +537,7 @@ class Placer(Pmw.MegaToplevel):
messenger.send('manipulateObjectCleanup') messenger.send('manipulateObjectCleanup')
# Update placer to reflect new state # Update placer to reflect new state
self.updatePlacer() self.updatePlacer()
def xformAbsolute(self, value, axis):
nodePath = self['nodePath']
if nodePath != None:
if axis == 'x':
nodePath.setX(value)
elif axis == 'y':
nodePath.setY(value)
elif axis == 'z':
nodePath.setZ(value)
elif axis == 'h':
nodePath.setH(value)
elif axis == 'p':
nodePath.setP(value)
elif axis == 'r':
nodePath.setR(value)
def xformRelative(self, value, axis): def xformRelative(self, value, axis):
nodePath = self['nodePath'] nodePath = self['nodePath']
if (nodePath != None) & (self.refCS != None): if (nodePath != None) & (self.refCS != None):