I decided to share the current 1.6 Alpha version as I'm very keen to get some feedback, especially on the ROTSTEP stuff.
Get it here for windows or Linux
I only compiled the 64 bit Linux version, if someone needs the 32bit one let me know.
As this is a Alpha version it might be very unstable and backwards compatibility with the next alpha or even beta will not be guaranteed. So it is highly recommended to keep them separate from other releases.
This version includes the following major features:
Adjustable hotkey assignments.
Macro scripting.
Many scripting API extensions including many new lua objects.
Full ROTSTEP support.
Many tweaks and some small features, see change log below.
The rotstep rotation can be used while navigating through steps by enabling the new NSR/ASR option in the compass. There is also a new (changeable) shortcut ctrl+b which let you edit the current step's meta.
As a result of the hotkey changes some of the existing hotkeys might act slightly different or might be missing as I haven't had time to double check them all.
Full changelog:
Get it here for windows or Linux
I only compiled the 64 bit Linux version, if someone needs the 32bit one let me know.
As this is a Alpha version it might be very unstable and backwards compatibility with the next alpha or even beta will not be guaranteed. So it is highly recommended to keep them separate from other releases.
This version includes the following major features:
Adjustable hotkey assignments.
Macro scripting.
Many scripting API extensions including many new lua objects.
Full ROTSTEP support.
Many tweaks and some small features, see change log below.
The rotstep rotation can be used while navigating through steps by enabling the new NSR/ASR option in the compass. There is also a new (changeable) shortcut ctrl+b which let you edit the current step's meta.
As a result of the hotkey changes some of the existing hotkeys might act slightly different or might be missing as I haven't had time to double check them all.
Full changelog:
Code:
--==1.6 Alpha 1 (30-April-2016)==--
Fixed:
- [GUI] Opening a new window now uses the mouse position correctly for its initial position.
- [GUI] Fixed misc refreshment issues when using a pinned down menu while switching window/views.
- [GUI] Right mouse clicks to open a menu will no longer fail to update active window.
- [Rendering] LDraw TEXMAP parts will no longer render wrong on OpenGL implementations demanding power of two sized textures.
- [Path] Quad validation during loading now uses the same restrains as the generator preventing some generated quads to be deemed 'non flat' during next file load.
- [Springs] Fixed conditional lines between sections.
- [Scripts] Changing the script for a model already associated with one will no longer crash the program.
- [Scripts] Assigning color 16 to a reference will no longer crash/hang the program.
- [Scripts] group:getRef() using an out of range index will no longer crash the program.
- [Scripts] Strings are no longer used as integers when e.g. '1234' is given as a parameter.
- [Scripts] ldc.group() or group:link() will no longer potentially hang / crash the program when used with the recursive option.
- [Scripts] ldc.subfile('someModel.ldr') will no longer result in an unlinked subfile if the 'someModel.ldr' is the editing sessions main model.
- [Scripts] vector:getSignedAngle() no longer returns wrong angles when the supplied vectors are not located on the plane the normal indicates.
- [PartBin] Remove facorite now works as it should.
- [PartBin] matrix:getInvertedPos and matrix:getInvertedOri results are no longer switched.
- [Editing] Inlining multiple items now applies the colors correctly for all items instead of just the first one.
- [Editing] Trackball rotation will no longer make the model disappear in certain situations where the mouse left the program window while rotating.
- [Editing] Double clicking an item in the missing files dialog will no longer crash the program.
- [Editing] The selection is no longer rendered at a wrong/different location in editing views while working with it in the source window.
- [Editing] Canceling a selection cloning action now also correctly update the source window.
- [Editing] Inserting a template will no longer always add it to the last step but to the current one like expected.
- [Editing] Moving a selection to a new submodel will now place the reference to that new model at the same location of the selection start.
- [Animations] Animation playback no longer fails to refresh some of the views while using split editor views.
Improved/Changed:
- [LDraw] You can now use a zip file without 'part' and 'p' folders in it as an unofficial library. It will use the root of the zip as if it where 'parts'.
- [Menus] Moved the editing pin/rectangle status item to the editing settings menu.
- [Menus] Changed the keyboard interaction mode item into radio items so each item can be assigned a hotkey.
- [GUI] As a result of the internal changes made for dynamic hotkeys the menubar will reset to a new default when upgrading to 1.6 the first time on an existing setup.
- [Editing] Removed the edit view interaction after adding content using the source window as it might be very confusing in mo
- [Editing] Copy/paste while using the source window will no longer use the copy paste options. It will work with the clipboard on a one on one basis more closely to a normal text editor.
- [Editing] All STEPPING logics will now see STEP metas as the end indication of a step as the new ROTSTEP support demands this kind of behavior.
- [Editing] Dropping an external file into LDCad while nothing is open yet will now load it immediately.
- [Editing] Moving a selection to a submodel will now offer to create an unofficial part if the selection contains scaled references.
- [SourceWin] Improved the step follow option, it now tries to bring the entire step into view.
- [Scripts] Upgraded to lua 5.3
- [PartBin] Added an optional unofficial part indication to bin cells.
Added:
- [GUI] All hotkeys can now be changed and almost any menu item/general action can be assigned one if needed. Management is done using the new hotkey config dialog.
- [LDraw] Added full support of the ROTSTEP meta as an extension to the plain STEP one.
- [Scripting] Macro scrips can now be used to extend LDCad's functionality dynamically. Management/execution of scripted features are available through the new script menu.
- [Scripting] Added the ldc.macro object for registering macro scripts.
- [Scripting] Added the ldc.dialog object for scripted user interaction.
- [Scripting] Added the ldc.action object for scripted callbacks to any hotkey configurable feature.
- [Scripting] Added the ldc.camera object for view rotation interaction.
- [Scripting] Added the ldc.srcLine object for generic LDraw line interaction.
- [Scripting] Added the ldc.view object for access to an editing window.
- [Scripting] Added the ldc.selection object for access to a current selection.
- [Scripting] Extended the ldc.group, ldc.subfile, ldc.refLine object to work with the new srcLine and selection features.
- [Scripting] Extended the ldc.matrix and ldc.vector object with some lowlevel access functions which make it easier to manipulate e.g. part orientations etc.
- [Scripts] Added a collection of default macro scripts containing a samples and tools script.
- [Animations] Dynamic parts will now be regenerated during playback if needed.
- [Editing] Added a property editor for the step meta (CTRL+B for the current step) which can be used to switch between a normal and ROTSTEP meta or set the rotation angles in a convenient way.
- [Editing] Added an option (hotkey 'B', and also in the compass) to enable the rotation stepping information during building step navigation.
- [Editing] Added an option to the header dialog which controls when and if it is shown for new subfiles.
- [Editing] Added 'all off lib parts', 'all unoff lib parts' and 'all unofficial parts' itmes to the selection menu.
Known issues and limitations:
- [LDraw] Scientific notation (e.g.. 1.323E12) is not supported in LDraw line content.
- [LDraw] LDraw files containing concave quads will render wrong as they are currently processed as if they are twisted.
- [Path] Using circle points at 180 degrees difference to each other might result in a weird rendering after reloading the file using it. The circular points are not designed for this kind of usage, try using bezier points instead.
- [Scripting] File changes to lua files will only be detected for the main script, if the script uses additional modules (include files) a manual reload will be required after changes to them.
- [Editing] During nesting mode some parts will be rendered at the wrong place while moving existing parts around, if those parts live in a sub model that's used more then once in the main model of the session. This is not a big issue because one set of the selection will be at the correct place, and your eye will be on them most of the time.