Coder Social home page Coder Social logo

trevorsandy / lpub3d Goto Github PK

View Code? Open in Web Editor NEW
130.0 11.0 19.0 72.82 MB

An LDraw™ editor for LEGO® style digital building instructions.

Home Page: https://trevorsandy.github.io/lpub3d/

QMake 1.38% Shell 4.08% JavaScript 0.11% Batchfile 1.67% NSIS 1.54% C++ 87.03% C 2.63% Roff 0.16% Makefile 0.05% Python 0.07% AppleScript 0.02% HTML 1.12% GLSL 0.05% Ruby 0.04% CMake 0.06%
ldraw-editor lego lego-instructions 3d-modelling cad cai education design engineering technic

lpub3d's Introduction

LPub3D-Logo

LPub3D

An LDraw™ editor for LEGO® style digital building instructions.

GitHub release GitHub commits (since latest release) GitHub last commit
SourceForge weekly downloads SourceForge total downloads GitHub total downloads
GitHub issues closed GitHub issues GitHub pull requests
GitHub build status GitHub quality check Maintained status

LPub3D is an Open Source WYSIWYG editing application for creating LEGO® style digital building instructions developed and maintained by Trevor SANDY.

View the LPub3D GitHub page for full project details.

License

GPLv3-logo LPub3D is available for free under the GNU Public License version 3.0 (GPLv3).

Disclaimers

LEGO® is a trademark of the LEGO Group of companies which does not sponsor, authorize or endorse this application.

Built-With-Qt-Logo

Copyright (C) 2015 - 2023 by Trevor SANDY

lpub3d's People

Contributors

pbartfai avatar trevorsandy avatar

Stargazers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

Watchers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

lpub3d's Issues

Add LPu3D build check - macOS & Windows

Subject of the issue

Add LPub3D build check - macOS & Windows. Headless build check for LPub3D is enabled for macOS and Windows. Linux and Qt's QWidget objects do not get along so no headless testing is possible for Linux without significant refactoring (separating the presentation and business/process layers) which is not a small task. It's quite strange that while headless GUI instantiation works with minimal effort on Windows (it is necessary to pipe stdout to a file then display) and macOS (add Xvfb and stir till ready), All my Linux distros headless testing froze on encountering QWidget objects, notably when the QMainWindows instantiation is reached. This behaviour occurs even when using Xvfb or Qt's -platform offscreen library.

Note that the focus of this change is to specifically enable checks during CI builds - i.e. running checks during AppVeyor and Travis-CI builds which means no monitor/user interaction capabilities will be present during checks.

[Feature] Enable "true" part fade and part highlight

Subject of the issue

Enable true part fade by manipulating the fade part colour's ALPHA value.

Your environment

  • Version of LPub3D - next release
  • Operating system - All

Expected behaviour

Be able to produce fade steps that look like this:
fade-demo

[Enhancement] Enable image for Rotate Icon

Subject of the issue

Enable custom image for Rotate Icon

Your environment

  • Version of LPub3D - 2.2.2
  • Operating system - All

Expected behaviour

Allow user to use a custom Rotate Icon image

Actual behaviour

While an image can be used as a Rotate Icon background, LPub3D always draws the rotate arrows in the foreground.

Workaround

Use the 'insert picture' feature in place of adding a rotate icon - very poor hack.

Solution suggestion

Enable configuration settings to suppress drawing the Rotate Icon arrows.

[Packaging request] LPub3D for ARM/Raspberry Pi?

I am really glad about the effort you are putting into packaging LPub3D for many different Linux distros in their native formats, and that you also offer an AppImage. Also you are offering it for Windows and macOS. All this is really highly appreciated! I think there is hardly any other application developer who puts in so much effort into building and packaging for so many different platforms

Also I noticed that you seem to do most of your packaging on openSUSE's Open Build Service (OBS):

Therefore I dare to ask: would LPub3D in general also build on ARM? Would it be possible for you to build AppImages for Raspberry Pi? Or are there any obstacles which prevent this (like, any dependencies not available, or viewer parts...)?

Because OBS already contains a build target which can spit out AppImages for ARM. So it may be very easy to add that option at almost no additional "cost" as well to your already impressive number of builds. The benefit would be to have LPub3D available on all the many Pi-targeting distros...

dll errors when starting LPub3D_x64.exe

Subject of the issue

After upgrading to LPUB3D version 2.2.1 I am unable to startx64 bit version of LPUB3D
C:\Program Files\LPub3D\LPub3D_x64.exe
It comes with two errors that says the following dll's are missing:
quazip.dll and ldrawini.dll
If i search the install folder the closest I can find is the following:
C:\Program Files\LPub3D\QuaZIP07.dll
C:\Program Files\LPub3D\LDrawIni161.dll

C:\Program Files\LPub3D\LPub3D22.exe starts with no problem.

Your environment

  • Version of LPub3D - see Help->About LPub3D:
    Version 2.2.1 Revision 0 Build 824 Hash g2f278ed
  • Operating system - OS Name, Processor, Architecture (x86,x86_64)
    Windows 10 Pro, Intel Core I7 870 2.93GHz, X64 Bit version

Configuration

[Note: Provide details and content below as needed with appropriate redactions]

  • LPub3D installation path
    • Windows: C:\Program Files\LPub3D\
  • Application data path
    • Windows: %USERPROFILE%\AppData\Local\LPUb3D Software\LPub3D\
  • Renderer configuration files
    • [Application data path]/3rdParty\ldview-4.3\config\ldview.ini
    • [Application data path]/3rdParty\ldview-4.3\config\ldviewPOV.ini
    • [Application data path]/3rdParty\lpub3d_trace_cui-3.8\config\povray.conf
    • [Application data path]/3rdParty\lpub3d_trace_cui-3.8\config\povray.ini
  • Registry Extract
    • Windows: reg export "HKEY_CURRENT_USER\Software\LPub3D Software" LPub3D_Hive.reg

Logging

  • Application Log: [Application data path]/logs/LPub3DLog.txt
    As this has nothing to do with any renderer I have not added logs from them. And it does not seem that this error gets logged in the above log.

Screenshots

  • Configuration->Preferences->General
  • Configuration->Preferences->Rendering
  • Configuration->Preferences->Publishing
  • Configuration->Preferences->Logging
  • Configuration->Preferences->Other
    Screenshots of the above attached.

Steps to reproduce

Tell me how to reproduce this issue.
Try starting C:\Program Files\LPub3D\LPub3D_x64.exe

Expected behaviour

Tell me what should happen
LPub3D x64 version should start.

Actual behaviour

Tell me what happens instead
See attached Error Sceenshots. after this no more happens

Workaround

LPUB3D.zip

Share your work around if available

Solution suggestion

Share your opinion on how to achieve the expected behaviour

Upgrade 3DViewer to LeoCAD 18.2 GitSha d4687e0

Subject of the issue

Upgrade 3DViewer to LeoCAD 18.2 GitSha d4687e0

Solution

As part of this upgrade, LPub3D command line capability "console mode" was also enabled.
Type "\lpub3d -?" for complete list of available command line flags.

