Joined: May 28, 2015
Post Count: 607
Status:
Offline
Partially functional library edition
Hi,
When I edit the properties of a library to change the lights, some furniture disappear when I open it in Furniture Library Editor and others are not visible after import in SH3D.
Have you ever had this kind of problem?
----------------------------------------
EnkoNyito
Joined: May 12, 2013
Post Count: 1545
Status:
Offline
Re: Partially functional library edition
Do not know if it is the same, but this happens quite often when I have made a mistake while editing PluginFurnitureCatalog.properties, for instance: - cutting and pasting properties and forgetting to change the numeric identifier (see this post in thread 4765), - putting in a comma as a decimal separator, - some other illegal line.
It seems to me that FurnitureLibraryEditor and SH3D then stops reading objects from the offending line on.
France
Joined: Nov 7, 2005
Post Count: 9420
Status:
Offline
Re: Partially functional library edition
enkonyito, would you have an example of particular sh3f file that causes the issue you report? okh, if the PluginFurnitureCatalog.properties is incorrect, the Furniture Library Editor as well as Sweet Home 3D don't try to set some default values that could correct the wrong lines. But please keep hope, I'll try to improve the Furniture Library Editor one day to avoid you to be obliged to edit that file.
----------------------------------------
Emmanuel Puybaret, Sweet Home 3D creator
Joined: May 28, 2015
Post Count: 607
Status:
Offline
Re: Partially functional library edition
okh, I'm based on your SVGPath guide to change the lights properties in the PluginFurnitureCatalog.properties file. I check that digital IDs are identical for the same object, I use Furniture Library Editor in English since the values are displayed with the decimal point. What is meant by illegal line?
Emmanuel, as I was not able to send you a private message I sent to you by email libraries I have edited and are problematic.
----------------------------------------
EnkoNyito
Joined: May 12, 2013
Post Count: 1545
Status:
Offline
Re: Partially functional library edition
Hi again, had a quick look at your libraries. FurnitureLibraryEditor / SH3D stopped loading after model #5. So it seemed the error was related to model #6. Turns out there was only one specification of colour and diameter, not three (not that easy to spot at a glance, I keep doing similar errors all the time) . If you add the missing properties, for instance with the values in red below, the library works. Also sent you a private message about some copyright issues you may want to consider. ok
Joined: May 12, 2013
Post Count: 1545
Status:
Offline
Re: Partially functional library edition
..the Furniture Library Editor as well as Sweet Home 3D don't try to set some default values that could correct the wrong lines...
Maybe that is even scarier, then I see my own confusion rising to even higher levels by getting strange default values. Actually, I think the perfect interface is the one you implemented with the SVG input, that it turns red when values are invalid. Just an error message could be a decent substitute (model #6 invalid... or something).
However, system works quite well as it is once you are used to it. But the real time-saver would be accessing all properties from the FurnitureLibbraryEditor (if only opening PluginFurnitureCatalog.properties as a text file - but then maybe the original file should be saved so it is possible to revert).
Joined: May 28, 2015
Post Count: 607
Status:
Offline
Re: Partially functional library edition
If you add the missing properties, for instance with the values in red below, the library works.
With the addition of the appropriate number of properties values, the library is fully displayed in the editor. As against some furniture are always ignored by SH3D regardless of the order.
As free 3D models have different licenses, can they be grouped under a common license in one library for redistribution? If yes which one?
----------------------------------------
EnkoNyito
Joined: May 12, 2013
Post Count: 1545
Status:
Offline
Re: Partially functional library edition
As free 3D models have different licenses, can they be grouped under a common license in one library for redistribution? If yes which one?
Afraid not. I do not think it is possible to find a "lowest common denominator" to match the different licences.
If I look at your library, my initial feeling is that you at least should provide information about the changed model. The information property in SH3D is quite useful for this: information#6=Original model provided by Snduc (licence xx xx xx) in library <a href="xxx">, SH3D light properties modified by enkonyito..
My concern is if SH3D reads two models with identical id tag, in this case: id#6=Snduc#neon, will the second overwrite the first? If it does, Snduc might not be too pleased: that his/her well thought out properties were erased/altered by someone else. But even if the original is not overwritten, it should be made clear that the light properties are not the original ones.
This virtual gallery is an example of how you could use the information property so the info follows the model in SH3D.
France
Joined: Nov 7, 2005
Post Count: 9420
Status:
Offline
Re: Partially functional library edition
Sorry for my late answer, but okh seems to have found the issues in your PluginFurnitureCatalog.properties file, right?
About id management, when a piece of furniture with an existing id is read, it's simply ignored. So, what is important is to know which piece will be read first when a piece is found twice or more with the same id. Furniture is read first from the default library (the ones listed in DefaultFurnitureCatalog.properties and ContributedFurnitureCatalog.properties, and stored in the Furniture.jar installed file). Then, the ones in sh3f files are read in reverse alphabetical order and reverse order of their version number, so a model with a given id will be read in a file named xyz.2.sh3f and ignored if found again in xyz.1.sh3f or in xxx.2.sh3f. This rule allows to give a higher priority to newer libraries and is used also for sh3t textures files, sh3p plug-in files and sh3l languages files. Finally, furniture that was individually imported is read, but as you can't specify an id when you import an individual model, it's not important in this case.
Unfortunately, this rule forbids to replace a piece found in the default library by an other one.
----------------------------------------
Emmanuel Puybaret, Sweet Home 3D creator
Joined: May 12, 2013
Post Count: 1545
Status:
Offline
Re: Partially functional library edition
.. rule forbids to replace a piece found in the default library by an other one.
Thanks, good to know. This approach makes a lot of sense to me. New and modified models must be indicated as such. In the case of the modified lights in (thread 6290, it looks as if the id# has been taken out of the .properties file and information# indication modification been added, so that should solve the problem.