gvSIG bugs #4767
3D Animations are not persistent
| Status: | Invalid | % Done: | 0% | |
|---|---|---|---|---|
| Priority: | Normal | Spent time: | - | |
| Assignee: | ||||
| Category: | 3D | |||
| Target version: | 2.4.0-2846 (rev. org.gvsig.desktop-2.0.215) | |||
| Severity: | Major | Add-on version: | ||
| gvSIG version: | 2.4.0 | Add-on build: | ||
| gvSIG build: | Add-on resolve version: | |||
| Operative System: | Add-on resolve build: | |||
| Keywords: | Proyecto: | |||
| Has patch: | Hito: | |||
| Add-on name: | Unknown |
Description
3D animations are a very useful tool, but they can't be saved or reloaded at the moment (see #4766). Furthermore, if we create a 3D animation and then save the gvSIG project, when we reopen the project the 3D animation is lost, so they're not even persistent. This is what the gvSIG.log reports:
WARN 72235 AWT-EventQueue-0 org.gvsig.tools.persistence.impl.DefaultPersistentContext$ContextValue -
java.lang.NullPointerException
at org.gvsig.fmap.dal.feature.impl.DefaultFeatureStore.getFeatureCount(DefaultFeatureStore.java:2430)
at org.gvsig.fmap.dal.feature.impl.DefaultFeatureReferenceSelection.getData(DefaultFeatureReferenceSelection.java:330)
at org.gvsig.fmap.dal.feature.impl.DefaultFeatureReferenceSelection.loadFromState(DefaultFeatureReferenceSelection.java:490)
at org.gvsig.fmap.dal.feature.impl.DefaultFeatureSelection.loadFromState(DefaultFeatureSelection.java:717)
at org.gvsig.tools.persistence.impl.SimplePersistenceFactory.loadFromState(SimplePersistenceFactory.java:129)
at org.gvsig.tools.persistence.impl.DefaultPersistentContext.updateObjectInReference(DefaultPersistentContext.java:327)
at org.gvsig.tools.persistence.impl.DefaultPersistentContext.access$100(DefaultPersistentContext.java:76)
at org.gvsig.tools.persistence.impl.DefaultPersistentContext$ContextValue.getObject(DefaultPersistentContext.java:172)
at org.gvsig.tools.persistence.impl.AbstractPersistentState.get(AbstractPersistentState.java:170)
at org.gvsig.tools.persistence.impl.AbstractPersistentState.get(AbstractPersistentState.java:149)
at org.gvsig.fmap.dal.feature.impl.DefaultFeatureStore.loadFromState(DefaultFeatureStore.java:561)
at org.gvsig.tools.persistence.impl.SimplePersistenceFactory.loadFromState(SimplePersistenceFactory.java:129)
at org.gvsig.tools.persistence.impl.DefaultPersistentContext.updateObjectInReference(DefaultPersistentContext.java:327)
at org.gvsig.tools.persistence.impl.DefaultPersistentContext.access$100(DefaultPersistentContext.java:76)
at org.gvsig.tools.persistence.impl.DefaultPersistentContext$ContextValue.getObject(DefaultPersistentContext.java:172)
at org.gvsig.tools.persistence.impl.AbstractPersistentState.get(AbstractPersistentState.java:170)
at org.gvsig.tools.persistence.impl.AbstractPersistentState.get(AbstractPersistentState.java:149)
at org.gvsig.fmap.mapcontext.layers.vectorial.FLyrVect.loadFromState(FLyrVect.java:513)
at org.gvsig.tools.persistence.impl.SimplePersistenceFactory.loadFromState(SimplePersistenceFactory.java:129)
at org.gvsig.tools.persistence.impl.DefaultPersistentContext.updateObjectInReference(DefaultPersistentContext.java:327)
at org.gvsig.tools.persistence.impl.DefaultPersistentContext.access$100(DefaultPersistentContext.java:76)
at org.gvsig.tools.persistence.impl.DefaultPersistentContext$ContextValue.getObject(DefaultPersistentContext.java:172)
at org.gvsig.tools.persistence.impl.DelegatedContainer.getObject(DelegatedContainer.java:123)
at org.gvsig.tools.persistence.impl.DelegatedCollection$1DelegatedIterator.next(DelegatedCollection.java:193)
at org.gvsig.tools.persistence.impl.AbstractPersistentState.getValues(AbstractPersistentState.java:191)
at org.gvsig.tools.persistence.impl.AbstractPersistentState.get(AbstractPersistentState.java:181)
at org.gvsig.tools.persistence.impl.AbstractPersistentState.get(AbstractPersistentState.java:149)
at org.gvsig.tools.persistence.impl.AbstractPersistentState.getIterator(AbstractPersistentState.java:257)
at org.gvsig.fmap.mapcontext.layers.FLayers.loadFromState(FLayers.java:776)
at org.gvsig.tools.persistence.impl.SimplePersistenceFactory.loadFromState(SimplePersistenceFactory.java:129)
at org.gvsig.tools.persistence.impl.DefaultPersistentContext.updateObjectInReference(DefaultPersistentContext.java:327)
at org.gvsig.tools.persistence.impl.DefaultPersistentContext.access$100(DefaultPersistentContext.java:76)
at org.gvsig.tools.persistence.impl.DefaultPersistentContext$ContextValue.getObject(DefaultPersistentContext.java:172)
at org.gvsig.tools.persistence.impl.AbstractPersistentState.get(AbstractPersistentState.java:170)
at org.gvsig.tools.persistence.impl.AbstractPersistentState.get(AbstractPersistentState.java:149)
at org.gvsig.fmap.mapcontext.MapContext.loadFromState(MapContext.java:1639)
at org.gvsig.tools.persistence.impl.SimplePersistenceFactory.loadFromState(SimplePersistenceFactory.java:129)
at org.gvsig.tools.persistence.impl.DefaultPersistentContext.updateObjectInReference(DefaultPersistentContext.java:327)
at org.gvsig.tools.persistence.impl.DefaultPersistentContext.access$100(DefaultPersistentContext.java:76)
at org.gvsig.tools.persistence.impl.DefaultPersistentContext$ContextValue.getObject(DefaultPersistentContext.java:172)
at org.gvsig.tools.persistence.impl.AbstractPersistentState.get(AbstractPersistentState.java:170)
at org.gvsig.tools.persistence.impl.AbstractPersistentState.get(AbstractPersistentState.java:149)
at org.gvsig.app.project.documents.view.BaseViewDocument.loadFromState(BaseViewDocument.java:279)
at org.gvsig.app.project.documents.view.DefaultViewDocument.loadFromState(DefaultViewDocument.java:204)
at org.gvsig.app.project.documents.AbstractDocumentManager.loadFromState(AbstractDocumentManager.java:260)
at org.gvsig.tools.persistence.impl.DefaultPersistentContext.updateObjectInReference(DefaultPersistentContext.java:327)
at org.gvsig.tools.persistence.impl.DefaultPersistentContext.access$100(DefaultPersistentContext.java:76)
at org.gvsig.tools.persistence.impl.DefaultPersistentContext$ContextValue.getObject(DefaultPersistentContext.java:172)
at org.gvsig.tools.persistence.impl.DelegatedContainer.getObject(DelegatedContainer.java:123)
at org.gvsig.tools.persistence.impl.DelegatedCollection$1DelegatedIterator.next(DelegatedCollection.java:193)
at org.gvsig.tools.persistence.impl.AbstractPersistentState.getValues(AbstractPersistentState.java:191)
at org.gvsig.tools.persistence.impl.AbstractPersistentState.get(AbstractPersistentState.java:181)
at org.gvsig.tools.persistence.impl.AbstractPersistentState.get(AbstractPersistentState.java:149)
at org.gvsig.app.project.DefaultProject.loadFromState(DefaultProject.java:691)
at org.gvsig.app.project.DefaultProject.loadState(DefaultProject.java:600)
at org.gvsig.app.project.DefaultProject.loadState(DefaultProject.java:661)
at org.gvsig.app.extension.ProjectExtension.readProject(ProjectExtension.java:562)
at org.gvsig.app.extension.ProjectExtension.execute(ProjectExtension.java:379)
at org.gvsig.app.extension.ProjectExtension.execute(ProjectExtension.java:328)
at org.gvsig.andami.actioninfo.impl.DefaultActionInfo.execute(DefaultActionInfo.java:307)
at org.gvsig.andami.ui.mdiFrame.MDIFrame.actionPerformed(MDIFrame.java:993)
at javax.swing.AbstractButton.fireActionPerformed(AbstractButton.java:2022)
[...]
History
#1
Updated by Antonio Falciano over 8 years ago
- Target version changed from 2.4.0-2850-final (rev. org.gvsig.desktop-2.0.220) to 2.4.0-2846 (rev. org.gvsig.desktop-2.0.215)
- Status changed from New to Invalid
After further test, I've discovered that the animation is saved in the project, but a bit hidden because to reload it (after opening the project) I have to:
- open a 3D view;
- open the Animation manager;
- select the animation;
- select the type of 3D view;
- finally, click on Execute.
I set the ticket as Invalid.