[Feature] Add image of sub-model before the first step

Hi,
thank you for this amazing project! I have one proposal for another feature which is common in many LEGO instructions. The big models often consist of several sub-models and when you start to build any of those sub-models, it is nice to have an overall picture of that sub-model at the beginning of assembly (just before the first step).
I didn't manage to achieve this using the current tools.

Thank you for considering!

Feature: modernized buffer exchange

I would like to submit a feature request I have had for years: buffer exchange working through multiple steps.

The problem
The current implementation of buffer exchange only has a start command and everything after the start command is placed in the buffer. That means that if I want to buffer a part in e.g. step 20 and only want to retrieve it in step 25, I need to store and retrieve the same parts in step 20, 21, 22, 23 and 24, because otherwise it would also buffer everything else in the in-between steps.

The solution
The solution would be quite simple (in theory at least): being able to mark where the buffer should end. That way LPub3D knows where to stop storing the parts in the buffer. One could extend the current buffer exchange meta command like so:

0 BUFEXCHG A STORE BEGIN
// parts
0 BUFEXCHG A STORE END
0 STEP
// parts
0 STEP
0 BUFEXCHG A RETRIEVE

And in that case, only the parts between BEGIN and END are stored and when retrieved in the third step, the parts from step 2 remain untouched.

Aside from that, you could also edit the retrieve command like so:

0 BUFEXCHG A RETRIEVE BEGIN
// parts
0 BUFEXCHG A RETRIEVE END

To remove the need for the PLI BEGIN IGN commands that are usually found together with a buffer exchange retrieve.

You could also create a completely new meta command to keep buffer exchange completely backwards-compatible (instead of partly); either way is fine with me as long as the functionality is there.

In an ideal world, there would also be support for cross-submodel retrieving (e.g. I store a buffer in submodel X and retrieve it later on in its parent model), but that's something for another time.

Automatically add assembled image of multi-occurrence submodel to parent page

Subject of the issue

When using 'Add assembled image to parent page' It inserts an assembled image only for the first occurrence. In this case it doesn't add the assembled image for 3 more occurrences.

Your environment

  • Version of LPub3D - see Help->About LPub3D
    Version 2.2.2. Revision 0 Build 848
  • Operating system - OS Name, Processor Architecture (x86,x86_64)
    Windows 7 x64 latest update

Configuration

[Note: Provide details and content below as needed with appropriate redactions. To produce the Windows registry extract, go to the command console and enter the command line shown. The extract file will be placed on your desktop.]

LPub3D installation path
    Windows: F:\Program Files\LPub3D

Application data path
    Windows: %USERPROFILE%\AppData\Local\LPUb3D Software\LPub3D\

