Celestia 1.3.2 pre 10
It seems not (unless I'm doing something wrong),I tried it with different meshes and then with Seldens example of swapping the Moon for Phobos and it only shows empty space until the beginning time set for the second texture (or mesh).When you reach the given time it displays OK,but nothing before this,Jestr
It worked for me using simple objects as planets and spherical moons. I don't know about models. Perhaps celestia has a problem there?.
Have you tried using, let's say 10 subsequent models? Is only the last one displayed or only the first one not displayed? Probably a problem with loading time - is your display time already over until your first model has loaded?
maxim
Have you tried using, let's say 10 subsequent models? Is only the last one displayed or only the first one not displayed? Probably a problem with loading time - is your display time already over until your first model has loaded?
maxim
-
- Developer
- Posts: 1863
- Joined: 21.11.2002
- With us: 22 years 4 months
Jestr,
Remember that objects that are defined with Beginning/Ending only exist between those two times. Don't think of them as different shapes for the same object. Each one is separate and only exists for a short while.
In the current version of Celestia, there is no way to hide object names. You'll see the names of all the different Beginning/Ending objects in the lists,
even when you use the same word for each of the different names. Then you'll see that same word many times. My understanding is that Chris hopes to add a "hidden name" feature to some future version of Celestia.
However, here is a trick you can use with the current version of Celestia:
Name all of the Beginning/Ending objects " " -- the space character. Then their names won't be visible in Celestia's window. (I suspect the lists will look strange with all the blank entries, though.)
Create an object with the name that you want to watch, but create it as
Class "invisible"
Define it with exactly the same orbit as all of your Beginning/Ending objects.
Then you can follow the invisible named object and watch the "blank name" Beginning/Ending objects appear and disappear.
Would this work for you?
Remember that objects that are defined with Beginning/Ending only exist between those two times. Don't think of them as different shapes for the same object. Each one is separate and only exists for a short while.
In the current version of Celestia, there is no way to hide object names. You'll see the names of all the different Beginning/Ending objects in the lists,
even when you use the same word for each of the different names. Then you'll see that same word many times. My understanding is that Chris hopes to add a "hidden name" feature to some future version of Celestia.
However, here is a trick you can use with the current version of Celestia:
Name all of the Beginning/Ending objects " " -- the space character. Then their names won't be visible in Celestia's window. (I suspect the lists will look strange with all the blank entries, though.)
Create an object with the name that you want to watch, but create it as
Class "invisible"
Define it with exactly the same orbit as all of your Beginning/Ending objects.
Then you can follow the invisible named object and watch the "blank name" Beginning/Ending objects appear and disappear.
Would this work for you?
Selden
Cheers Selden I know all these tricks,but I was wanting to replace a spacecraft on an xyz orbit with the same one on an elliptical orbit,and testing out replace or modify command,replacing one with another named the same but different orbit.Apparently the replace (and modify) dont work the same with meshes as with planets/moons.In your example,you suggest replacing Phobos with the Moon,but if you add a timeline for this to happen,you only get the Moon after its beginning date,no Phobos at all.Jestr
Yup. That's the way it works.
There's no way for the same object to transfer from one orbit to another while Celestia is running.
However, you can have two different objects with the same name following those two different orbits.
You can give the first object an Ending time that corresponds to the end of its xyz trajectory.
You can give the second object a Beginning time that's the same value as the Ending time of the first. That's when it will appear in the elliptical orbit.
You'll have to be careful to position that second (orbiting) object so it's in the same location in space as the first (trajectory) object at that Ending/Beginning time.
It'll look like the same object is involved, but it isn't really.
That's how, in Celestia, the Huygens model flies with Cassini to Saturn and then later flies to Titan.
There's no way for the same object to transfer from one orbit to another while Celestia is running.
However, you can have two different objects with the same name following those two different orbits.
You can give the first object an Ending time that corresponds to the end of its xyz trajectory.
You can give the second object a Beginning time that's the same value as the Ending time of the first. That's when it will appear in the elliptical orbit.
You'll have to be careful to position that second (orbiting) object so it's in the same location in space as the first (trajectory) object at that Ending/Beginning time.
It'll look like the same object is involved, but it isn't really.
That's how, in Celestia, the Huygens model flies with Cassini to Saturn and then later flies to Titan.
Selden
Jestr,
I'm sorry to say that the only way I can reproduce the problems you're describing is by using "damaged" Beginning and Ending times. I'm guessing that you're using quoted Gregorian dates instead of numeric Julian dates. Messed up Gregorian dates don't generate fatal errors. Instead, Celestia just ignores them.
Here's a zip archive which contains 5 different objects. They alternate between outer and inner cubes and grow with time. I used Julian dates for the Beginning and Ending times, and the objects all replace one another as they should.
http://www.lns.cornell.edu/~seb/celestia/begend_obj.zip
I'm sorry to say that the only way I can reproduce the problems you're describing is by using "damaged" Beginning and Ending times. I'm guessing that you're using quoted Gregorian dates instead of numeric Julian dates. Messed up Gregorian dates don't generate fatal errors. Instead, Celestia just ignores them.
Here's a zip archive which contains 5 different objects. They alternate between outer and inner cubes and grow with time. I used Julian dates for the Beginning and Ending times, and the objects all replace one another as they should.
http://www.lns.cornell.edu/~seb/celestia/begend_obj.zip
Selden
Thanks for your patience with me on this Selden,I'm trying to test how the Replace (or Modify) commands work.I hoped that it might be possible to Replace the same object with a different mesh (or just a texture) over time,but I see now that it doesnt even work with a texture (unless I'm doing something stupid).I tried this
and changed 'solarsys.ssc' to give the normal Moon definition an Ending time of 2451827.0,and using your textures,but it seems only the last one shows up.Obviously you can get the above working having lots of different 'Moons',but I hoped it might be possible for perhaps making something like Franks Primitive Earth addon,where you can keep changing meshes and or textures over a set time period.Another example might be to orientate Cassini in a particular direction (different to the usual) for a particular time period.I guess its not possible without making it a totally different object,Jestr
Code: Select all
Replace "Moon" "Sol/Earth"
{
Texture "object1.jpg"
Radius 1737.53
# Oblateness 0.002
CustomOrbit "moon"
EllipticalOrbit {
Period 27.321661
SemiMajorAxis 384400
Eccentricity 0.054900
Inclination 5.15
}
Obliquity 23.45 # mean axis
EquatorAscendingNode 0.0 # mean axis
RotationOffset 38
Albedo 0.12
Beginning 2451827.0
Ending 2451827.1
}
Replace "Moon" "Sol/Earth"
{
Texture "object2.jpg"
Radius 1737.53
# Oblateness 0.002
CustomOrbit "moon"
EllipticalOrbit {
Period 27.321661
SemiMajorAxis 384400
Eccentricity 0.054900
Inclination 5.15
}
Obliquity 23.45 # mean axis
EquatorAscendingNode 0.0 # mean axis
RotationOffset 38
Albedo 0.12
Beginning 2451827.1
Ending 2451827.2
}
Replace "Moon" "Sol/Earth"
{
Texture "object3.jpg"
Radius 1737.53
# Oblateness 0.002
CustomOrbit "moon"
EllipticalOrbit {
Period 27.321661
SemiMajorAxis 384400
Eccentricity 0.054900
Inclination 5.15
}
Obliquity 23.45 # mean axis
EquatorAscendingNode 0.0 # mean axis
RotationOffset 38
Albedo 0.12
Beginning 2451827.2
Ending 2451827.3
}
Replace "Moon" "Sol/Earth"
{
Texture "object4.jpg"
Radius 1737.53
# Oblateness 0.002
CustomOrbit "moon"
EllipticalOrbit {
Period 27.321661
SemiMajorAxis 384400
Eccentricity 0.054900
Inclination 5.15
}
Obliquity 23.45 # mean axis
EquatorAscendingNode 0.0 # mean axis
RotationOffset 38
Albedo 0.12
Beginning 2451827.3
Ending 2451827.4
}
Replace "Moon" "Sol/Earth"
{
Texture "object5.jpg"
Radius 1737.53
# Oblateness 0.002
CustomOrbit "moon"
EllipticalOrbit {
Period 27.321661
SemiMajorAxis 384400
Eccentricity 0.054900
Inclination 5.15
}
Obliquity 23.45 # mean axis
EquatorAscendingNode 0.0 # mean axis
RotationOffset 38
Albedo 0.12
Beginning 2451827.4
Ending 2451827.5
}
and changed 'solarsys.ssc' to give the normal Moon definition an Ending time of 2451827.0,and using your textures,but it seems only the last one shows up.Obviously you can get the above working having lots of different 'Moons',but I hoped it might be possible for perhaps making something like Franks Primitive Earth addon,where you can keep changing meshes and or textures over a set time period.Another example might be to orientate Cassini in a particular direction (different to the usual) for a particular time period.I guess its not possible without making it a totally different object,Jestr
Jestr,
Replace happens at load time.
Each time you use it, it entirely replaces the existing definition of an object. The old definition is deleted. When Celestia has finished initializing, only the last Replace definition is available.
So what you describe is exactly what should be happening.
For Celestia to be able to draw an object while Celestia is running, that object must still be in its database. You have to use Add so that all of the other object definitions with the same name are still known to Celestia after it has finished initializing.
While it's running, Celestia decides whether or not to draw one of those objects depending on the values of Beginning and Ending and the current value of Time within the simulation.
I hope this helps clarify what's supposed to be happening.
Replace happens at load time.
Each time you use it, it entirely replaces the existing definition of an object. The old definition is deleted. When Celestia has finished initializing, only the last Replace definition is available.
So what you describe is exactly what should be happening.
For Celestia to be able to draw an object while Celestia is running, that object must still be in its database. You have to use Add so that all of the other object definitions with the same name are still known to Celestia after it has finished initializing.
While it's running, Celestia decides whether or not to draw one of those objects depending on the values of Beginning and Ending and the current value of Time within the simulation.
I hope this helps clarify what's supposed to be happening.
Selden