Commit graph

515 commits

Author SHA1 Message Date
Roman Telezhynskyi 0330869796 Serialization/deserialization for class VLayoutPiece.
--HG--
branch : develop
2019-07-01 11:02:09 +03:00
Roman Telezhynskyi 89f786d98a Refactoring. Moving enum class LayoutExportFormats.
--HG--
branch : develop
2019-07-01 09:57:49 +03:00
Roman Telezhynskyi a2e71d6e1c Catch exceptions inside of QRunnable. ref #974.
--HG--
branch : develop
2019-06-24 12:14:10 +03:00
Roman Telezhynskyi a4a6b18561 Cppcheck warning.
--HG--
branch : develop
2019-06-18 16:04:50 +03:00
Roman Telezhynskyi f7c4bdf2a7 Improve handling layout errors.
Show Timeout error only if none errors appeared before.

--HG--
branch : develop
2019-06-18 15:14:52 +03:00
Roman Telezhynskyi 80d55659ab Refactoring.
--HG--
branch : develop
2019-06-18 15:10:08 +03:00
Roman Telezhynskyi d16b0d5501 Remove obsolete debugging system.
--HG--
branch : develop
2019-06-18 14:53:00 +03:00
Roman Telezhynskyi 3ca666fba3 Pass original paper orientation. We cannot rely on paper size because it can be
stripped.

--HG--
branch : develop
2019-06-18 14:36:20 +03:00
Roman Telezhynskyi b80103e088 Improve saving a layout result.
--HG--
branch : develop
2019-06-18 14:28:16 +03:00
Roman Telezhynskyi d0cd313df0 Fix export passmarks for layout.
Because we did not search in united path we could not draw them and silently
skipped. Now user also will see a warning.

--HG--
branch : develop
2019-06-08 15:32:25 +03:00
Roman Telezhynskyi a97c90378d Fix bug in VPiece::IsBufferAllowanceValid.
--HG--
branch : develop
2019-06-18 13:48:32 +03:00
Roman Telezhynskyi 12871f0708 Fix issue with artificial loop.
--HG--
branch : develop
2019-06-18 13:45:40 +03:00
Roman Telezhynskyi d2396820c5 Fix bug with landscape oriention.
--HG--
branch : develop
2019-06-18 12:35:43 +03:00
Roman Telezhynskyi 5c55778d66 Since Q5.12 available support for C++17.
--HG--
branch : develop
2019-05-28 17:41:15 +03:00
Roman Telezhynskyi d5a1f96bdd constFirst() introduced since Qt 5.6.
--HG--
branch : develop
2019-05-28 16:21:52 +03:00
Roman Telezhynskyi c2091c6337 Cppcheck warning.
--HG--
branch : develop
2019-05-27 17:21:48 +03:00
Roman Telezhynskyi 6590742f09 Improve "Remove point on line".
Now it should handle circular shapes.

--HG--
branch : develop
2019-05-27 17:07:18 +03:00
Roman Telezhynskyi d58b3f523d Methods to get a passmark base lines.
--HG--
branch : develop
2019-05-27 17:05:42 +03:00
Roman Telezhynskyi a87f821327 Introduce mapped versions of methods. In some cases we will do mapping manually.
--HG--
branch : develop
2019-05-27 17:04:26 +03:00
Roman Telezhynskyi 6294dc0748 New struct VLayoutPassmark to store data about a passmark.
--HG--
branch : develop
2019-05-27 14:57:36 +03:00
Roman Telezhynskyi bd611bf333 Refactor class VPlaceLabelItem.
Store more info about a placelabel.

--HG--
branch : develop
2019-05-27 14:54:44 +03:00
Roman Telezhynskyi 7dc420ad47 Refactor class VLayoutPiecePath.
Optimizing code style.