Registry Extract
    Windows: reg export "HKEY_CURRENT_USER\Software\LPub3D Software" %USERPROFILE%\Desktop\LPub3D_Hive.reg
    [LPub3D_Hive.txt](https://github.com/trevorsandy/lpub3d/files/2300243/LPub3D_Hive.txt)

Renderer configuration files
    [Application data path]/3rdParty\ldglite-1.3\config\ldglite.ini

ldglite.ini.txt
[Application data path]/3rdParty\ldview-4.3\config\ldview.ini
ldview.ini.txt
[Application data path]/3rdParty\ldview-4.3\config\ldviewPOV.ini
ldviewPOV.ini.txt
[Application data path]/3rdParty\lpub3d_trace_cui-3.8\config\povray.conf
povray.conf.txt
[Application data path]/3rdParty\lpub3d_trace_cui-3.8\config\povray.ini
povray.ini.txt

Logs

  • Application Log: [Application data path]/logs/LPub3DLog.txt
    LPub3DLog.txt
    Renderlogs LDview are empty, others are not created.

Screenshots

Configuration->Preferences->General

afbeelding
Configuration->Preferences->Rendering
afbeelding
Configuration->Preferences->Publishing
afbeelding
Configuration->Preferences->Logging
afbeelding
Configuration->Preferences->Other
afbeelding

Steps to reproduce

Right-click to add an asssembled image of the landing gear to the parent page.
External fuel tanks.mpd.txt

Expected behaviour

Assembled image should be inserted at all occurrences

Actual behaviour

Assembled image is inserted only at first occurrence

Workaround

Copy lines used in first occurrence to other occurrences.

Solution suggestion

Program should check for all occurrences

Appended page not displayed.

Subject of the issue

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.

Your environment

  • Version of LPub3D - v2.1.0 and earlier
  • Operating system - All supported operating systems

Steps to reproduce

  1. Create open model file where the following is the last step:
0 STEP
0 !LPUB BOM CONSTRAIN LOCAL HEIGHT 1.92667
0 !LPUB INSERT PAGE
0 !LPUB INSERT BOM
  1. From the Edit menu, select Append Page
  2. From the Edit menu, select Add Picture
  3. Cycle through the steps to confirm your appended page (and picture) does not display

Expected behaviour

The appended page and picture should display

Actual behaviour

The appended page and picture are not displayed

Workaround

Manually add 0 STEP before the appended lines - e.g. before 0 !LPUB INSERT PICTURE...

Cannot generate multiple images in single call with renderer set to LDView

LDView is not running properly to generate multiple images in a single call.

Your environment

  • Version of LPub3D - 2.2
  • Operating system - Windows 7, 32 bit.

Configuration

  • LPub3D installation path
    • Windows: `D:\Program Files\LPub3D
  • Application data path
    • Windows: %USERPROFILE%\AppData\Local\LPUb3D Software\LPub3D\

Logging

Steps to reproduce

Extract the LDR from the attached zip file:
fade_test.zip
Open the ldr file using LPub3D version 2.2.
Ensure in the Preferences dialog that LDView is selected as the renderer and the checkbox related to generating multiple images in a single call is ticked.
When the preferences dialog is closed, LPub3D attempts to render the PLI and assembly. It runs LDView (the one bundled with LPub3D version 2.2) but LDView then prompts for a file. Refer to screenshot:
ldview_multiple_2_2_780
When the "Cancel" button is clicked and then the menu item File/Item selected in LDView, the following dialog window is displayed:
single_call_dialog_2_2_780

Expected behaviour

The instructions page content in LPub3D should be generated correctly. It works correctly using LPub3D version 2.0.

Actual behaviour

Instead of generating the images, it prompts to open a file within LDView.

Workaround

Untick the multiple images checkbox in Preferences when using LDView as the renderer.

Solution suggestion

No idea.

[Enhancement] Add keyboard shortcuts for Edit commands

Enhancement

Add keyboard shortcuts for Edit commands

Environment

  • Version of LPub3D -2.2.2
  • Operating system - All

Expected behaviour

Add keyboard shortcuts for Edit commands

Actual behaviour

Only mouse-click supported

Solution

Keyboard shortcuts added:

Ctrl+Alt+F = Insert Front Cover Page
Ctrl+Alt+B = Insert Back Cover Page
Ctrl+Alt+I = Insert Page
Ctrl+Alt+A = Append Page
Ctrl+Alt+D = Delete Page
Ctrl+Alt+P = Add Picture
Ctrl+Alt+T = Add Text
Ctrl+Alt+M = Add Bill of Material
Ctrl+Alt+R = Remove formatting

Bug?: LDView Multiple files single call rendering slow

Subject of the issue

Using the 'Multiple files singe call rendering' option makes rendering really slow. I was under the impression it should speed things up instead of slowing things down.

Your environment

  • Version of LPub3D - 2.2.2 Rev. 0 Build 848
  • Operating system - Windows 10 Pro 64bit

Configuration

I can provide any necessary logs or configurations, just didn't feel like adding ALL of time now as most will probably be useless.

Steps to reproduce

Just rendering something with and without Multiple files single call rendering on.

Expected behavior

I was always under the impression that this setting would speed things up. If I remember correctly it also did in earlier versions of LPub3D.

Actual behaviour

Having this option turned on makes rendering incredible slow. I was rendering a 600 page pdf and when I came back it had only rendered about 30 pages in 30 minutes. I cancelled the rendering, turned 'Multiple files single call rendering' off and rendered the pdf again. This time it did about 100 pages in 10 minutes.

David on the LDraw forums reported a similar behaviour: https://forums.ldraw.org/thread-22765-post-28600.html#pid28600

Faded part not displaying using LDView as renderer

Subject of the issue

Instructions generated by LPub3D version 2.2 using LDView as the renderer are not including the image for the PF Medium motor when it should be displayed as a faded part. This works correctly using LPub3D version 2.0. Refer to the attached zip file, which contains the LDR file and PDF generated by LPub3D version 2.0.

fade_test.zip

Your environment

  • Version of LPub3D -2.2
  • Operating system - Windows 7, 32 bit

Configuration

[Note: Provide details and content below as needed with appropriate redactions]

  • LPub3D installation path
    • Windows: D:\Program Files\LPub3D
  • Application data path
    • Windows: %USERPROFILE%\AppData\Local\LPUb3D Software\LPub3D\

Steps to reproduce

LPub3D version 2.0
Ran LPub3D 2.2
Opened LDR file.
Cleared all cache.
Navigated to second page of instructions.
Faded PF motor shown correctly
Generate PDF instructions.
Corresponding LPub3D log file:
LPub3DLog_2_0_20.txt

LPub3D version 2.2
Uninstalled LPub3D version 2.0
Installed LPub3D version 2.2
Ran LPub3D 2.2
Opened LDR file.
Cleared all cache.
Navigated to second page of instructions.
Faded PF motor not shown:
no_fade_motor_2_2_780
Corresponding LPub3D log file:
LPub3DLog_2_2_780_no_fade.txt

Expected behaviour

PF Mediium motor image should appear as a faded part.

Actual behaviour

No image generated for PF Medium motor

Workaround

None known.

Solution suggestion

No suggestion.

Go To page function broken

Subject of the issue

The 'GoTo' dialogue does not accept input. Entering a page number and hitting enter as stated in the status tip, does not go the to the entered page. Instead, the document page range is repopulated in the dialogue.

Your environment

  • Version of LPub3D - v2.2.2
  • Operating system - Windows x86 x86_64

Steps to reproduce

See subject above.

Expected behaviour

Go the the indicated page on enter

Actual behaviour

See subject above

Workaround

None for the 'Go To' functionality; however, traversing one page at a time allows moving forward.

Solution suggestion

Fix it.

Renderer config files: No such file or directory error

Subject of the issue

LDView and POV-Ray renderer config files are not written to the user's application data path at initial application startup. The source file [config file template] path variable is not well formed. The resulting behaviour, unless you implement the work around, is the renderers will not receive their appropriate config parameters and may/will fail to render any output.
Log output

INFO static Preferences::updateLDViewIniFile(bool) @ln 1383 "Initializing /Users/travis/Library/Application Support/LPub3D Software/LPub3D/3rdParty/ldview-4.3/config/ldview.ini..." 
ERROR static Preferences::updateLDViewIniFile(bool) @ln 1416 "Could not open input or output file: confFileInError: No such file or directory\nconfFileOutError: Unknown error" 
INFO static Preferences::updateLDViewIniFile(bool) @ln 1422 "LDView ini file    : Not found" 
INFO static Preferences::updateLDViewPOVIniFile(bool) @ln 1447 "Initializing /Users/travis/Library/Application Support/LPub3D Software/LPub3D/3rdParty/ldview-4.3/config/ldviewPOV.ini..." 
ERROR static Preferences::updateLDViewPOVIniFile(bool) @ln 1487 "Could not open input or output file: confFileInError: No such file or directory\nconfFileOutError: Unknown error" 
INFO static Preferences::updateLDViewPOVIniFile(bool) @ln 1493 "LDViewPOV ini file : Not found" 
INFO static Preferences::updatePOVRayConfFile(bool) @ln 1519 "Initializing /Users/travis/Library/Application Support/LPub3D Software/LPub3D/3rdParty/lpub3d_trace_cui-3.8/config/povray.conf..." 
ERROR static Preferences::updatePOVRayConfFile(bool) @ln 1578 "Could not open input or output file: confFileInError: No such file or directory\nconfFileOutError: Unknown error" 
INFO static Preferences::updatePOVRayConfFile(bool) @ln 1584 "POVRay conf file   : Not found" 
INFO static Preferences::updatePOVRayIniFile(bool) @ln 1609 "Initializing /Users/travis/Library/Application Support/LPub3D Software/LPub3D/3rdParty/lpub3d_trace_cui-3.8/config/povray.ini..." 
ERROR static Preferences::updatePOVRayIniFile(bool) @ln 1637 "Could not open input or output file: confFileInError: No such file or directory\nconfFileOutError: Unknown error" 

Your environment

  • Version of LPub3D - v2.2.1
  • Operating system - macOS, Linux distros, Processor, Architecture: x86,x86_64
  • This behaviour does not affect LDGLite - config file procecessed differently.

Logging

LPub3DLog.txt

Steps to reproduce

Launch LPub3D

Expected behaviour

Application should load without generating ERROR

Actual behaviour

See log

Workaround

  1. Manually copy the config file from the 3rd party folder and paste it into the application data renderer config file location. Here are the respective paths:
    PACKAGE-VERSION_BASE = ldview-4.3 and lpub3d_trace_cui-3.8

Copy from:

Linux(Ubuntu): /usr/share/lpub3d/PACKAGE-VERSION_BASE/resources/config
MacOS(Sierra): /Applications/LPub3D.app/Contents/PACKAGE-VERSION_BASE/resources/config

Paste to:

Linux(Ubuntu): ~/.local/share/LPub3D Software/LPub3D/3rdParty/PACKAGE-VERSION_BASE/config
MacOS(Sierra): ~/Library/Application Support/LPub3D Software/LPub3D/3rdParty/PACKAGE-VERSION_BASE/config
  1. Manually enter the appropriate paths in povray.conf and povray.ini following the remarked examples in the template

Solution suggestion

Fix it!

[Reopened] LPub3D inserting extra INSERT MODEL/INSERT PAGE

Details as per issue #39, which has been marked as closed but still occurs with release 2.2.1.

The attached zip file contains two example LDR files. motor_pin.ldr exhibits the behaviour described in issue #39. motor_pin_01.ldr does not exhibit the behaviour described in issue #39. The difference between the two files is that motor_pin.ldr contains "0 STEP" as the last line in the file (line 9), while motor_pin_01.ldr does not contain "0 STEP" as its last line.

It appears that the logic detecting whether or not the model already contains the commands "0 !LPUB INSERT MODEL" and "0 !LPUB INSERT PAGE" is failing to take into account the (any?) trailing command.

motor_pin_2.zip

Landscape page orientation for pdf export not working

Subject of the issue

There is a new issue when trying to export in pdf (or preview in pdf). The pdf page is in portrait orientation even though it is defined with landscape orientation in the LDraw file header. Using the following lines:

0 !LPUB PAGE SIZE GLOBAL 7.2677 10.6929 CUSTOM
0 !LPUB PAGE ORIENTATION GLOBAL LANDSCAPE

And these are the only 0 !LPUB PAGE page orientation lines in in the model file.

It used to work previously, but now (with version 2.2.2, rev0 Build 848 under Mac OSX), the exported pdf is always in portrait mode...

The display within LPUB3D is correct (in landscape) but the export is not...

Your environment

  • Version of LPub3D - version 2.2.2, rev0 Build 848
  • Operating system - Mac OSX

Steps to reproduce

See description above

Expected behaviour

Page orientation should respect meta definition

Actual behaviour

See description above

Workaround

None

Solution suggestion

Fix it.

[Installation] macOS Installation not working properly (v2.1.0.0.775_20180213)

Issue

The installation process on macOS (mine is "Sierra") does not work as expected. It required me to manually create the missing subdirectory 'libraries' in (existing) directory "~/Library/Application\ Support/LPub3D\ Software/LPub3D/".

A less experienced user would not be able to do that and hence could not enjoy the great looking LPub3D app. (Congrats, BTW, to the new release -- after fixing this it will surely be great and rocking!)

Environment

  • Version of LPub3D:
    v2.1.0.0.775_20180213
    The image you posted was for the 3DViewer not LPub3D so I removed it.

  • macOS version

macOS Sierra 10.12.6 running on Intel Core i7

Configuration

  • LPub3D installation path
    • macOS: /Applications/LPub3D.app
  • Application data path
    • macOS: ~/Library/Application Support/LPub3D Software/LPub3D/

Installation Process in Screenshots

  1. Initial dialog

lpub3d-insta-on-mac---shot1

Choosing 'Extract Archive'...

  1. Doesn't find the archive...

image

Note: there is also a typo in the text here: attmpted

  1. Investigating...

I find that the requested directory structure is only present in part:

  • "~/Library/Application\ Support/LPub3D\ Software/LPub3D/" is present and contains only subdirs "extras" and "logs", but not "libraries".

image

So I proceed to create the missing directory...

  1. Create missing directory

image

  1. Re-attempting the 'Extract Archive' step now completes and LPub3d.app can be started.

Steps to reproduce

Try to install this DMG on a MacBook.

Expected behaviour

I should not have to manually create the missing directory.

Actual behaviour

The installation procedure should create the missing directory automatically.

Workaround

Create the missing directory manually.

Solution suggestion

Fix the installation procedure so that it creates the missing directory itself.

Only first occurrence of callout alloc modified

Subject of the issue

When using the context menu to "Display Callout as Columns|Rows", the meta - command 0 !LPUB CALLOUT ALLOC HORIZONTAL|VERTICAL is only added (or modified if already existing) to the first occurrence of CALLOUT when multiple Callouts are present in the page/model.

Steps to reproduce

  1. Create a file named alloc_test.ldr with the following content
0 !LPUB ASSEM MARGINS 0.1000 0.1000
1 4 0 0 0 1 0 0 0 1 0 0 0 1 3003.dat
1 14 0 -24 0 1 0 0 0 1 0 0 0 1 3003.dat
0 !LPUB ASSEM PLACEMENT LOCAL CENTER PAGE INSIDE
0 !LPUB MULTI_STEP END
0 !LPUB PLI CONSTRAIN LOCAL HEIGHT 0.273333
0 !LPUB CALLOUT PLI PER_STEP FALSE
0 !LPUB CALLOUT BEGIN
0 !LPUB CALLOUT POINTER TOP 0.162 1.180 0.542 0
1 16 0 72 20 1 0 0 0 1 0 0 0 1 submodel-1.ldr
0 !LPUB CALLOUT PLACEMENT RIGHT BOTTOM ASSEM OUTSIDE 1 0
0 !LPUB CALLOUT END
0 STEP
0 !LPUB CALLOUT BEGIN
0 !LPUB CALLOUT POINTER TOP 0.162 1.180 0.542 0
1 16 0 0 20 1 0 0 0 1 0 0 0 1 submodel-1.ldr
0 !LPUB CALLOUT PLACEMENT RIGHT BOTTOM ASSEM OUTSIDE 1 0
0 !LPUB CALLOUT END
  1. Place the mouse within step1's callout background, right-click and select "Display Callout as Rows"
  2. Move to Step2 and select "Display Callout as Columns."

Expected behaviour

Step2's Callout should be displayed as columns.

Actual behaviour

The Callout display does not change.

Workaround

Manually insert the meta-command 0 !LPUB CALLOUT ALLOC HORIZONTAL | VERTICAL before 0 !LPUB CALLOUT END

Solution

This behaviour has been corrected. However, note that the last Callout display allocation affects all subsequent Callouts in the model file.

PDF Mixed Page Orientation Incorrect

PDF generated by LPub3D has incorrect page orientations

When a mpd file contains multiple page orientations (i.e. landscape and portrait), although LPub3D displays them (mostly) with the correct orientation, the resulting generated PDF file has incorrect page orientations.

Your environment

  • Version of LPub3D - LPub3D 2.2.2.0.848 (12 04 2018 09:04:29)
  • Operating system - Windows 10, 64 bit, Processor Intel(R) Core(TM) i7-7660U CPU @ 2.50GHz, 2496 Mhz, 2 Core(s), 4 Logical Processor(s)

Configuration

  • LPub3D installation path
    • Windows: `D:\Program Files\LPub3D'
  • Application data path
    • Windows: %USERPROFILE%\AppData\Local\LPUb3D Software\LPub3D\

Logs

N/A

Screenshots

Steps to reproduce

  1. Rename the attached file from landscape_portrait_mpd.txt to landscape_portrait.mpd
    landscape_portrait_mpd.txt
  2. Open the attached mpd file landscape_portrait.mpd using LPub3D
  3. Page through the file. The third page is shown with a portrait page orientation. All other pages are shown with a landscape page orientation. This is as expected.
  4. Export the instructions to a PDF file
  5. Open the PDF file. All pages have a portrait orientation (as per attached PDF).
    landscape_portrait.pdf

Additional comment:
The parts list on the page with the portrait orientation is placed off to the left of the page within LPub3d. Refer to the attached screenshot.
landscape_portrait

Expected behaviour

In the PDF, only the third page should have a portrait orientation. All other pages should have a landscape orientation.
In LPub3D, the parts list on the portrait page should appear on the page.

Actual behaviour

All pages in the PDF have a portrait orientation.

Workaround

Unknown.

Solution suggestion

Unknown.

[Enhancement suggestion] Make text field panes in re-sizeable dialog windows also re-sizeable

I hate it on Windows when dialog boxes meant to display important info are small, rigid and fixed-sized with no chance to re-size it.

It's good to see LPub3D to have a re-sizeable 'Preferences' dialog box. However....

image

...when really re-sizing it, the embedded fields still stay on the same size and rigid. Especially the "Change log" box should re-adapt and give more space to read the change log.

(Also note: the button for 'Check for Updates' could do with a bigger width...)

Newer CSI images not saved when using LDView (Single Call) render

Subject of the issue

Newer 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.

Your environment

  • Version of LPub3D - v2.1.0 and earlier
  • Operating system - All supported operating systems

Steps to reproduce

  1. From the Preferences dialogue, set your preferred renderer to LDView and check 'Use multiple files single call rendering'
  2. Open a model file - notice the CSI image(s) are rendered
  3. Make a change in the model file that does not affect the generated image(s) - e.g. change the author name.
  4. Close and reopen the model file - notice the CSI image(s) are rendered again although they exist

Expected behaviour

The previously rendered images should load on subsequent file/step loads. New image should be generated only if the model file was updated in a manner affecting the image to be generated.

Actual behaviour

CSI image(s) are rendered each time the model file/step is loaded

Ignore PLI annotation for beams with "Bent" in the title.

Subject of the issue

Ignore PLI annotation for beams with "Bent" in the title.

Solution

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.

Error Message: "LDView console output"

Subject of the issue

Get an error message when trying to open any file. The title of the message box is "LDView console output". The message is "Critical Error: Could not find LDraw directory." [Enter] "File: C:Users/user/Documents/LiononBricksCustomModelWorks/In Progress/MW-4--- 5-Wide Light Duty Maintenance Truck/LPub3D/tmp/csi.ldr" [Enter] "Unknown Line". It could be a possibility that the LDraw parts library path is throwing it off, it is installed in my "Documents" folder in a folder titled "Bricks" instead of the standard location (Unless I am mistaken and that is the default location). However, during the install I directed the installer to the proper folder, and LDraw is using that for parts reference just fine. There are no unofficial parts in this particular model. This message error comes up with leaving the project defaults, including the render at POV-Ray. If I change the render to LDGlite, then no 3d file renders will show in the publishing preview (the LeoCAD 3D viewer is unaffected). I had this same issue with the previous version of the install version 2.0.20, but I was able to switch to LDView as a workaround. Switching it back to POV-Ray does nothing and give the same error message (it earlier crashed the program, but the file may have been corrupted, so ya). I can keep on testing with different files but all other applications using the LDraw parts library are fine (LDCad, LDView, POV-Ray). The message box also does not allow a single time close, but will keep on coming up even if a window is opened on top, it will come to the top about once every minute or so.

I did just realize at this point that I was running LDView 4.2. To check if that was the issue, I updated to 4.3, and reinstalled LPub3D (I did not manually uninstall and reinstall, but ran the installer, which said it removed the previous version). However the same issues still persist even with a new .ldr file.

LPub3D, when initially opening a file, sit for awhile not responding, but when it loads, it gives a sequence of 3 error messages. The first is this: Header: "LPub3D", Body: "LDView POV file generation failed with exit code 0". The second has the same header but has the message body of "Render CSI part failed for: C:/Users/user/Documents/LiononBricksCustomModelWorks/In Progress/MW-4--- 5-Wide Light Duty Maintenance Truck/LPub3D/assem/mian_1_0_0_0_1_0_0_0_1_1_1240_150_DPCM_1.png.". And the third has the same header with the body message of "Failed to create CSI.". These three error messages will repeat when attempting to load a different step.

I also created a new file to test if the age of the file (created before or after install) would make any difference, it had none.

The only thing I have not done that I think could maybe fix the issue is to reinstall everything using the LDraw All-In-One-Installer. That could get complicated as my install is somewhat manually done.

Your environment

  • Version of LPub3D - 2.1.0
  • Operating system - Windows 10, Intel i7-3770 (Quad Core, 3.4 ghz), x86_64

Configuration

[Note: Provide content below as needed with appropriate redactions]

  • LPub3D installation path
    • Windows: C:\Program Files\LPub3D [x86_64]
  • Application data path
    • Windows: %USERPROFILE%\AppData\Local\LPUb3D Software\LPub3D\
  • Renderer configuration files
    • [Application data path]/3rdParty\ldview-4.3\config\ldview.ini
    • [Application data path]/3rdParty\ldview-4.3\config\ldviewPOV.ini
    • [Application data path]/3rdParty\lpub3d_trace_cui-3.8\config\povray.conf
    • [Application data path]/3rdParty\lpub3d_trace_cui-3.8\config\povray.ini
  • Registry Extract
    • Windows: reg export "HKEY_CURRENT_USER\Software\LPub3D Software" LPub3D_Hive.reg
      Ran command (assuming it is a Command Prompt command), unsure what to do after.

Logging

  • Application Log: [Application data path]/logs/LPub3DLog.txt
    LPub3DLog.txt

  • Renderer Log: [LDraw model path]/stdout-ldglite
    [File Type Unsupported Error]

  • Renderer Log: [LDraw model path]/stdout-povray
    [File Type Unsupported Error]

  • Renderer Log: [LDraw model path]/stderr-ldglite
    [File Type Unsupported Error]

  • Renderer Log: [LDraw model path]/stderr-povray
    [File Type Unsupported Error]

Screenshots

  • Configuration->Preferences->General
    screenshot 17

  • Configuration->Preferences->Rendering
    screenshot 18

  • Configuration->Preferences->Publishing
    screenshot 19

  • Configuration->Preferences->Logging
    screenshot 20

  • Configuration->Preferences->Other
    screenshot 21

Steps to reproduce

Use above described situation to test.

Expected behaviour

File should open with a preview of the model and the specific step in the preview window.

Actual behaviour

First error message given pops up and LPub3D can take up to 10 minutes to load a file (not responding in meantime).

Workaround

No known workaround, I have a bit but very limited experience with the deeper "manual" side of the LDraw environment.

Solution suggestion

Again, I am a noob, so I guess do what is needed to make it work? (That should not sound demanding, I just have no clue).

No PLI or assembly images generated when POV-Ray selected as the renderer.

When using LPub3D version 2.2, if POV-Ray is selected as the renderer, no images are being generated.

Your environment

  • Version of LPub3D - 2.2
  • Operating system - Windows 7, 32 bit

Configuration

[Note: Provide details and content below as needed with appropriate redactions]

  • LPub3D installation path
    • Windows: D:\Program Files\LPub3D [x86_64]
  • Application data path
    • Windows: %USERPROFILE%\AppData\Local\LPUb3D Software\LPub3D\

Logging

LPub3DLog_2_2_780_povray_ldview_multiple.txt
stderr-povray.txt

Steps to reproduce

Use the file motor_pin.ldr in the attached zip file. Open it using LPub3D version 2.2
fade_test.zip
Set renderer to POV-Ray in preferences. Close Preferences dialog.
Resulting page that is displayed in LPub3D:
no_povray_2_2_780

Expected behaviour

Images should be generated.

Actual behaviour

Images are not generated.

Workaround

None known.

Solution suggestion

Suspect there is a hard-coded path related to the POV-Ray ini file. My LPub3D installation is on D: drive, not C: drive. The path to the POV-Ray instance ini file installed as part of the LPub3D bundle should reflect the appropriate installation drive/directory when invoked by LPub3D. I suspect it is not.

[Enhancement] Enable console commands

Hi,

Is it possible to add a new option that generates a list of pdf ?

I have a lot of ldr file to convert ...

if it's possible to use lpub3d_x64.exe test.ldr /pdf test.pdf (or in the gui ?)

Thanks :)

