Join GitHub today
GitHub is home to over 28 million developers working together to host and review code, manage projects, and build software together.Sign up
Enable support for alternative LDraw libraries #132
Add support for LDraw VEXIQ Robotics and TENTE Construction libraries.
Version of LPub3D - 2.3.0
LPub3D should provide the same level of integration and convenience as the default LEGO LDraw library
LPub3D currently require additional configuration and setup to allow alternative LDraw library.
Bundle TENTE and VEXIQ LDraw archive libraries to enable the same 'built-in' functionality as that available
While it was always possible to 'configure' LPub3D to accommodate alternative LDraw libraries, this enhancement goes a step further to integrate the TENTE® Construction and VEX IQ® Robotics LDraw libraries allowing the user to switch libraries with a single command line flag:
Beginning with v2.3.3, LPub3D bundles the TENTE and VEX IQ LDraw archive libraries allowing the application to automatically unpack the library to disk should the disk library not exist. On application launch, if the user elects (using the above flags) to use a library that does not exist in the standard searched locations on disk, the application will prompt the user to either select the library path or unpack the bundled library. If unpack is selected, the library is unpacked to the User's application data path in the subdirectory were LPub3D already deposits user data. the extracted is named TENTEParts, and VEXIQParts respectively. For example, the path to the disk library could look like this on Windows:
When you have a disk instance of the LDraw library present, LPub3D will automatically 'validate' the type of library at that location (by checking for an official part), and trigger the comprehensive switch to that library when you enter the path or select it using the LDraw Library path 'Browse' button in the Preferences dialogue. Parts used to validate the library are:
LEGO LDraw Library:
Note that changing from one path to another where the library content is still the same type (e.g. LEGO), or selecting a path where the parts above are not present at the specified location will not trigger a 'library switch'.
Each library is linked to its own: