removed old commented code.
[pre-commit.ci] auto fixes from pre-commit.com hooks
for more information, see https://pre-commit.ci
revert comments
[pre-commit.ci] auto fixes from pre-commit.com hooks
for more information, see https://pre-commit.ci
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.
* Assembly: removal of object of fixed joint causing crash
FreeCAD is crashing if the 'Object'
property of fixed joint (Assembly/Joints/Fixed/Joint Connector 1/Object1 or
Assembly/Joints/Fixed/Joint Connector 2/Object2) is manually removed.
Steps to reproduce:
- make simple Assembly e.g. of two cubes with Fixed joint
- Select Fixed joint in the tree and go-to property 'Data' tab
- Select 'Object1' or 'Object2' of the 'Joint Connector 1' or 'Joint Connector 2'
and remove this reference
- click by your pointing device (mouse) to the arbitrary other property
The FreeCAD will crash here because the call
App::DocumentObject* obj = getObjFromNameProp(joint, propObjName, propPartName);
will return NULL pointer.
This problem is similar to the
8d5348ad066aa216c387582bfdcf066966a4fe09.
* Assembly: fixed warning message text
The warning message text is not describing two cases which can happen,
but only one - property of specific joint.
* Assembly: avoiding possible crash in rack pinion joint code
Similar problems:
07c6df61f8456a6b02e88b369dcef5643ac1574e
and
8d5348ad066aa216c387582bfdcf066966a4fe09
were causing real crashes (Linux + Sway Wayland compositor) when
Fixed joint type was used.
This patch tries to avoid the same situation, but now for the
rack pinion joint type.
The returned pointer value (part1 and obj1) can get NULL pointer value
and is used in the code:
if (obj1->getNameInDocument() != part1->getNameInDocument()) { ....
a few lines later.
Fixes#14242.
In the current dev fusing an empty shape with a face or solid no longer works (probably introduced with #14169). The reason for starting with an empty shape was the assumption that the end result would then always have a default placement. But that is only correct if multiple objects are fused.
In the new version of the code fusing no longer starts with an empty shape. The default placement issue is solved by always returning a compound.
Additionally the value for the Area property is now taken after offsetting and fusing the faces.
* [TD]Cosmetic geometry and tools update
- all cosmetics to store geometry in same form
- all cosmetics to survive scaling and rotation
- extension functions to survive scaling and rotation
* [TD]overhaul leader point storage and editing
- add py routine makeLeader(points)
* [TD]add leader conversion utility
* [TD]Set Leader RotateWithView default to true
* [TD]fix intersection vertex position
* [TD]add CosmeticEdge::makeLineFromCanonicalPoints
* [TD]fix 2 Extension tools
- positioning in DrawCosmeticCircle
- mishandling of points in execLineParallelPerpendicular
* [TD]Remove duplicate constexpr
* [TD]fix 2x Cosmetic arc tools
* [TD]refactor LineFormat out of Cosmetic
* [TD]move cosmetic appearance settings to LineFormat
* [TD]remove 2 unused methods
* [TD]apply format to blue line & circle tools
* [TD]fix ballon arrowhead does not rotate with view
* [TD]fix CosmeticCircle3Points
* [TD]allow multiple cosmetic object deletions
* [TD]fix extend/shorten centerline
Several group commands are active but require an active document to work. This PR overrides the method isActive() to
disable the commands if no active document exists.
The affected commands are:
* Std_ViewGroup
* Std_LinkActions
* PartDesign_CompDatums
* PartDesign_CompSketches