LPub3D inserting extra INSERT MODEL/INSERT PAGE

LPub3D version 2.2 is inserting extra LPUB instructions in spite of the instructions already being present in the LDR. This does not happen in LPub3D version 2.0.

Your environment

  • Version of LPub3D - 2.2
  • Operating system - Windows 7, 32 but

Configuration

  • LPub3D installation path
    • Windows: D:\Program Files\LPub3D
  • Application data path
    • Windows: %USERPROFILE%\AppData\Local\LPUb3D Software\LPub3D\

Steps to reproduce

Extract motor_pin.ldr in the attached zip file.
fade_test.zip
Open the extracted file motor_pin.ldr with notepad (or equivalent text editor). Note the existence of the LPUB INSERT MODEL and LPUB INSERT PAGE commands.
Run LPub3D version 2.2
Open the extracted file motor_pin.ldr.
Look at the LDR displayed within LPub3D. It has inserted additional LPUB commands.

Expected behaviour

The extra commands should not be inserted.

Actual behaviour

They are inserted.
Refer to attached screenshot:
extra_insert_2_2_780

Workaround

None.

Solution suggestion

Unknown.

LPub3D renders very slow on Windows

Subject of the issue

It takes several minutes just to render a single page. It's much faster on Mac. I suspect there's some kind of Windows security feature that is interfering with invoking the rendering subprocess?

