LPub3D Changelog

What's new in LPub3D 2.4.6.0.3111

Jan 27, 2023
  • Features, enhancements, fixes and changes:
  • Enhancement - Add submodels to file load status #636
  • Enhancement - Add reset viewer assembly display menu action #652
  • Enhancement - Add specify latitude longitude to viewpoints #654
  • Enhancement - Build modifications - step-group step in the visual editor #635
  • Enhancement - Cover page, bill of material, export and error banners #649
  • Enhancement - Logging - update messaging and log types #634
  • Enhancement - Messages - add option to abort processing on error #643
  • Enhancement - Prompt user to archive unofficial parts #628
  • Enhancement - Separate bill of material working folder from parts #659
  • Enhancement - Show errors and warnings on export or continuous process completion #639
  • Change - Automatically display the visual editor default camera properties #658
  • Change - Build modification - declaration and action in same STEP #633
  • Change - Build modifications - visual editor build mod actions in same STEP #666
  • Change - Check BUILD_MOD action is after MULTI_STEP END #644
  • Change - Change reset image menu action description to refresh image #623
  • Change - Display clear cache message in information dialog #660
  • Change - Loading inline unofficial parts, subparts and primitives #667
  • Change - Parse top-model INCLUDE file at model file load #631
  • Change - Re-use Build Mod name (ID) #663
  • Fix - Apply ROTSTEP to step-group STEP #653
  • Fix - Build modification - correct Get BuildMod INVALID StepIndex message #627
  • Fix - Build modification - correct jump forward parse error #622
  • Fix - Build modification - correct navigate backward parse error #621
  • Fix - Build modification - REMOVE/APPLY action must be placed after MULTI_STEP END #664
  • Fix - Build modification - unable to validate nested build mod level #642
  • Fix - Build modification - visual editor build mod actions #651
  • Fix - Configuration preferences dialog cutoff/min window size #616
  • Fix - Crash when generating BOM images #657
  • Fix - Enable navigation actions #656
  • Fix - Export to PDF abnormal behaviour #624
  • Fix - Failed to resolve file at path #561
  • Fix - Moving a part in the 3D editor misplaces it #646
  • Fix - Next Step menu actions not working as expected #637
  • Fix - Open with programs menu action not enabled #629
  • Fix - Option Add pointer missing in Call Out #647
  • Fix - Primitives shown as missing parts in file load status #630
  • Fix - Remove LPub Formatting menu action does nothing #638
  • Fix - Selecting a submodel in the Visual editor gives error #665
  • Fix - Settings for Coverpage and Backcover do not work #620
  • Fix - Set Attributes to Page Pointer globally #648
  • Fix - Submodel preview ldr file not generated #655
  • Quality - Multiplication result converted to larger type #641

New in LPub3D 2.4.5.0.2977 (Dec 20, 2022)

  • Enhancement - Add full submodel file support to Build Modifications #591
  • Enhancement - Add load unofficial parts in command editor to project setup #591
  • Enhancement - Add load visual editor at cover page to project setup #593
  • Enhancement - Expand WhatsThis help to common dialogues #618
  • Enhancement - Improve performance - enable CLI, PLI and SMP multi-thread execution #598
  • Enhancement - Load visual editor at cover page #593
  • Enhancement - LPub command editor snippet system #602
  • Enhancement - Manage context menu actions #606
  • Enhancement - Manage keyboard shortcuts #603
  • Enhancement - Merge camera viewpoint and camera angles dialogs #612
  • Enhancement - Remove LPub formatting at submodel, page, and step #604
  • Enhancement - Refactor file loading parse and add inline file load #591
  • Enhancement - Set default system text editor at start-up #599
  • Enhancement - Update substitute preview feature #441
  • Enhancement - View visual editor render preferences in main menu preferences #597
  • Change - Continuous page progress update #615
  • Change - Failed to resolve google drive file at path #561
  • Change - Load model editor at cover page #593
  • Change - Restore preview submodel from callout #271
  • Change - TENTE parts outdated #583
  • Development - Convert command editor to QPlainTextEdit #601
  • Fix - Build mods don't work properly #520
  • Fix - BUILD_MOD in Multipart model not working as expected #591
  • Fix - Command Editor Issues - multiple issues #564, #565, #566
  • Fix - CSI part annotations impossible to enter #580
  • Fix - Error occurred while downloading archive library #568
  • Fix - Fixed-size circle and square annotation value not centered #579
  • Fix - Generating PDF crashes LPub on a certain page #557
  • Fix - Inconsistent page count on completion of export #596
  • Fix - Incorrect insert text on step group page #605
  • Fix - Invalid appstream file #589
  • Fix - LPub3D plug, logo and other auto text features #594
  • Fix - Messed up and weird rendering #518
  • Fix - Missing header causing abend #619
  • Fix - OFFSET not applied in some cases #595
  • Fix - Preferences default url not being saved #587
  • Fix - Projection in visual editor keeps resetting to perspective #607
  • Fix - Remove Group meta doesn't work #569
  • Fix - Render projection not orthographic #608
  • Fix - ROTATE_ICON SIZE does not change size in step group or callout #560
  • Fix - Update build from source scripts #585
  • Issue - Submodel preview image is empty for some submodels #558

New in LPub3D 2.4.3.0.2557 (May 14, 2021)

  • Enhancement - Add archive parts on demand action #521
  • Enhancement - Add part list to reset page image cache #522
  • Enhancement - Add zoom extents flag to 3DViewer preference dialogue #524
  • Enhancement - Auto update Open With Programs #420
  • Enhancement - Download and install 3rd party renderers on demand #541
  • Enhancement - Menu option to cycle each page when navigating by multiple pages or reloading #545
  • Enhancement - Open LDraw search directories dialogue from tools menu enhancement #523
  • Enhancement - Parametric and manually resizeable pointer tip #528
  • Enhancement - Parse single step NOSTEP command #535
  • Change - Enable instance count on manual override #298
  • Change - Reset fade /highlight step and preferred renderer on file close #505
  • Change - Rotate icon display pointer tip default restored to enabled #528
  • Change - Using the redraw button iterates through every page #546
  • Change - Viewport divider reset on page load #534
  • Change - Visual editor not loading multi-step page last step or callout CSI #536
  • How To - How to create a text URL with html using rich text edit and export to PDF #539
  • Fix - 3D preview - submodel preview loading placholder part #411
  • Fix - Abnormal end when deleting lines in the LDraw Editor #530
  • Fix - Build Modification - increment page display on forward jump and redraw #520
  • Fix - Build modification - insert build mod at countPage if not exist #520
  • Fix - Build Modification - line number when step bottom is new submodel #520
  • Fix - Build Modification - page count for multi-step page with submodel #520
  • Fix - Build modification - parse build mods from countPage call #520
  • Fix - Build modification - recursively get submodel indexes #520
  • Fix - Build modification - remove forward build mods after jump ahead #520
  • Fix - Build Modification - submodel preview display at first step-group step #520
  • Fix - Build Modification - multi-step page with submodel invalid assembly #520
  • Fix - Click and drag MULTI_STEP doesn't persist #544
  • Fix - Crash on fade previous steps or highlight step preference accept #551
  • Fix - Crash on add search directory #540
  • Fix - Crash when adding pointers to callouts #550
  • Fix - Disable automatic insertion of page/model #517
  • Fix - Do not add PARSE_NOSTEP parts to PLI #535
  • Fix - Edge case with PARSE_NOSTEP GLOBAL TRUE #548
  • Fix - Erroneous fade/highlight step meta command ignored message #505
  • Fix - Global callout pointer tip size settings don't have an effect #543
  • Fix - Global setting for callout pointer generating line instead of border meta #510
  • Fix - Image not updated on setting Stud Style from Global Setup #497
  • Fix - Match XYZ axis, move and rotate overlay pointer colours #519
  • Fix - Parsing instance count lines with meta pointer changes meta values #547
  • Fix - POV-Ray render issue when directory name contains a space #525
  • Fix - Rewrite submodel preview update for build modifications #512
  • Fix - Treat (partially) selection error when marking a line in the command editor #515
  • Fix - Selecting substitute part in PLI for a custom part causes LPub3D to crash #538
  • Fix - Unable to generate ldraw color parts file #527
  • Fix - Updating rotate icon in a callout adds the command to the parent #532
  • Fix - Using 'Remove LPub formatting' causes a crash #526
  • Fix - Wrong instance count in sub submodels #537

New in LPub3D 2.4.2.101.2533 (May 1, 2021)

  • Enhancement - Add archive parts on demand action #521
  • Enhancement - Add part list to reset page image cache #522
  • Enhancement - Add zoom extents flag to 3DViewer preference dialogue #524
  • Enhancement - Auto update Open With Programs #420
  • Enhancement - Download and install 3rd party renderers on demand #541
  • Enhancement - Menu option to cycle each page when navigating by multiple pages or reloading #545
  • Enhancement - Open LDraw search directories dialogue from tools menu enhancement #523
  • Enhancement - Parametric and manually resizeable pointer tip #528
  • Enhancement - Parse single step NOSTEP command #535
  • Change - Enable instance count on manual override #298
  • Change - Rotate icon display pointer tip default restored to enabled #528
  • Change - Viewport divider reset on page load #534
  • Change - Visual editor not loading multi-step page last step or callout CSI #536
  • How To - How to create a text URL with html using rich text edit and export to PDF #539
  • Fix - Abnormal end when deleting lines in the LDraw Editor #530
  • Fix - Build Modification - increment page display on forward jump and redraw #520
  • Fix - Build modification - insert build mod at countPage if not exist #520
  • Fix - Build Modification - line number when step bottom is new submodel #520
  • Fix - Build Modification - page count for multi-step page with submodel #520
  • Fix - Build modification - parse build mods from countPage call #520
  • Fix - Build modification - recursively get submodel indexes #520
  • Fix - Build modification - remove forward build mods after jump ahead #520
  • Fix - Build Modification - submodel preview display at first step-group step #520
  • Fix - Build Modification - multi-step page with submodel invalid assembly #520
  • Fix - Click and drag MULTI_STEP doesn't persist #544
  • Fix - Crash on add search directory #540
  • Fix - Disable automatic insertion of page/model #517
  • Fix - Global callout pointer tip size settings don't have an effect #543
  • Fix - Global setting for callout pointer generating line instead of border meta #510
  • Fix - Image not updated on setting Stud Style from Global Setup #497
  • Fix - Match XYZ axis, move and rotate overlay pointer colours #519
  • Fix - Rewrite submodel preview update for build modifications #512
  • Fix - POV-Ray render issue when directory name contains a space #525
  • Fix - Treat (partially) selection error when marking a line in the command editor #515
  • Fix - Selecting substitute part in PLI for a custom part causes LPub3D to crash #538
  • Fix - Unable to generate ldraw color parts file #527
  • Fix - Updating rotate icon in a callout adds the command to the parent #532
  • Fix - Using 'Remove LPub formatting' causes a crash #526
  • Fix - Wrong instance count in sub submodels #537

New in LPub3D 2.4.2.96.2528 (Apr 28, 2021)

  • Enhancement - Add archive parts on demand action #521
  • Enhancement - Add part list to reset page image cache #522
  • Enhancement - Add zoom extents flag to 3DViewer preference dialogue #524
  • Enhancement - Auto update Open With Programs #420
  • Enhancement - Download and install 3rd party renderers on demand #541
  • Enhancement - Open LDraw search directories dialogue from tools menu enhancement #523
  • Enhancement - Parametric and manually resizeable pointer tip #528
  • Enhancement - Parse single step NOSTEP command #535
  • Change - Enable instance count on manual override #298
  • Change - Rotate icon display pointer tip default restored to enabled #528
  • Change - Viewport divider reset on page load #534
  • Change - Visual editor not loading multi-step page last step or callout CSI #536
  • How To - How to create a text URL with html using rich text edit and export to PDF #539
  • Fix - Abnormal end when deleting lines in the LDraw Editor #530
  • Fix - Build Modification - increment page display on forward jump and redraw #520
  • Fix - Build Modification - line number when step bottom is new submodel #520
  • Fix - Build Modification - multi-step page with submodel invalid assembly #520
  • Fix - Build Modification - page count for multi-step page with submodel #520
  • Fix - Build modification - parse build mods from countPage call #520
  • Fix - Build Modification - submodel preview display at first step-group step #520
  • Fix - Crash on add search directory #540
  • Fix - Disable automatic insertion of page/model #517
  • Fix - Global callout pointer tip size settings don't have an effect #543
  • Fix - Global setting for callout pointer generating line instead of border meta #510
  • Fix - Image not updated on setting Stud Style from Global Setup #497
  • Fix - Match XYZ axis, move and rotate overlay pointer colours #519
  • Fix - POV-Ray render issue when directory name contains a space #525
  • Fix - Rewrite submodel preview update for build modifications #512
  • Fix - Selecting substitute part in PLI for a custom part causes LPub3D to crash #538
  • Fix - Treat (partially) selection error when marking a line in the command editor #515
  • Fix - Unable to generate ldraw color parts file #527
  • Fix - Updating rotate icon in a callout adds the command to the parent #532
  • Fix - Using 'Remove LPub formatting' causes a crash #526
  • Fix - Wrong instance count in sub submodels #537

New in LPub3D 2.4.2.85.2517 (Apr 26, 2021)

  • Enhancement - Add archive parts on demand action #521
  • Enhancement - Add part list to reset page image cache #522
  • Enhancement - Add zoom extents flag to 3DViewer preference dialogue #524
  • Enhancement - Auto update Open With Programs #420
  • Enhancement - Download and install 3rd party renderers on demand #541
  • Enhancement - Open LDraw search directories dialogue from tools menu enhancement #523
  • Enhancement - Parametric and manually resizeable pointer tip #528
  • Enhancement - Parse single step NOSTEP command #535
  • Change - Enable instance count on manual override #298
  • Change - Rotate icon display pointer tip default restored to enabled #528
  • Change - Viewport divider reset on page load #534
  • Change - Visual editor not loading multi-step page last step or callout CSI #536
  • How To - How to create a text URL with html using rich text edit and export to PDF #539
  • Fix - Abnormal end when deleting lines in the LDraw Editor #530
  • Fix - Build Modification - increment page display on forward jump and redraw #520
  • Fix - Build Modification - line number when step bottom is new submodel #520
  • Fix - Build Modification - multi-step page with submodel invalid assembly #520
  • Fix - Build Modification - page count for multi-step page with submodel #520
  • Fix - Build Modification - submodel preview display at first step-group step #520
  • Fix - Crash on add search directory #540
  • Fix - Disable automatic insertion of page/model #517
  • Fix - Global setting for callout pointer generating line instead of border meta #510
  • Fix - Image not updated on setting Stud Style from Global Setup #497
  • Fix - Match XYZ axis, move and rotate overlay pointer colours #519
  • Fix - POV-Ray render issue when directory name contains a space #525
  • Fix - Rewrite submodel preview update for build modifications #512
  • Fix - Selecting substitute part in PLI for a custom part causes LPub3D to crash #538
  • Fix - Treat (partially) selection error when marking a line in the command editor #515
  • Fix - Unable to generate ldraw color parts file #527
  • Fix - Updating rotate icon in a callout adds the command to the parent #532
  • Fix - Using 'Remove LPub formatting' causes a crash #526
  • Fix - Wrong instance count in sub submodels #537

New in LPub3D 2.4.2.40.2472 (Apr 12, 2021)

  • Revisions:
  • Enhancement - Add archive parts on demand action #521
  • Enhancement - Add part list to reset page image cache #522
  • Enhancement - Add zoom extents flag to 3DViewer preference dialogue #524
  • Enhancement - Open LDraw search directories dialogue from tools menu enhancement #523
  • Enhancement - Parametric and manually resizeable pointer tip #528
  • Fix - Disable automatic insertion of page/model #517
  • Fix - Global setting for callout pointer generating line instead of border meta #510
  • Fix - Image not updated on setting Stud Style from Global Setup #497
  • Fix - Match XYZ axis, move and rotate overlay pointer colours #519
  • Fix - POV-Ray render issue when directory name contains a space #525
  • Fix - Unable to generate ldraw color parts file #527
  • Fix - Using 'Remove LPub formatting' causes a crash #526

New in LPub3D 2.4.2.19.2451 (Apr 6, 2021)

  • Revisions:
  • Enhancement - Add archive parts on demand action #521
  • Enhancement - Add part list to reset page image cache #522
  • Enhancement - Open LDraw search directories dialogue from tools menu enhancement #523
  • Enhancement - Add zoom extents flag to 3DViewer preference dialogue #524
  • Fix - Disable automatic insertion of page/model #517
  • Fix - Image not updated on setting Stud Style from Global Setup #497
  • Fix - Match XYZ axis, move and rotate overlay pointer colours #519

New in LPub3D 2.4.0.0.1990 (Oct 3, 2020)

  • Feature - 3DViewer point, sun and area light for Blender integration #413
  • Feature - Add bring-to-front and send-to-back for page items #244
  • Feature - Add substitute part from context menu #280
  • Feature - Automate theme change without application restart. #73
  • Feature - Blender renderer integration #416
  • Feature - Build modification #411
  • Feature - Display stud logo #425
  • Feature - LDraw editor part, model, and submodel 3D preview #441
  • Feature - Redesign include meta command #396
  • Enhancement - 3DViewer Display Default Camera Properties #331 #344
  • Enhancement - Add page count to file load status notification #436
  • Enhancement - Add projection to command line options #440
  • Enhancement - Add Rectangle to fixed annotations styles #350
  • Enhancement - Add simple (faster) editor text decoration option #445
  • Enhancement - Add text placement #375
  • Enhancement - Adjust Step column/row on Callout/Rotate Icon move #352
  • Enhancement - Colour picker and part lookup #427
  • Enhancement - Consolidate editor, page configuration and 3DViewer undo/redo #426
  • Enhancement - Copy file path for current model file, PLI, CSI and submodel display #443
  • Enhancement - Display PLI part in 3DViewer and add item size to PLI and CSI tool-tips #424
  • Enhancement - Do not show this message for individual messages #453
  • Enhancement - Expand parse line error management #417
  • Enhancement - Expand page number and instance count placement #455
  • Enhancement - Expanded parameter file editing functionality #439
  • Enhancement - Experimental - calculate pointer meta #423
  • Enhancement - Export steps in HTML format with fade previous and highlight current step #418
  • Enhancement - Hide/un-hide pieces context menu item #414
  • Enhancement - Highlight bounding rectangle on hover to rotate Icon page attributes and multi-step range #422
  • Enhancement - Highlight select part line in LDraw editor #419
  • Enhancement - Insert display model at any step #415
  • Enhancement - Integrate 3DViewer and native renderer camera #412
  • Enhancement - LDraw editor load paging for very large model files #442
  • Enhancement - Menu option to turn on or off part archiving on startup #437
  • Enhancement - Move helper part category to top of search list #428
  • Enhancement - Multi step PLI per step with step number and submodel preview #382
  • Enhancement - Open parameter files in designated system editor #429
  • Enhancement - Open with programs #420
  • Enhancement - Remove 'Draw transparent textures last' option from LDView renderer preferences #430
  • Enhancement - Save a copy of current model file #421
  • Enhancement - Show and count group step number checkbox for multi-step PLI per page #452
  • Enhancement - Support spaces in rectangle 'variable length' style annotations #434
  • Enhancement - Unofficial custom part and textures sub-folder in sub-folder handling #446
  • Enhancement - Update and redraw save file to disk #336
  • Enhancement - Update LDView renderer to version 4.4 #431
  • Enhancement - Use relative path for images #400
  • Change - Add OpenSSL v1.0 libraries to Windows distribution #393
  • Change - Enable rotate icon placement on single step page #348
  • Change - OFFSET inconsistently uses relative and pixel values #383
  • Change - PNG Export - transparent background exports as black background #380
  • Change - Redesign ldrawFile load and parse checks #398
  • Change - Rotated Callout not displayed when last step contains NOSTEP #376
  • Change - Setting perspective view with LDView renderer #378
  • Change - Undeclared hard dependency in Debian package #401
  • Change - Update apply camera angle locally #378
  • Fix - Annotation style too small when using centimetres #435
  • Fix - Bill of Material part count anomaly when using BUFEXCHG #404
  • Fix - Cable annotation title not reporting cm #403
  • Fix - Crash when adding text to an inserted blank page #402
  • Fix - Crash when hanging orientation of substitute part #432
  • Fix - DPI and scale info is added to filename in PNG export #346
  • Fix - Excessive part count #438
  • Fix - Fade Previous Parts also affect transparent parts in current step #405
  • Fix - Inserted image in first page of submodel appear in parent model #399
  • Fix - Invalid Library Version (SDL2) on macOS #387
  • Fix - Keyword OUTIDE used where the intention is to use OUTSIDE #384
  • Fix - MultiStep background and placement statements ignored #392
  • Fix - Parse failure on ROUND PLI border #448
  • Fix - Preference panel default size on macOS #312
  • Fix - Render substitute parts with LDView single call flag on #433
  • Fix - Setting display page numbers to false, makes times indicator of non-called-out submodels disappear #406 #407
  • Fix - Spelling of popup #450
  • Fix - Step number displayed on cover page when PLI per step is disabled #388
  • Fix - Update scene items bring to front send to back #379
  • How To - LDraw syntax definitions for Notepad++ (added to extras folder) #444

New in LPub3D 2.4.0.0.1989 (Oct 2, 2020)

  • Feature - 3DViewer point, sun and area light for Blender integration #413
  • Feature - Add bring-to-front and send-to-back for page items #244
  • Feature - Add substitute part from context menu #280
  • Feature - Automate theme change without application restart. #73
  • Feature - Blender renderer integration #416
  • Feature - Build modification #411
  • Feature - Display stud logo #425
  • Feature - LDraw editor part, model, and submodel 3D preview #441
  • Feature - Redesign include meta command #396
  • Enhancement - 3DViewer Display Default Camera Properties #331 #344
  • Enhancement - Add page count to file load status notification #436
  • Enhancement - Add projection to command line options #440
  • Enhancement - Add Rectangle to fixed annotations styles #350
  • Enhancement - Add simple (faster) editor text decoration option #445
  • Enhancement - Add text placement #375
  • Enhancement - Adjust Step column/row on Callout/Rotate Icon move #352
  • Enhancement - Colour picker and part lookup #427
  • Enhancement - Consolidate editor, page configuration and 3DViewer undo/redo #426
  • Enhancement - Copy file path for current model file, PLI, CSI and submodel display #443
  • Enhancement - Display PLI part in 3DViewer and add item size to PLI and CSI tool-tips #424
  • Enhancement - Do not show this message for individual messages #453
  • Enhancement - Expand parse line error management #417
  • Enhancement - Expand page number and instance count placement #455
  • Enhancement - Expanded parameter file editing functionality #439
  • Enhancement - Experimental - calculate pointer meta #423
  • Enhancement - Export steps in HTML format with fade previous and highlight current step #418
  • Enhancement - Hide/un-hide pieces context menu item #414
  • Enhancement - Highlight bounding rectangle on hover to rotate Icon page attributes and multi-step range #422
  • Enhancement - Highlight select part line in LDraw editor #419
  • Enhancement - Insert display model at any step #415
  • Enhancement - Integrate 3DViewer and native renderer camera #412
  • Enhancement - LDraw editor load paging for very large model files #442
  • Enhancement - Menu option to turn on or off part archiving on startup #437
  • Enhancement - Move helper part category to top of search list #428
  • Enhancement - Multi step PLI per step with step number and submodel preview #382
  • Enhancement - Open parameter files in designated system editor #429
  • Enhancement - Open with programs #420
  • Enhancement - Remove 'Draw transparent textures last' option from LDView renderer preferences #430
  • Enhancement - Save a copy of current model file #421
  • Enhancement - Show and count group step number checkbox for multi-step PLI per page #452
  • Enhancement - Support spaces in rectangle 'variable length' style annotations #434
  • Enhancement - Unofficial custom part and textures sub-folder in sub-folder handling #446
  • Enhancement - Update and redraw save file to disk #336
  • Enhancement - Update LDView renderer to version 4.4 #431
  • Enhancement - Use relative path for images #400
  • Change - Add OpenSSL v1.0 libraries to Windows distribution #393
  • Change - Enable rotate icon placement on single step page #348
  • Change - OFFSET inconsistently uses relative and pixel values #383
  • Change - PNG Export - transparent background exports as black background #380
  • Change - Redesign ldrawFile load and parse checks #398
  • Change - Rotated Callout not displayed when last step contains NOSTEP #376
  • Change - Setting perspective view with LDView renderer #378
  • Change - Undeclared hard dependency in Debian package #401
  • Change - Update apply camera angle locally #378
  • Fix - Annotation style too small when using centimetres #435
  • Fix - Bill of Material part count anomaly when using BUFEXCHG #404
  • Fix - Cable annotation title not reporting cm #403
  • Fix - Crash when adding text to an inserted blank page #402
  • Fix - Crash when hanging orientation of substitute part #432
  • Fix - DPI and scale info is added to filename in PNG export #346
  • Fix - Excessive part count #438
  • Fix - Fade Previous Parts also affect transparent parts in current step #405
  • Fix - Inserted image in first page of submodel appear in parent model #399
  • Fix - Invalid Library Version (SDL2) on macOS #387
  • Fix - Keyword OUTIDE used where the intention is to use OUTSIDE #384
  • Fix - MultiStep background and placement statements ignored #392
  • Fix - Parse failure on ROUND PLI border #448
  • Fix - Preference panel default size on macOS #312
  • Fix - Render substitute parts with LDView single call flag on #433
  • Fix - Setting display page numbers to false, makes times indicator of non-called-out submodels disappear #406 #407
  • Fix - Spelling of popup #450
  • Fix - Step number displayed on cover page when PLI per step is disabled #388
  • Fix - Update scene items bring to front send to back #379
  • How To - LDraw syntax definitions for Notepad++ (added to extras folder) #444

New in LPub3D 2.3.13.70.1581 (Oct 31, 2019)

  • Enhancement - 3DViewer Display Default Camera Properties #344
  • Enhancement - Add Rectangle to fixed annotations styles #350
  • Enhancement - Add stud logo command line option #347
  • Enhancement - Add text placement #375
  • Enhancement - Adjust Step column/row on Callout/Rotate Icon move #352
  • Enhancement - Define width/height for a step in a step group #358
  • Enhancement - Edit plain and rich text with new text edit dialogue #357
  • Enhancement - Enable texture mapping with Native renderer #374
  • Enhancement - Justify step contents for defined step width/height #358
  • Enhancement - Second pass to adjust Step column/row on Callout/Rotate Icon move #352
  • Change - DPI and scale info is added to filename in PNG export #346
  • Change - Enable rotate icon placement on single step page #348
  • Change - Change - LDCad flexible parts new parts per step highlighting #354
  • Change - No response to MODEL_SCALE meta command #342
  • Change - Page items bring to front and send to back - third pass, set z values #244
  • Change - Pointer segment line is interrupted by border colour at each joint #356
  • Change - Rotated Callout not displayed when last step contains NOSTEP #376
  • Change - Setting perspective view with LDView renderer #378
  • Fix - 3DViewer not displayed when renderer set to other than Native #345
  • Fix - Export to pdf using page range generates single page #341
  • Fix - LPub3D crash when using LDView "multiple file single call" #363
  • Fix - Single step MODEL_SCALE meta command not working #343

New in LPub3D 2.3.13.68.1579 (Oct 29, 2019)

  • Features, enhancements, fixes and changes
  • Enhancement - 3DViewer Display Default Camera Properties #344
  • Enhancement - Add Rectangle to fixed annotations styles #350
  • Enhancement - Add stud logo command line option #347
  • Enhancement - Add text placement #375
  • Enhancement - Adjust Step column/row on Callout/Rotate Icon move #352
  • Enhancement - Define width/height for a step in a step group #358
  • Enhancement - Edit plain and rich text with new text edit dialogue #357
  • Enhancement - Enable texture mapping with Native renderer #374
  • Enhancement - Justify step contents for defined step width/height #358
  • Enhancement - Second pass to adjust Step column/row on Callout/Rotate Icon move #352
  • Change - DPI and scale info is added to filename in PNG export #346
  • Change - Enable rotate icon placement on single step page #348
  • Change - Change - LDCad flexible parts new parts per step highlighting #354
  • Change - No response to MODEL_SCALE meta command #342
  • Change - Page items bring to front and send to back - third pass, set z values #244
  • Change - Pointer segment line is interrupted by border colour at each joint #356
  • Fix - 3DViewer not displayed when renderer set to other than Native #345
  • Fix - Export to pdf using page range generates single page #341
  • Fix - LPub3D crash when using LDView "multiple file single call" #363
  • Fix - Single step MODEL_SCALE meta command not working #343

New in LPub3D 2.3.13.41.1552 (Oct 5, 2019)

  • Revisions:
  • Enhancement - Add Rectangle to fixed annotations styles #350
  • Enhancement - Adjust Step column/row on Callout/Rotate Icon move #352
  • Change - DPI and scale info is added to filename in PNG export #346
  • Change - Enable rotate icon placement on single step page #348
  • Change - No response to MODEL_SCALE meta command #342
  • Change - Page items bring to front and send to back - third pass, set z values #244

New in LPub3D 2.3.13.0.1540 (Sep 16, 2019)

  • Revisions:
  • Enhancement - 3DViewer Display Default Camera Properties #344
  • No response to MODEL_SCALE meta command #342
  • Fix - 3DViewer not displayed when renderer set to other than Native #345
  • Fix - Export to pdf using page range generates single page #341
  • Fix - Single step MODEL_SCALE meta command not working #343
  • Base:
  • Enhancement - Add option to centre justify step group steps #333
  • Enhancement - Add pixel ratio setting to PDF, PNG, JPG and BMP exports #304
  • Enhancement - Add pointer grabber toggle off on 2nd pointer click #315
  • Enhancement - Add dialogue for additional renderer arguments #332
  • Enhancement - Add submodel instance count manual override #298
  • Enhancement - Bricklink XML config ignored, some tags missing #282
  • Enhancement - Expanded submodel instance consolidation #297
  • Enhancement - Native renderer save step image #327
  • Enhancement - Update and redraw save file to disk #336
  • Enhancement - Update Windows portable version from UI #324
  • Feature - Page items bring to front and send to back - first pass #244
  • Change - Abnormal image size when using Native renderer #323
  • Change - Abnormal pointer generation if no submodel file extension #326
  • Change - BOM annotation rectangle size setting seems to have no effect #293
  • Change - Callout divider messing with instance count margins #309
  • Change - Divider CUSTOM_LENGTH meta command not parsed for multi-step called out divider #340
  • Change - Fonts in generated instruction depend on system DPI setting #292
  • Change - Manually move rotate icon on multi-step page #300
  • Change - Missing api-ms-win-crt-runtime-l1-1-0.dll #296
  • Change - Refactor search dialogue and set focus to text field #295
  • Change - Submodel is displayed again on step 2 #334
  • Fix - Append page before a submodel, appends the page in the wrong location #330
  • Fix - Assembly margins setting works strangely #311
  • Fix - Custom arrow parts and missing PLI END #301
  • Fix - Default colour reset to highlight or fade colour #325
  • Fix - Do not show step number ignored on single step page #322
  • Fix - Drag PLI and CSI not working properly on single step page #302
  • Fix - Fade Previous Steps doesn't work in global mode #310
  • Fix - LDraw archive library update fail #305
  • Fix - Final model added to BOM page #328
  • Fix - No divider in callout #306
  • Fix - Placement of page attributes #307
  • Fix - PLI placement is invalid, when SHOW_STEP_NUMBER is FALSE #335
  • Fix - Resize handle on Parts List (PLI) has gone #339
  • Fix - Segfault in substitute part dialogue #294
  • Fix - Strange behaviour when resizing cover image #329
  • Fix - Submodel instance count not shown when Callout between instances #321
  • Fix - Submodel steps same as occurrence when consolidate enabled #291

New in LPub3D 2.3.13.0.1511 (Sep 10, 2019)

  • Features, enhancements, fixes and changes
  • Enhancement - Add option to centre justify step group steps #333
  • Enhancement - Add pixel ratio setting to PDF, PNG, JPG and BMP exports #304
  • Enhancement - Add pointer grabber toggle off on 2nd pointer click #315
  • Enhancement - Add dialogue for additional renderer arguments #332
  • Enhancement - Add submodel instance count manual override #298
  • Enhancement - Bricklink XML config ignored, some tags missing #282
  • Enhancement - Expanded submodel instance consolidation #297
  • Enhancement - Native renderer save step image #327
  • Enhancement - Update and redraw save file to disk #336
  • Enhancement - Update Windows portable version from UI #324
  • Feature - 3DViewer Camera Configuration #331
  • Feature - Page items bring to front and send to back - first pass #244
  • Change - Abnormal image size when using Native renderer #323
  • Change - Abnormal pointer generation if no submodel file extension #326
  • Change - BOM annotation rectangle size setting seems to have no effect #293
  • Change - Callout divider messing with instance count margins #309
  • Change - Divider CUSTOM_LENGTH meta command not parsed for multi-step called out divider #340
  • Change - Fonts in generated instruction depend on system DPI setting #292
  • Change - Manually move rotate icon on multi-step page #300
  • Change - Missing api-ms-win-crt-runtime-l1-1-0.dll #296
  • Change - Refactor search dialogue and set focus to text field #295
  • Change - Submodel is displayed again on step 2 #334
  • Fix - Append page before a submodel, appends the page in the wrong location #330
  • Fix - Assembly margins setting works strangely #311
  • Fix - Custom arrow parts and missing PLI END #301
  • Fix - Default colour reset to highlight or fade colour #325
  • Fix - Do not show step nunber ignored on single step page #322
  • Fix - Drag PLI and CSI not working properly on single step page #302
  • Fix - Fade Previous Steps doesn't work in global mode #310
  • Fix - LDraw archive library update fail #305
  • Fix - Final model added to BOM page #328
  • Fix - No divider in callout #306
  • Fix - Placement of page attributes #307
  • Fix - PLI placement is invalid, when SHOW_STEP_NUMBER is FALSE #335
  • Fix - Resize handle on Parts List (PLI) has gone #339
  • Fix - Segfault in substitute part dialog #294
  • Fix - Strange behavior when resizing cover image #329
  • Fix - Submodel instance count not shown when Callout between instances #321
  • Fix - Submodel steps same as occurrence when consolidate enabled #291

New in LPub3D 2.3.12.89.1445 (Aug 7, 2019)

  • New feature - Continuous page processing - GitHub ticket #76
  • New feature - Go Dark - Add dark theme - GitHub ticket #73
  • New feature - "Native" renderer based on 3DViewer (LeoCAD library) - GitHub ticket #71
  • New feature - "Native" POV file generation based on LDView library - GitHub ticket #77
  • New feature - Multi-segment page, divider and callout pointers - GitHub ticket #67
  • New feature - "True" part fade and part highlight - GitHub ticket #47
  • New feature - UI dialogue to set sub-model level color - GitHub ticket #69
  • New feature - Scene horizontal and vertical ruler and axis guides - GitHub ticket #68
  • New feature - Console commands - GitHub ticket #12
  • Enhancement - Default assembly orientation angles to Assembly Setup - GitHub ticket #72
  • Enhancement - Headless mode on Linux, macOS and Windows Platforms - GitHub ticket #56
  • Enhancement - Improved ROTSTEP entry from 3DViewer pane - GitHub ticket #- GitHub ticket #78
  • Enhancement - Keyboard shortcuts for Edit commands - GitHub ticket #63
  • Enhancement - Respect relative and absolute paths for inserted images - GitHub ticket #61
  • Enhancement - Rotate Icon resize - GitHub ticket #66
  • Enhancement - Set renderer from project setup menu - GitHub ticket #70
  • Enhancement - Use an image for Rotate Icon - GitHub ticket #6262)
  • Change - Move LPub3D.ini file to application location for Windows portable distros - GitHub ticket #75
  • Change - Update 3DViewer to LeoCAD 18.2 commit 15d5e89
  • Bug - Go To page function broken - GitHub ticket #55
  • Bug - Insert text on a sub-model insertion page gets placed in the sub-model instead of the parent model - GitHub ticket #53
  • Bug - Mixed-page orientation incorrect - GitHub ticket #59
  • Issue - Abnormal program end on malformed CALLOUT - GitHub ticket #74
  • Issue - Automatically add assembled image of multi-occurrence sub-model to parent page - GitHub ticket #65, description
  • Issue - Landscape page orientation for .pdf export not working - GitHub ticket #58, cannot reproduce
  • Issue - LDView Multiple files single call rendering slow - GitHub ticket #54
  • Issue - LDView on macOS not loading - missing libraries - GitHub ticket #57
  • Issue - LPub3D renders very slow on Windows - GitHub ticket #60, duplicate

New in LPub3D 2.3.12.0.1356 (Jun 20, 2019)

  • Features, enhancements, fixes and changes:
  • Enhancement - Add Bricklink alternate numbers to ld2blcodesxref.lst #283
  • Enhancement - Add LDraw model file load messages dialogue #275
  • Enhancement - Add STRETCH option to cover image #288
  • Enhancement - Load LDCad generated flex parts that use LDraw subparts #272
  • Enhancement - Rubber part colors are not supported in export #290
  • Enhancement - Sub-model in separate file not being included #279
  • Feature - Add substitute part from context menu #280
  • Change - Bricklink XML config ignored, some tags missing #282
  • Change - Bricklink XML export save path should be next to the file #287
  • Change - Callout POINTER_ATTRIBUTE LINE id is not verified #284
  • Change - Refactor updater routine and add redirect accept prompt #266
  • Change - Part annotation placement wrong #267
  • Change - Update pointer base on drag (#268) #269
  • Change - Native render fails with camera FOV command #270
  • Change - Remove preview submodel from callout #271
  • Fix - Broken Windows uninstaller - Revert NsisMultiUser script update #261
  • Fix - Multiple page BOM sorting is scrambled #262
  • Fix - Consolidate instance count flag ignored when unchecked #264
  • Fix - Continuous step numbers cause multiple problems with submodels #263
  • Fix - Custom parts are not included in HTML export #286
  • Fix - No Submodel preview with LDView "single call" option #265
  • Fix - Wrong meta command on multi-step page #276
  • Fix - Windows installer typo "Dektop Icon" #277
  • Fix - HTML export uses Native renderer image naming convention #278

New in LPub3D 2.3.10.0.1240 (Apr 24, 2019)

  • New feature:
  • Continuous page processing - GitHub ticket #76 New feature - Go Dark - Add dark theme - GitHub ticket #73
  • "Native" renderer based on 3DViewer (LeoCAD library) - GitHub ticket #71 New feature - "Native" POV file generation based on LDView library - GitHub ticket Multi-segment page, divider and callout pointers - GitHub ticket #67 New feature - "True" part fade and part highlight - GitHub ticket #47
  • UI dialogue to set sub-model level color - GitHub ticket #69
  • Scene horizontal and vertical ruler and axis guides - GitHub ticket #68 New feature - Console commands - GitHub ticket #12
  • Enhancement:
  • Default assembly orientation angles to Assembly Setup - GitHub ticket #72
  • Enhancement - Headless mode on Linux, macOS and Windows Platforms -
  • Enhancement - Improved ROTSTEP entry from 3DViewer pane - GitHub ticket
  • Enhancement - Keyboard shortcuts for Edit commands - GitHub ticket #63 Enhancement - Respect relative and absolute paths for inserted images - Enhancement - Rotate Icon resize - GitHub ticket #66
  • Enhancement - Set renderer from project setup menu - GitHub ticket #70 Enhancement - Use an image for Rotate Icon - GitHub ticket #6262) Change - Move LPub3D.ini file to application location for Windows portable distros - GitHub ticket #75
  • Change - Update 3DViewer to LeoCAD 18.2 commit 15d5e89
  • Bug - Go To page function broken - GitHub ticket #55
  • Bug - Insert text on a sub-model insertion page gets placed in the sub-model instead of the parent model - GitHub ticket #53 Bug - Mixed-page orientation incorrect - GitHub ticket #59
  • Issue - Abnormal program end on malformed CALLOUT - GitHub ticket #74 Issue - Automatically add assembled image of multi-occurrence sub-model to parent page - GitHub ticket #65, description
  • Issue - Landscape page orientation for .pdf export not working - GitHub ticket #58, cannot reproduce
  • Issue - LDView Multiple files single call rendering slow - GitHub ticket #54 Issue - LDView on macOS not loading - missing libraries - GitHub ticket #57 Issue - LPub3D renders very slow on Windows - GitHub ticket #60, duplicate

New in LPub3D 2.3.8.0.1210 (Apr 8, 2019)

  • New feature - Continuous page processing - GitHub ticket #76
  • New feature - Go Dark - Add dark theme - GitHub ticket #73
  • New feature - "Native" renderer based on 3DViewer (LeoCAD library) - GitHub ticket #71
  • New feature - "Native" POV file generation based on LDView library - GitHub ticket #77
  • New feature - Multi-segment page, divider and callout pointers - GitHub ticket #67
  • New feature - "True" part fade and part highlight - GitHub ticket #47
  • New feature - UI dialogue to set sub-model level color - GitHub ticket #69
  • New feature - Scene horizontal and vertical ruler and axis guides - GitHub ticket #68
  • New feature - Console commands - GitHub ticket #12
  • Enhancement - Default assembly orientation angles to Assembly Setup - GitHub ticket #72
  • Enhancement - Headless mode on Linux, macOS and Windows Platforms - GitHub ticket #56
  • Enhancement - Improved ROTSTEP entry from 3DViewer pane
  • Enhancement - Keyboard shortcuts for Edit commands - GitHub ticket #63 Enhancement - Respect relative and absolute paths for inserted images - GitHub ticket #61 Enhancement - Rotate Icon resize - GitHub ticket #66 Enhancement - Set renderer from project setup menu - GitHub ticket #70 Enhancement - Use an image for Rotate Icon - GitHub ticket #6262)
  • Change - Move LPub3D.ini file to application location for Windows portable distros - GitHub ticket #75 Change - Update 3DViewer to LeoCAD 18.2 commit 15d5e89
  • Bug - Go To page function broken - GitHub ticket #55 Bug -
  • Insert text on a sub-model insertion page gets placed in the sub-model instead of the parent model - GitHub ticket #53
  • Bug - Mixed-page orientation incorrect - GitHub ticket #59 Issue -
  • Abnormal program end on malformed CALLOUT - GitHub ticket #74 Issue - Automatically add assembled image of multi-occurrence sub-model to parent page - GitHub ticket #65, description
  • Issue - Landscape page orientation for .pdf export not working - GitHub ticket #58, cannot reproduce
  • Issue - LDView Multiple files single call rendering slow - GitHub ticket #54 Issue - LDView on macOS not loading - missing libraries - GitHub ticket #57 Issue - LPub3D renders very slow on Windows - GitHub ticket #60, duplicate

New in LPub3D 2.3.7.0.1195 (Mar 27, 2019)

  • New feature - Continuous page processing - GitHub ticket #76
  • New feature - Go Dark - Add dark theme - GitHub ticket #73
  • New feature - "Native" renderer based on 3DViewer (LeoCAD library) - GitHub ticket #71
  • New feature - "Native" POV file generation based on LDView library - GitHub ticket #77
  • New feature - Multi-segment page, divider and callout pointers - GitHub ticket #67
  • New feature - "True" part fade and part highlight - GitHub ticket #47
  • New feature - UI dialogue to set sub-model level color - GitHub ticket #69
  • New feature - Scene horizontal and vertical ruler and axis guides - GitHub ticket #68
  • New feature - Console commands - GitHub ticket #12
  • Enhancement - Default assembly orientation angles to Assembly Setup - GitHub ticket #72
  • Enhancement - Headless mode on Linux, macOS and Windows Platforms - GitHub ticket #56
  • Enhancement - Improved ROTSTEP entry from 3DViewer pane - GitHub ticket #- GitHub ticket #78
  • Enhancement - Keyboard shortcuts for Edit commands - GitHub ticket #63
  • Enhancement - Respect relative and absolute paths for inserted images - GitHub ticket #61
  • Enhancement - Rotate Icon resize - GitHub ticket #66
  • Enhancement - Set renderer from project setup menu - GitHub ticket #70
  • Enhancement - Use an image for Rotate Icon - GitHub ticket #6262)
  • Change - Move LPub3D.ini file to application location for Windows portable distros - GitHub ticket #75
  • Change - Update 3DViewer to LeoCAD 18.2 commit 15d5e89
  • Bug - Go To page function broken - GitHub ticket #55
  • Bug - Insert text on a sub-model insertion page gets placed in the sub-model instead of the parent model - GitHub ticket #53
  • Bug - Mixed-page orientation incorrect - GitHub ticket #59
  • Issue - Abnormal program end on malformed CALLOUT - GitHub ticket #74
  • Issue - Automatically add assembled image of multi-occurrence sub-model to parent page - GitHub ticket #65, description
  • Issue - Landscape page orientation for .pdf export not working - GitHub ticket #58, cannot reproduce
  • Issue - LDView Multiple files single call rendering slow - GitHub ticket #54
  • Issue - LDView on macOS not loading - missing libraries - GitHub ticket #57
  • Issue - LPub3D renders very slow on Windows - GitHub ticket #60, duplicate

New in LPub3D 2.3.5.0.1092 (Dec 17, 2018)

  • New feature - Continuous page processing - GitHub ticket #76
  • New feature - Go Dark - Add dark theme - GitHub ticket #73
  • New feature - "Native" renderer based on 3DViewer (LeoCAD library) - GitHub ticket #71
  • New feature - "Native" POV file generation based on LDView library - GitHub ticket #77
  • New feature - Multi-segment page, divider and callout pointers - GitHub ticket #67
  • New feature - "True" part fade and part highlight - GitHub ticket #47
  • New feature - UI dialogue to set sub-model level color - GitHub ticket #69
  • New feature - Scene horizontal and vertical ruler and axis guides - GitHub ticket #68
  • New feature - Console commands - GitHub ticket #12
  • Enhancement - Default assembly orientation angles to Assembly Setup - GitHub ticket #72
  • Enhancement - Headless mode on Linux, macOS and Windows Platforms - GitHub ticket #56
  • Enhancement - Improved ROTSTEP entry from 3DViewer pane - GitHub ticket #- GitHub ticket #78
  • Enhancement - Keyboard shortcuts for Edit commands - GitHub ticket #63
  • Enhancement - Respect relative and absolute paths for inserted images - GitHub ticket #61
  • Enhancement - Rotate Icon resize - GitHub ticket #66
  • Enhancement - Set renderer from project setup menu - GitHub ticket #70
  • Enhancement - Use an image for Rotate Icon - GitHub ticket #6262)
  • Change - Move LPub3D.ini file to application location for Windows portable distros - GitHub ticket #75
  • Change - Update 3DViewer to LeoCAD 18.2 commit 15d5e89
  • Bug - Go To page function broken - GitHub ticket #55
  • Bug - Insert text on a sub-model insertion page gets placed in the sub-model instead of the parent model - GitHub ticket #53
  • Bug - Mixed-page orientation incorrect - GitHub ticket #59
  • Issue - Abnormal program end on malformed CALLOUT - GitHub ticket #74
  • Issue - Automatically add assembled image of multi-occurrence sub-model to parent page - GitHub ticket #65, description
  • Issue - Landscape page orientation for .pdf export not working - GitHub ticket #58, cannot reproduce
  • Issue - LDView Multiple files single call rendering slow - GitHub ticket #54
  • Issue - LDView on macOS not loading - missing libraries - GitHub ticket #57
  • Issue - LPub3D renders very slow on Windows - GitHub ticket #60, duplicate

New in LPub3D 2.3.4.0.1085 (Dec 11, 2018)

  • New feature - Continuous page processing - GitHub ticket #76
  • New feature - Go Dark - Add dark theme - GitHub ticket #73
  • New feature - "Native" renderer based on 3DViewer (LeoCAD library) - GitHub ticket #71
  • New feature - "Native" POV file generation based on LDView library - GitHub ticket #77
  • New feature - Multi-segment page, divider and callout pointers - GitHub ticket #67
  • New feature - "True" part fade and part highlight - GitHub ticket #47
  • New feature - UI dialogue to set sub-model level color - GitHub ticket #69
  • New feature - Scene horizontal and vertical ruler and axis guides - GitHub ticket #68
  • New feature - Console commands - GitHub ticket #12
  • Enhancement - Default assembly orientation angles to Assembly Setup - GitHub ticket #72
  • Enhancement - Headless mode on Linux, macOS and Windows Platforms - GitHub ticket #56
  • Enhancement - Improved ROTSTEP entry from 3DViewer pane - GitHub ticket #- GitHub ticket #78
  • Enhancement - Keyboard shortcuts for Edit commands - GitHub ticket #63
  • Enhancement - Respect relative and absolute paths for inserted images - GitHub ticket #61
  • Enhancement - Rotate Icon resize - GitHub ticket #66
  • Enhancement - Set renderer from project setup menu - GitHub ticket #70
  • Enhancement - Use an image for Rotate Icon - GitHub ticket #6262)
  • Change - Move LPub3D.ini file to application location for Windows portable distros - GitHub ticket #75
  • Change - Update 3DViewer to LeoCAD 18.2 commit 15d5e89
  • Bug - Go To page function broken - GitHub ticket #55
  • Bug - Insert text on a sub-model insertion page gets placed in the sub-model instead of the parent model - GitHub ticket #53
  • Bug - Mixed-page orientation incorrect - GitHub ticket #59
  • Issue - Abnormal program end on malformed CALLOUT - GitHub ticket #74
  • Issue - Automatically add assembled image of multi-occurrence sub-model to parent page - GitHub ticket #65, description
  • Issue - Landscape page orientation for .pdf export not working - GitHub ticket #58, cannot reproduce
  • Issue - LDView Multiple files single call rendering slow - GitHub ticket #54
  • Issue - LDView on macOS not loading - missing libraries - GitHub ticket #57
  • Issue - LPub3D renders very slow on Windows - GitHub ticket #60, duplicate

New in LPub3D 2.3.3.0.1024 (Oct 29, 2018)

  • Change Assembly placement wrong in 2.3 #102
  • Change General standardization Correct spelling #116
  • Change Move EdgeThickness parameter to LDView ini #129
  • Change Page number placed outside page border #139
  • Change Renderer INI/.conf files have incorrect initial values #140
  • Enhancement Enable support for alternative LDraw libraries #132
  • Enhancement Add multiple next steps #136
  • Enhancement Improve LDraw Editor highlighting #133
  • Enhancement Save output with same encoding as input #127
  • Enhancement Set default part lookup category to 'Parts In Use' #121
  • Fix Bug: assembled callout has wrong rotation #135
  • Fix Delete custom parts cache deletes sibling folders #138
  • Fix Global Fade Color does not work correctly #128
  • Fix LPub3D LDView AntiAliasing settings incomplete #130
  • Fix LPub3Dspecific LDView settings still don't work #126

New in LPub3D 2.2.1.0.824 (Apr 2, 2018)

  • LPub3D 2.2.1 is focused on stabilization and robustness improvements. This release contains mostly bug fixes and the under-the-hood changes needed to improve performance, stability, compatability and the overall user's experience.
  • Change: Add warnings to LDView standard output. By default LPub3D will use the '-vv' flag so critical and standard errors and warnings will be directed to standard output and standard error as required.
  • Fix: Attempt to correct the save/load main-window settings on macOS. The main-window state is either not saved or retrieved properly on macOS.
  • Change: Update preferences dialogue window settings. An attempt to synchronize the layout across the different build platforms.
  • Fix: Attempt to correct wrong build commit count on Windows and macOS builds. While the internal commit count (the count on the About dialogue) is accurate, the packaging script generated commit count does not match the actual commit count on Windows and macOS builds.
  • Fix: Partial install on Windows 7 32bit. This correction addresses the reported bug on Windows 7 32bit where there was no uninstall entry in Control Panel/Programs and features and the uninstall executable would return the message 'There is no installation of LPub3D'. This behaviour was likely exclusive to 32bit Windows 7 (and possibly Windows Vista).
  • Fix: POV-Ray fails to parse command line with space in executable path. This correction addresses the reported bug on Windows: No PLI or assembly images generated when POV-Ray is set as the renderer. This behaviour manifests when LPub3D is installed in a folder path containing one or more spaces, for example C:Program Files. See https://github.com/trevorsandy/lpub3d/issues/41 for details. #41 Change: Update LDView to GitSha 7e01dd4. Add error and warning standard output. Trigger Windows console output with -HaveStdOut=1. By default, critical and standard errors will be printed. Access the LDView standard output and standard error logs from the user interface at Help / View LPub3D log. Once the log view windows loads, you can use the 'open file' menu item to open the respective log file.
  • Change: Update 3DViewer to LeoCAD 18.2 GitSha e0acb8f. Renderer bug fixes.
  • Change: Add exit button to parameter file edit window. Small improvement of the user experience.
  • Change: LDView Raytracer labels to LDView .pov Generation. Change labels for LDView menu items under Configuration / Edit Parameter Files from 'LDView Raytracer' to 'LDView POV Generation'.
  • Fix: Incorrectly formatted Windows paths in LDView .ini files. This correction addresses the reported bugs 1. faded parts not displayed when using the LDView renderer and 2. cannot generate multiple images in single-call when using LDView renderer.
  • Fix: Add import colours from alternate colour-code file when defined. If an alternate colour code file is defined in Preferences, give this file precedence over LDConfig.ldr.
  • Fix: Spelling for default fade colour name. LDConfig.ldr uses UK spelling for Grey vs. US spelling, Gray.
  • Fix: Add recursive function to clear Page CSI cache. This correction enables clearing all associated CSI image generation artifacts which may include multiple ldr and image files for nested callouts.
  • Fix: Application version missing in macOS dmg README. Corrected.

New in LPub3D 2.2.0.0.795 (Mar 18, 2018)

  • Enhancement: Upgrade LDView renderer to commit e56a9b8bc25a001aaa8042ddab8ffc9cdb9f5a9e (v4.4 alpha). Includes command line snapshot support for -SaveSnapshotsList which improves performance, and add support for command line scale factor.
  • Fix: Newer CSI images not saved when using LDView (Single Call) render. When using the LDView Single-call option, generated images were not updated when a newer instance of the model file was opened in LPub3D - for example if an update was saved to the model file. This behaviour resulted in the image files being generated every time the model file was opened or on loading a new step because the conditional check if the model file was newer that the image file would always be true. If the image file exist, the newly generated image file would not be saved. This correction deletes the old image file is a new instance is generated allowing the new instance to be saved. #36
  • Fix: Appended page is not displayed. When you append a page to your sub/model where the last step does not contain any parts - for example if the last step only contains BOM-related metas (e.g. 0 !LPUB INSERT BOM), the added page meta 0 !LPUB INSERT PAGE is not preceded by a step meta 0 !LPUB STEP and, consequently, is not displayed. If the appended page meta is added where the last step contains parts (STEP or ROTSTEP) or is a callout step, the behaviour is as expected.
  • Enhancement: Enable 3DViewer to use alternate LDConfig.ldr colour file. This change brings the viewer in line with functionality available in the renderers. I expect the extend this capability in the future to allow unique colour submissions per CSI, and possibly PLI if it makes sense, which can enhance part fade and highlighting. # 34
  • Enhancement: Add LPu3D build check - macOS & Windows. DevOps feature as first step to enabling CI-based TDD, and UI checks. See https://github.com/trevorsandy/lpub3d/issues/33 for additional context. #33
  • Enhancement: Upgrade 3DViewer to LeoCAD 18.2 GitSha d4687e0. Includes new shader for improved image quality. As part of this upgrade, LPub3D command line capability "console mode" was also enabled. At the moment all LeoCAD command line capabilities are enabled (experimental) along with help and LPub3D version information. Type "<install path>lpub3d -?" for complete list of available command line flags. #32
  • Enhancement: Update about-dialogue support links. Add GitHub issues URL. #31
  • Enhancement: Add/override renderer flags from within model file. For example the line 0 !LPUB ASSEM LDGLITE_PARMS "-J -fh" within a step will enable perspective projection and shading mode for that step's Assembly (CSI) image. If defining more than one meta flag, you must use a single space delimiter between flags and the list of flags must be quoted as shown in the examples. Flag values that contain spaces are not supported which is to say that mapping ini files and such, where values may contain spaces, should be performed in the respective renderer's ini configuration file and should not be added as a meta command. Render ini files can be accessed and updated from the User Interface - see v2.1.0 Features and enhancements for details. Note that manipulating render flags require fairly advanced knowledge of the renderer's capabilities and command line flags. If you are unsure about this, please consult the render documentation before attempting to change the default settings. Setting incorrect flags or combinations of flags can adversely affect the quality of your output. Issue #30
  • This change also implements a few more capabilities:
  • Individual renderer flags can now be defined for Assembly (CSI), Part, and Bill of Material lists as follows:
  • !LPUB ASSEM LDGLITE_PARMS "-J -fh"
  • LPUB PLI LDGLITE_PARMS "-J -fh"
  • LPUB BOM LDGLITE_PARMS "-J -fh"
  • Renderer flags can now be defined for all supported renderers, LDGLite, LDView, LPub3D-Trace (POV-Ray) as follows:
  • !LPUB ASSEM LDGLITE_PARMS "-2g,2x"
  • !LPUB PLI LDVIEW_PARMS "TextureOffsetFactor=6"
  • !LPUB BOM POVRAY_PARMS "-A +UA"
  • Add an LDGLite configuration (ini) file. LDGLite.ini is now accessible and configurable from the LPub3D user interface. ldglite.ini: Image generation settings [Default locations] %USERPROFILE%/AppData/Local/LPUb3D Software/LPub3D/3rdParty/ldglite-1.3/config/ldglite.ini
  • By default, LDGLite render command includes the flag -2g,2x [Downsamples output images by 2, scaling up the image (and edge lines) by 2 first] which improves the image quality without sacrificing performance.
  • LDGLite renderer flags moved to ldglite.ini file - these flags were previously defined in the renderer code but are now accessible/changeable by the user via the ini file:
  • i2 - Picks output image type. 1=PNG, 2=Transparent PNG, 3=BMP8, 4=BMP24, 5=PPM. [LPub3D default is 2]
  • j - Picks the perspective projection.
  • fh - Turns on shading mode.
  • q - Anti Aliasing (Quality Lines).
  • 2g,2x - Downsamples output images by 2, scaling up the image (and edge
  • lines) by 2 first.
  • Change: Update preference User Interface form. Reposition labels and dialogues to clearly show all fields. Issue #27
  • Fix: Mismatched preference loading sequence during application startup. LDraw folder was loading before LDraw archive libraries so if the install platform did not have LDraw installed and the user chose to extract the LDraw library from the archive library files, an unnecessary set of manual steps would be required to proceed. The proper installation sequence (LDraw archive libraries then LDraw folder) has been restored. Issue #27
  • Fix: Final model image page out of place. When opening a model file in LPub3D with "Fade Step" option enabled , the appending of the final model image page is misplaced if the last step before in the model file is a ROTSTEP. In addition "Empty" ROTSTEP steps are ignored. This behaviour has been updated to place the final model file and inserted page after the last native STEP or ROTSTEP Here is an example LPub3D model file update with "Fade Step" and "Generate Cover Pages" options on:
  • Fix: Only first occurrence of callout alloc modified. When using the context menu to "Display Callout as Columns", the meta - command 0 !LPUB CALLOUT ALLOC HORIZONTAL is only added (or modified if already existing) to the first occurrence of CALLOUT when multiple Callouts are present in the page/model. The same behaviour applies to "Display Callout as Rows". This behaviour has is now corrected. Note that the last Callout display allocation affects all subsequent Callouts in the model file. If you wish to change the display allocation, you must add a meta command (using the context menu or manually) to enable the new display. Issue #25
  • Fix: Dragging a single-step page's assembly. When dragging a single-step page's CSI [Assembly], the image does not remain where positioned when the mouse is released, instead it is adjusted further by the application. This is an old behaviour from LPUB 4. Single-step page's assembly were automatically placed at the centre of the page's bounding box in all cases. This behaviour caused the assembly adjustment when manually moved. Now, if there exist an offset (the assembly was manually moved), no attempt will be made to place the the assembly at the centre of the page's bounding box. Issue #23
  • Change: Ignore PLI annotation for beams with "Bent" in the title. This update affects the titleAnnotations.lst file. You can view/edit this file from the User Interface at Configuration->Edit Parameter Files->Edit Title PLI Annotations. I also refreshed the parameter list files converting all tabs to spaces. Issue #24
  • Fix: Windows multi-user installation - uninstall error. Installation hangs at attempt to uninstall previous version of LPub3D. Of course it is possible to manually uninstall the previous version before installing version 2.1.0; however, the updated automated installation program takes care to preserve any previous configuration settings if so desired. Issue #21
  • Fix: File lpub3d.appdata.xml malformed. Corrected. Issue #20

New in LPub3D 2.1.0.0.772 (Feb 12, 2018)

  • Features and enhancements:
  • Version 2.1.0 presents a significant update to LPub3D. Most notably is the tight integration of its supported renderers - LDView, LDGLite and LPub3D-Trace (POV-Ray clone). These applications are now bundled within LPub3D - they are actually built from source as part of the LPub3D build process. In addition to tighter integration, the LPub3D renderers have been enhanced and updated to better support LPub3D across all supported platforms. Following are some of the capabilities available in the versions of LDGLite, LDView and LPub3D-Trace (POV-Ray) that are specifically implemented to enhance the user's experience editing and generating digital build instructions.
  • Enhancement:
  • A custom LDraw library LDConfig file can can now be passed to LDGlite and LDView via the renderer command call. Of course it was always possible to customize the default LDConfig but doing so had the risk of overwriting your settings with a new update. With this capability, you can choose where you want to store your modified LDConfig.ldr file and use the LPub3D preferences dialogue to set it path for LDView and LDGLite.
  • Enhancement:
  • All the renderer configuration files are accessible and configurable from the LPub3D user interface. Moreover, all configuration settings only affect LPub3D's renderer instances so if you have LDView installed on your system, it will not be affected by the settings you configure in LPub3D. Here is a summary of the configuration files:
  • LDGLite - LDConfig.ldr: LDraw part colour codes [Default location: LDraw/LDConfig.ldr]
  • LDView - LDConfig.ldr: LDraw part colour codes [Default location: LDraw/LDConfig.ldr]
  • LDView - ldview.ini: Image generation settings [Default locations:
  • Linux - ~/.local/share/LPub3D Software/LPub3D/3rdParty/ldview-4.3/config/ldview.ini
  • macOS - ~/Library/Application Support/LPub3D Software/LPub3D/3rdParty/ldview-4.3/config/ldview.ini
  • Windows - %USERPROFILE%/AppData/Local/LPUb3D Software/LPub3D/3rdParty/ldview-4.3/config/ldview.ini]
  • LDView - ldviewPOVini: POV file generation settings [Default locations:
  • Linux - ~/.local/share/LPub3D Software/LPub3D/3rdParty/ldview-4.3/config/ldviewPOV.ini
  • macOS - ~/Library/Application Support/LPub3D Software/LPub3D/3rdParty/ldview-4.3/config/ldviewPOV.ini
  • Windows - %USERPROFILE%/AppData/Local/LPUb3D Software/LPub3D/3rdParty/ldview-4.3/config/ldviewPOV.ini]
  • LPub3D-Trace (POV-Ray) - povray.conf: Security settings and authorized search paths [Default locations:
  • Linux - ~/.local/share/LPub3D Software/LPub3D/3rdParty/lpub3d_trace_cui-3.8/config/povray.conf
  • macOS - ~/Library/Application Support/LPub3D Software/LPub3D/3rdParty/lpub3d_trace_cui-3.8/config/povray.conf
  • Windows - %USERPROFILE%/AppData/Local/LPUb3D Software/LPub3D/3rdParty/lpub3d_trace_cui-3.8/config/povray.conf]
  • LPub3D-Trace (POV-Ray) - povray.ini: Image generation settings and #include file search paths [Default locations:
  • Linux - ~/.local/share/LPub3D Software/LPub3D/3rdParty/lpub3d_trace_cui-3.8/config/povray.ini
  • macOS - ~/Library/Application Support/LPub3D Software/LPub3D/3rdParty/lpub3d_trace_cui-3.8/config/povray.ini
  • Windows - %USERPROFILE%/AppData/Local/LPUb3D Software/LPub3D/3rdParty/lpub3d_trace_cui-3.8/config/povray.ini]
  • When setting of modifying render config file settings, it is helpful to know the settings that are automatically managed by the LPub3D renderer module. These settings for the most part are the dynamic parameters produced with the image (PLI or CSI) being rendered and; therefore, are not suited to being set in a config file. Other settings in the render module are static and will not benefit, actually changing them will harm the behaviour of LPub3D, from modification in the config files. The settings, listed by renderer, managed by the LPub3D render module are:
  • LDView [image generation and .pov file generation settings]
  • Flags:
  • CA - camera angle
  • -cg0.0,0.0,cd - Camera globe,Camera distance [cg set to zeros for CSI, pli angles (x,y) for PLI]
  • -SaveWidth - Image width
  • -SaveHeight - Image height
  • -ExportFile - Export file [-ExportSuffix not required, taken from export file extension]
  • -LDrawDir - LDraw parts library path
  • -IniFile - LDView ini file [If Ini file exist, so if ini file removed, LDView defaults are used]
  • -LDConfig - Alternate LDConfig file [If alternate LDConfig designated in Preferences]
  • Logs: [LDView does not produce any reasonably actionable stderr or stdout details]
  • stderr-ldview - error output log file [image generation]
  • stdout-ldview - standard output log file [image generation]
  • stderr-ldviewpov - error output log file [.pov file generation]
  • stdout-ldviewpov - standard output log file [.pov file generation]
  • LDView-Single-Call [image generation]
  • Flags:
  • CA - camera angle
  • -cg0.0,0.0,cd - Camera globe,Camera distance [cg set to zeros for CSI, pli angles (x,y) for PLI]
  • -SaveWidth - Image width
  • -SaveHeight - Image height
  • -SaveSnapShots=1 [processing multiple files at a time, save each output file as input file name without extension]
  • -SnapshotSuffix=.png [file extension required because we're processing multiple files at a time]
  • -LDrawDir - LDraw parts library path
  • -IniFile - LDView ini file [If Ini file exist, so if ini file removed, LDView defaults are used]
  • -LDConfig - Alternate LDConfig file [If alternate LDConfig designated in Preferences]
  • Logs: [LDView does not produce any reasonably actionable stderr or stdout details]
  • stderr-ldview - error output log file [image generation]
  • stdout-ldview - standard output log file [image generation]
  • POVRay
  • Flags:
  • +-d - Display Windows [Experimental - Add or remove SDL image progress display windows]
  • +I - Input file
  • +O - Output file
  • +W - Image width
  • +H - Image height
  • USE_ALPHA
  • Libs: [Note: LGEO root path is hard-coded to "LDraw path"/lgeo]
  • -IniPath [POV-Ray include files path]
  • -LgeoLGPath [LGEO LG sub-directory path]
  • -LgeoARPath [LGEO AR sub-directory path]
  • -LgeoSTLPath [LDGO STL sub-directory path - Durats LGEO stl library]
  • Logs:
  • stderr-povray - error output log file
  • stdout-povray - standard output log file
  • LDGLite
  • Flags:
  • -l3 - Use L3 parser
  • -i2 - Out image type is .png
  • -CA - Camera angel
  • -cg0.0,0.0,cd - Camera globe,Camera distance [cg set to zeros for CSI, pli angles (x,y) for PLI]
  • -j - perspective projection
  • -v"Width","Height" - Image display width (X) and height (Y)
  • -o0,-"Height"/6 - Change the centre width (X) across and height (Y) down
  • -W"Line Thickness" - Line thickness, image resolution/150.5
  • ="LDConfig" - Alternate LDConfig file [If alternate LDConfig designated in Preferences]
  • Environment Variables:
  • LDRAWDIR="Ldraw path" - LDraw parts library path
  • LDSEARCHDIRS="additional search directory paths" - Pipe (|) delimited single string of search directory paths
  • Logs:
  • stderr-ldglite - error output log file
  • stdout-ldglite - standard output log file
  • Enhancement:
  • View and edit renderer configuration files. This capability is accessible from the menu bar and empowers the user with the virtually limitless ability to configure each renderer. Keep in mind that these files will affect the performance and quality of your rendered images so it is understood that if you choose to modify these files, you must know what you are doing.
  • Enhancement:
  • LPub3D-Trace (POV-Ray) render progress display is available across all platforms. This feature is optional and can be turned on in the renderer preference dialogue. Note that this feature is still experimental on macOS
  • Enhancement:
  • It is no longer necessary to manage renderer paths in the preference dialogue. LPub3D renderers (LDGLite, LDView and LPub3D-Trace) are now automatically configured at application start-up. As the renderers and now bundled with LPub3D, their locations are fixed and known to the application. Therefore, renderer location configuration is predefined and managed within LPub3D.
  • Enhancement:
  • View log files. It is now possible to view logged output for LPub3D and its integrated renderers - LDGLite and LPub3D-Trace. LDView does not produce any discernible logging so there's nothing to view for this renderer.
  • Enhancement:
  • Detect and configure LGEO library including Damien Roux's (Darats) STL objects. LGEO is a library of high-quality POV-Ray object definitions which describes LDraw parts. In order to automatically detect the LGEO library it be placed inside the LDraw library - for example "LDraw Path"/lgeo. Furthermore, to include Darats' STL objects, they must exist in a sub-folder named "stl" - so an example for STL objects would be "LDraw Path"/lgeo/stl. With these settings in place, LPub3d will automatically detect the LGEO paths and include them in the POV-Ray configuration file settings.
  • Enhancement:
  • Windows multi-user installation. Multi-user installation allows "per-user" (no admin required) and "per-machine" (asks elevation only when necessary) installations. Per-user installations install folder is located at %USERPROFILE%LocalAppData and installation registry keys at HKCU SoftwareLPub3D and HKCU SoftwareMicrosoftWindowsCurrentVersionUninstallLPub3D respectively. The per-machine inistallations install folder is located at Program Files [x86_64] or Program Files (x86) [i686] while installation registry keys are written to HKLM SoftwareLPub3D and HKLM SoftwareMicrosoftWindowsCurrentVersionUninstallLPub3D. For both pre-user and per-machine installs, LPUb3D configuration registry keys are written to HKCU SoftwareLPub3D SoftwareLPub3D while configuration data is written to %USERPROFILE%LocalAppDataLPub3D SoftwareLPub3D. See https://github.com/Drizin/NsisMultiUser/blob/master/README.md for technical details.
  • Fix:
  • preference settings not preserved on macOS - When application is closed, the configured preference settings are not preserved. On subsequent, application launch, the preference revert to the default configuration. This behaviour no longer presents on macOS.
  • Fix:
  • Step number placement - page metas (step number, pli, csi, callout etc.) are placed relative to one or more other metas. For example, the step number meta can be placed relative to the pli (default placement), the csi, page header, page footer or the page. If one were to move a meta depended on by another, the 'other' meta would also move which would lead to unexpected behaviour. The proper way to move a meta is to first move its dependant ma ta(s) to another dependency. Dependencies can be seen in 'Move...' dialogue available via the context menu. Use the 'Relative To...' drop-down dialogue to see the available metas the given meta can be placed relative to.
  • Fix:
  • POV-Ray rendering with space in file name or path. LPub3D-Trace (customized version of POV-Ray) supports spaces in the file name or path.
  • Fix:
  • POV-Ray very slow in version 2.0.19. Although I could not reproduce this behaviour, it is worthwhile to note that LPub3D-Trace, an updated and better integrated version of POV-Ray, consistently yields better performance that the Off-the-shelf version. Moreover, LPub3D-Trace offers automatic configuration with the capability to implement the full compliment of custom configuration available to POV-Ray.
  • Fix:
  • Callout within a callout. This capability was not available when using 'single call rendering' - submitting all the images on a page in a single call to LDView versus a call for each image. The image marshalling logic has been redesigned to manage any level of depth between a page and it's elements. Thus, the new behaviour now supports virtually endless callouts within callouts.
  • Fix:
  • 'Current Submodel' MPD-combo-dropdown current index not set when changed. This behaviour has been corrected.
  • Fix:
  • Incorrect default install path shown when installing LPub3D. The LDraw library path is presented as the install to folder. This behaviour has been corrected.
  • Fix:
  • LPub3D 'Check for Updates' function does not do anything when clicked. There is a brief flash of the progress bar but that's it. This behaviour has been corrected in v2.1.0; however, as the error is in the already released v2.0.20, users will still be impacted by this abnormal behaviour when they attempt to upgrade from within LPub3D. See Known Issues below.
  • Known Issue:
  • LPub3D v2.0.20.0.645_20170208 check for updates function is broken. Therefore, it is not possible to upgrade from the within LPub3D. If upgrading from v2.0.20, you must manually download and install LPub3D v2.1.0 - https://sourceforge.net/projects/lpub3d/files/2.1.0.
  • Change:
  • L3P 3rd party application removed. The L3P module which carried the function of preparing the .pov files for POV-Ray was removed from the LPub3D bundle. The .pov file generation functionality is now performed by LDView.
  • Enhancement:
  • The entire DevOp process has been moved to a cloud and container enabled architecture allowing platform-independent development, build and release across all major operating systems including macOS, Linux, Windows and the newly available AppImage 'no-install' application bundle distribution. Following is summary of each meaningful application correction and or enhancement.
  • Integrate 3rd party renderers - LDGlite, LDView and LPub3D-Trace (POV-Ray). To well deliver this capability, LPub3D 2.1.0 implements a major 'build, packaging and deployment' redesign to maximize use of cloud infrastructure and services. The end-to-end build, packaging and deployment process is now fully automated and 100% cloud enabled - using Travis-CI for Linux and macOS artefacts, and AppVeyor for Microsoft. All Linux distro are built via Docker containerization on Travis-CI.
  • Along with the core LPub3D source, LDGlite, LDView and LPub3D-Trace (POV-Ray) are compiled from source during the build process. While this approach adds material time to the build process, it ensures all dependencies are properly addressed during Linux and macOS builds. The end result is a complete and consistent solution package across all supported Linux, macOS and Microsoft platforms where a single install will account for all the required LPub3D components needed to deliver the full compliment of LPub3D capabilities.
  • In addition to tight integration, the LPub3D renderers have been adapted with additional capabilities specifically designed to work with LPub3D. Enhancements were carefully designed to allow maximum compatibility with their original upstream source to ensure upstream enhancements, fixes and progressions are efficiently integrated into the LPub3d-specific branches.
  • LPub3D is available as an AppImage distribution. AppImage is a format for distributing portable software on Linux without needing superuser permissions to install the application.

New in LPub3D 2.0.20.0.645 (Feb 10, 2017)

  • Fix: Introducing LPub3D ports for Linux (Debian, Red Hat and Arch based distros) and Mac (OSX). [0853680]
  • Fix: When the preferred renderer is manually typed into the preference dialogue, it is not validated upon exit of the preferences dialogue. [44548f4]
  • This behaviour has been corrected. Manually entered preferred render path is validated when the preference dialogue is closed. Fix: Automatically load LDraw archive libraries on initial application launch. [ff06bc9]
  • To further improve the user experience at initial application launch. When LPub3D is loaded for the first time, it there are no archive libraries in at the user's application data path. LPub3D will automatically install the libraries packaged in the distribution.
  • Fix: Update QuaZip library to v0.7.2
  • Improve robustness.
  • Fix: Enable and correct menu shortcuts. [48ca363]
  • LPub3D menu item keyboard shortcuts have been repositioned to allow both Editor, and 3DViewer's short cuts to reside on the main menu tool-bar. This redesign allows for more seamless integration on OSX and some Linux distros - e.g. Debian. Additionally, all available LPub3D menu item short cuts are now enabled.
  • Here are the new mappings:
  • Main Page Design:
  • Open = Ctrl+O
  • Save = Ctrl+S
  • Print File = Ctrl+T (Currently Disabled)
  • CloseFile = Ctrl+X
  • First Page = Ctrl+P
  • Last Page = Ctrl+L
  • Previous Page = Ctrl+E
  • Next Page = Ctrl+N
  • Export Bmp = Alt+B
  • Export Png = Alt+N
  • Export Pdf = Alt+F
  • Export Pdf Preview = Alt+P
  • Export Jpg = Alt+J
  • Fit Page Width = Alt+W
  • Fit Page Visible = Alt+V
  • Actual Size = Alt+A
  • Redo = Ctrl+Y (Also affects LDraw Editor Menu)
  • Undo = Ctrl+Z (Also affects LDraw Editor Menu)
  • Exit Application = Ctrl+Q
  • LDraw Editor Menu:
  • Cut = Ctrl+X
  • Paste = Ctrl+V
  • Copy = Ctrl+C
  • Select All = Ctrl+A
  • Redraw = Ctrl+R
  • Find = Ctrl+F
  • Delete = DEL
  • Parameter Editor Menu:
  • Cut = Ctrl+X
  • Paste = Ctrl+V
  • Copy = Ctrl+C
  • Select All = Ctrl+A
  • Save = Ctrl+S
  • Find = Ctrl+F
  • Undo = Ctrl+Z
  • Redo = Ctrl+Y
  • Delete = DEL
  • 3D Viewer Menu:
  • Insert ROTSTEP = Shift+O
  • ROTSTEP Absolute = Shift+B
  • ROTSTEP Relative = Shift+E
  • Select = Shift+S
  • Zoom = Shift+Z
  • Zoom Region = Shift+G
  • Rotate Camera View = Shift+T
  • Pan = Shift+P
  • Select Invert = Ctrl+Shift+I
  • Save As = Ctrl+Alt+S
  • Find = Ctrl+Shift+F
  • Copy = Ctrl+Shift+C
  • Select All = Ctrl+Shift+A
  • Hide Selected = Ctrl+H
  • Hide Unselected = Ctrl+Shift+H
  • Unhide All = Ctrl+U
  • Unhide Selected = Ctrl+Shift+U
  • Undo = Ctrl+Shift+Y
  • Redo = Ctrl+Shift+Z

New in LPub3D 2.0.19.877.2 (Dec 27, 2016)

  • Features and enhancements:
  • Fix:
  • Callout not displayed and part count incorrect when loading a model using multiple and separate ldr-format files (r877) * These behaviours were introduced in LPub3D 2.0.0. The immediate work around is to merge the files into a single MPD-format file. However, these behaviours are now corrected.

New in LPub3D 2.0.15.846.2 (Nov 1, 2016)

  • Fix: Reset step cache (r845)
  • CSI (assembly) context menu item "Reset Step Assembly Image Cache." Clear and regenerate CSI .png (assembly) and .ldr (temp) files for the selected step. This context menu is only displayed for multi-step pages allowing the editor to refresh a specific CSI image on the page. Fix: Reset page cache (r844)
  • Page context menu item "Reset Page Assembly Image Cache." Clear and regenerate CSI .png (assembly) and .ldr (temp) files for all assemblies on the current page. This function will not reset PLI (parts) content. Fix: On reset all caches LPub3D returns to first page (r843)
  • LPub3D will return to the page on which it was when reset all caches launched. Fix: Fade position lost on page refresh (r842)
  • Refresh page (in the LDraw editor) and closing the preference dialogue will refresh the loaded model file after which the fade position is lost and the entire first step on the page is incorrectly faded. This behaviour has been corrected. Fix: INSERT MODEL meta places meta in the wrong place (r841)
  • When there are steps after the last part-added step, the INSERT MODEL meta added by LPub3D is placed after the STEP meta instead of before it. Fix: Export image removed from viewer window before export is finished (r840)
  • Corrected.

New in LPub3D 2.0.14.838.2 (Oct 13, 2016)

  • Features and enhancements:
  • Fix: File reload after external source change breaks page drop-down combo dialogue(r837)
  • When a file is reloaded after being changed by an external source, the drop-down menu for selecting a page doesn't work until after navigating using another method.
  • Fix: Image orientation does not conform when page orientation changed to Landscape (r836)
  • Image generation was not inheriting the proper page size values.
  • Fix: Extra characters "%3" in margin meta and page size meta does not display the page size identifier(r835)
  • Oops, allocated the page size identifier variable to the wrong meta - should have been allocated to page size meta instead of units meta (units meta is used for setting the margin). Consequently, the page size meta is missing the size identifier (A4, Letter, etc...) because the place-holder to pass the variable is not there. This must have happened during the patch process from the maintenance branch because it did not present during my tests. Both issues are now corrected.

New in LPub3D 2.0.13.834.2 (Oct 10, 2016)

  • Features and enhancements:
  • Fix:
  • Logging options added to Preferences (r832)
  • Select logged attributes and logging levels.
  • Fix:
  • Prompt search directory settings reset (r831)
  • Prompt to inform that the search directories have been reset after the search directory reset button is clicked. Restarting LPub3D is not required. Also changed menu items "Reset 3D Viewer Model Cache" to "Change Temp File Cache" and "Reset Image and Model Caches" to "Reset All Caches".
  • Fix:
  • Inconsistency between part counts in submodels and part counts in call-outs where multiple instances are involved (r829)
  • For submodels, the PLI part counts reflect only one instance of the submodel, even if multiple instances are used in the same step. The instance count is correct, and the BOM has the correct total number of parts. With this update, sub-model pages displaying instance count now have a context menu option to display parts per step/page or not (total parts consumed by the number of instances indicated.
  • Previously, for callouts, you have the options (see context menu) to display parts list per callout (one instance) or not. When you select no parts list per callout, the PLI will show all the parts consumed by the total number of instances in the callout. If you choose parts list per callout, the PLI is moved to the callout and only the parts for a single occurrence of the callout is shown. The idea here is if you have 5 occurrences of the called out assembly, you'll need 5x the parts total, but only 1x parts are shown to indicate what you need to build an instance of the called out assembly.
  • On sub-model pages displaying the instance count, there is only one behaviour for PLI counts (the most intuitive) which is to display the parts list per step. This is intuitive because the primary role of the PLI is to show what you'll need to build an occurrence of the step shown - it is not the intention to mimic the BoM. Nevertheless, I added a context menu item to not display parts list per step and instead display total parts consumed by the number of occurrences of the submodel in the parent submodel/step.
  • Fix:
  • Page size and orientation processing update (r826/833)
  • Further industrialization of the print/export module. This update streamlines the process and realizes some performance gains. There are some key changes. Notably, page orientation and page size are now mutually exclusive. This means when switching from Portrait to Landscape, accompanying the orientation meta with a transposed page size meta no longer required or managed.
  • Previous behaviour when editing a page size change required the following meta commands:
  • 0 STEP
  • 0 LPUB PAGE ORIENTATION LOCAL LANDSCAPE
  • 0 LPUB PAGE SIZE LOCAL 11.0000 8.5000
  • Note that the page width and height have been transposed. Going forward, transposition of the page width and height when switching from Portrait to Landscape is automatically managed by LPub3D.
  • NOTE:
  • This update is NOT backward compatable. An accompanying transposed page size meta to indicate the switch from portrait to landscape as shown above will be treated as a new page size meta for that page. Consequently, using this meta to 'switch' orientation will actually result in NOT switching the orientation as LPub3D will automatically switch again the switched page size meta.
  • If the user is only interested in changing the orientation, the proper meta command going forward will be:
  • 0 STEP
  • 0 LPUB PAGE ORIENTATION LOCAL LANDSCAPE
  • To help with accurately displaying the page size identifier in the setup and context menus, the standard page identifier is now appended to the page size meta command. For example:
  • 0 LPUB PAGE SIZE 8.5000 14.0000 Legal
  • 0 LPUB PAGE SIZE LOCAL 8.5000 11.0000 Letter
  • 0 LPUB PAGE SIZE LOCAL 5.8000 8.3000 A5
  • 0 LPUB PAGE SIZE LOCAL 5.8678 8.3456 Custom
  • Along with the width and height values, if the page size is non-standard, the identifier "Custom" will be automatically used. Additionally if an identifier is not present, the identifier "Custom" will automatically used. The page identifier is displayed in the Page Setup dialogue and Size/Orientation change context menu dialogue.
  • Also, the LPub3D print/export function no longer needs to parse the model file to capture, in advance, page sizes. This capture is performed during the existing page parse and load functions and is exposed to the print routines during printing/exporting. This change was necessary to better enable mixed-size page export/printing where it is necessary to 'look ahead' to get the next page's size and orientation parameters in order to configure the printer engine before processing the page.
  • Fix:
  • Expand INSERT MODEL meta command behaviour (r825)
  • When using part fading LPUb3D will now process multiple INSERT MODEL commands rendering the CSI content at each command. For example, if the instruction document includes different model attachments, the editor can now include a non-faded image of the entire model with each attachment. Here is an example of he proper command sequence when used in conjunction with BUFEXCHG:
  • 0 BUFEXCHG B STORE
  • 0 //... default model content...
  • 0 STEP
  • 0 BUFEXCHG B RETRIEVE
  • 0 BUFEXCHG A STORE
  • 1 0 445 -46 -10 1 0 0 0 1 0 0 0 1 attachment1.ldr
  • 0 STEP
  • 0 LPUB INSERT MODEL
  • 0 LPUB INSERT PAGE
  • 0 STEP
  • 0 BUFEXCHG A RETRIEVE
  • 1 0 0 0 0 1 0 0 0 1 0 0 0 1 attachment2.ldr
  • 0 //STEP These last 3 lines are optional when editing the model file.
  • 0 //LPUB INSERT MODEL If they don't exist and fade step is ON, they will be automatically created by LPub3D
  • 0 //LPUB INSERT PAGE
  • Fix:
  • The PNG output of a model with various page orientations is not correct (r824)
  • Cleared page buffer before rendering each page. Also corrected a typo causing page range to sometimes not work for image exports.

New in LPub3D 2.0.12.823.2 (Oct 3, 2016)

  • Fix:
  • LDView SnapshotSuffix to persist .png image generation (r820)
  • As designed, LDView will use the last "Save as type" parameter set in the Save Snapshot dialogue for command line exports. I've added the command parameter -SnapshotSuffix=.png to force png image output in situation the user changes the LDView save as type from .png (e.g. exports a snapshot in .jpg format) while working outside of LPub3D. Fix: Industrialize pdf print/export preview dialogue(r819)
  • Remove [Experimental] status from pdf print preview. Implement prompt to open pdf file after printing. Fixed launching "Pdf print preview" menu item disables the "Print to Pdf file" menu item (nothing happens when you click the Print to Pdf file menu item). This behaviour occurs only after launching Pdf print preview requiring an application restart to clear the behaviour. Fixed viewer print banner removed after the first printed/exported page. Known Issue: Some JPEG-compressed images types are not rendered as inserted image (r818)
  • This was a Qt bug claimed to be corrected in Qt 5.5.1 (LPub3D uses 5.7); however, the issue seem to persist in Qt 5.7 also. Not all jpg images fail to load. The issue appear to be related to JPeGs with broken EXIF headers only.

New in LPub3D 2.0.8.785.2 (Aug 31, 2016)

  • Fix: Print/export 'page range' option output incorrect (r785) *For print/export option "All pages," images are generated in numerical order. However, for option "Page Range," images are generated in "alphabetical" order for lack of a better description. If one selects pages 1-115, the order the pages are generated is 1, 10, 100, 11, 12, 13, 14, 15, 16, 17, 18, 19, 2, 20, ... The order is now as expected 1...10...100 etc... -Fix: Revert to MinGW distributions - for both x32 and x64 architectures (r784) *Discontinue all MSVC LPub3D distributions. -Fix: Refactor loading model file into Ldraw editor window (r783) *File load hangs for an unusual amount of time when loading a large model file. This behaviour appears usually when the LDraw editor tab is not in focus. If the file is loaded with the editor tab in focus, the file is loaded nominally.
  • Fix: Exclude fade directories from search directory list if fade step not enabled (r781) *Improve just a little bit the performance during model file load.
  • Fix: Refactor adding parts to archive library (r780) *Improved logging detail and added checks to not submit an empty search directory.
  • Fix: Log all status entries add date time stamp (r779) *Capture all status bar updates to the log files. Increase log file size to 5Mb rotating across 5 files. Log files located at Software/LPub3D/logs
  • Fix: Backup parameter files during install (r778) *Backup user-editable parameter files that must be overwritten during installation of updates. This way, any additions created by the user will not be lost. However, it will be necessary to manually update the new parameter file with your additions. -Fix: Refactor fade step behaviour (r777) *Update fadeStepColorParts.lst attributes to allow faster library parsing to generate static colour parts. NOTE: FILE UPDATE REQUIRED. fadeStepColourParts.lst file updated with new required column so it is necessary to update your installed file. LPub3D will automatically backup and overwrite the existing file during installation.
  • Fix: Adjustable renderer process timeout (r776) *All the user to manage the amount of time to keep alive the renderer process. The default is 6 minutes but can be changed between -1 which is run indefinitely and 99 minutes. For high definition using POV-Ray, rendering process time can easily exceed the default. This setting is located at Preferences=
  • Fix: Reload archive libraries into memory (r775) *On model file load, do not reload library if no new parts discovered. LPub3D sweeps the defined search directories upon file load. This update makes a little more efficient the load process.
  • Fix: Update aboutdialog display version of Qt (r774) *Display version of Qt from the platform versus hard coded.
  • Fix: Compile on MinGW x64 (r773) *Convert int to intptr.

New in LPub3D 2.0.7.770.5 (Aug 31, 2016)

  • Fix: Elapsed timer on file open (r771) *Display elapsed time to load a file.
  • Fix: Archive library copy function not working if [empty] library directoy exist (r770) *If user data libraries directory exist, library copy from installed base is ignored. This is an issue if there are no libraries in the library directory. The correct behaviour is to verify that libraries exist and copy if they don't.
  • Digitally sign LPub3D executable distributions (r769) *Secure installation content and reduce the likelihood of triggering antivirus quarantine.
  • Fix: Inconsistent fade behaviour when using BUFEXCHG parts and added parts in the same step (r764) *Behaviour previously used the size of the previous step's CSI to determine the fade position index of the current step in all cases. This approach could lead to an inconsistent fade position after retrieving a buffer. Behaviour corrected to use the size of the previous buffer parts list (versus the CSI) to determine the current step's fade position when BUFEXCHG RETRIEVE meta command is used. This approach removes the necessity to follow the BUFEXCHG RETRIEVE meta command with a STEP/ROTSTEP meta command to process the fade sequence which will unnecessarily render the buffered items twice, in the buffered view and the modelled view. Usually only the buffered view render is desired in the current step (that's why the assembly is buffered in the first place) but the modelled view CSI should be carried forward to the next step.

New in LPub3D 2.0.6.761.3 (Aug 31, 2016)

  • Fix: Set radial and conical background gradient parse fail with 'Malformed background...' (r759) *Parse fail for radial and conical gradient meta commands. Linear, radial and conical gradients are all now working as designed.
  • Fix: Scale in Page Globals Setup dialog not working (r756) *Cover Image and Logo double spin control not working. Issue corrected.
  • Fix: Save and restore application window state and geometry (r755) *Was causing crash on launch before update to Qt5.7.
  • Fix: Application crash on launch (r754) *Update to Qt5.7 on MSVC2015 and MinGW5.3. There must have been a big, nasty bug in Qt 5.5/5.6 because the code that consistently generated the crash immediately resolved upon update to Qt5.7
  • Fix: Crash on application close on Windows7 (r753) *Expected scoped pointer main window to destruct all children on close but it seems like 3d viewer application and mainwindow were not treated as children and were not deleted at application close by the scoped pointer on Windows7 machines. Manually delete 3D viewer application instance and mainwindow at LPub3D termination.
  • Fix: Substitute parts use only file name; file path not required (r752) *When editing substitute parts list, it is not necessary to enter the absolute file path for the substitute file. Just entering the substitute file name will be sufficient.
  • Fix: Title annotations displays when only Freeform annotation selected in setup preference (r751) *Logic processed title annotations when it should not have. Corrected.
  • Fix: setGeometry: Unable to set geometry 600x800 warning message (r749) *Use QDesktopWidget.availableGeometry(this) setting to support single and multi-screen configurations.
  • Fix: Parameter file edit window highlighting part description containing '#' (r748) *Highlight only lines where first character is '#'.
  • Fix: Generate fade colour parts list crash (r747) *Redesigned functionality to process parts from archive libraries (unofficial and official) versus LDraw disc directories. This approach improves performance and reliability as all parts, including those from additional search directories, are collected in the archive libraries. Working with archive files is much faster than working with disc directories.

New in LPub3D 2.0.5.744.3 (Aug 31, 2016)

  • Fix: Portable distribution create and populate user data directory when installed under Program Files/(x86) (r744)
  • Fix: Revert to deposit LPub3D icons in Programs menu (versus startup menu) (r743)
  • Fix: Remove MAINWINDOW registry group if exist (r742) *I believe the settings in this group are contributing to the intermittent crash at startup.
  • Fix: LDConfig load order; first, LDraw directory; second, extras directory; third, resource cache (r741)
  • Fix: Automatically load ldglite during installation/application launch (r740)

New in LPub3D 2.0.4.737.2 (Aug 31, 2016)

  • Fix: Release Windows MinGW x32 builds (r737) *Update deployment utiliites to produce both MinGW and MSVC builds. MinGW will only support x32 architecture for the momenbt.
  • Fix: Search directories for LDGlite (LDSEARCHDIRS) not loaded as expected at startup (r735) *Loading the LDGLite search directories at startup occurred out of order (before general search directories) so the LDGlite routine did not pass the conditional test to actually load search directories. This behavior would cause a crash if parts to be loaded were in the standard LDraw official or unofficial directories - for example under ..UnofficialmyParts - and LDrawini was not in use. LDGLite would not be able to find the part and; consequently, would not be able to generate a part image.
  • Fix: Fade steps skips the second step in a model. Fading starts on the third step. (r734) *No fade parts index generated on the first step because nothing was faded; however, we still need an index to know where to start on the second step. Fade step routine fixed to generate an index as long as there are valid parts in the step.
  • Fix: Installer program configured to deposit a master copy of usder data (libraries, lists, etc...) in the installation root directory. (r733) *Allow user data creation at initial launch. Upon initial application launch, if user data does not exist, it will be created. This will address the issue of Windows standard users not having access to user data after installation. Additioinally, this design allows for multiple users on a single machine to have their individual user settings and data. -Fix: Set progress dialog to nonmodal. (r732) *Prevent the progress dialog from blocking input to other windows.
  • Fix: Data directory installed under Administrator AppData path instead of logged in user which is likely to be a standard user (r731) *User data
  • LDraw archive libraries, logs, extras and other updatable data items - will be installed at initial application launch by default. Because Administrator privilates are required to install LPub3D, user data installed during installation will be deposited under the Administrator user's AppData path. This data will not be accessible to standard users. User data can be installed during application installation as a checked option. This option may be desirable if the logged in user installing LPub3D is also the Administrator. If user data is installed during installation, user data for standard users will be automatically created during initial application launch. On initial application launch, the standard user will be given the options to select, copy (from the installation directory) or download the LDraw archive libraries.

New in LPub3D 2.0.3.730.2 (Aug 31, 2016)

  • Change: Check for update settings are now enabled by default. Previously, it was necessary to configure update settings in the Preferences/Other tab before one could visually confirm an update check. (r722)
  • Fix: Warnings are displayed when there are no unofficial subdirectories under the LDraw directory. (r723) *When no search directories are defined (i.e. No Unofficial or Models directories exist) and the user opens the Preferences dialog, teh LDraw Content Search Directories dialog will validate an empty dialog with a warning that the 'entry' is an invalid search directory. In such case no warnings should be displayed. -Fix: Installation program presents options to delete 'old' library directory on new installation when no old directory existed. (r724) *Comparison of old and new are not the same evaluated to true. Comparison improved to check that old is actually a directory also.
  • Change: Preferences/Other/Check for updates/Version now presents all valid updatable versions in a dropdown list. (r725,r728) *Manage better the update dialog. Restrict entries to only valid update versions.
  • Fix: Crash when last line in main model of mpd file is a part type line - i.e. line starts with 1 to 5. (r726) *This behavior will be seen when the user loads a model file without the meta tag '0 STEP' or '0 NOFILE'.
  • Fix: Export and PDF generation produces "Failed to create CSI" and does not produce model images in the generated document.(r727) *Temporary testing code blocked the creation of CSI images

New in LPub3D 2.0.2.721.2 (Aug 31, 2016)

  • Fix: Add all Visual C++ dependencies to installation and portable distributions including VC++ 2015 redistributable runtime libraries (r720) *Repackaged all distributions to incorporate all MSVC 2015 required dependency libraries. The Visual C++ Redistributable for Visual Studio 2015 is also included in the portable distributions. For the executable installation distribution, the installation program will check if the required libraries exist before silently installing the respective Visual C++ redistributable.
  • Fix: Disable search directory validation in Preferences dialog - temporary workaround (r721) *Warnings are displayed when there are no unofficial subdirectories under the LDraw directory. In such case no warnings should be displayed.

New in LPub3D 2.0.1.717.2 (Aug 31, 2016)

  • Fix: In support of archive library move to AppData (see r707), the installation process will delete the 'old' LDRaw library archive directory even if it is actually the new directory. For example this can be reproduced if one attempts to reinstall LPub3D where the actual 'old' directory would have been deleted during the initial installation. The installation will now compare the 'old' directory to the new one and present the user the option to delete if the comparison does not match. (r715)
  • Fix: At applicaton launch, the 'Check for updates' does not detect the installed version. As a result, if the user performs a check for update or update checks are set to automatic, the user is presented with a message dialog stating a new update version is available when in fact this is not the case. The correct message dialog is now presented. Runaway eventloop when newest version is same as installed version. (r716)

New in LPub3D 1.3.5.615.2 (Feb 5, 2016)

  • Fix:
  • Pdf output restored to vector graphics - was being formatted as bitmap because conflicting setting was exposed during printing. (r615)

New in LPub3D 1.3.4.591.2 (Jan 27, 2016)

  • Fix:
  • During installer installation, prompt user to overwrite existing configuration files (r591)

New in LPub3D 1.3.2.563.5 (Jan 22, 2016)

  • Features and enhancements:
  • -Fix: PLI Parts annotation restored to short value (r555)
  • -Fix: Control manual page number entry. (r562)
  • However silent_alloc was not fully implemented and does not serve any current purpose.

New in LPub3D 1.3.1.516.3 (Jan 22, 2016)

  • Features and enhancements:
  • -Fix: Update ldglite hard-coded default directory setting (r505)
  • -Fix: Remove hard coded reference to LPub3DViewer-Library folder - this was added in 1.3.0 unofficial archive refresh functionality (r506)
  • -Enhancements (r507)
  • -Fix: Add pliSubstituteParts.lst to media build - sorry, I forgot to include in the NSIS build script:-( (r515)

New in LPub3D 1.3.0.504.2 (Jan 22, 2016)

  • Features and enhancements:
  • -Add dialog to print or export to image all pages, current page and custom range of pages (e.g. 1,3,5,7-9)
  • -Add ability to detect additional ldraw content search directories using ldrawini c api
  • I implemented the ldrawini c api to maintain compatability with LPub3D 3rd Party renderers - LDView, L3P(PovRay) and Ldglite. Additional directories must have either the same tree as LDraw Unofficial directory (i.e. parts and/or p subdirectories...) or alternatively, content can be deposited at the root of the additional directory (i.e. C:/ldrawFiles/*.dat). Content from all defined ldraw search directories are archived in the ldrawunf.zip archive and loaded into memory - enabling access to the 3DViewer.
  • If no ldraw.ini file is detected. LPub3D will automatically search all subdirectories under the ldraw/Unofficial directory - except directories p and parts. Unofficial subdirectories p and parts as well as official p and parts subdirectories are never searched because they are atomatically loaded during default behavior during startup.
  • There are 2 ways to define search directories: 1. using the Ldraw.ini file (there is now a menu button to edit the ldraw.ini file) and 2. editing the 'Ldraw Content Search Directories text edit dialog under the 'Other' tab in Preferences. If you are using an LDraw.ini file, the preferences dialog will be read only - you must use the menu edit button under 'Configurtion' to edit the ldraw.ini file. The ldraw.ini edit button only appears if a ldraw.ini file is detectec. If you are not using ldraw.ini, it is possible to add,remove and reset to the default search directories in the Preferences tab.
  • ldglite renderer updated with the ability to process additional directories beyond official/unofficial parts, p and Model. I implemented this
  • enhancement to allow all 3 LPub3D renderers(LDView, Ldglite, L3P/PoV Ray) the same functionality supporting additional ldraw content search directories. LPub3D now passes 2 env variables to ldglite - LDRAWDIR and LDSEARCHDIRS. LdView and L3P already uses the ldrawini.c library. They can also be configured to detect additional ldraw content search directories if no ldraw.ini file is configured. I also upgraded ldglite's openGL API from glut (deprecated) to freeglut 3.0 released in June 2015. Ldglite os not versioned at 1.3.0 (from 1.2.7).
  • -Add ability to manage additional ldraw content search directories whether using Ldraw.ini or not.
  • If not using Ldraw.ini file, automatically detected search directories are limited to those under the Unofficial directory. The user has the abilty to exclude and reset search directories within this edit list. Unofficial P and Parts directories are automatically excluded from the search directory list as they are loaded automatically by the applciation.
  • -Add Rotate Icon - indicate that the builder should "flip" the model
  • -Add line type attribute to border configuration
  • 0=none,1=solid,2=dash,3=dot,4=dashDot,5=dashDotDot. So an old meta line like this:
  • 0 !LPUB PLI BORDER GLOBAL ROUND Black 0 15 MARGINS 0.472439 0.07 should be updated to this:
  • 0 !LPUB PLI BORDER GLOBAL ROUND 1 Black 0 15 MARGINS 0.472439 0.07
  • -Add PLI/BOM part substitution - substitute modeled part in PLI/BOM with alternate
  • This feature is useful when you have a modeled part (e.g. Power Functions Light) that will
  • take alot of space in the BOM/PLI, you can substitute the modeled version with an alternate
  • representation that is suitable for the PLI/BOM view. This feature is complementary to LDCad's
  • template functionality which allows you to model adjustable parts as needed. To use this
  • functionality, simply edit the substituation list from Configuration= BOM/PLI Substitute Parts List
  • -Add LDCad PART/UNOFFICIAL PART meta to recognize LDCad template generated parts
  • -Add gradients to background options
  • -Add Change local page background - colour, gradient, picture, submodel, none
  • -Add memu item 'Refresh Unofficial Parts' which downloads and replaces the ldrawunf.zip archive
  • in the Ldraw/LPub3DVoiewer-Library. LPub3D places all search directory parts in the ldrawunf.zip archive so they
  • can be made available for the LPub3D Viewer. This feature allows you to reset the archive file to
  • it's latest default content if desired. The ldrawunf.zip unofficial archive is used, along with the complete.zip,
  • by the 3DViewer.
  • -Add menu item 'Reset Fade Files Cache' which deletes all generated fade files. Fade files automatically
  • generated as needed when you open a model with the 'Enable Fade Steps' preference option checked.
  • -Update 3DViewer to LeoCAD build 1867
  • -Remove PartsList class, use instead lcPiecesLibrary class to verify parts and capture part title. This is a consolidation to
  • improve the application's performance.
  • -Move process fade colour parts to separate thread.
  • -Move fade parts directory from under LDraw/Unofficial/parts and LDraw/Unofficial/p to as single directory
  • under LDraw/Unofficial. So from this version of LPub3D, the fade directory will be autogenerated and populated
  • as LDraw/Unofficial/fade. Old fade directories under Unofficial/parts and p must be manually removed if desired.
  • -Redesign color part list and archive classes - rename and separate generage color parts list
  • -Cosmetic and performance updates
  • -Fix: Changing step number attributes on multi-step pages are now working
  • -Fix: PLI/BOM sort routine, sort on 'part colour' part(s) appear out of place relative to
  • part size and colour.
  • -Fix: Do not create instruction page(s) for unofficial part
  • -Fix: Create s/8/48 subdirectory in lpub/tmp directory when needed. This fix will resolve the issue of LPub3D not being able to create inline unofficial subparts and 8/48 primitives when rendering models where these parts are defined in the model file.
  • -CHANGE: In previous versions of LPub3D, custom and fade parts were loaded under the Unofficial directory allowing detection by all renderers and the 3D viewer. From this version of LPub3D (v1.3.0), the fade directory will reside at the root of the the Unofficial directory. Custom content added to Unofficial P and Parts directories will not detected by LPub3D.
  • -CHANGE: Change part count routine to use ldraw archive files to look at '!LDRAW ORG...' part type meta tag. I think there are still some issue with
  • this routine however - especially with large complex models using in-lined unofficial parts that may not be in ldrawunf.zip
  • -CHANGE: Change 'Reset All Caches' to 'Reset Image and Model' Caches
  • -CHANGE: BOM default sort to sort by colour then size, previous default was size only (PLI default sort by size)
  • -CHANGE: Change 'Update' tab in preferences dialog to 'Other'.