--HG--
branch : develop
2019-05-27 14:51:58 +03:00
Roman Telezhynskyi 3b51ccb31d Refactoring. Move drawing passmarks to separate class.
--HG--
branch : develop
2019-05-08 15:19:03 +03:00
Roman Telezhynskyi f420812f5d Fixed build on Windows with Qt 5.6.
--HG--
branch : develop
2019-04-17 17:35:11 +03:00
Roman Telezhynskyi 52dfb912ee Resolved issue #965. Control passmark length with formula.
--HG--
branch : develop
2019-04-17 13:02:22 +03:00
Roman Telezhynskyi aa1d30bdb8 Alternative approach to search intersection in layout.
--HG--
branch : develop
2019-04-10 15:54:18 +03:00
Roman Telezhynskyi 0987428a93 Increase required Qt version up to 5.4.
--HG--
branch : develop
2019-04-05 15:42:22 +03:00
Roman Telezhynskyi c26d4d0942 Fixing issue with progress bar in console mode.
--HG--
branch : develop
2019-04-03 13:29:42 +03:00
Roman Telezhynskyi 7b72ea5bc1 Optimize layout algorithm after profiling.
--HG--
branch : feature
2019-04-02 15:30:31 +03:00
Roman Telezhynskyi 4adce13a4d Abort after timeout must have own signal.
--HG--
branch : feature
2019-04-02 15:29:33 +03:00
Roman Telezhynskyi 69df0922af Check timeout inside the layout generator.
--HG--
branch : feature
2019-03-30 11:17:54 +02:00
Roman Telezhynskyi 4565a47b91 Fix bug in VLayoutPieceData class.
--HG--
branch : feature
2019-03-30 11:15:14 +02:00
Roman Telezhynskyi 46bf68521e Nesting with timeout.
--HG--
branch : feature
2019-03-29 19:52:37 +02:00
Roman Telezhynskyi 47bcfd74ab Changes for dialog.
--HG--
branch : feature
2019-03-29 11:31:17 +02:00
Roman Telezhynskyi 91925c2618 Cppcheck warning.
--HG--
branch : develop
2019-03-27 11:45:25 +02:00
Roman Telezhynskyi c2672b4b69 Shows global contour.
For debugging purposes.
* * *
Show nodes on global contour.

--HG--
branch : develop
2019-03-27 10:29:59 +02:00
Roman Telezhynskyi 635922faec Instead of squares compare depth position.
--HG--
branch : develop
2019-03-27 10:22:00 +02:00
Roman Telezhynskyi 39f24d2dcc When append whole piece don't miss piece edge.
This will potentially create less reserved space.

--HG--
branch : develop
2019-03-15 16:36:37 +02:00
Roman Telezhynskyi 762ee18026 Extend layout sheet paper size to cover coner cases.
--HG--
branch : develop
2019-03-15 15:33:30 +02:00
Roman Telezhynskyi 1393be669b Fix auto cropping.
--HG--
branch : develop
2019-03-12 19:45:27 +02:00
Roman Telezhynskyi 08415eb4ef Refactoring. Move best square result in separate struct.
--HG--
branch : develop
2019-03-27 09:31:02 +02:00
Roman Telezhynskyi 63ea3bf2f9 If user selects SaveLength option add fake contour edge.
* * *
Fixing issue with pieces on edge.

--HG--
branch : develop
2019-03-27 09:03:19 +02:00
Roman Telezhynskyi ed23a4ee71 Refactoring. Define default values.
--HG--
branch : develop
2019-03-26 19:14:05 +02:00
Roman Telezhynskyi e7bd65bde9 Refactoring. Move code in functions.
--HG--
branch : develop
2019-03-26 19:10:13 +02:00
Roman Telezhynskyi 1f462586cd Convert to implicitly shared object.
--HG--
branch : develop
2019-03-26 19:02:12 +02:00
Roman Telezhynskyi 81cda14c06 Refactoring. Pass position data as struct.
--HG--
branch : develop
2019-03-26 18:54:59 +02:00
Roman Telezhynskyi 93334c7f7d Show error when preparing pieces fails.
--HG--
branch : develop
2019-03-26 18:21:31 +02:00
Roman Telezhynskyi 6b6d124cbb Refactoring.
--HG--
branch : develop
2019-03-26 17:47:27 +02:00
Roman Telezhynskyi 335d4e2b81 Fix typo.
--HG--
branch : develop
2019-03-26 17:30:25 +02:00
Roman Telezhynskyi c4d07125dc Refactoring define new type for id value.
--HG--
branch : develop
2019-03-26 17:15:03 +02:00
Roman Telezhynskyi a479f3cb40 Improve checking allowance validity.
--HG--
branch : develop
2019-02-27 20:33:59 +02:00
Roman Telezhynskyi 77ae13ae18 New pedantic check. Check if allowance path is valid.
This check validate seam allowance path and layout allowance path.

--HG--
branch : develop
2019-02-23 18:43:06 +02:00
Roman Telezhynskyi 81bde9bb95 Fix issue with loop clearing.
--HG--
branch : develop
2019-02-20 09:59:59 +02:00
Roman Telezhynskyi 883d2c04f6 Resolved issue #937. Wrong symmetrical seam corners on pieces.
(grafted from 8c1b09cc7bc40d6d40e39d931d3e040b0323bd87)