Your environment

  • Version of LPub3D - LPub3D-2.2.2.0.848_20180412.exe
  • Operating system - Windows 10 Pro v1709 build 16299.547 (x86,x86_64)

Configuration

[Note: Provide details and content below as needed with appropriate redactions. To produce the Windows registry extract, go to the command console and enter the command line shown. The extract file will be placed on your desktop.]

Logs

Screenshots

Steps to reproduce

Any file takes a long time to render. App goes into (Not responding) state for several minutes even for the simplest page.

Expected behaviour

It should be quick, like on the Mac version.

Actual behaviour

Render takes several minutes.

Workaround

Get a cup of tea and wait.

Solution suggestion

My hope would be that it's something in settings (either in the program or in Windows) that can be changed to make it work better. Perhaps the program can monitor how long it takes to render a page and pop up a dialog to suggest such a change, if one is found.

No LDraw archive libraries in Travis AppImage distro

Subject of the issue

There are no LDraw archive libraries in the Travis (ubuntu) AppImage. This causes the initial load to prompt the user to select or download the official and unofficial archive library files.

Your environment

  • Version of LPub3D - Ubuntu AppImage
  • Operating system - Ubuntu, x86_64

Steps to reproduce

Tell me how to reproduce this issue.
Launch the AppImage.

