*** empty log message ***

This commit is contained in:
Mark Mine 2001-01-31 18:36:27 +00:00
parent b827edb766
commit 5e382927ae
4 changed files with 37 additions and 5 deletions

View File

@ -107,9 +107,9 @@ class ForceGroup(DirectObject):
ftype = 'FTONEOVERRCUBED' ftype = 'FTONEOVERRCUBED'
forceCenter = f.getForceCenter() forceCenter = f.getForceCenter()
if isinstance(f, LinearSinkForce): if isinstance(f, LinearSinkForce):
file.write(fname + ' = LinearSinkForce(Vec3(%.4f, %.4f, %.4f), LinearDistanceForce.%s, %.4f, %.4f, %d)\n' % (forceCenter[0], forceCenter[1], forceCenter[2], ftype, radius, amplitude, massDependent)) file.write(fname + ' = LinearSinkForce(Point3(%.4f, %.4f, %.4f), LinearDistanceForce.%s, %.4f, %.4f, %d)\n' % (forceCenter[0], forceCenter[1], forceCenter[2], ftype, radius, amplitude, massDependent))
elif isinstance(f, LinearSourceForce): elif isinstance(f, LinearSourceForce):
file.write(fname + ' = LinearSourceForce(Vec3(%.4f, %.4f, %.4f), LinearDistanceForce.%s, %.4f, %.4f, %d)\n' % (forceCenter[0], forceCenter[1], forceCenter[2], ftype, radius, amplitude, massDependent)) file.write(fname + ' = LinearSourceForce(Point3(%.4f, %.4f, %.4f), LinearDistanceForce.%s, %.4f, %.4f, %d)\n' % (forceCenter[0], forceCenter[1], forceCenter[2], ftype, radius, amplitude, massDependent))
elif isinstance(f, LinearFrictionForce): elif isinstance(f, LinearFrictionForce):
file.write(fname + ' = LinearFrictionForce(%.4f, %.4f, %d)\n' % (f.getCoef(), amplitude, massDependent)) file.write(fname + ' = LinearFrictionForce(%.4f, %.4f, %d)\n' % (f.getCoef(), amplitude, massDependent))
elif isinstance(f, LinearJitterForce): elif isinstance(f, LinearJitterForce):
@ -117,7 +117,7 @@ class ForceGroup(DirectObject):
elif isinstance(f, LinearNoiseForce): elif isinstance(f, LinearNoiseForce):
file.write(fname + ' = LinearNoiseForce(%.4f, %d)\n' % (amplitude, massDependent)) file.write(fname + ' = LinearNoiseForce(%.4f, %d)\n' % (amplitude, massDependent))
elif isinstance(f, LinearVectorForce): elif isinstance(f, LinearVectorForce):
vec = f.getVector() vec = f.getLocalVector()
file.write(fname + ' = LinearVectorForce(Vec3(%.4f, %.4f, %.4f), %.4f, %d)\n' % (vec[0], vec[1], vec[2], amplitude, massDependent)) file.write(fname + ' = LinearVectorForce(Vec3(%.4f, %.4f, %.4f), %.4f, %d)\n' % (vec[0], vec[1], vec[2], amplitude, massDependent))
elif isinstance(f, AngularForce): elif isinstance(f, AngularForce):
if isinstance(f, AngularVectorForce): if isinstance(f, AngularVectorForce):

View File

@ -133,6 +133,16 @@ class ParticleEffect(NodePath):
f.write('self.particlesDict = {}\n') f.write('self.particlesDict = {}\n')
f.write('self.forceGroupDict = {}\n') f.write('self.forceGroupDict = {}\n')
pos = self.getPos()
hpr = self.getHpr()
scale = self.getScale()
f.write('self.setPos(%0.3f, %0.3f, %0.3f)\n' %
(pos[0], pos[1], pos[2]))
f.write('self.setHpr(%0.3f, %0.3f, %0.3f)\n' %
(hpr[0], hpr[1], hpr[2]))
f.write('self.setScale(%0.3f, %0.3f, %0.3f)\n' %
(scale[0], scale[1], scale[2]))
# Save all the particles to file # Save all the particles to file
num = 0 num = 0
for p in self.particlesDict.values(): for p in self.particlesDict.values():

View File

@ -200,8 +200,24 @@ class Particles(ParticleSystem.ParticleSystem):
file.write(targ + '.setRenderer(\"' + self.rendererType + '\")\n') file.write(targ + '.setRenderer(\"' + self.rendererType + '\")\n')
file.write(targ + '.setEmitter(\"' + self.emitterType + '\")\n') file.write(targ + '.setEmitter(\"' + self.emitterType + '\")\n')
# System parameters
file.write(targ + ('.setPoolSize(%d)\n' %
int(self.getPoolSize())))
file.write(targ + ('.setBirthRate(%.4f)\n' %
self.getBirthRate()))
file.write(targ + ('.setLitterSize(%d)\n' %
int(self.getLitterSize())))
file.write(targ + ('.setLitterSpread(%d)\n' %
self.getLitterSpread()))
file.write(targ + ('.setSystemLifespan(%.4f)\n' %
self.getSystemLifespan()))
file.write(targ + ('.setLocalVelocityFlag(%d)\n' %
self.getLocalVelocityFlag()))
file.write(targ + ('.setSystemGrowsOlderFlag(%d)\n' %
self.getSystemGrowsOlderFlag()))
file.write('# Factory parameters\n') file.write('# Factory parameters\n')
file.write(targ + '.factory.setLifespanBase(%.4f)\n' % self.factory.getLifespanBase()) file.write(targ + ('.factory.setLifespanBase(%.4f)\n' %
self.factory.getLifespanBase()))
file.write(targ + '.factory.setLifespanSpread(%.4f)\n' % self.factory.getLifespanSpread()) file.write(targ + '.factory.setLifespanSpread(%.4f)\n' % self.factory.getLifespanSpread())
file.write(targ + '.factory.setMassBase(%.4f)\n' % self.factory.getMassBase()) file.write(targ + '.factory.setMassBase(%.4f)\n' % self.factory.getMassBase())
file.write(targ + '.factory.setMassSpread(%.4f)\n' % self.factory.getMassSpread()) file.write(targ + '.factory.setMassSpread(%.4f)\n' % self.factory.getMassSpread())

View File

@ -975,6 +975,12 @@ class ParticlePanel(AppShell):
title = 'Load Particle Effect', title = 'Load Particle Effect',
parent = self.parent) parent = self.parent)
if particleFilename: if particleFilename:
# Delete existing particles and forces
pe = self.particleEffect
for p in pe.getParticlesList():
pe.removeParticles(p)
for fg in pe.getForceGroupList():
pe.removeForceGroup(fg)
self.particleEffect.loadConfig(Filename(particleFilename)) self.particleEffect.loadConfig(Filename(particleFilename))
self.selectEffectNamed(self.particleEffect.getName()) self.selectEffectNamed(self.particleEffect.getName())
@ -1718,7 +1724,7 @@ class ParticlePanel(AppShell):
forceName = 'Vector Force-' + `count` forceName = 'Vector Force-' + `count`
frame = self.createForceFrame(forcePage, forceName, force) frame = self.createForceFrame(forcePage, forceName, force)
self.createLinearForceWidgets(frame, pageName, forceName, force) self.createLinearForceWidgets(frame, pageName, forceName, force)
vec = force.getVector() vec = force.getLocalVector()
self.createVector3Entry(frame, pageName, forceName, self.createVector3Entry(frame, pageName, forceName,
'Set force direction and magnitude', 'Set force direction and magnitude',
command = setVec, command = setVec,