mirror of
https://github.com/panda3d/panda3d.git
synced 2025-10-04 02:42:49 -04:00
*** empty log message ***
This commit is contained in:
parent
bb0fcbdd72
commit
e5e955af8e
@ -230,9 +230,9 @@ class DirectManipulationControl(PandaObject):
|
||||
# Mouse started in central region, xlate
|
||||
# Mode depends on shift key
|
||||
if direct.fShift:
|
||||
self.xlateCamXZ(state)
|
||||
else:
|
||||
self.xlateCamXY(state)
|
||||
else:
|
||||
self.xlateCamXZ(state)
|
||||
if self.fSetCoa:
|
||||
# Update coa based on current widget position
|
||||
direct.selected.last.mCoa2Dnp.assign(
|
||||
|
@ -92,60 +92,6 @@ class ParticlePanel(AppShell):
|
||||
label = 'Print Params',
|
||||
command = lambda s = self: s.particles.printParams())
|
||||
|
||||
# EFFECTS MENU
|
||||
self.menuBar.addmenu('Effects', 'Particle Effects Operations')
|
||||
# Get a handle on this menu
|
||||
effectsMenu = self.menuBar.component('Effects-menu')
|
||||
# Create new particle effect
|
||||
self.menuBar.addmenuitem(
|
||||
'Effects', 'command',
|
||||
'Create New Particle Effect',
|
||||
label = 'Create New Effect',
|
||||
command = self.createNewEffect)
|
||||
# Add cascade menus to view and enable, saving a handle
|
||||
effectsConfigureMenu = Menu(effectsMenu, tearoff = 0)
|
||||
effectsMenu.add_cascade(label = 'Configure',
|
||||
menu = effectsConfigureMenu)
|
||||
self.effectsEnableMenu = Menu(effectsMenu, tearoff = 0)
|
||||
effectsMenu.add_cascade(label = 'Enable/Disable',
|
||||
menu = self.effectsEnableMenu)
|
||||
|
||||
# PARTICLES MENU
|
||||
self.menuBar.addmenu('Particles', 'Particles Operations')
|
||||
# Get a handle on this menu
|
||||
particlesMenu = self.menuBar.component('Particles-menu')
|
||||
# Create new particles object
|
||||
self.menuBar.addmenuitem(
|
||||
'Particles', 'command',
|
||||
'Create New Particles Object',
|
||||
label = 'Create New Particles',
|
||||
command = self.createNewParticles)
|
||||
# Add cascade menus to view and enable, saving a handle
|
||||
particlesConfigureMenu = Menu(particlesMenu, tearoff = 0)
|
||||
particlesMenu.add_cascade(label = 'Configure',
|
||||
menu = particlesConfigureMenu)
|
||||
self.particlesEnableMenu = Menu(particlesMenu, tearoff = 0)
|
||||
particlesMenu.add_cascade(label = 'Enable/Disable',
|
||||
menu = self.particlesEnableMenu)
|
||||
|
||||
# FORCE GROUP MENU
|
||||
self.menuBar.addmenu('ForceGroup', 'ForceGroup Operations')
|
||||
# Get a handle on this menu
|
||||
forceGroupMenu = self.menuBar.component('ForceGroup-menu')
|
||||
# Create new particle effect
|
||||
self.menuBar.addmenuitem(
|
||||
'ForceGroup', 'command',
|
||||
'Create New ForceGroup Object',
|
||||
label = 'Create New ForceGroup',
|
||||
command = self.createNewForceGroup)
|
||||
# Add cascade menus to view and enable, saving a handle
|
||||
forceGroupConfigureMenu = Menu(forceGroupMenu, tearoff = 0)
|
||||
forceGroupMenu.add_cascade(label = 'Configure',
|
||||
menu = forceGroupConfigureMenu)
|
||||
self.forceGroupEnableMenu = Menu(forceGroupMenu, tearoff = 0)
|
||||
forceGroupMenu.add_cascade(label = 'Enable/Disable',
|
||||
menu = self.forceGroupEnableMenu)
|
||||
|
||||
# PARTICLE MANAGER MENU
|
||||
self.menuBar.addmenu('ParticleMgr', 'ParticleMgr Operations')
|
||||
self.particleMgrActive = IntVar()
|
||||
@ -164,40 +110,59 @@ class ParticlePanel(AppShell):
|
||||
self.effectsLabel = Menubutton(labelFrame, width = 10,
|
||||
relief = RAISED,
|
||||
borderwidth = 2,
|
||||
font=('MSSansSerif', 14, 'bold'),
|
||||
font=('MSSansSerif', 12, 'bold'),
|
||||
activebackground = '#909090')
|
||||
effectsConfigureLabel = Menu(self.effectsLabel, tearoff = 0)
|
||||
self.effectsLabel['menu'] = effectsConfigureLabel
|
||||
self.effectsLabel.pack(side = LEFT, fill = 'x', expand = 0)
|
||||
self.effectsLabelMenu = Menu(self.effectsLabel, tearoff = 0)
|
||||
self.effectsLabel['menu'] = self.effectsLabelMenu
|
||||
self.effectsLabel.pack(side = LEFT, fill = 'x', expand = 1)
|
||||
self.bind(self.effectsLabel,
|
||||
'Select effect to configure or create new effect')
|
||||
self.effectsLabelMenu.add_command(label = 'Create New Effect',
|
||||
command = self.createNewEffect)
|
||||
self.effectsEnableMenu = Menu(self.effectsLabelMenu, tearoff = 0)
|
||||
self.effectsLabelMenu.add_cascade(label = 'Enable/Disable',
|
||||
menu = self.effectsEnableMenu)
|
||||
self.effectsLabelMenu.add_separator()
|
||||
# Current particles
|
||||
self.particlesLabel = Menubutton(labelFrame, width = 10,
|
||||
relief = RAISED,
|
||||
borderwidth = 2,
|
||||
font=('MSSansSerif', 14, 'bold'),
|
||||
font=('MSSansSerif', 12, 'bold'),
|
||||
activebackground = '#909090')
|
||||
particlesConfigureLabel = Menu(self.particlesLabel, tearoff = 0)
|
||||
self.particlesLabel['menu'] = particlesConfigureLabel
|
||||
self.particlesLabel.pack(side = LEFT, fill = 'x', expand = 0)
|
||||
self.particlesLabelMenu = Menu(self.particlesLabel, tearoff = 0)
|
||||
self.particlesLabel['menu'] = self.particlesLabelMenu
|
||||
self.particlesLabel.pack(side = LEFT, fill = 'x', expand = 1)
|
||||
self.bind(self.particlesLabel,
|
||||
('Select particles object to configure ' +
|
||||
'or add new particles object to current effect' ))
|
||||
self.particlesLabelMenu.add_command(label = 'Create New Particles',
|
||||
command = self.createNewParticles)
|
||||
self.particlesEnableMenu = Menu(self.particlesLabelMenu, tearoff = 0)
|
||||
self.particlesLabelMenu.add_cascade(label = 'Enable/Disable',
|
||||
menu = self.particlesEnableMenu)
|
||||
self.particlesLabelMenu.add_separator()
|
||||
# Current force
|
||||
self.forceGroupLabel = Menubutton(labelFrame, width = 10,
|
||||
relief = RAISED,
|
||||
borderwidth = 2,
|
||||
font=('MSSansSerif', 14, 'bold'),
|
||||
font=('MSSansSerif', 12, 'bold'),
|
||||
activebackground = '#909090')
|
||||
forceGroupConfigureLabel = Menu(self.forceGroupLabel, tearoff = 0)
|
||||
self.forceGroupLabel['menu'] = forceGroupConfigureLabel
|
||||
self.forceGroupLabel.pack(side = LEFT, fill = 'x', expand = 0)
|
||||
self.forceGroupLabelMenu = Menu(self.forceGroupLabel, tearoff = 0)
|
||||
self.forceGroupLabel['menu'] = self.forceGroupLabelMenu
|
||||
self.forceGroupLabel.pack(side = LEFT, fill = 'x', expand = 1)
|
||||
self.bind(self.forceGroupLabel,
|
||||
('Select force group to configure ' +
|
||||
'or add a new force group to current effect'))
|
||||
self.forceGroupLabelMenu.add_command(
|
||||
label = 'Create New ForceGroup',
|
||||
command = self.createNewForceGroup)
|
||||
self.forceGroupEnableMenu = Menu(self.forceGroupLabelMenu, tearoff = 0)
|
||||
self.forceGroupLabelMenu.add_cascade(label = 'Enable/Disable',
|
||||
menu = self.forceGroupEnableMenu)
|
||||
self.forceGroupLabelMenu.add_separator()
|
||||
# Pack labels
|
||||
labelFrame.pack(fill = 'x', expand = 0)
|
||||
|
||||
# These get updated together
|
||||
self.effectsConfigureMenus = [effectsConfigureMenu,
|
||||
effectsConfigureLabel]
|
||||
self.particlesConfigureMenus = [particlesConfigureMenu,
|
||||
particlesConfigureLabel]
|
||||
self.forceGroupConfigureMenus = [forceGroupConfigureMenu,
|
||||
forceGroupConfigureLabel]
|
||||
|
||||
# Create the toplevel notebook pages
|
||||
self.mainNotebook = Pmw.NoteBook(interior)
|
||||
self.mainNotebook.pack(fill = BOTH, expand = 1)
|
||||
@ -836,7 +801,7 @@ class ParticlePanel(AppShell):
|
||||
if self.forceGroup != None:
|
||||
self.forceGroupLabel['text'] = self.forceGroup.getName()
|
||||
else:
|
||||
self.forceGroupLabel['text'] = ''
|
||||
self.forceGroupLabel['text'] = 'Force Group'
|
||||
|
||||
def updateMenus(self):
|
||||
self.updateEffectsMenus()
|
||||
@ -846,15 +811,14 @@ class ParticlePanel(AppShell):
|
||||
def updateEffectsMenus(self):
|
||||
# Get rid of old effects entries if any
|
||||
self.effectsEnableMenu.delete(0, 'end')
|
||||
for menu in self.effectsConfigureMenus:
|
||||
menu.delete(0, 'end')
|
||||
self.effectsLabelMenu.delete(2, 'end')
|
||||
self.effectsLabelMenu.add_separator()
|
||||
# Add in a checkbutton for each effect (to toggle on/off)
|
||||
keys = self.effectsDict.keys()
|
||||
keys.sort()
|
||||
for name in keys:
|
||||
effect = self.effectsDict[name]
|
||||
for menu in self.effectsConfigureMenus:
|
||||
menu.add_command(
|
||||
self.effectsLabelMenu.add_command(
|
||||
label = effect.getName(),
|
||||
command = (lambda s = self,
|
||||
e = effect: s.selectEffectNamed(e.getName()))
|
||||
@ -871,16 +835,15 @@ class ParticlePanel(AppShell):
|
||||
def updateParticlesMenus(self):
|
||||
# Get rid of old particles entries if any
|
||||
self.particlesEnableMenu.delete(0, 'end')
|
||||
for menu in self.particlesConfigureMenus:
|
||||
menu.delete(0, 'end')
|
||||
self.particlesLabelMenu.delete(2, 'end')
|
||||
self.particlesLabelMenu.add_separator()
|
||||
# Add in a checkbutton for each effect (to toggle on/off)
|
||||
particles = self.particleEffect.getParticlesList()
|
||||
names = map(lambda x: x.getName(), particles)
|
||||
names.sort()
|
||||
for name in names:
|
||||
particle = self.particleEffect.getParticlesNamed(name)
|
||||
for menu in self.particlesConfigureMenus:
|
||||
menu.add_command(
|
||||
self.particlesLabelMenu.add_command(
|
||||
label = name,
|
||||
command = (lambda s = self,
|
||||
n = name: s.selectParticlesNamed(n))
|
||||
@ -897,16 +860,15 @@ class ParticlePanel(AppShell):
|
||||
def updateForceGroupMenus(self):
|
||||
# Get rid of old forceGroup entries if any
|
||||
self.forceGroupEnableMenu.delete(0, 'end')
|
||||
for menu in self.forceGroupConfigureMenus:
|
||||
menu.delete(0, 'end')
|
||||
self.forceGroupLabelMenu.delete(2, 'end')
|
||||
self.forceGroupLabelMenu.add_separator()
|
||||
# Add in a checkbutton for each effect (to toggle on/off)
|
||||
forceGroupList = self.particleEffect.getForceGroupList()
|
||||
names = map(lambda x: x.getName(), forceGroupList)
|
||||
names.sort()
|
||||
for name in names:
|
||||
force = self.particleEffect.getForceGroupNamed(name)
|
||||
for menu in self.forceGroupConfigureMenus:
|
||||
menu.add_command(
|
||||
self.forceGroupLabelMenu.add_command(
|
||||
label = name,
|
||||
command = (lambda s = self,
|
||||
n = name: s.selectForceGroupNamed(n))
|
||||
@ -1106,9 +1068,9 @@ class ParticlePanel(AppShell):
|
||||
lifespanSpread = factory.getLifespanSpread()
|
||||
self.getWidget('Factory', 'Life Span Spread').set(lifespanSpread, 0)
|
||||
mass = factory.getMassBase()
|
||||
self.getWidget('Factory', 'Life Span').set(mass, 0)
|
||||
self.getWidget('Factory', 'Mass').set(mass, 0)
|
||||
massSpread = factory.getMassSpread()
|
||||
self.getWidget('Factory', 'Life Span Spread').set(massSpread, 0)
|
||||
self.getWidget('Factory', 'Mass Spread').set(massSpread, 0)
|
||||
terminalVelocity = factory.getTerminalVelocityBase()
|
||||
self.getWidget('Factory', 'Terminal Velocity').set(terminalVelocity, 0)
|
||||
terminalVelocitySpread = factory.getTerminalVelocitySpread()
|
||||
@ -1471,9 +1433,11 @@ class ParticlePanel(AppShell):
|
||||
color[2]/255.0, color[3]/255.0))
|
||||
# Geom #
|
||||
def setRendererGeomNode(self, event):
|
||||
node = loader.loadOnce(self.rendererGeomNode.get())
|
||||
if (node == None):
|
||||
return None
|
||||
node = None
|
||||
nodePath = loader.loadModel(self.rendererGeomNode.get())
|
||||
if nodePath != None:
|
||||
node = nodePath.node()
|
||||
if (node != None):
|
||||
self.particles.renderer.setGeomNode(node)
|
||||
# Point #
|
||||
def setRendererPointSize(self, size):
|
||||
|
Loading…
x
Reference in New Issue
Block a user