(2016-08-05, 7:45)Jetro de Château Wrote:(2016-08-05, 0:58)Trevor Sandy Wrote: From my understanding LDCad templates are created with the name you define - or you can accept the default name proposed. Therefore, you simply edit the substitute parts list file with the template name you defined as the default part and the shortcut or whatever representation you want as the alternate/substitute:
In this example the templates extension have been changed to .dat but this is not necessary to have the behaviour depicted.
I know very well this configuration. One may be likely to think that with the .ldr extension and 0 !LDRAW_ORG Unofficial_Model meta, the template is a model but, in fact, if you look at the source you will see it is also declared as a part with the meta 0 UNOFFICIAL PART; hence, why it automatically shows up in the LPub3D PLI.
I have been asking Roland for some time to consider allowing users the option to save a template with all the attributes of a part (i.e. .dat extension, 0 !LDRAW_ORG Unofficial_Part) but I understand this would conflict with the LDraw rules of 'unofficial' parts being parts that have not yet been approved. I can understand this position, even if I don't like it, so I have adapted LPub3D to recognize the 0 UNOFFICIAL PART meta; therefore, recognizing LDCad templates as parts (versus models) which they almost always are.
I could not reproduce your behaviour when I tested with 0 !LPUB PLI BEGIN SUB <part> <colour>/!LPUB PLI END metas. For me the behaviour was as expected.
Cheers,
I had a feeling it might work that way, but my concern is that if I want to use the same template more than once I will be forced to rename the second and so substitution won't work.
Anyway, my concern wasn't so much with the substitution. I added that because I thought it odd the unofficial part did show up in the PLI if inside a template, but not if used directly. My real "problem" is that unofficial parts are not included in the PLI and I'm trying to figure out why (mainly because I really want them to show up).
I tried with a few more unofficial parts that weren't WeDo 2.0 related to see if it made any difference, but none show up in the PLI or BOM.
For now I guess I'll just dump the unofficial parts in the official parts folder to circumvent the issue...
---------------------------
I placed the "offending" parts in the official library and got no results. Now I am really lost.
I searched around a little more and checked out the refresh options in the Tools menu. Those allow you to download the latest version of the complete ldraw library or a specialised LPub version of the unofficial files (lbupdldrawunf.zip) which are then stored in C:/user/<username>/Appdata/Local/LPub3D Software/Lpub3D/libraries. However, under Configuration > Preferences the path to the LDraw root directory is selected as a different location (C:\Users\Public\Documents\LDraw).
Could this be the source of the conflict? Is LPub not looking where I told it to (and where my unofficial parts are included in both the unofficial and official libraries)?
Jetro,
Quote:I had a feeling it might work that way, but my concern is that if I want to use the same template more than once I will be forced to rename the second and so substitution won't work.You don't have to rename anything unless you want the PLI representation to somehow change every time you use the template - this would be very unusual because normally, the PLI representation should be a static view of the part across all PLIs/BOM etc...
Don't add any unofficial parts to your official library - archive or disc. If you want to consolidate, add them to your unofficial/parts directory instead. Keep in mind the archive libraries (complete.zip, lpub3dldrawunf.zip) are used exclusively by the 3D Viewer. Renderers use the disc library files.
Your behaviour is really unusual because normally if the part is rendered in the CSI then there should be a PLI representation. In the LPub3D directory created in the directory where you host your model file, you can check in the LPub3D/parts directory and see if the PLI parts are being rendered. If they are not, you can then check in the LPub3D/tmp directory to see if the PLI files are being generated for your custom parts. It's very easy to see all the CSI part files, if you have set LDView w/multiple files single call rendering - in such case each PLI file will be created with a file name starting with the part name. Open the PLI file with LDView to check if all is ok with the file. If the PLI files exist but no part images generated, you can also check to see if your naming convention for your custom parts is consistent.
Cheers,