Expected behaviour

LPub3D loads without LDraw archive library prompt

Actual behaviour

Prompted to select or download archive library

Workaround

None, you must either select an existing archive library or download it.

Dragging a single-step page's assembly

Subject of the issue

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.

Steps to reproduce

Use the mouse to select and drag a single-step page's assembly to a new position on the page

Expected behaviour

The assembly should stay where it is positioned

Actual behaviour

The position is further adjusted

Solution

Single-step page's assembly were automatically placed at the center 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 center of the page's bounding box.

Final model image page out of place

Subject of the issue

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.

Expected behaviour

Original model file

0 Author: ACDassing
0 !LICENSE Not redistributable : see NonCAreadme.txt
1 15 71 0 70 1 0 0 0 1 0 0 0 1 95658.dat
0 STEP
0 //Step 2--A rotation for different view
0 ROTSTEP 0 0 0 ABS
0 //Step 3--don't rotate last step

Desired LPub3D model file update with "Fade Step" and "Generate Cover Pages" options on

0 Author: ACDassing
0 !LICENSE Not redistributable : see NonCAreadme.txt
0 !LPUB INSERT COVER_PAGE FRONT
0 STEP
1 15 71 0 70 1 0 0 0 1 0 0 0 1 95658.dat
0 STEP
0 //Step 2--A rotation for different view
0 ROTSTEP 0 0 0 ABS
0 //Step 3--don't rotate last step
0 STEP
0 !LPUB INSERT MODEL
0 !LPUB INSERT PAGE
0 STEP
0 !LPUB INSERT COVER_PAGE BACK

Actual behaviour

LPub3D model file update with "Fade Step" and "Generate Cover Pages" options on

0 Author: ACDassing
0 !LICENSE Not redistributable : see NonCAreadme.txt
0 !LPUB INSERT COVER_PAGE FRONT
0 STEP
1 15 71 0 70 1 0 0 0 1 0 0 0 1 95658.dat
0 STEP
0 !LPUB INSERT MODEL
0 !LPUB INSERT PAGE
0 STEP
0 //Step 2--A rotation for different view
0 ROTSTEP 0 0 0 ABS
0 //Step 3--don't rotate last step
0 STEP
0 !LPUB INSERT COVER_PAGE BACK

Solution

This behaviour has been updated. The output is now as expected.

0 Author: ACDassing
0 !LICENSE Not redistributable : see NonCAreadme.txt
0 !LPUB INSERT COVER_PAGE FRONT
0 STEP
1 15 71 0 70 1 0 0 0 1 0 0 0 1 95658.dat
0 STEP
0 //Step 2--A rotation for different view
0 ROTSTEP 0 0 0 ABS
0 //Step 3--don't rotate last step
0 STEP
0 !LPUB INSERT MODEL
0 !LPUB INSERT PAGE
0 STEP
0 !LPUB INSERT COVER_PAGE BACK

Parts reported not found

Subject of the issue

LPub3d reports part files 3039pce.dat and 3068bp72.dat are not in the unofficial library (ldrawunf.zip). That in itself is correct, but they do exist in the official library (complete.zip). Steps taken:

1: Deleted the archive files from C:\Users\Rene\AppData\Local\LPub3D Software\LPub3D\libraries
This didn't help.

2: Refreshed the archive libraries within LPub3D
This didn't help either

3: Added search directories f:\ldraw\parts and f:\ldraw\parts\s
Still not working

