Commit Graph

1319 Commits

Author SHA1 Message Date
FEA-eng
23411b64ca Update DlgSettingsObjectColor.ui 2024-07-10 10:31:29 +02:00
FEA-eng
75e1552dde Update DlgSettingsObjectColor.ui 2024-07-10 10:31:29 +02:00
FEA-eng
4195bf2ae8 Update DlgImportStep.ui 2024-07-10 10:31:29 +02:00
FEA-eng
58fb231597 Update DlgExportStep.ui 2024-07-10 10:31:29 +02:00
Yorik van Havre
78259314e2 Merged crowdin translations 2024-07-09 08:52:17 -05:00
FEA-eng
5658491b51 Update SectionCutting.ui 2024-07-08 17:20:30 -05:00
Max Wilfinger
8ff5a1f688 Fix source string typos mentioned on Crowdin (#15261) 2024-07-08 17:18:31 -05:00
Yorik van Havre
56e46e5f4e Translations (#15107)
* Updated ts files

* Merged crowdin translations

* [pre-commit.ci] auto fixes from pre-commit.com hooks

for more information, see https://pre-commit.ci

---------

Co-authored-by: pre-commit-ci[bot] <66853113+pre-commit-ci[bot]@users.noreply.github.com>
2024-07-02 12:21:53 +02:00
Max Wilfinger
86b1c2e863 Activate Part/Part Design check and refine preferences by default (#14406)
* Activate Part/Part Design check and refine preferences by default

* added bool in .ui

* Update tests

* Fix Sketcher tests
2024-07-01 10:50:42 -05:00
wmayer
e84ad73499 Part: Fixes #15027: ShapeAppearance does not handle transparency per face correctly 2024-06-29 18:48:53 -05:00
wmayer
d49303a5dc Import: Move options handling to ImportGui.importOptions
Currently a modal dialog is used directly in ImportGui.open()/ImportGui.insert() that makes it impossible to use the functions in a
script because they will be blocked
2024-06-21 12:00:38 -05:00
Chris Hennes
101118fdde Merge branch 'main' into vp_texture_ext 2024-06-17 10:48:45 -05:00
Kuzemko Alexsandr
173733750b Select code page during STEP Import (#14416)
* [STEP Import]
Added the ability to select the encoding of the source file when importing.
Requires OCCT version 7.8.0 and higher

* fix compile error for OCCT < 7.8.0

* Also hide label "CodePage" for OCCT < 7.8.0

* [pre-commit.ci] auto fixes from pre-commit.com hooks

for more information, see https://pre-commit.ci

* Fix error

* [pre-commit.ci] auto fixes from pre-commit.com hooks

for more information, see https://pre-commit.ci

* Fix error on Ubuntu 20-04

* Fix error on Ubuntu 20-04

---------

Co-authored-by: Kuzma30 <kuzemkoa@gmail.com>
Co-authored-by: pre-commit-ci[bot] <66853113+pre-commit-ci[bot]@users.noreply.github.com>
2024-06-17 10:47:28 -05:00
wmayer
e5fa099591 Clean-up code and improve formatting 2024-06-17 16:30:25 +02:00
wmayer
3fd2f64639 Fix several regressions:
+ improve PropertyMaterialList::readString
+ fix transparency handling in ViewProviderPartExt
+ do not register the private member '_diffuseColor' as property because it would be exposed to the
  public where it can be modified
+ fix ViewProviderPartExt::finishRestoring() to correctly restore old project files
+ fix ViewProviderPartExt::setHighlightedFaces() to correctly show face colours if VBO is enabled
+ fix ViewProviderBoolean::updateData()
  fix ViewProviderMultiFuse::updateData()
  fix ViewProviderMultiCommon::updateData()
  fix ViewProviderCompound::updateData()
  fix ViewProviderFillet::updateData()
  fix ViewProviderChamfer::updateData()
  that all set invalid transparency values
+ Filter ShapeAppearance in ViewProviderBody::unifyVisualProperty
  because body features usually have different number of faces than the body itself
+ manually fix some bad looking auto-formatted code
+ clean up code and remove duplicated code
2024-06-11 11:58:32 +02:00
wmayer
330e64fc89 Gui: Move texture handling to view provider extension
It should be avoided to add all stuff to the base class when it's only needed in one sub-class
2024-06-11 11:55:44 +02:00
wmayer
d53d1c0622 Gui: Refactor DlgMaterialPropertiesImp
Because a PropertyMaterialList property is used now it makes no sense any more to pass a list of view providers to the dialog
as it's impossible to set the material at a certain index.
Therefore the dialog has been simplified and setting the material property must be done by the calling instance.
2024-06-10 10:50:46 -05:00
Mihail Dumitrescu
0346c94b50 Add ParallelPlane attachment mode.
It results in an attachment similar to ObjectXY but with the XY plane translated to pass through a selected vertex.

It is most useful to place sketches: pick a plane (XY, XZ, YZ) or another sketch then select a vertex to automatically translate the sketch in the Z-direction. In contrast to the Translate mode it does not change the origin.
2024-06-10 10:47:00 -05:00
FEA-eng
f13298dea3 Part: Add Sketcher_NewSketch to Part toolbar (#14318)
* Update Workbench.cpp

* Part: Update InitGui.py
2024-06-10 10:36:39 -05:00
VM4Dim
cb61cb59df Part: Not needed translation for STEP (file format name) 2024-06-03 11:16:26 -05:00
Chris Hennes
6404de9c21 Update translations 2024-06-03 11:04:42 -05:00
marioalexis
a5f4507690 Part: Rename ViewProviderPartExtPy class files 2024-06-03 12:48:15 +02:00
David Carter
5feb963f9d Material: Appearance Updates 2
Improves the use of the ShapeAppearance property for the Part workbench.

    removes DiffuseColor property
        adds Python compatibility using custom attributes
        transitions DiffuseColor to ShapeAppearance on open
    Improved UI elements for setting object appearance, and appearance per face
    Lays the foundation for future texture support
2024-06-01 19:57:16 -05:00
wmayer
560cab6f31 clang/gcc: Add build option FREECAD_WARN_ERROR to force to make warnings into errors 2024-05-29 13:37:07 +02:00
David Carter
a0fdc86948 Material: Appearance and Material inspectors
Dialogs to view the Appearance and Material properties of an object

These inspectors are intended to be used when debugging Appearance and
Material issues in a model.

The Appearance inspector displays the appearance properties of an
object. This will be more useful once PR 13792 is merged which migrates
parts to use ShapeAppearance instead of DiffuseColor. This shows each
of the appearance properties per face for the object.

The Material inspector shows the material, models, and properties
assigned to a model. It displays useful debugging information such as
the UUID and file paths associated with eacch of the items. This is
useful when finding and resolving model conflicts.

The material inspector now gives the option of copying the information
to the clipboard.
2024-05-27 10:50:35 -05:00
Max Wilfinger
2595cbf06b replace selection filter icon with no filter icon 2024-05-27 10:37:24 -05:00
Chris Hennes
73ae4102e6 Update translations
Arch->BIM is a WIP
2024-05-25 19:11:51 -05:00
Chris Hennes
40c5d137d2 Merge pull request #14074 from NomAnor/pd-icons
Change PartDesign Pad and Revolution tree icons
2024-05-20 11:45:16 -05:00
Kacper Donat
302706be38 Gui: Add ability to disable single-solid rule by default 2024-05-20 12:25:36 -04:00
André Althaus
0e8bf744bf Replace remaining yellow Part icons with blue ones 2024-05-19 12:12:48 +02:00
André Althaus
de6fe29d30 Replace the yellow Part primitive toolbar icons with the blue tree icons 2024-05-19 12:12:48 +02:00
wmayer
af3861aa79 Gui: move to new-style connect() in createEditor() 2024-05-14 15:58:44 +02:00
Chris Hennes
9fead3682d Update translations 2024-05-12 17:06:56 -05:00
Chris Hennes
a5d8aaa21c Update translations
Also removes Web from translation scripts.
2024-05-06 18:17:53 +02:00
hlorus
74d055e11a [Part/PD] Remove measure tools 2024-04-29 09:27:22 -04:00
hlorus
8524ed6daf [Part] Move VectorAdapter into own file in PartGui 2024-04-29 09:27:22 -04:00
hlorus
dc54fdd5b8 [Part] Move ArcEngine into own file in Gui module 2024-04-29 09:27:22 -04:00
Chris Hennes
ead426c6eb Update translations
Note: Web and Start omitted
2024-04-24 13:58:21 -05:00
wmayer
17222f2927 Part: Support of material colors in settings 2024-04-19 11:14:00 +02:00
Chris Hennes
e7069e6797 Update translations. 2024-04-17 16:50:38 -05:00
wmayer
12ef38e66f Fix handling of transparency / Restore colour per face
The Materials module does a conversion from float to double when saving the transparency and again a conversion from double to float to double
when restoring it. This causes a considerable loss of accuracy so that the representation in percent leads to different numbers.

Using consistently some helper functions to do a proper conversion from float to long and back fixes the problem.

The new property ShapeAppearance is a PropertyMaterialList and always read after the DiffuseColor property when restoring a document.
Thus, the  method onChanged() doesn't override DiffuseColor when restoring a document. Additionally, the method finishRestoring() is re-implemented
to set the colours per face in case DiffuseColor has defined multiple colors.
2024-04-10 13:32:58 +02:00
wmayer
e87180b245 Part: fix import of STEP files with colors per face 2024-04-09 22:15:51 +02:00
wmayer
9d4757b301 Part: fix some further regressions:
* Correctly load a file if colors are set per face
* Result of boolean operation is correctly colored if source objects have different colors
* Result of compound is correctly colored if source objects have different colors
2024-04-09 22:15:51 +02:00
wmayer
15dcd1e9be Gui: add security checks to view provider extensions because they can be accessed if a document objects is not yet attached 2024-04-09 22:15:51 +02:00
wmayer
262a218b6b Part: fix Part_RefineShape and Part_Section 2024-04-09 22:15:51 +02:00
wmayer
4aa140d066 Mod: code cleanup 2024-04-09 22:15:51 +02:00
wmayer
92b1e77744 Gui: fix ViewProviderGeometryObject
* fix several linter warnings
* remove code that cannot be executed: inside the constructor it cannot ever happen that getObject()
  returns a valid object
* in ViewProviderGeometryObject::handleChangedPropertyName call the method of the direct base class
  as otherwise this may break the mechanism in the future
* Shape is a property of an extension module -> move its handling to ViewProviderPartExt
2024-04-09 22:15:51 +02:00
wmayer
384902c26c Gui: Fix broken toolbars layout due to MaterialWorkbench
The explicit activation of the MaterialWorkbench breaks the toolbars layout for every start. When fixing it manually it will be broken
again after the next start.

Because the core doesn't depend on the Material module it's a no-go to add an explicit runtime dependency to the corresponding workbench.

Since the Part module depends on the Materials module and the PartGui on MatGui the correct way is to let Part an PartGui load their
dependencies.
2024-04-05 10:08:06 +02:00
David Carter
ba20441935 Material: Material appearance
Uses new material system for appearance

Each feature object now has a property called ShapeMaterial that
describes its physical properties. If it has a shape, it has a
material.

The ShapeColor attribute is replaced by a ShapeAppearance attribute.
This is a material list that describes all appearance properties, not
just diffuse color. As a list in can be used for all elements of a
shape, such as edges and faces.

A new widget is provided to allow the user to select materials in a
consistent fashion. It can also launch the material editor with its
more advanced capabilities.
2024-04-04 07:39:58 -05:00
Max Wilfinger
e38b8d9bd4 update hardcoded XPMs to .svg files. Updated .svg icons for clarity. 2024-03-30 11:25:13 +01:00