--HG--
branch : develop
2019-02-13 16:32:38 +02:00
Roman Telezhynskyi 107af20c80 Clazy warnings.
--HG--
branch : develop
2019-02-13 12:24:26 +02:00
Roman Telezhynskyi dc4fca7a76 Forgot to comment test data dump functions.
(grafted from 3f7b9889eedf7ae49f804cf6ace7cebec122fbec)

--HG--
branch : develop
2019-02-12 15:37:38 +02:00
Roman Telezhynskyi 63e402ba8a Resolved issue #937. Wrong symmetrical seam corners on pieces.
(grafted from f15fbf536959418dcd9a2f2caf7c0267ae46eaee)

--HG--
branch : develop
2019-02-12 14:51:21 +02:00
Roman Telezhynskyi 84c96c35dd Refactoring layout piece.
--HG--
branch : develop
2019-01-28 20:35:10 +02:00
Roman Telezhynskyi 6efc6f11c8 Fixed issue #924. Valentina produces wrong passmark for rollback case.
(grafted from 5ff3a91f41efebed4963d3377cb2f194983cc7f7)

--HG--
branch : develop
2019-01-09 17:46:02 +02:00
Roman Telezhynskyi 60c4e2880f Fixed issue #923. Valentina produces wrong seam allowance for rollback case.
(grafted from 111ae73392a265baecbb3031cf3963682e0bea77)

--HG--
branch : develop
2019-01-07 18:20:36 +02:00
Roman Telezhynskyi 2f717fd365 Fix uniting and cropping pages.
Code missed handling landscape orienation.

--HG--
branch : develop
2019-01-03 19:35:04 +02:00
Roman Telezhynskyi b66f516a74 Fix missing arrow type when follow a grainline.
--HG--
branch : develop
2019-01-02 21:36:51 +02:00
Roman Telezhynskyi b1ef2a0f7a Fixing warnings.
--HG--
branch : develop
2019-01-02 16:52:07 +02:00
Roman Telezhynskyi 25fc7227f0 Fix strip optimization. It must follow paper sheet orientation settings.
--HG--
branch : develop
2019-01-02 16:49:57 +02:00
Roman Telezhynskyi 3dfa269224 Implement "pull left" behavior.
Between valid best results select most top or most left for portrait and
landscape orientation.

--HG--
branch : develop
2018-12-31 13:35:42 +02:00
Roman Telezhynskyi da0ee5ce6f Fix bug with flipped piece and follow grainline option.
--HG--
branch : develop
2018-12-31 11:33:20 +02:00
Roman Telezhynskyi a35a6f2e55 Fix warning Wunused-function.
For some reasons suppressing doesn't work.

--HG--
branch : develop
2018-12-28 22:40:19 +02:00
Roman Telezhynskyi 8c676948ff Fixing regression. ref #915.
(grafted from 4a1f66408bca3eab9df83d5b9ef46ac9c3cc6278)

--HG--
branch : develop
2018-12-28 21:55:48 +02:00
Roman Telezhynskyi bcb7def7b8 Improving contour edge for empty sheet.
It must follow sheet orientation, plus added control of numbers of points with
shift option.

--HG--
branch : develop
2018-12-28 15:57:24 +02:00
Roman Telezhynskyi 6bc160075b Refactoring. Fixing warnings.
--HG--
branch : develop
2018-12-28 15:55:47 +02:00
Roman Telezhynskyi 55a3ecb8cb Improvement for option "Save layout length".
This option worked only for portrait orientation. In landscape orientation
instead of width need save height. Additionally we keep original comaprison for
the smallest bounding rect. This creates more humanlike output.

--HG--
branch : develop
2018-12-28 15:53:18 +02:00
Roman Telezhynskyi f678174729 Refactoring. Hide private static methods.
--HG--
branch : develop
2018-12-28 13:19:41 +02:00
Roman Telezhynskyi 728dd00b76 Refactoring. Fixing warnings.
--HG--
branch : develop
2018-12-28 13:08:53 +02:00
Roman Telezhynskyi 6016308d58 Resolved issue #651. Improve feature: Layout orientation according to grainline.
--HG--
branch : develop
2018-12-27 15:54:29 +02:00
Roman Telezhynskyi 7caf42cf48 Since Q5.4 available support C++14. Some libraries still missed use.
--HG--
branch : develop
2018-12-23 20:27:24 +02:00
Roman Telezhynskyi 54418925c6 Fixed issue #915. Valentina produces wrong seam allowance for acute angle.
(grafted from 41a93a0a57ac2dcc731563b7eb759bfa2bc2961e)

--HG--
branch : develop
2018-12-23 18:41:51 +02:00
Roman Telezhynskyi 5f5b7e41fa Enable alternative operator representations for support old or nonconforming
compilers by default.

--HG--
branch : develop
2018-12-11 22:27:55 +02:00
Roman Telezhynskyi f44484a364 Optimization for method PointBezier_r().
--HG--
branch : develop
2018-11-16 17:44:54 +02:00
Roman Telezhynskyi 1d0b5790ae Be more pedantic. Show warning for case where Valentina cannot build a seam
allowance.

--HG--
branch : develop
2018-10-22 14:43:06 +03:00
Roman Telezhynskyi fb4d935ac4 Clazy warnings.
--HG--
branch : develop
2018-10-22 14:42:13 +03:00
Roman Telezhynskyi 2211e2b7ee Fixed issues with seam allowance.
More cases.
(grafted from 7324a77cb8851a215d26269a8db7106a653915fd)

--HG--
branch : develop
2018-10-19 16:54:06 +03:00
Roman Telezhynskyi 81d2eb513a Fixed issues with seam allowance.
(grafted from 79a6fe52de80fc8707e24574eff1ec75eb1cd424)

--HG--
branch : develop
2018-10-17 18:12:39 +03:00
Roman Telezhynskyi c47193540b Improve precision of dump functions. It should be close to what debugger gives.
(grafted from d94873822ea085f90db8ad6b857dd041cd9654c6)

--HG--
branch : develop
2018-10-17 18:11:32 +03:00
Roman Telezhynskyi 515df843d3 New function VFuzzyComparePoints to compare two points.
--HG--
branch : release
2018-09-27 14:52:21 +03:00
Roman Telezhynskyi 9f919ffe8a Improve seam allowance. Case with custom seam allowance.
--HG--
branch : release
2018-09-23 15:51:28 +03:00
Roman Telezhynskyi 252fa3a0de Suppress warning Wunused-function.
Try number 2.

--HG--
branch : release
2018-09-19 20:06:47 +03:00
Roman Telezhynskyi 778d4bebc1 Disable warning Wunused-function.
--HG--
branch : release
2018-09-19 18:53:32 +03:00
Roman Telezhynskyi a4ec72b3bd Help function to speed up creating tests.
--HG--
branch : release
2018-09-19 15:16:29 +03:00
Roman Telezhynskyi ec79f50e65 Fix float point accuracy issue. ref #883.
--HG--
branch : release
2018-09-19 12:24:24 +03:00
Roman Telezhynskyi 60b323cf8e Fixed issue #882. VContainer class doesn't support multi document mode.
--HG--
branch : release
2018-09-18 16:38:16 +03:00
Roman Telezhynskyi 49506c0bf2 Refactring. MaxLocalSA can be part of VSAPoint class.
--HG--
branch : release
2018-09-13 17:31:14 +03:00
Roman Telezhynskyi f57c98b7c3 Refactoring. Move private static methods.
--HG--
branch : release
2018-09-13 17:16:40 +03:00
Roman Telezhynskyi 3fe7709c40 Fixed issue #883. Fix right angle seam allowance angle type.
--HG--
branch : release
2018-09-13 16:46:04 +03:00
Roman Telezhynskyi 05a5101115 Fixed issue #808. Fix broken seam allowance angle type.
--HG--
branch : release
2018-09-01 18:56:43 +03:00
Roman Telezhynskyi 8a29755a36 Resolved issue #868. New feature. Connect internal path with cutting contour.
--HG--
branch : develop
2018-07-26 20:00:24 +03:00
Roman Telezhynskyi 1ae08d6020 Resolved issue #867. Visibility control for place labels.
--HG--
branch : develop
2018-07-20 10:30:05 +03:00
Roman Telezhynskyi ef6dd49202 Resolved issue #861. Valentina hangs if pattern has too many loops.
--HG--
branch : develop
2018-07-12 20:21:24 +03:00
Roman Telezhynskyi 63b1eb8068 Cppcheck warning 'missingOverride'.
--HG--
branch : develop
2018-06-26 15:53:48 +03:00
Roman Telezhynskyi 09e8c81d6f Refactoring. Rename GetPPath() to GetPatternPath().
--HG--
branch : develop
2018-06-19 09:18:38 +03:00
Roman Telezhynskyi ffdf42cc7a Improve the debug message. It can contains a piece name. ref #850.
--HG--
branch : develop
2018-05-21 11:35:50 +03:00