4: Refreshed the directories f:\ldraw\p and f:\ldraw\parts
Nope

Your environment

Version 2.2.0 Revision 0 Build 780 later with Version 2.2.2 Revision 0 Build 848
Windows 7 x64 latest update

Configuration

[Note: Provide details and content below as needed with appropriate redactions. To produce the Windows registry extract, go to the command console and enter the command line shown. The extract file will be placed on your desktop.]

  • LPub3D installation path

    • Windows: F:\Program Files\LPub3D
  • Application data path

    • Windows: %USERPROFILE%\AppData\Local\LPUb3D Software\LPub3D\
  • Registry Extract

    • Windows: reg export "HKEY_CURRENT_USER\Software\LPub3D Software" %USERPROFILE%\Desktop\LPub3D_Hive.reg
      LPub3D_Hive.txt
  • Renderer configuration files

    • [Application data path]/3rdParty\ldglite-1.3\config\ldglite.ini
      ldglite.ini.txt
    • [Application data path]/3rdParty\ldview-4.3\config\ldview.ini
      ldview.ini.txt
    • [Application data path]/3rdParty\ldview-4.3\config\ldviewPOV.ini
      ldviewPOV.ini.txt
    • [Application data path]/3rdParty\lpub3d_trace_cui-3.8\config\povray.conf
      povray.conf.txt
    • [Application data path]/3rdParty\lpub3d_trace_cui-3.8\config\povray.ini
      povray.ini.txt

Logs

  • Application Log: [Application data path]/logs/LPub3DLog.txt
    LPub3DLog.txt
    No render logs are made.

Screenshots

  • Configuration->Preferences->General
    afbeelding
  • Configuration->Preferences->Rendering
    afbeelding
  • Configuration->Preferences->Publishing
    afbeelding
  • Configuration->Preferences->Logging
    afbeelding
  • Configuration->Preferences->Other
    afbeelding

Steps to reproduce

Just load the mpd file
Eagle.mpd.txt

Expected behaviour

It should find the parts just fine.

Actual behaviour

It doesn´t find the parts as it seems it's looking in the wrong archive (unofficial i.s.o. official)

Workaround

None so far. Commenting out the concerning lines does work, but that would be the same as deleting them (but at least I can load the file without having LPub3D crashing)

Solution suggestion

Lpub3D should at least not crash, other then that I really don't have any idea.

Add/override renderer flags from within model file

Subject of the issue

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.

No option to uninstalled LPub3D version 2.2

Subject of the issue

LPub3D version 2.2 uninstall does not work. LPub3D version 2.0 unistall does work.

Your environment

  • Version of LPub3D - 2.2
  • Operating system - Windows 7, 32 bit

Configuration

  • LPub3D installation path
    • Windows: D:\Program Files\LPub3D
  • Application data path
    • Windows: %USERPROFILE%\AppData\Local\LPUb3D Software\LPub3D\

Steps to reproduce

With LPub3d version 2.0 installed, open the Windows Control Panel.
Select the action to uninstall a program.
Highlight LPub3D and then click uninstall (refer to screenshot):
uninstall_lpub3d_2_0_20
Software is successfully uninstalled.

Reboot machine and log in.
Install LPub3D version 2.2,
Reboot machine and log in.
Open the Windows Control Panel.
LPub3D is not listed (refer to screenshot)
no_uninstall_lpub3d_2_2

Navigate to the directory where LPub3D has been installed.
Run the uninstall program as an administrative user (see screenshot):
uninstall_lpub3d_2_2
Dialog window is displayed saying there is no installation (see screenshot)
no_installation_dialog_2_2
Trying to run the uninstall program with the login id of the user doing the original install results in the same dialog window being displayed.

Expected behaviour

LPub3D should be listed in the Windows Control Panel/Programs with an option to uninstall.

Actual behaviour

There is no way to uninstall LPub3D version 2.2

Workaround

None known.

Solution suggestion

No idea.

LDView on macOS not loading - missing/Incompatible libraries

Subject of the issue

LDView does not load on macOS

Error log: "dyld: Library not loaded: /usr/local/opt/libpng/lib/libpng16.16.dylib
Referenced from: /Applications/LPub3D.app/Contents/3rdParty/ldview-4.3/bin/LDView
Reason: Incompatible library version: LDView requires version 51.0.0 or later, but libpng16.16.dylib provides version 33.0.0"... but I have no idea on How to solve this!!

Your environment

  • Version of LPub3D - version 2.2.2
  • Operating system - macOS

Workaround

Install missing libraries:

Required LPub3D libraries on macOS

LDView:

  • XQuartz (OSMesa)
    https://www.xquartz.org
    /opt/X11/lib/libOSMesa.8.dylib (compatibility version 9.0.0, current version 9.0.0)
    /opt/X11/lib/libGLU.1.dylib (compatibility version 5.0.0, current version 5.1.0)

  • LibPNG version 1.6.35 or above
    http://www.libpng.org
    /usr/local/opt/libpng/lib/libpng16.16.dylib (compatibility version 52.0.0, current version 52.0.0)

  • GL2PS version 1.3.5 or above
    http://geuz.org/gl2ps
    /usr/local/opt/gl2ps/lib/libgl2ps.1.dylib (compatibility version 1.0.0, current version 1.4.0)

  • LibJPEG version 1.4 or above
    http://www.ijg.org
    /usr/local/opt/jpeg/lib/libjpeg.9.dylib (compatibility version 13.0.0, current version 13.0.0)

  • TinyXML version 2.5.2 or above
    http://www.grinninglizard.com/tinyxml/
    /usr/local/opt/tinyxml/lib/libtinyxml.dylib (compatibility version 0.0.0, current version 0.0.0)

  • MiniZIP version 1.1.0 or above
    http://www.winimage.com/zLibDll/minizip.html

POVRay:

  • XQuartz (X11)
  /opt/X11/lib/libXpm.4.dylib (compatibility version 16.0.0, current version 16.0.0)
  /opt/X11/lib/libSM.6.dylib (compatibility version 7.0.0, current version 7.1.0)
  /opt/X11/lib/libICE.6.dylib (compatibility version 10.0.0, current version 10.0.0)
  /opt/X11/lib/libX11.6.dylib (compatibility version 10.0.0, current version 10.0.0)
   /usr/local/opt/openexr/lib/libIlmImf-2_2.22.dylib (compatibility version 23.0.0, current version 23.0.0)
   /usr/local/opt/ilmbase/lib/libImath-2_2.23.dylib (compatibility version 24.0.0, current version 24.0.0)
   /usr/local/opt/ilmbase/lib/libHalf.23.dylib (compatibility version 24.0.0, current version 24.0.0)
   /usr/local/opt/ilmbase/lib/libIex-2_2.23.dylib (compatibility version 24.0.0, current version 24.0.0)
   /usr/local/opt/ilmbase/lib/libIexMath-2_2.23.dylib (compatibility version 24.0.0, current version 24.0.0)
   /usr/local/opt/ilmbase/lib/libIlmThread-2_2.23.dylib (compatibility version 24.0.0, current version 24.0.0)
  • SDL version 2.0.2 or above (used for the display preview)
    http://www.libsdl.org
    /usr/local/opt/sdl2/lib/libSDL2-2.0.0.dylib (compatibility version 10.0.0, current version 10.0.0)

