Commit graph

370 commits

Author SHA1 Message Date
Trevor SANDY
8cfadc804d Made light type/shape immutable. 2023-08-13 15:50:00 +02:00
Trevor SANDY
d29c5b9323 POVRay lights - POV file preferences 2023-08-11 05:39:36 +02:00
Trevor SANDY
415354bfe8 Blender lights - merge spot light and directional lights 2023-08-11 05:39:36 +02:00
Trevor SANDY
3b9ea3ae79 Blender lights - view and control 2023-08-11 05:39:36 +02:00
Leonardo Zide
eade4bcb5f Removed default parameters. 2023-06-18 18:37:59 -07:00
Trevor SANDY
4d2ecee58d Blender addon - render current step 2023-06-11 17:43:25 +02:00
Leonardo Zide
2f034c1763 Updated file names. 2023-05-15 21:12:08 -07:00
Leonardo Zide
bda1acf7a5 Updated to coding standards. 2023-05-15 21:02:17 -07:00
Leonardo Zide
2c2cb46ddb Moved group dialog files. 2023-04-29 20:04:58 -07:00
Leonardo Zide
d2f22773e3 Added support for trackpad pan gesture. 2022-05-07 18:46:26 -07:00
Leonardo Zide
6ca5c160f1 Place new pieces relative to the side of the piece under the mouse. 2021-12-24 15:42:37 -08:00
Leonardo Zide
2d315d2ba2 Scan submodels when dragging a new piece into the model. 2021-12-23 17:27:38 -08:00
Leonardo Zide
7d884e6b5f Static analysis fixes. 2021-11-14 18:34:24 -08:00
Leonardo Zide
e0b77b17bd Qt6 fixes. 2021-07-05 17:00:41 -07:00
Leonardo Zide
249fa262f7 Disabled relative movement when moving pieces without using the arrows. 2021-04-24 10:15:13 -07:00
Johannes Sixt
57edf44020 Fix incorrect control points of second and later synthesized pieces.
When a model that was not create by LeoCAD contains two different pieces
that are handled by lcSynth, then a set of default control points is
generated for the first piece. When the following synthesized pieces are
loaded, this set of control points is reused for the other pieces. But
the values generated for the first piece may not be a suitable default
for the subsequent pieces. Clear the control points after they have been
applied to a piece so that later pieces receive a new set of defaults.
2021-03-15 21:48:28 +01:00
Hubert Figuière
064c815360 CurrentWidth can be MaxWidth.
Fix instructions hanging when there is a 16 x 16 plate
Closes #649
2021-03-10 00:00:01 -05:00
Leonardo Zide
140daced93 Added model measurements. Fixes #631. 2021-02-28 15:57:02 -08:00
Leonardo Zide
95fbc13247 Removed GetViewsForModel. 2021-02-27 11:15:04 -08:00
Leonardo Zide
d84b7711fd Added option to paste keeping the original steps. Fixes #612. 2021-02-07 10:48:23 -08:00
Leonardo
48347ea371 Ignore part settings from the previous step. Fixes #602. 2021-02-03 14:49:07 -08:00
Leonardo
55384a3c35 Fixed crash loading invalid lcd file. Fixes #617. 2021-02-03 14:24:22 -08:00
Leonardo
f033578abc Keep find next working after closing the find widget. 2021-02-01 14:12:03 -08:00
Leonardo Zide
680511879a Removed replace checkboxes. 2021-01-31 17:49:22 -08:00
Leonardo Zide
c182daa10d Removed find color checkbox. 2021-01-31 17:32:38 -08:00
Leonardo Zide
dc0ffbc8bb Removed Select By Color. 2021-01-31 12:23:28 -08:00
Leonardo Zide
3bee3a2bcf Removed the find widget part checkbox. 2021-01-31 12:05:15 -08:00
Leonardo Zide
6a2c8a715e Added find all. 2021-01-31 11:02:50 -08:00
Leonardo Zide
b74eb3a81e New find/replace widget. 2021-01-30 15:37:17 -08:00
Leonardo Zide
48ae9dae17 Fixed pieces not sorted correctly when changing their step. Fixes #614. 2021-01-30 10:17:15 -08:00
Leonardo
75fdca0387 Added transform menu and indicator. Fixes #554. 2021-01-29 15:18:02 -08:00
Leonardo Zide
00f3f0588f Cleanup. 2021-01-16 18:27:39 -08:00
Leonardo Zide
e86ec2300a Fixed wrong PLI images. 2021-01-16 15:14:23 -08:00
Leonardo Zide
61517b21d0 Customizable PLI. 2021-01-16 14:43:24 -08:00
Leonardo Zide
a85bbec789 Updated deprecated functions. 2021-01-14 14:51:43 -08:00
Leonardo Zide
a0867c9b80 Framebuffer cleanup. 2021-01-09 17:57:24 -08:00
Leonardo Zide
31ce044a65 Cleanup. 2021-01-09 16:37:32 -08:00
Leonardo Zide
138f749053 Use part color for wireframe lines. 2021-01-09 16:02:23 -08:00
Leonardo Zide
601eb56322 Fixed edge around parts list images. 2021-01-08 15:11:02 -08:00
Leonardo Zide
dbb4c9e44b QGLWidget cleanup. 2021-01-08 11:25:24 -08:00
Leonardo Zide
b70fab3059 Require Qt5. 2021-01-08 10:35:52 -08:00
Leonardo Zide
47661710db Don't create widgets when saving images from the command line. 2021-01-06 09:55:03 -08:00
Leonardo Zide
39af536301 Multiple rows/columns instructions. 2021-01-05 18:48:12 -08:00
Leonardo Zide
cb710206b7 Moved key functions into a separate class. 2021-01-05 11:26:01 -08:00
Leonardo Zide
72763ddc11 Create offscreen context at startup and reuse it. 2021-01-01 18:41:28 -08:00
Leonardo Zide
69cfc71f3b Removed global placeholder mesh. 2020-12-31 14:23:08 -08:00
Leonardo Zide
499e648673 Use individual bounding boxes for zoom extents. 2020-12-31 10:22:12 -08:00
Leonardo Zide
7ec71d8602 Reorganized view sphere and preview options. Fixes #584. 2020-12-30 10:39:04 -08:00
Leonardo Zide
58981f9580 Added option to paint selected pieces. Fixes #561. 2020-12-29 19:20:03 -08:00
Leonardo Zide
3358553e1d Moved clear functions to context. 2020-12-29 15:32:11 -08:00
Leonardo Zide
4ed04e4e25 Use an offscreen buffer when saving images from the command line. 2020-12-28 17:30:41 -08:00
Leonardo Zide
7de5d4eb22 Renamed view class. 2020-12-25 10:54:33 -08:00
Leonardo Zide
939e80ab4b Renamed view files. 2020-12-25 10:43:22 -08:00
Leonardo Zide
c8eebe5d77 Detect files that have Name or Author on the first line. Fixes #568. 2020-12-24 12:10:47 -08:00
Leonardo Zide
e27b235936 Derive preview from view. 2020-12-24 11:32:56 -08:00
Leonardo Zide
95bf7e43ff Rotate view around the minifig center. 2020-12-23 18:45:34 -08:00
Leonardo Zide
bcfbaa3080 Crash fix. 2020-12-23 18:30:01 -08:00
Leonardo Zide
0282a88c87 Sort part counts numerically. 2020-12-23 18:07:12 -08:00
Leonardo Zide
d1991b9264 Moved Minifig Dialog. 2020-12-20 11:24:50 -08:00
Leonardo Zide
b77210db22 Use a regular View for the Minifig Wizard. 2020-12-19 16:05:29 -08:00
Leonardo Zide
de29c49608 Reorganized redraw. 2020-12-15 17:19:32 -08:00
Leonardo Zide
2d7aba8895 Use QString for object names. 2020-12-13 16:27:21 -08:00
Leonardo Zide
db7259b7a5 Fixed ugly border in the Minifig Wizard. 2020-12-06 19:33:15 -08:00
Leonardo Zide
60a0f9190d Widget merging. 2020-12-05 11:02:10 -08:00
Leonardo
366018ee8c Scoped lcTool. 2020-12-04 15:38:49 -08:00
Leonardo
256d3792b1 Widget cleanup. 2020-12-04 12:49:01 -08:00
Leonardo Zide
9e12b480ce Moved DrawBackground to lcGLWidget. 2020-11-26 12:07:41 -08:00
Leonardo Zide
ef2220ffdc Moved background color to global options. 2020-11-26 11:51:50 -08:00
Leonardo Zide
462897caf7 Handle some malformed mpd files. Fixes #533.
- Skip duplicate submodels
- Skip recursive includes
2020-11-25 19:54:32 -08:00
Leonardo Zide
6decd02761 Fixed crash on exit. Fixes #520. 2020-10-17 14:41:59 -07:00
Trevor SANDY
c5426abf24 3D Preview - update background from submodel properties. Treats #513 2020-10-13 01:26:39 +02:00
Trevor SANDY
a239e504ec 3D Preview
3D Preview - restore doc format
2020-10-03 16:20:59 +02:00
Leonardo Zide
cc68126a48 gcc fix. 2020-06-01 12:29:30 -07:00
Leonardo Zide
44fa79ecb6 Instructions Dialog mockup. 2020-05-31 18:46:36 -07:00
Leonardo Zide
9e8400cbba Support local transforms for translations. 2020-05-08 17:53:53 -07:00
Leonardo Zide
9fa660313a Use scoped enum. 2020-05-03 13:04:40 -07:00
Leonardo Zide
b94b401b06 Save files with OMR style header. 2020-05-03 12:11:51 -07:00
Leonardo Zide
53ed56e60f Added option to rotate pieces around their local center. Closes #430. 2020-04-26 20:01:35 -07:00
Leonardo Zide
acd7dd3f9a Allow highlight color to be set by the user. 2020-04-25 11:36:28 -07:00
Leonardo Zide
5a76f4c870 Scoped enums. 2020-04-18 19:45:21 -07:00
Leonardo Zide
a5c2e617d5 Array cleanup. 2020-04-18 19:38:29 -07:00
Leonardo Zide
ad45bb9a47 Paste pieces to the current step. Fixes #452. 2020-04-12 13:01:28 -07:00
Leonardo Zide
70da56bb05 More accurate bounding box calculation for submodels. 2020-04-11 11:04:27 -07:00
Johannes Sixt
ca73f3e3ad
Synthesis of Technic Universal Joints (#456)
* Split synth info initialzation by type.

We are going to remove the type enumeration and use a class hierarchy
instead. This preparation will then be helpful.

* Make Add...Parts() overrides of a virtual AddPart() function.

Since we have a class hierarchy for the different synthesized pieces, we
can now turn a case distinction into a virtual function call.

* Move initialization based on type to derived class constructors.

Move initialization of end transformations of flexible parts into
class lcSynthInfoCurved.

* Make GetDefaultControlPoints() virtual with overrides.

* Remove obsolete enum lcSynthType.

We have replaced its purpose by derived classes by now.

* Initialize shock absorbers' spring part ID early.

This removes the awkward early return that is needed in the if-else
cascade.

* Split lcSynthInfo into derived classes for curved and straight pieces.

* Only curved parts have varying sections, start, middle, and end properties.

Move the properties from the base class to the derived class that needs
them.

* Use derived classes to mark synthesized objects of different kinds.

We will extend the derived classes in the upcoming commits.

* PieceInfo is only needed to synthesize some hoses and shock absorbers.

* Initialize edge part IDs of flexible hoses early.

This removes another case distinction in AddParts().

* Verify the number of control points loaded from a model file.

* Synthesize Technic universal joints.

The direction of one end can be changed so that it points to the control
point.

* Technic universal joints need only the position of the control point.

* Synthesize legacy universal joints.
2020-03-30 12:17:08 -07:00
Leonardo Zide
90f1336a48 Scoped enums and constexpr. 2020-03-22 13:44:20 -07:00
Leonardo Zide
ade7334fa1 Support up to 10 control points and prevent the user from adding more. 2020-03-22 11:12:15 -07:00
Leonardo Zide
85a9b19b2c Warning fixes. 2020-02-24 14:31:08 -08:00
Leonardo Zide
e5d06a29a2 Renamed pipette to color picker and fixed indentation. 2020-02-15 11:14:12 -08:00
RenateZwei
aa3ead6504
Added color picker (#446)
Added color picker
2020-02-15 10:59:14 -08:00
Leonardo Zide
3b8b22493a Reorganized PLI function. 2020-01-20 15:39:20 -08:00
Leonardo Zide
6d818d48d2 Fixed HTML export not including submodels. Fixes #429. 2020-01-11 12:45:36 -08:00
Leonardo Zide
cbf534fcdf Added option to fade previous steps. 2020-01-01 17:06:17 -08:00
Leonardo Zide
1f441907ee Fixed crash loading files with invalid type 1 lines. Fixes #413. 2019-12-31 13:07:45 -08:00
Leonardo Zide
eae50b6836 Print submodels. Fixes #409. 2019-12-30 16:04:58 -08:00
Leonardo Zide
e9cdeed008 Sort piece insert preview with the rest of the scene. 2019-11-30 12:19:13 -08:00
Leonardo Zide
9e41edfef0 Fixed loading mpd files with consecutive NOFILE statements. 2019-11-26 12:13:22 -08:00
Leonardo Zide
5854cfce89 Added wrapper for glDepthMask. 2019-11-09 18:11:25 -08:00
Leonardo Zide
4493c3f6f2 Array cleanup. 2019-07-04 17:06:26 -07:00
Leonardo Zide
b42e3b7e31 Array cleanup. 2019-06-23 18:28:14 -07:00
Leonardo Zide
514c1e54ec Moved common includes to precompiled header. 2019-05-30 12:06:54 -07:00