Install brew (if not already installed)

  • $ /usr/bin/ruby -e "$(curl -fsSL https://raw.githubusercontent.com/Homebrew/install/master/install)"

Install libraries

  • $ brew update
  • $ brew reinstall libpng
  • $ brew install tinyxml gl2ps libjpeg minizip openexr sdl2 libtiff

Check installed libraries - particularly libPNG as version 52.0.0 is required

  • $ otool -L $(brew list libpng | grep dylib$)
    /usr/local/Cellar/libpng/1.6.35/lib/libpng.dylib:
    /usr/local/opt/libpng/lib/libpng16.16.dylib (compatibility version 52.0.0, current version 52.0.0)
    /usr/lib/libz.1.dylib (compatibility version 1.0.0, current version 1.2.11)
    /usr/lib/libSystem.B.dylib (compatibility version 1.0.0, current version 1252.0.0)

Treating “dyld image not found” return

-See the steps from this excellent post: Fixing dyld image not found on Mac OS.

Solution

Within LPub3D, inform the user when renderer library dependencies are not satisfied.

AppImage - No renderers included, or at least not configured

When launching from the AppImage, LPub3D asks me to enable a renderer, and get confused. The Ubuntu .deb version works fine, and weirdly enough, the AppImage works fine when the .deb is installed, even when removing the LPub3D config files and launching just the AppImage.

Your environment

  • LPub3D 2.2.1
  • Xubuntu 18.04 x86_64
  • LPub3D-2.2.1.0.824_20180331-x86_64.AppImage

Configuration

Fresh download of AppImage with no other related stuff

  • LPub3D installation path
    /home/qwerty/Applications/LPub3D-2.2.1.0.824_20180331-x86_64.AppImage
  • Application data path
    none, first run

Screenshots

After downloading the parts library:

Steps to reproduce

  1. Download AppImage of 2.2.1 on a clean system (no .deb/etc. installed).
  2. Run the AppImage.

Expected behavior

It should launch after downloading the parts library.

Actual behavior

It fails, see screenshots.

Workaround

Install the .deb, then it works as expected.

Bundle LDraw library folder in AppImage

Launching the AppImage shows

ldraw

It would be nice if the LDraw library folder was bundled inside the AppImage and used automatically without user intervention.

Upgrade LDView renderer

Subject of the issue

Upgrade LDView renderer to commit e56a9b8bc25a001aaa8042ddab8ffc9cdb9f5a9e (v4.4 alpha). Includes command line snapshot support for -SaveSnapshotsList, fix command line snapshot scale factor bug, and add support for command line scale factor.

LPub3D crashes switching Preferences to Enable Fade Steps

Subject of the issue

When switching LPub3D from not generating fade steps to generating fade steps via the Preferences dialog window, LPub3D crashes.

Your environment

  • Version of LPub3D - 2.2.1 Revision 0 Build 824
  • Operating system - Windows 10, 64 bit, Intel i7-7660U, x64

Configuration

  • LPub3D installation path
    • Windows: D:\Program Files\LPub3D
  • Application data path
    • Windows: %USERPROFILE%\AppData\Local\LPUb3D Software\LPub3D\
  • Registry Extract
    • Windows: contained within attached zip file

Logging

  • Application Log: contained within attached zip file

Screenshots

preferences_crash

Steps to reproduce

  1. Run LPub3D.
  2. Open Preferences dialog. Untick the "Enable Fade Steps" if it is ticked. Close the dialog.
  3. Exit LPub3D
  4. Run LPub3D
  5. Open Preferences dialog. Tick the "Enable Fade Steps". Close the dialog.
  6. LPub3D crashes.

Expected behaviour

LPub3D should not crash.

Actual behaviour

LPub3D crashes, creates a dump file and displays a dialog window (as per screenshot).

Workaround

After LPub3D crashes, once run again it has remembered the switch to generating fade steps.

Solution suggestion

No idea.

sbrick_example.zip

[Enhancement] Headless mode on Linux

Hi,
thank you for great work! I have discovered your product a little time ago and totally falled in love it.
Building instructions can be successfully prepared on any platform using GUI. But I need command line tools to make building instructions from previously prepared *.ldr file.

The process I want to achive:

  1. Editor creates/modifies *.ldr model using LeoCAD or something else. He pushes changes into git repository.
  2. Publisher pulls *.ldr from the git repository and modifies it using LPub3D to make building instruction. He pushes changes into git repository too.
  3. CI runs docker image with LPub3D and exports building instruction as pdf. The result pdf file may be postprocessed (combined with other pdf files) and uploaded to the shared storage (Google Drive or Dropbox, for example).

With third step there is a problem. I cannot run LPub3D in command line mode to export building instruction. I have already docker image based on ubuntu_xenial with LPub3d 2.2.2, but all my tries to run LPub3D without GUI fail.

Please help to make it possible!
I'm also developer and can help to solve this request, if you guide me.

Bug: Inserting text on a submodel insertion page gets placed in the submodel instead of the parent model

Subject of the issue

The insert text feature misplaces the text when the text is inserted on a page where a submodel is added to the parent model.

So, for example: page 5-10 show the construction of a submodel. Then, on page 11 the submodel is added to the parent model. If I go to Edit -> Add Text to add text to page 11, it is instead added on page 10, at the very end of the submodel.

Furthermore, because it is placed at the absolute end of the submodel, after the last STEP command the text is invisible too.

Your environment

  • Version of LPub3D: 2.2.2 Rev. 0 Build 848 (but this bug has been in LPub3D for a long time now)
  • Operating system: Windows 10 Pro x64

Steps to reproduce

Here is a sample mpd file: https://drive.google.com/open?id=1L-M3iVRYBA4PtRFQduNd9opI_7NqQeTo
Open it in LPub3D, go the last page (page 7) and add some text. You'll see that it doesn't get added to the page. Go back to page 6 and take a look in the File Editor: it's added at the end of the submodel.

Workaround

Manually cut and paste the generated meta to the appropriate step location using the LDraw Text Editor pane.

[Enhancement] Respect relative and absolute paths for inserted images

Subject of the issue

Enable relative paths for inserted image files.

Your environment

  • Version of LPub3D - 2.2.2
  • Operating system - All

Expected behaviour

Respect both relative and absolute paths for inserted images.

Actual behaviour

Relative paths are not respected.

Workaround

None

Solution suggestion

Background and inserted images are automatically detected when defined with a path relative the opened model file location.

[Enhancement] Rotate Icon resize

Subject of the issue

Resize Rotate Icon from context menu (right click)

Your environment

  • Version of LPub3D - 2.2.2
  • Operating system - All

Expected behaviour

Enable user to resize Rotate Icon image

Actual behaviour

Resize is possible using meta commands but this behaviour is not documented

Solution suggestion

Enable setting rotate icon size from the GUI/context menu.

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. 📊📈🎉

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❤️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.