diff --git a/cad/freecad/Makefile b/cad/freecad/Makefile index a7d73e106ed0..ae4ecbd4f147 100644 --- a/cad/freecad/Makefile +++ b/cad/freecad/Makefile @@ -1,82 +1,82 @@ PORTNAME= FreeCAD -DISTVERSION= 0.19.4 -PORTREVISION= 1 +DISTVERSION= 0.20 # use these for bugfixes/snapshots # DISTVERSION= 0.18-16093 # git rev-list --count # DISTVERSIONSUFFIX= -g690774c0e CATEGORIES= cad MAINTAINER= cmt@FreeBSD.org COMMENT= General purpose 3D CAD modeller LICENSE= LGPL20+ LICENSE_FILE= ${WRKSRC}/LICENSE BUILD_DEPENDS= pyside_tool.py:devel/pyside2-tools@${PY_FLAVOR} \ ${PYTHON_SITELIBDIR}/matplotlib/__init__.py:math/py-matplotlib@${PY_FLAVOR} \ swig:devel/swig LIB_DEPENDS= libexpat.so:textproc/expat2 \ libfreetype.so:print/freetype2 \ ${PY_BOOST} \ libpyside2.cpython-${PYTHON_SUFFIX}${PYTHON_ABIVER}.so:devel/pyside2@${PY_FLAVOR} \ libCoin.so:graphics/Coin \ libpng.so:graphics/png \ libtiff.so:graphics/tiff \ libvtksys-${VTK_VER}.so:math/vtk${VTK_VER:R} \ libTKernel.so:cad/opencascade \ libxerces-c.so:textproc/xerces-c3 \ libboost_thread.so:devel/boost-libs \ libarea.so:devel/libarea \ libmed.so:french/med \ libmpi.so:net/openmpi \ libshiboken2.cpython-${PYTHON_SUFFIX}${PYTHON_ABIVER}.so:devel/shiboken2@${PY_FLAVOR} \ libhdf5.so:science/hdf5 RUN_DEPENDS= ${PYTHON_PKGNAMEPREFIX}pivy>0:graphics/py-pivy@${PY_FLAVOR} \ ${PYTHON_SITELIBDIR}/matplotlib/__init__.py:math/py-matplotlib@${PY_FLAVOR} USES= dos2unix compiler:c++17-lang cmake cpe gl eigen:3 fortran jpeg \ localbase:ldflags pkgconfig python:3.7+ localbase qt:5 xorg USE_GITHUB= yes USE_XORG= ice sm x11 xext xt USE_GL= gl glu -USE_QT= buildtools concurrent core gui network opengl printsupport \ - qmake_build svg webkit widgets xml xmlpatterns +USE_QT= buildtools concurrent core declarative gui location network \ + opengl printsupport qmake_build svg webchannel webengine \ + widgets xml xmlpatterns USE_LDCONFIG= yes CPE_VENDOR= freecad_project VTK_VER= 9.1 DOS2UNIX_GLOB= *.txt *.h *.cpp *.py *.qss *.csv *.pov *.stp *.ui *.wrl *.WRL CMAKE_ARGS+= -DOCC_INCLUDE_DIR="${LOCALBASE}/include/OpenCASCADE" \ -DOPENMPI_INCLUDE_DIRS="${LOCALBASE}/mpi/openmpi/include" \ -DBUILD_QT5="ON" \ -DPYTHON_LIBRARY="${PYTHONBASE}/lib/libpython${PYTHON_VER}${PYTHON_ABIVER}.so" \ -DPYTHON_INCLUDE_DIR="${PYTHON_INCLUDEDIR}" \ -DPYTHON_PACKAGES_PATH="${PYTHON_SITELIBDIR}" \ -DPYTHON_EXECUTABLE="${PYTHON_CMD}" \ -DBUILD_ASSEMBLY="OFF" -DBUILD_FLAT_MESH="ON" \ -DPYSIDE2RCCBINARY="${RCC}" \ -DPYSIDE2UICBINARY="${UIC}" \ -DBUILD_ENABLE_CXX_STD=C++17 CMAKE_INSTALL_PREFIX= ${PREFIX}/${PORTNAME} OPTIONS_DEFINE= COLLADA COLLADA_DESC= Install pycollada for Collada files import COLLADA_RUN_DEPENDS= ${PYTHON_PKGNAMEPREFIX}pycollada>0:graphics/py-pycollada@${PY_FLAVOR} DESKTOP_ENTRIES=${PORTNAME} "" "${PREFIX}/FreeCAD/data/freecad.svg" \ ${PORTNAME} "Graphics;Engineering;" false post-patch: @${REINPLACE_CMD} -e '/self\.rev/s/Unknown/${DISTVERSION:C/.*-//}/' \ ${WRKSRC}/src/Tools/SubWCRev.py post-install: ${LN} -s ../${PORTNAME}/bin/FreeCAD ${STAGEDIR}${LOCALBASE}/bin/FreeCAD ${LN} -s ../${PORTNAME}/bin/FreeCADCmd ${STAGEDIR}${LOCALBASE}/bin/FreeCADCmd .include diff --git a/cad/freecad/distinfo b/cad/freecad/distinfo index 4786748e1b59..0cefc5129d99 100644 --- a/cad/freecad/distinfo +++ b/cad/freecad/distinfo @@ -1,3 +1,3 @@ -TIMESTAMP = 1646236843 -SHA256 (FreeCAD-FreeCAD-0.19.4_GH0.tar.gz) = e40a1c343956e13c56cc8578d025ae83d68d9d20acda1732953bc8a3883e9722 -SIZE (FreeCAD-FreeCAD-0.19.4_GH0.tar.gz) = 296990652 +TIMESTAMP = 1655206018 +SHA256 (FreeCAD-FreeCAD-0.20_GH0.tar.gz) = c4d9ce782d3da0edfa16d6218db4ce8613e346124ee47b3fe6a6dae40c0a61d9 +SIZE (FreeCAD-FreeCAD-0.20_GH0.tar.gz) = 75452957 diff --git a/cad/freecad/files/patch-0cfea3fee3e7848bbf043d2b1a19f6405d7ebe25 b/cad/freecad/files/patch-0cfea3fee3e7848bbf043d2b1a19f6405d7ebe25 deleted file mode 100644 index 1a36b3eddc31..000000000000 --- a/cad/freecad/files/patch-0cfea3fee3e7848bbf043d2b1a19f6405d7ebe25 +++ /dev/null @@ -1,820 +0,0 @@ -This is "Make smesh compile with vtk9" from -https://github.com/FreeCAD/FreeCAD/commit/0cfea3fee3e7848bbf043d2b1a19f6405d7ebe25.patch -slightly adopted for "make patch". -We keep a local copy here as github's patch file is not stable (checksum -keeps changing due to different commit hash representations). - -From 0cfea3fee3e7848bbf043d2b1a19f6405d7ebe25 Mon Sep 17 00:00:00 2001 -From: wmayer -Date: Mon, 12 Oct 2020 17:56:03 +0200 -Subject: [PATCH] Make smesh compile with vtk9 - ---- - .../salomesmesh/inc/SMDS_MeshElement.hxx | 9 +++- - .../salomesmesh/inc/SMDS_UnstructuredGrid.hxx | 4 ++ - .../salomesmesh/src/SMDS/SMDS_BallElement.cpp | 9 +++- - .../salomesmesh/src/SMDS/SMDS_Downward.cpp | 44 +++++++++---------- - .../salomesmesh/src/SMDS/SMDS_Mesh.cpp | 6 ++- - .../src/SMDS/SMDS_Mesh0DElement.cpp | 12 +++++ - .../salomesmesh/src/SMDS/SMDS_MeshNode.cpp | 10 ++--- - .../src/SMDS/SMDS_UnstructuredGrid.cpp | 35 +++++++++++++-- - .../src/SMDS/SMDS_VtkCellIterator.cpp | 7 +-- - .../salomesmesh/src/SMDS/SMDS_VtkEdge.cpp | 19 +++++++- - .../salomesmesh/src/SMDS/SMDS_VtkFace.cpp | 29 ++++++++++-- - .../salomesmesh/src/SMDS/SMDS_VtkVolume.cpp | 38 +++++++++++----- - .../src/SMESH/SMESH_MeshEditor.cpp | 8 ++-- - 13 files changed, 173 insertions(+), 57 deletions(-) - -diff --git src/3rdParty/salomesmesh/inc/SMDS_MeshElement.hxx b/src/3rdParty/salomesmesh/inc/SMDS_MeshElement.hxx -index 14a6d9a763f..0e9b9e6c905 100644 ---- src/3rdParty/salomesmesh/inc/SMDS_MeshElement.hxx -+++ src/3rdParty/salomesmesh/inc/SMDS_MeshElement.hxx -@@ -40,11 +40,16 @@ - - #include - #include -+#include - - //typedef unsigned short UShortType; - typedef short ShortType; - typedef int LongType; -- -+#ifdef VTK_CELL_ARRAY_V2 -+typedef const vtkIdType* vtkIdTypePtr; -+#else -+typedef vtkIdType* vtkIdTypePtr; -+#endif - class SMDS_MeshNode; - class SMDS_MeshEdge; - class SMDS_MeshFace; -@@ -192,7 +197,7 @@ protected: - //! Element index in vector SMDS_Mesh::myNodes or SMDS_Mesh::myCells - int myID; - //! index in vtkUnstructuredGrid -- int myVtkID; -+ vtkIdType myVtkID; - //! SMDS_Mesh identification in SMESH - ShortType myMeshId; - //! SubShape and SubMesh identification in SMESHDS -diff --git src/3rdParty/salomesmesh/inc/SMDS_UnstructuredGrid.hxx b/src/3rdParty/salomesmesh/inc/SMDS_UnstructuredGrid.hxx -index 9e4a23eddfb..77465814541 100644 ---- src/3rdParty/salomesmesh/inc/SMDS_UnstructuredGrid.hxx -+++ src/3rdParty/salomesmesh/inc/SMDS_UnstructuredGrid.hxx -@@ -95,7 +95,11 @@ public: - std::map >& nodeQuadDomains); - vtkCellLinks* GetLinks() - { -+#ifdef VTK_CELL_ARRAY_V2 -+ return static_cast(GetCellLinks()); -+#else - return Links; -+#endif - } - SMDS_Downward* getDownArray(unsigned char vtkType) - { -diff --git src/3rdParty/salomesmesh/src/SMDS/SMDS_BallElement.cpp b/src/3rdParty/salomesmesh/src/SMDS/SMDS_BallElement.cpp -index 299093c94f6..2680c217305 100644 ---- src/3rdParty/salomesmesh/src/SMDS/SMDS_BallElement.cpp -+++ src/3rdParty/salomesmesh/src/SMDS/SMDS_BallElement.cpp -@@ -67,10 +67,16 @@ void SMDS_BallElement::SetDiameter(double diameter) - bool SMDS_BallElement::ChangeNode (const SMDS_MeshNode * node) - { - vtkUnstructuredGrid* grid = SMDS_Mesh::_meshList[myMeshId]->getGrid(); -+#ifdef VTK_CELL_ARRAY_V2 -+ vtkNew cellPoints; -+ grid->GetCellPoints(myVtkID, cellPoints.GetPointer()); -+ cellPoints->SetId(0, node->getVtkId()); -+#else - vtkIdType npts = 0; - vtkIdType* pts = 0; - grid->GetCellPoints(myVtkID, npts, pts); - pts[0] = node->getVtkId(); -+#endif - SMDS_Mesh::_meshList[myMeshId]->setMyModified(); - return true; - } -@@ -83,7 +89,8 @@ void SMDS_BallElement::Print (std::ostream & OS) const - const SMDS_MeshNode* SMDS_BallElement::GetNode (const int ind) const - { - vtkUnstructuredGrid* grid = SMDS_Mesh::_meshList[myMeshId]->getGrid(); -- vtkIdType npts, *pts; -+ vtkIdType npts; -+ vtkIdTypePtr pts; - grid->GetCellPoints( myVtkID, npts, pts ); - return SMDS_Mesh::_meshList[myMeshId]->FindNodeVtk( pts[ 0 ]); - } -diff --git src/3rdParty/salomesmesh/src/SMDS/SMDS_Downward.cpp b/src/3rdParty/salomesmesh/src/SMDS/SMDS_Downward.cpp -index d6049c0bd19..a41f5c18e78 100644 ---- src/3rdParty/salomesmesh/src/SMDS/SMDS_Downward.cpp -+++ src/3rdParty/salomesmesh/src/SMDS/SMDS_Downward.cpp -@@ -303,7 +303,7 @@ int SMDS_Down1D::getNodeSet(int cellId, int* nodeSet) - void SMDS_Down1D::setNodes(int cellId, int vtkId) - { - vtkIdType npts = 0; -- vtkIdType *pts; // will refer to the point id's of the face -+ vtkIdTypePtr pts; // will refer to the point id's of the face - _grid->GetCellPoints(vtkId, npts, pts); - // MESSAGE(vtkId << " " << npts << " " << _nbDownCells); - //ASSERT(npts == _nbDownCells); -@@ -357,7 +357,7 @@ int SMDS_Down1D::computeVtkCells(int *pts, std::vector& vtkIds) - { - vtkIdType point = pts[i]; - int numCells = _grid->GetLinks()->GetNcells(point); -- vtkIdType *cells = _grid->GetLinks()->GetCells(point); -+ vtkIdTypePtr cells = _grid->GetLinks()->GetCells(point); - for (int j = 0; j < numCells; j++) - { - int vtkCellId = cells[j]; -@@ -532,7 +532,7 @@ int SMDS_Down2D::computeVolumeIds(int cellId, int* ids) - // --- find point id's of the face - - vtkIdType npts = 0; -- vtkIdType *pts; // will refer to the point id's of the face -+ vtkIdTypePtr pts; // will refer to the point id's of the face - _grid->GetCellPoints(cellId, npts, pts); - vector nodes; - for (int i = 0; i < npts; i++) -@@ -577,7 +577,7 @@ int SMDS_Down2D::computeVolumeIdsFromNodesFace(int* pts, int npts, int* ids) - vtkIdType point = pts[i]; - int numCells = _grid->GetLinks()->GetNcells(point); - //MESSAGE("cells pour " << i << " " << numCells); -- vtkIdType *cells = _grid->GetLinks()->GetCells(point); -+ vtkIdTypePtr cells = _grid->GetLinks()->GetCells(point); - for (int j = 0; j < numCells; j++) - { - int vtkCellId = cells[j]; -@@ -627,7 +627,7 @@ int SMDS_Down2D::computeVolumeIdsFromNodesFace(int* pts, int npts, int* ids) - void SMDS_Down2D::setTempNodes(int cellId, int vtkId) - { - vtkIdType npts = 0; -- vtkIdType *pts; // will refer to the point id's of the face -+ vtkIdTypePtr pts; // will refer to the point id's of the face - _grid->GetCellPoints(vtkId, npts, pts); - // MESSAGE(vtkId << " " << npts << " " << _nbNodes); - //ASSERT(npts == _nbNodes); -@@ -795,7 +795,7 @@ void SMDS_Down3D::getNodeIds(int cellId, std::set& nodeSet) - { - int vtkId = this->_vtkCellIds[cellId]; - vtkIdType npts = 0; -- vtkIdType *nodes; // will refer to the point id's of the volume -+ vtkIdTypePtr nodes; // will refer to the point id's of the volume - _grid->GetCellPoints(vtkId, npts, nodes); - for (int i = 0; i < npts; i++) - nodeSet.insert(nodes[i]); -@@ -1126,7 +1126,7 @@ void SMDS_DownTetra::getOrderedNodesOfFace(int cellId, std::vector& o - //MESSAGE("cellId = " << cellId); - - vtkIdType npts = 0; -- vtkIdType *nodes; // will refer to the point id's of the volume -+ vtkIdTypePtr nodes; // will refer to the point id's of the volume - _grid->GetCellPoints(this->_vtkCellIds[cellId], npts, nodes); - - set tofind; -@@ -1178,7 +1178,7 @@ void SMDS_DownTetra::computeFacesWithNodes(int cellId, ListElemByNodesType& face - // --- find point id's of the volume - - vtkIdType npts = 0; -- vtkIdType *nodes; // will refer to the point id's of the volume -+ vtkIdTypePtr nodes; // will refer to the point id's of the volume - _grid->GetCellPoints(cellId, npts, nodes); - - // --- create all the ordered list of node id's for each face -@@ -1234,7 +1234,7 @@ void SMDS_DownQuadTetra::getOrderedNodesOfFace(int cellId, std::vectorGetCellLinks(); -+#ifdef VTK_CELL_ARRAY_V2 -+ vtkCellLinks *links = static_cast(myGrid->GetCellLinks()); -+#else -+ vtkCellLinks *links = myGrid->GetCellLinks(); -+#endif - for (int i=0; iGetNcells(i); -diff --git src/3rdParty/salomesmesh/src/SMDS/SMDS_Mesh0DElement.cpp b/src/3rdParty/salomesmesh/src/SMDS/SMDS_Mesh0DElement.cpp -index 95438eab064..0df32e3b97c 100644 ---- src/3rdParty/salomesmesh/src/SMDS/SMDS_Mesh0DElement.cpp -+++ src/3rdParty/salomesmesh/src/SMDS/SMDS_Mesh0DElement.cpp -@@ -146,6 +146,17 @@ bool SMDS_Mesh0DElement::ChangeNodes(const SMDS_MeshNode* nodes[], const int nbN - if ( nbNodes == 1 ) - { - vtkUnstructuredGrid* grid = SMDS_Mesh::_meshList[myMeshId]->getGrid(); -+#ifdef VTK_CELL_ARRAY_V2 -+ vtkNew cellPoints; -+ grid->GetCellPoints(myVtkID, cellPoints.GetPointer()); -+ if (nbNodes != cellPoints->GetNumberOfIds()) -+ { -+ MESSAGE("ChangeNodes problem: not the same number of nodes " << cellPoints->GetNumberOfIds() << " -> " << nbNodes); -+ return false; -+ } -+ myNode = nodes[0]; -+ cellPoints->SetId(0, myNode->getVtkId()); -+#else - vtkIdType npts = 0; - vtkIdType* pts = 0; - grid->GetCellPoints(myVtkID, npts, pts); -@@ -156,6 +167,7 @@ bool SMDS_Mesh0DElement::ChangeNodes(const SMDS_MeshNode* nodes[], const int nbN - } - myNode = nodes[0]; - pts[0] = myNode->getVtkId(); -+#endif - - SMDS_Mesh::_meshList[myMeshId]->setMyModified(); - return true; -diff --git src/3rdParty/salomesmesh/src/SMDS/SMDS_MeshNode.cpp b/src/3rdParty/salomesmesh/src/SMDS/SMDS_MeshNode.cpp -index f647a5f1b8f..5b903c8fb55 100644 ---- src/3rdParty/salomesmesh/src/SMDS/SMDS_MeshNode.cpp -+++ src/3rdParty/salomesmesh/src/SMDS/SMDS_MeshNode.cpp -@@ -191,7 +191,7 @@ class SMDS_MeshNode_MyInvIterator: public SMDS_ElemIterator - SMDS_ElemIteratorPtr SMDS_MeshNode:: - GetInverseElementIterator(SMDSAbs_ElementType type) const - { -- vtkCellLinks::Link l = SMDS_Mesh::_meshList[myMeshId]->getGrid()->GetCellLinks()->GetLink(myVtkID); -+ vtkCellLinks::Link l = static_cast(SMDS_Mesh::_meshList[myMeshId]->getGrid()->GetCellLinks())->GetLink(myVtkID); - //MESSAGE("myID " << myID << " ncells " << l.ncells); - return SMDS_ElemIteratorPtr(new SMDS_MeshNode_MyInvIterator(SMDS_Mesh::_meshList[myMeshId], l.cells, l.ncells, type)); - } -@@ -251,7 +251,7 @@ elementsIterator(SMDSAbs_ElementType type) const - return SMDS_MeshElement::elementsIterator(SMDSAbs_Node); - else - { -- vtkCellLinks::Link l = SMDS_Mesh::_meshList[myMeshId]->getGrid()->GetCellLinks()->GetLink(myVtkID); -+ vtkCellLinks::Link l = static_cast(SMDS_Mesh::_meshList[myMeshId]->getGrid()->GetCellLinks())->GetLink(myVtkID); - return SMDS_ElemIteratorPtr(new SMDS_MeshNode_MyIterator(SMDS_Mesh::_meshList[myMeshId], l.cells, l.ncells, type)); - } - } -@@ -350,7 +350,7 @@ void SMDS_MeshNode::AddInverseElement(const SMDS_MeshElement* ME) - const SMDS_MeshCell *cell = dynamic_cast (ME); - assert(cell); - SMDS_UnstructuredGrid* grid = SMDS_Mesh::_meshList[myMeshId]->getGrid(); -- vtkCellLinks *Links = grid->GetCellLinks(); -+ vtkCellLinks *Links = static_cast(grid->GetCellLinks()); - Links->ResizeCellList(myVtkID, 1); - Links->AddCellReference(cell->getVtkId(), myVtkID); - } -@@ -366,7 +366,7 @@ void SMDS_MeshNode::ClearInverseElements() - - bool SMDS_MeshNode::emptyInverseElements() - { -- vtkCellLinks::Link l = SMDS_Mesh::_meshList[myMeshId]->getGrid()->GetCellLinks()->GetLink(myVtkID); -+ vtkCellLinks::Link l = static_cast(SMDS_Mesh::_meshList[myMeshId]->getGrid()->GetCellLinks())->GetLink(myVtkID); - return (l.ncells == 0); - } - -@@ -378,7 +378,7 @@ bool SMDS_MeshNode::emptyInverseElements() - - int SMDS_MeshNode::NbInverseElements(SMDSAbs_ElementType type) const - { -- vtkCellLinks::Link l = SMDS_Mesh::_meshList[myMeshId]->getGrid()->GetCellLinks()->GetLink(myVtkID); -+ vtkCellLinks::Link l = static_cast(SMDS_Mesh::_meshList[myMeshId]->getGrid()->GetCellLinks())->GetLink(myVtkID); - - if ( type == SMDSAbs_All ) - return l.ncells; -diff --git src/3rdParty/salomesmesh/src/SMDS/SMDS_UnstructuredGrid.cpp b/src/3rdParty/salomesmesh/src/SMDS/SMDS_UnstructuredGrid.cpp -index fbd903b1e74..ff2b81e9694 100644 ---- src/3rdParty/salomesmesh/src/SMDS/SMDS_UnstructuredGrid.cpp -+++ src/3rdParty/salomesmesh/src/SMDS/SMDS_UnstructuredGrid.cpp -@@ -139,8 +139,8 @@ int SMDS_UnstructuredGrid::InsertNextLinkedCell(int type, int npts, vtkIdType *p - for (; it != setOfNodes.end(); ++it) - { - //MESSAGE("reverse link for node " << *it << " cell " << cellid); -- this->Links->ResizeCellList(*it, 1); -- this->Links->AddCellReference(cellid, *it); -+ this->GetLinks()->ResizeCellList(*it, 1); -+ this->GetLinks()->AddCellReference(cellid, *it); - } - - return cellid; -@@ -332,9 +332,13 @@ void SMDS_UnstructuredGrid::copyBloc(vtkUnsignedCharArray *newTypes, - { - newTypes->SetValue(alreadyCopied, this->Types->GetValue(j)); - idCellsOldToNew[j] = alreadyCopied; // old vtkId --> new vtkId -+#ifdef VTK_CELL_ARRAY_V2 -+ vtkIdType oldLoc = this->GetCellLocationsArray()->GetValue(j); -+#else - vtkIdType oldLoc = this->Locations->GetValue(j); -+#endif - vtkIdType nbpts; -- vtkIdType *oldPtsCell = 0; -+ vtkIdTypePtr oldPtsCell = 0; - this->Connectivity->GetCell(oldLoc, nbpts, oldPtsCell); - assert(nbpts < NBMAXNODESINCELL); - //MESSAGE(j << " " << alreadyCopied << " " << (int)this->Types->GetValue(j) << " " << oldLoc << " " << nbpts ); -@@ -952,6 +956,21 @@ void SMDS_UnstructuredGrid::GetNodeIds(std::set& nodeSet, int downId, unsig - */ - void SMDS_UnstructuredGrid::ModifyCellNodes(int vtkVolId, std::map localClonedNodeIds) - { -+#ifdef VTK_CELL_ARRAY_V2 -+ vtkNew cellPoints; -+ this->GetCellPoints(vtkVolId, cellPoints.GetPointer()); -+ for (vtkIdType i = 0; i < cellPoints->GetNumberOfIds(); i++) -+ { -+ if (localClonedNodeIds.count(cellPoints->GetId(i))) -+ { -+ vtkIdType oldpt = cellPoints->GetId(i); -+ cellPoints->SetId(i, localClonedNodeIds[oldpt]); -+ //MESSAGE(oldpt << " --> " << pts[i]); -+ //this->RemoveReferenceToCell(oldpt, vtkVolId); -+ //this->AddReferenceToCell(pts[i], vtkVolId); -+ } -+ } -+#else - vtkIdType npts = 0; - vtkIdType *pts; // will refer to the point id's of the face - this->GetCellPoints(vtkVolId, npts, pts); -@@ -966,6 +985,7 @@ void SMDS_UnstructuredGrid::ModifyCellNodes(int vtkVolId, std::map loc - //this->AddReferenceToCell(pts[i], vtkVolId); - } - } -+#endif - } - - /*! reorder the nodes of a face -@@ -995,11 +1015,20 @@ void SMDS_UnstructuredGrid::BuildLinks() - this->Links->UnRegister(this); - } - -+#ifdef VTK_CELL_ARRAY_V2 -+ this->Links = SMDS_CellLinks::New(); -+ GetLinks()->Allocate(this->GetNumberOfPoints()); -+ GetLinks()->Register(this); -+//FIXME: vtk9 -+ GetLinks()->BuildLinks(this); -+ GetLinks()->Delete(); -+#else - this->Links = SMDS_CellLinks::New(); - this->Links->Allocate(this->GetNumberOfPoints()); - this->Links->Register(this); - this->Links->BuildLinks(this, this->Connectivity); - this->Links->Delete(); -+#endif - } - - /*! Create a volume (prism or hexahedron) by duplication of a face. -diff --git src/3rdParty/salomesmesh/src/SMDS/SMDS_VtkCellIterator.cpp b/src/3rdParty/salomesmesh/src/SMDS/SMDS_VtkCellIterator.cpp -index deb05985f00..63b6eabb704 100644 ---- src/3rdParty/salomesmesh/src/SMDS/SMDS_VtkCellIterator.cpp -+++ src/3rdParty/salomesmesh/src/SMDS/SMDS_VtkCellIterator.cpp -@@ -33,7 +33,8 @@ SMDS_VtkCellIterator::SMDS_VtkCellIterator(SMDS_Mesh* mesh, int vtkCellId, SMDSA - } - else - { -- vtkIdType npts, *pts; -+ vtkIdType npts; -+ vtkIdTypePtr pts; - grid->GetCellPoints( _cellId, npts, pts ); - _vtkIdList->SetNumberOfIds( _nbNodes = npts ); - for (int i = 0; i < _nbNodes; i++) -@@ -67,7 +68,7 @@ SMDS_VtkCellIteratorToUNV::SMDS_VtkCellIteratorToUNV(SMDS_Mesh* mesh, int vtkCel - //MESSAGE("SMDS_VtkCellInterlacedIterator (UNV)" << _type); - - _vtkIdList = vtkIdList::New(); -- vtkIdType* pts; -+ vtkIdTypePtr pts; - vtkIdType npts; - vtkUnstructuredGrid* grid = _mesh->getGrid(); - grid->GetCellPoints((vtkIdType)_cellId, npts, pts); -@@ -182,7 +183,7 @@ SMDS_VtkCellIteratorPolyH::SMDS_VtkCellIteratorPolyH(SMDS_Mesh* mesh, int vtkCel - { - //MESSAGE("SMDS_VtkCellIterator Polyhedra"); - vtkIdType nFaces = 0; -- vtkIdType* ptIds = 0; -+ vtkIdTypePtr ptIds = 0; - grid->GetFaceStream(_cellId, nFaces, ptIds); - int id = 0; - _nbNodesInFaces = 0; -diff --git src/3rdParty/salomesmesh/src/SMDS/SMDS_VtkEdge.cpp b/src/3rdParty/salomesmesh/src/SMDS/SMDS_VtkEdge.cpp -index 9786abf9aae..6d772a3cd4a 100644 ---- src/3rdParty/salomesmesh/src/SMDS/SMDS_VtkEdge.cpp -+++ src/3rdParty/salomesmesh/src/SMDS/SMDS_VtkEdge.cpp -@@ -67,6 +67,19 @@ bool SMDS_VtkEdge::ChangeNodes(const SMDS_MeshNode * node1, const SMDS_MeshNode - bool SMDS_VtkEdge::ChangeNodes(const SMDS_MeshNode* nodes[], const int nbNodes) - { - vtkUnstructuredGrid* grid = SMDS_Mesh::_meshList[myMeshId]->getGrid(); -+#ifdef VTK_CELL_ARRAY_V2 -+ vtkNew cellPoints; -+ grid->GetCellPoints(myVtkID, cellPoints.GetPointer()); -+ if (nbNodes != cellPoints->GetNumberOfIds()) -+ { -+ MESSAGE("ChangeNodes problem: not the same number of nodes " << cellPoints->GetNumberOfIds() << " -> " << nbNodes); -+ return false; -+ } -+ for (int i = 0; i < nbNodes; i++) -+ { -+ cellPoints->SetId(i, nodes[i]->getVtkId()); -+ } -+#else - vtkIdType npts = 0; - vtkIdType* pts = 0; - grid->GetCellPoints(myVtkID, npts, pts); -@@ -79,6 +92,7 @@ bool SMDS_VtkEdge::ChangeNodes(const SMDS_MeshNode* nodes[], const int nbNodes) - { - pts[i] = nodes[i]->getVtkId(); - } -+#endif - SMDS_Mesh::_meshList[myMeshId]->setMyModified(); - return true; - } -@@ -87,7 +101,7 @@ bool SMDS_VtkEdge::IsMediumNode(const SMDS_MeshNode* node) const - { - vtkUnstructuredGrid* grid = SMDS_Mesh::_meshList[myMeshId]->getGrid(); - vtkIdType npts = 0; -- vtkIdType* pts = 0; -+ vtkIdTypePtr pts = 0; - grid->GetCellPoints(myVtkID, npts, pts); - //MESSAGE("IsMediumNode " << npts << " " << (node->getVtkId() == pts[npts-1])); - return ((npts == 3) && (node->getVtkId() == pts[2])); -@@ -137,7 +151,8 @@ const SMDS_MeshNode* - SMDS_VtkEdge::GetNode(const int ind) const - { - vtkUnstructuredGrid* grid = SMDS_Mesh::_meshList[myMeshId]->getGrid(); -- vtkIdType npts, *pts; -+ vtkIdType npts; -+ vtkIdTypePtr pts; - grid->GetCellPoints( this->myVtkID, npts, pts ); - return SMDS_Mesh::_meshList[myMeshId]->FindNodeVtk( pts[ ind ]); - } -diff --git src/3rdParty/salomesmesh/src/SMDS/SMDS_VtkFace.cpp b/src/3rdParty/salomesmesh/src/SMDS/SMDS_VtkFace.cpp -index 1389e0d3585..cb981bfb18e 100644 ---- src/3rdParty/salomesmesh/src/SMDS/SMDS_VtkFace.cpp -+++ src/3rdParty/salomesmesh/src/SMDS/SMDS_VtkFace.cpp -@@ -101,6 +101,19 @@ void SMDS_VtkFace::initQuadPoly(const std::vector& nodeIds, SMDS_Mesh - bool SMDS_VtkFace::ChangeNodes(const SMDS_MeshNode* nodes[], const int nbNodes) - { - vtkUnstructuredGrid* grid = SMDS_Mesh::_meshList[myMeshId]->getGrid(); -+#ifdef VTK_CELL_ARRAY_V2 -+ vtkNew cellPoints; -+ grid->GetCellPoints(myVtkID, cellPoints.GetPointer()); -+ if (nbNodes != cellPoints->GetNumberOfIds()) -+ { -+ MESSAGE("ChangeNodes problem: not the same number of nodes " << cellPoints->GetNumberOfIds() << " -> " << nbNodes); -+ return false; -+ } -+ for (int i = 0; i < nbNodes; i++) -+ { -+ cellPoints->SetId(i, nodes[i]->getVtkId()); -+ } -+#else - vtkIdType npts = 0; - vtkIdType* pts = 0; - grid->GetCellPoints(myVtkID, npts, pts); -@@ -113,6 +126,7 @@ bool SMDS_VtkFace::ChangeNodes(const SMDS_MeshNode* nodes[], const int nbNodes) - { - pts[i] = nodes[i]->getVtkId(); - } -+#endif - SMDS_Mesh::_meshList[myMeshId]->setMyModified(); - return true; - } -@@ -173,7 +187,8 @@ const SMDS_MeshNode* - SMDS_VtkFace::GetNode(const int ind) const - { - vtkUnstructuredGrid* grid = SMDS_Mesh::_meshList[myMeshId]->getGrid(); -- vtkIdType npts, *pts; -+ vtkIdType npts; -+ vtkIdTypePtr pts; - grid->GetCellPoints( this->myVtkID, npts, pts ); - return SMDS_Mesh::_meshList[myMeshId]->FindNodeVtk( pts[ ind ]); - } -@@ -186,7 +201,8 @@ SMDS_VtkFace::GetNode(const int ind) const - int SMDS_VtkFace::GetNodeIndex( const SMDS_MeshNode* node ) const - { - vtkUnstructuredGrid* grid = SMDS_Mesh::_meshList[myMeshId]->getGrid(); -- vtkIdType npts, *pts; -+ vtkIdType npts; -+ vtkIdTypePtr pts; - grid->GetCellPoints( this->myVtkID, npts, pts ); - for ( vtkIdType i = 0; i < npts; ++i ) - if ( pts[i] == node->getVtkId() ) -@@ -251,7 +267,7 @@ bool SMDS_VtkFace::IsMediumNode(const SMDS_MeshNode* node) const - return false; - } - vtkIdType npts = 0; -- vtkIdType* pts = 0; -+ vtkIdTypePtr pts = 0; - grid->GetCellPoints(myVtkID, npts, pts); - vtkIdType nodeId = node->getVtkId(); - for (int rank = 0; rank < npts; rank++) -@@ -356,11 +372,18 @@ SMDS_NodeIteratorPtr SMDS_VtkFace::interlacedNodesIterator() const - void SMDS_VtkFace::ChangeApex(SMDS_MeshNode* node) - { - vtkUnstructuredGrid* grid = SMDS_Mesh::_meshList[myMeshId]->getGrid(); -+#ifdef VTK_CELL_ARRAY_V2 -+ vtkNew cellPoints; -+ grid->GetCellPoints(myVtkID, cellPoints.GetPointer()); -+ grid->RemoveReferenceToCell(cellPoints->GetId(0), myVtkID); -+ cellPoints->SetId(0, node->getVtkId()); -+#else - vtkIdType npts = 0; - vtkIdType* pts = 0; - grid->GetCellPoints(myVtkID, npts, pts); - grid->RemoveReferenceToCell(pts[0], myVtkID); - pts[0] = node->getVtkId(); -+#endif - node->AddInverseElement(this), - SMDS_Mesh::_meshList[myMeshId]->setMyModified(); - } -diff --git src/3rdParty/salomesmesh/src/SMDS/SMDS_VtkVolume.cpp b/src/3rdParty/salomesmesh/src/SMDS/SMDS_VtkVolume.cpp -index 015edf75fd2..19ebd0746c8 100644 ---- src/3rdParty/salomesmesh/src/SMDS/SMDS_VtkVolume.cpp -+++ src/3rdParty/salomesmesh/src/SMDS/SMDS_VtkVolume.cpp -@@ -133,6 +133,19 @@ void SMDS_VtkVolume::initPoly(const std::vector& nodeIds, - bool SMDS_VtkVolume::ChangeNodes(const SMDS_MeshNode* nodes[], const int nbNodes) - { - vtkUnstructuredGrid* grid = SMDS_Mesh::_meshList[myMeshId]->getGrid(); -+#ifdef VTK_CELL_ARRAY_V2 -+ vtkNew cellPoints; -+ grid->GetCellPoints(myVtkID, cellPoints.GetPointer()); -+ if (nbNodes != cellPoints->GetNumberOfIds()) -+ { -+ MESSAGE("ChangeNodes problem: not the same number of nodes " << cellPoints->GetNumberOfIds() << " -> " << nbNodes); -+ return false; -+ } -+ for (int i = 0; i < nbNodes; i++) -+ { -+ cellPoints->SetId(i, nodes[i]->getVtkId()); -+ } -+#else - vtkIdType npts = 0; - vtkIdType* pts = 0; - grid->GetCellPoints(myVtkID, npts, pts); -@@ -145,6 +158,7 @@ bool SMDS_VtkVolume::ChangeNodes(const SMDS_MeshNode* nodes[], const int nbNodes - { - pts[i] = nodes[i]->getVtkId(); - } -+#endif - SMDS_Mesh::_meshList[myMeshId]->setMyModified(); - return true; - } -@@ -207,7 +221,7 @@ int SMDS_VtkVolume::NbFaces() const - case VTK_POLYHEDRON: - { - vtkIdType nFaces = 0; -- vtkIdType* ptIds = 0; -+ vtkIdTypePtr ptIds = 0; - grid->GetFaceStream(this->myVtkID, nFaces, ptIds); - nbFaces = nFaces; - break; -@@ -236,7 +250,7 @@ int SMDS_VtkVolume::NbNodes() const - else - { - vtkIdType nFaces = 0; -- vtkIdType* ptIds = 0; -+ vtkIdTypePtr ptIds = 0; - grid->GetFaceStream(this->myVtkID, nFaces, ptIds); - int id = 0; - for (int i = 0; i < nFaces; i++) -@@ -276,7 +290,7 @@ int SMDS_VtkVolume::NbEdges() const - case VTK_POLYHEDRON: - { - vtkIdType nFaces = 0; -- vtkIdType* ptIds = 0; -+ vtkIdTypePtr ptIds = 0; - grid->GetFaceStream(this->myVtkID, nFaces, ptIds); - nbEdges = 0; - int id = 0; -@@ -312,7 +326,7 @@ int SMDS_VtkVolume::NbFaceNodes(const int face_ind) const - if (aVtkType == VTK_POLYHEDRON) - { - vtkIdType nFaces = 0; -- vtkIdType* ptIds = 0; -+ vtkIdTypePtr ptIds = 0; - grid->GetFaceStream(this->myVtkID, nFaces, ptIds); - int id = 0; - for (int i = 0; i < nFaces; i++) -@@ -342,7 +356,7 @@ const SMDS_MeshNode* SMDS_VtkVolume::GetFaceNode(const int face_ind, const int n - if (aVtkType == VTK_POLYHEDRON) - { - vtkIdType nFaces = 0; -- vtkIdType* ptIds = 0; -+ vtkIdTypePtr ptIds = 0; - grid->GetFaceStream(this->myVtkID, nFaces, ptIds); - int id = 0; - for (int i = 0; i < nFaces; i++) -@@ -372,7 +386,7 @@ std::vector SMDS_VtkVolume::GetQuantities() const - if (aVtkType == VTK_POLYHEDRON) - { - vtkIdType nFaces = 0; -- vtkIdType* ptIds = 0; -+ vtkIdTypePtr ptIds = 0; - grid->GetFaceStream(this->myVtkID, nFaces, ptIds); - int id = 0; - for (int i = 0; i < nFaces; i++) -@@ -430,7 +444,7 @@ const SMDS_MeshNode* SMDS_VtkVolume::GetNode(const int ind) const - if ( aVtkType == VTK_POLYHEDRON) - { - vtkIdType nFaces = 0; -- vtkIdType* ptIds = 0; -+ vtkIdTypePtr ptIds = 0; - grid->GetFaceStream(this->myVtkID, nFaces, ptIds); - int id = 0, nbPoints = 0; - for (int i = 0; i < nFaces; i++) -@@ -443,7 +457,8 @@ const SMDS_MeshNode* SMDS_VtkVolume::GetNode(const int ind) const - } - return 0; - } -- vtkIdType npts, *pts; -+ vtkIdType npts; -+ vtkIdTypePtr pts; - grid->GetCellPoints( this->myVtkID, npts, pts ); - const std::vector& interlace = SMDS_MeshCell::fromVtkOrder( VTKCellType( aVtkType )); - return SMDS_Mesh::_meshList[myMeshId]->FindNodeVtk( pts[ interlace.empty() ? ind : interlace[ind]] ); -@@ -460,7 +475,7 @@ int SMDS_VtkVolume::GetNodeIndex( const SMDS_MeshNode* node ) const - if ( aVtkType == VTK_POLYHEDRON) - { - vtkIdType nFaces = 0; -- vtkIdType* ptIds = 0; -+ vtkIdTypePtr ptIds = 0; - grid->GetFaceStream(this->myVtkID, nFaces, ptIds); - int id = 0; - for (int iF = 0; iF < nFaces; iF++) -@@ -473,7 +488,8 @@ int SMDS_VtkVolume::GetNodeIndex( const SMDS_MeshNode* node ) const - } - return -1; - } -- vtkIdType npts, *pts; -+ vtkIdType npts; -+ vtkIdTypePtr pts; - grid->GetCellPoints( this->myVtkID, npts, pts ); - for ( vtkIdType i = 0; i < npts; ++i ) - if ( pts[i] == node->getVtkId() ) -@@ -534,7 +550,7 @@ bool SMDS_VtkVolume::IsMediumNode(const SMDS_MeshNode* node) const - return false; - } - vtkIdType npts = 0; -- vtkIdType* pts = 0; -+ vtkIdTypePtr pts = 0; - grid->GetCellPoints(myVtkID, npts, pts); - vtkIdType nodeId = node->getVtkId(); - for (int rank = 0; rank < npts; rank++) -diff --git src/3rdParty/salomesmesh/src/SMESH/SMESH_MeshEditor.cpp b/src/3rdParty/salomesmesh/src/SMESH/SMESH_MeshEditor.cpp -index fcd044b00f2..f54c24f8618 100644 ---- src/3rdParty/salomesmesh/src/SMESH/SMESH_MeshEditor.cpp -+++ src/3rdParty/salomesmesh/src/SMESH/SMESH_MeshEditor.cpp -@@ -11348,7 +11348,7 @@ bool SMESH_MeshEditor::DoubleNodesOnGroupBoundaries( const std::vectorGetCellLinks()->GetLink(oldId); -+ vtkCellLinks::Link l = static_cast(grid->GetCellLinks())->GetLink(oldId); - for (int i=0; iGetID()); - double values[3]; - vtkIdType npts = 0; -- vtkIdType* pts = 0; -+ vtkIdTypePtr pts = 0; - grid->GetCellPoints(vtkVolIds[ivol], npts, pts); - SMDS_VtkVolume::gravityCenter(grid, pts, npts, values); - if (id ==0) -@@ -11708,7 +11708,7 @@ bool SMESH_MeshEditor::DoubleNodesOnGroupBoundaries( const std::vectorfirst; - //MESSAGE(" node " << oldId); -- vtkCellLinks::Link l = grid->GetCellLinks()->GetLink(oldId); -+ vtkCellLinks::Link l = static_cast(grid->GetCellLinks())->GetLink(oldId); - for (int i = 0; i < l.ncells; i++) - { - int vtkId = l.cells[i]; -@@ -12165,7 +12165,7 @@ void SMESH_MeshEditor::CreateHoleSkin(double radius, - MESSAGE("volume to check, vtkId " << vtkId << " smdsId " << meshDS->fromVtkToSmds(vtkId)); - bool volInside = false; - vtkIdType npts = 0; -- vtkIdType* pts = 0; -+ vtkIdTypePtr pts = 0; - grid->GetCellPoints(vtkId, npts, pts); - for (int i=0; i -Date: Mon Oct 11 00:30:22 2021 +0200 - - SMESH: port to OCCT 7.6 - -diff --git src/3rdParty/salomesmesh/src/NETGENPlugin/NETGENPlugin_Mesher.cpp src/3rdParty/salomesmesh/src/NETGENPlugin/NETGENPlugin_Mesher.cpp -index cd6f0b2b07..ea83984b97 100644 ---- src/3rdParty/salomesmesh/src/NETGENPlugin/NETGENPlugin_Mesher.cpp -+++ src/3rdParty/salomesmesh/src/NETGENPlugin/NETGENPlugin_Mesher.cpp -@@ -56,6 +56,7 @@ - #include - #include - #include -+#include - #include - #include - #include -@@ -700,7 +701,13 @@ double NETGENPlugin_Mesher::GetDefaultMinSize(const TopoDS_Shape& geom, - BRep_Tool::Triangulation ( TopoDS::Face( fExp.Current() ), loc); - if ( triangulation.IsNull() ) continue; - const double fTol = BRep_Tool::Tolerance( TopoDS::Face( fExp.Current() )); -+#if OCC_VERSION_HEX < 0x070600 - const TColgp_Array1OfPnt& points = triangulation->Nodes(); -+#else -+ auto points = [&triangulation](Standard_Integer index) { -+ return triangulation->Node(index); -+ }; -+#endif - const Poly_Array1OfTriangle& trias = triangulation->Triangles(); - for ( int iT = trias.Lower(); iT <= trias.Upper(); ++iT ) - { -diff --git src/3rdParty/salomesmesh/src/SMESH/SMESH_MeshAlgos.cpp src/3rdParty/salomesmesh/src/SMESH/SMESH_MeshAlgos.cpp -index 5a07308310..fbb1b25008 100644 ---- src/3rdParty/salomesmesh/src/SMESH/SMESH_MeshAlgos.cpp -+++ src/3rdParty/salomesmesh/src/SMESH/SMESH_MeshAlgos.cpp -@@ -38,10 +38,13 @@ - #include - #include - #include --#include --#include -+#include -+#include - #include - #include -+#include -+#include -+#include - - #include - #include -diff --git src/3rdParty/salomesmesh/src/StdMeshers/StdMeshers_Adaptive1D.cpp src/3rdParty/salomesmesh/src/StdMeshers/StdMeshers_Adaptive1D.cpp -index 88970f36b5..7c51601c7b 100644 ---- src/3rdParty/salomesmesh/src/StdMeshers/StdMeshers_Adaptive1D.cpp -+++ src/3rdParty/salomesmesh/src/StdMeshers/StdMeshers_Adaptive1D.cpp -@@ -46,6 +46,7 @@ - #include - #include - #include -+#include - #include - #include - #include -@@ -318,13 +319,26 @@ namespace // internal utils - { - myFaceTol = SMESH_MesherHelper::MaxTolerance( face ); - myTree = triaTree; -+#if OCC_VERSION_HEX < 0x070600 - myNodes = & tr->Nodes(); -+#else -+ TColgp_Array1OfPnt* trNodes = new TColgp_Array1OfPnt( 1, tr->NbNodes() ); -+ for (Standard_Integer i = myNodes->Lower(); i <= myNodes->Upper(); i++) -+ { -+ trNodes->SetValue(i, tr->Node(i)); -+ } -+ myNodes = trNodes; -+ myOwnNodes = true; -+#endif - myPolyTrias = & tr->Triangles(); - myTriasDeflection = tr->Deflection(); - if ( !loc.IsIdentity() ) // transform nodes if necessary - { - TColgp_Array1OfPnt* trsfNodes = new TColgp_Array1OfPnt( myNodes->Lower(), myNodes->Upper() ); - trsfNodes->Assign( *myNodes ); -+#if OCC_VERSION_HEX >= 0x070600 -+ delete myNodes; // it's already a copy -+#endif - myNodes = trsfNodes; - myOwnNodes = true; - const gp_Trsf& trsf = loc; -diff --git src/3rdParty/salomesmesh/src/StdMeshers/StdMeshers_Quadrangle_2D.cpp src/3rdParty/salomesmesh/src/StdMeshers/StdMeshers_Quadrangle_2D.cpp -index f7ac411d9a..5d5c15c366 100644 ---- src/3rdParty/salomesmesh/src/StdMeshers/StdMeshers_Quadrangle_2D.cpp -+++ src/3rdParty/salomesmesh/src/StdMeshers/StdMeshers_Quadrangle_2D.cpp -@@ -50,7 +50,7 @@ - #include - #include - #include --#include -+#include - #include - #include - #include -diff --git src/3rdParty/salomesmesh/src/StdMeshers/StdMeshers_ViscousLayers.cpp src/3rdParty/salomesmesh/src/StdMeshers/StdMeshers_ViscousLayers.cpp -index 8ee0e26832..e9f4618305 100644 ---- src/3rdParty/salomesmesh/src/StdMeshers/StdMeshers_ViscousLayers.cpp -+++ src/3rdParty/salomesmesh/src/StdMeshers/StdMeshers_ViscousLayers.cpp -@@ -44,7 +44,10 @@ - #include "SMESH_subMeshEventListener.hxx" - #include "StdMeshers_FaceSide.hxx" - -+#include -+#if OCC_VERSION_HEX < 0x070600 - #include -+#endif - #include - #include - #include -@@ -1340,8 +1343,13 @@ namespace VISCOUS_3D - //case GeomAbs_SurfaceOfExtrusion: - case GeomAbs_OffsetSurface: - { -+#if OCC_VERSION_HEX < 0x070600 - Handle(Adaptor3d_HSurface) base = surface.BasisSurface(); - return getRovolutionAxis( base->Surface(), axis ); -+#else -+ Handle(Adaptor3d_Surface) base = surface.BasisSurface(); -+ return getRovolutionAxis( *base, axis ); -+#endif - } - default: return false; - } diff --git a/cad/freecad/files/patch-74639da997d5f2e53f001d9f256be86ceee901f5 b/cad/freecad/files/patch-74639da997d5f2e53f001d9f256be86ceee901f5 deleted file mode 100644 index dcd1a2d81116..000000000000 --- a/cad/freecad/files/patch-74639da997d5f2e53f001d9f256be86ceee901f5 +++ /dev/null @@ -1,477 +0,0 @@ -commit 74639da997d5f2e53f001d9f256be86ceee901f5 -Author: wmayer -Date: Sat Oct 9 13:49:02 2021 +0200 - - OCCT: port FreeCAD sources to version 7.6 - SMESH is not yet ported - Although FreeCAD code compiles with OCCT 7.6 it doesn't work at the moment - -diff --git src/Mod/Drawing/App/DrawingExport.cpp src/Mod/Drawing/App/DrawingExport.cpp -index b87891ed50..7572be417c 100644 ---- src/Mod/Drawing/App/DrawingExport.cpp -+++ src/Mod/Drawing/App/DrawingExport.cpp -@@ -64,10 +64,7 @@ - #include - - #include --#include - #include --#include --#include - #include - #include - #include -@@ -75,11 +72,19 @@ - #include - #include - #include -+#include -+#if OCC_VERSION_HEX < 0x070600 -+#include -+#endif - - #include "DrawingExport.h" - #include - #include - -+#if OCC_VERSION_HEX >= 0x070600 -+using BRepAdaptor_HCurve = BRepAdaptor_Curve; -+#endif -+ - using namespace Drawing; - using namespace std; - -diff --git src/Mod/Drawing/App/ProjectionAlgos.cpp src/Mod/Drawing/App/ProjectionAlgos.cpp -index 9afae7e9c0..da03d49057 100644 ---- src/Mod/Drawing/App/ProjectionAlgos.cpp -+++ src/Mod/Drawing/App/ProjectionAlgos.cpp -@@ -61,10 +61,7 @@ - #include - #include - #include --#include - #include --#include --#include - #include - #include - #include -diff --git src/Mod/Import/App/ImpExpDxf.cpp src/Mod/Import/App/ImpExpDxf.cpp -index 09827bd928..dcd88ef138 100644 ---- src/Mod/Import/App/ImpExpDxf.cpp -+++ src/Mod/Import/App/ImpExpDxf.cpp -@@ -29,7 +29,6 @@ - - #include - #include --#include - #include - #include - #include -@@ -47,6 +46,7 @@ - #include - #include - #include -+#include - #include - #include - #include -@@ -55,6 +55,9 @@ - #include - #include - #include -+#if OCC_VERSION_HEX < 0x070600 -+#include -+#endif - - #include - #include -@@ -68,6 +71,10 @@ - - using namespace Import; - -+#if OCC_VERSION_HEX >= 0x070600 -+using BRepAdaptor_HCurve = BRepAdaptor_Curve; -+#endif -+ - - //****************************************************************************** - // reading -diff --git src/Mod/Part/App/GeomPlate/CurveConstraintPyImp.cpp src/Mod/Part/App/GeomPlate/CurveConstraintPyImp.cpp -index 3271f3651a..b63227d537 100644 ---- src/Mod/Part/App/GeomPlate/CurveConstraintPyImp.cpp -+++ src/Mod/Part/App/GeomPlate/CurveConstraintPyImp.cpp -@@ -24,10 +24,13 @@ - #include "PreCompiled.h" - #ifndef _PreComp_ - # include --# include - # include --# include - # include -+# include -+# if OCC_VERSION_HEX < 0x070600 -+# include -+# include -+# endif - #endif - - #include "GeomPlate/CurveConstraintPy.h" -@@ -76,6 +79,16 @@ int CurveConstraintPy::PyInit(PyObject* args, PyObject* kwds) - return -1; - } - -+#if OCC_VERSION_HEX >= 0x070600 -+ Handle(Adaptor3d_Curve) hCurve; -+ if (curve->getTypeId().isDerivedFrom(GeomTrimmedCurve::getClassTypeId())) { -+ GeomTrimmedCurve* trim = static_cast(curve); -+ hCurve = new GeomAdaptor_Curve(handle, trim->getFirstParameter(), trim->getLastParameter()); -+ } -+ else { -+ hCurve = new GeomAdaptor_Curve(handle); -+ } -+#else - Handle(Adaptor3d_HCurve) hCurve; - if (curve->getTypeId().isDerivedFrom(GeomTrimmedCurve::getClassTypeId())) { - GeomTrimmedCurve* trim = static_cast(curve); -@@ -86,6 +99,7 @@ int CurveConstraintPy::PyInit(PyObject* args, PyObject* kwds) - GeomAdaptor_Curve adapt(handle); - hCurve = new GeomAdaptor_HCurve(adapt); - } -+#endif - - ptr.reset(new GeomPlate_CurveConstraint(hCurve, order, nbPts, tolDist, tolAng, tolCurv)); - } -@@ -212,11 +226,15 @@ PyObject* CurveConstraintPy::curve3d(PyObject *args) - return nullptr; - - try { -- Handle(Adaptor3d_HCurve) hAdapt = getGeomPlate_CurveConstraintPtr()->Curve3d(); -+ auto hAdapt = getGeomPlate_CurveConstraintPtr()->Curve3d(); - if (hAdapt.IsNull()) - Py_Return; - -+#if OCC_VERSION_HEX >= 0x070600 -+ const Adaptor3d_Curve& a3d = *hAdapt; -+#else - const Adaptor3d_Curve& a3d = hAdapt->Curve(); -+#endif - std::unique_ptr ptr(Part::makeFromCurveAdaptor(a3d)); - return ptr->getPyObject(); - } -@@ -282,6 +300,16 @@ PyObject* CurveConstraintPy::setProjectedCurve(PyObject *args) - return nullptr; - } - -+#if OCC_VERSION_HEX >= 0x070600 -+ Handle(Adaptor2d_Curve2d) hCurve; -+ if (handle->IsKind(STANDARD_TYPE(Geom2d_TrimmedCurve))) { -+ Handle(Geom2d_TrimmedCurve) aTC (Handle(Geom2d_TrimmedCurve)::DownCast (handle)); -+ hCurve = new Geom2dAdaptor_Curve(handle, aTC->FirstParameter(), aTC->LastParameter()); -+ } -+ else { -+ hCurve = new Geom2dAdaptor_Curve(handle); -+ } -+#else - Handle(Adaptor2d_HCurve2d) hCurve; - if (handle->IsKind(STANDARD_TYPE(Geom2d_TrimmedCurve))) { - Handle(Geom2d_TrimmedCurve) aTC (Handle(Geom2d_TrimmedCurve)::DownCast (handle)); -@@ -292,6 +320,7 @@ PyObject* CurveConstraintPy::setProjectedCurve(PyObject *args) - Geom2dAdaptor_Curve adapt(handle); - hCurve = new Geom2dAdaptor_HCurve(adapt); - } -+#endif - - getGeomPlate_CurveConstraintPtr()->SetProjectedCurve(hCurve, tolU, tolV); - Py_Return; -@@ -308,11 +337,15 @@ PyObject* CurveConstraintPy::projectedCurve(PyObject *args) - return nullptr; - - try { -- Handle(Adaptor2d_HCurve2d) hAdapt = getGeomPlate_CurveConstraintPtr()->ProjectedCurve(); -+ auto hAdapt = getGeomPlate_CurveConstraintPtr()->ProjectedCurve(); - if (hAdapt.IsNull()) - Py_Return; - -+#if OCC_VERSION_HEX >= 0x070600 -+ const Adaptor2d_Curve2d& a2d = *hAdapt; -+#else - const Adaptor2d_Curve2d& a2d = hAdapt->Curve2d(); -+#endif - std::unique_ptr ptr(Part::makeFromCurveAdaptor2d(a2d)); - return ptr->getPyObject(); - } -diff --git src/Mod/Part/App/Geometry.cpp src/Mod/Part/App/Geometry.cpp -index e6d6396ca9..1d1d67d4f0 100644 ---- src/Mod/Part/App/Geometry.cpp -+++ src/Mod/Part/App/Geometry.cpp -@@ -51,7 +51,6 @@ - # include - # include - # include --# include - # include - # include - # include -@@ -101,6 +100,9 @@ - # include - # include - # include -+# if OCC_VERSION_HEX < 0x070600 -+# include -+# endif - - # include - # include -@@ -144,6 +146,9 @@ - - #include "Geometry.h" - -+#if OCC_VERSION_HEX >= 0x070600 -+using GeomAdaptor_HCurve = GeomAdaptor_Curve; -+#endif - - using namespace Part; - -diff --git src/Mod/Part/App/PartFeatures.cpp src/Mod/Part/App/PartFeatures.cpp -index 2dc503bdf2..4d9e1fc0f9 100644 ---- src/Mod/Part/App/PartFeatures.cpp -+++ src/Mod/Part/App/PartFeatures.cpp -@@ -25,9 +25,7 @@ - #ifndef _PreComp_ - # include - # include --# include - # include --# include - # include - # include - # include -@@ -43,7 +41,7 @@ - # include - # include - # include --# include -+# include - #endif - - -@@ -170,22 +168,18 @@ App::DocumentObjectExecReturn *RuledSurface::execute(void) - - if (Orientation.getValue() == 0) { - // Automatic -- Handle(Adaptor3d_HCurve) a1; -- Handle(Adaptor3d_HCurve) a2; -+ std::unique_ptr a1; -+ std::unique_ptr a2; - if (!isWire) { -- BRepAdaptor_Curve adapt1(TopoDS::Edge(S1)); -- BRepAdaptor_Curve adapt2(TopoDS::Edge(S2)); -- a1 = new BRepAdaptor_HCurve(adapt1); -- a2 = new BRepAdaptor_HCurve(adapt2); -+ a1 = std::make_unique(TopoDS::Edge(S1)); -+ a2 = std::make_unique(TopoDS::Edge(S2)); - } - else { -- BRepAdaptor_CompCurve adapt1(TopoDS::Wire(S1)); -- BRepAdaptor_CompCurve adapt2(TopoDS::Wire(S2)); -- a1 = new BRepAdaptor_HCompCurve(adapt1); -- a2 = new BRepAdaptor_HCompCurve(adapt2); -+ a1 = std::make_unique(TopoDS::Wire(S1)); -+ a2 = std::make_unique(TopoDS::Wire(S2)); - } - -- if (!a1.IsNull() && !a2.IsNull()) { -+ if (a1 && a2) { - // get end points of 1st curve - Standard_Real first, last; - first = a1->FirstParameter(); -diff --git src/Mod/Part/App/TopoShapeFacePyImp.cpp src/Mod/Part/App/TopoShapeFacePyImp.cpp -index ea6cd98bdf..63e8bead74 100644 ---- src/Mod/Part/App/TopoShapeFacePyImp.cpp -+++ src/Mod/Part/App/TopoShapeFacePyImp.cpp -@@ -493,6 +493,15 @@ PyObject* TopoShapeFacePy::getUVNodes(PyObject *args) - return Py::new_reference_to(list); - } - -+#if OCC_VERSION_HEX >= 0x070600 -+ for (int i=1; i<=mesh->NbNodes(); i++) { -+ gp_Pnt2d pt2d = mesh->UVNode(i); -+ Py::Tuple uv(2); -+ uv.setItem(0, Py::Float(pt2d.X())); -+ uv.setItem(1, Py::Float(pt2d.Y())); -+ list.append(uv); -+ } -+#else - const TColgp_Array1OfPnt2d& aNodesUV = mesh->UVNodes(); - for (int i=aNodesUV.Lower(); i<=aNodesUV.Upper(); i++) { - gp_Pnt2d pt2d = aNodesUV(i); -@@ -501,6 +510,7 @@ PyObject* TopoShapeFacePy::getUVNodes(PyObject *args) - uv.setItem(1, Py::Float(pt2d.Y())); - list.append(uv); - } -+#endif - - return Py::new_reference_to(list); - } -diff --git src/Mod/Part/App/TopoShapeWirePyImp.cpp src/Mod/Part/App/TopoShapeWirePyImp.cpp -index 95c1aff681..a1f32d6d03 100644 ---- src/Mod/Part/App/TopoShapeWirePyImp.cpp -+++ src/Mod/Part/App/TopoShapeWirePyImp.cpp -@@ -344,9 +344,9 @@ PyObject* TopoShapeWirePy::approximate(PyObject *args, PyObject *kwds) - return 0; - try { - BRepAdaptor_CompCurve adapt(TopoDS::Wire(getTopoShapePtr()->getShape())); -- Handle(Adaptor3d_HCurve) hcurve = adapt.Trim(adapt.FirstParameter(), -- adapt.LastParameter(), -- tol2d); -+ auto hcurve = adapt.Trim(adapt.FirstParameter(), -+ adapt.LastParameter(), -+ tol2d); - Approx_Curve3d approx(hcurve, tol3d, GeomAbs_C0, maxseg, maxdeg); - if (approx.IsDone()) { - return new BSplineCurvePy(new GeomBSplineCurve(approx.Curve())); -diff --git src/Mod/Part/Gui/TaskCheckGeometry.cpp src/Mod/Part/Gui/TaskCheckGeometry.cpp -index 5de7c16920..aaef13d9d0 100644 ---- src/Mod/Part/Gui/TaskCheckGeometry.cpp -+++ src/Mod/Part/Gui/TaskCheckGeometry.cpp -@@ -711,8 +711,10 @@ int TaskCheckGeometryResults::goBOPSingleCheck(const TopoDS_Shape& shapeIn, Resu - #if OCC_VERSION_HEX >= 0x060900 - #if OCC_VERSION_HEX < 0x070500 - BOPCheck.SetProgressIndicator(theProgress); --#else -+#elif OCC_VERSION_HEX < 0x070600 - BOPCheck.SetProgressIndicator(theScope); -+#else -+ Q_UNUSED(theScope) - #endif // 0x070500 - #else - Q_UNUSED(theProgress); -@@ -740,7 +742,7 @@ int TaskCheckGeometryResults::goBOPSingleCheck(const TopoDS_Shape& shapeIn, Resu - Base::TimeInfo start_time; - #endif - --BOPCheck.Perform(); -+ BOPCheck.Perform(); - - #ifdef FC_DEBUG - float bopAlgoTime = Base::TimeInfo::diffTimeF(start_time,Base::TimeInfo()); -diff --git src/Mod/Part/Gui/ViewProviderExt.cpp src/Mod/Part/Gui/ViewProviderExt.cpp -index 77cefbe3e0..8a52f1701b 100644 ---- src/Mod/Part/Gui/ViewProviderExt.cpp -+++ src/Mod/Part/Gui/ViewProviderExt.cpp -@@ -1150,16 +1150,25 @@ - - - // cycling through the poly mesh -+#if OCC_VERSION_HEX < 0x070600 - const Poly_Array1OfTriangle& Triangles = mesh->Triangles(); - const TColgp_Array1OfPnt& Nodes = mesh->Nodes(); - TColgp_Array1OfDir Normals (Nodes.Lower(), Nodes.Upper()); -+#else -+ int numNodes = mesh->NbNodes(); -+ TColgp_Array1OfDir Normals (1, numNodes); -+#endif - if (NormalsFromUV) - getNormals(actFace, mesh, Normals); - - for (int g=1;g<=nbTriInFace;g++) { - // Get the triangle - Standard_Integer N1,N2,N3; -+#if OCC_VERSION_HEX < 0x070600 - Triangles(g).Get(N1,N2,N3); -+#else -+ mesh->Triangle(g).Get(N1,N2,N3); -+#endif - - // change orientation of the triangle if the face is reversed - if ( orient != TopAbs_FORWARD ) { -@@ -1169,7 +1178,11 @@ - } - - // get the 3 points of this triangle -+#if OCC_VERSION_HEX < 0x070600 - gp_Pnt V1(Nodes(N1)), V2(Nodes(N2)), V3(Nodes(N3)); -+#else -+ gp_Pnt V1(mesh->Node(N1)), V2(mesh->Node(N2)), V3(mesh->Node(N3)); -+#endif - - // get the 3 normals of this triangle - gp_Vec NV1, NV2, NV3; -@@ -1246,7 +1259,11 @@ - // rare cases where some points are only referenced by the polygon - // but not by any triangle. Thus, we must apply the coordinates to - // make sure that everything is properly set. -+#if OCC_VERSION_HEX < 0x070600 - gp_Pnt p(Nodes(nodeIndex)); -+#else -+ gp_Pnt p(mesh->Node(nodeIndex)); -+#endif - if (!identity) - p.Transform(myTransf); - verts[index].setValue((float)(p.X()),(float)(p.Y()),(float)(p.Z())); -diff --git src/Mod/Path/App/AppPathPy.cpp src/Mod/Path/App/AppPathPy.cpp -index 6e0c72d2f5..ce912b4474 100644 ---- src/Mod/Path/App/AppPathPy.cpp -+++ src/Mod/Path/App/AppPathPy.cpp -@@ -49,10 +49,7 @@ - #include - #include - #include --#include --#include --#include --#include -+#include - - #include "CommandPy.h" - #include "PathPy.h" -diff --git src/Mod/TechDraw/App/Geometry.cpp src/Mod/TechDraw/App/Geometry.cpp -index b6c3637137..59a92d7e51 100644 ---- src/Mod/TechDraw/App/Geometry.cpp -+++ src/Mod/TechDraw/App/Geometry.cpp -@@ -28,13 +28,13 @@ - #include - #include - #include --#include - #include - #include - #include - #include - #include - #include -+#include - #include - #include - #include -@@ -58,14 +58,16 @@ - #include - #include - #include -+#include - #include - #include - #include - #include - #include - #include --#include -- -+#if OCC_VERSION_HEX < 0x070600 -+#include -+#endif - #include - #endif // #ifndef _PreComp_ - -@@ -86,6 +88,10 @@ - using namespace TechDraw; - using namespace std; - -+#if OCC_VERSION_HEX >= 0x070600 -+using BRepAdaptor_HCurve = BRepAdaptor_Curve; -+#endif -+ - #define GEOMETRYEDGE 0 - #define COSMETICEDGE 1 - #define CENTERLINE 2 diff --git a/cad/freecad/files/patch-cMake_FindPySide2Tools.cmake b/cad/freecad/files/patch-cMake_FindPySide2Tools.cmake deleted file mode 100644 index 63ab4c74b770..000000000000 --- a/cad/freecad/files/patch-cMake_FindPySide2Tools.cmake +++ /dev/null @@ -1,20 +0,0 @@ ---- cMake/FindPySide2Tools.cmake.orig 2021-03-12 22:05:53 UTC -+++ cMake/FindPySide2Tools.cmake -@@ -58,7 +58,7 @@ - # we follow the tool command with in-place sed. - ADD_CUSTOM_COMMAND(OUTPUT ${outfile} - COMMAND "${PYSIDE2UICBINARY}" ${UICOPTIONS} "${infile}" -o "${outfile}" -- COMMAND sed -i "/^# /d" "${outfile}" -+ COMMAND sed -i \"\" "/^# /d" "${outfile}" - MAIN_DEPENDENCY "${infile}" - ) - endif() -@@ -85,7 +85,7 @@ - # we follow the tool command with in-place sed. - ADD_CUSTOM_COMMAND(OUTPUT "${outfile}" - COMMAND "${PYSIDE2RCCBINARY}" ${RCCOPTIONS} "${infile}" ${PY_ATTRIBUTE} -o "${outfile}" -- COMMAND sed -i "/^# /d" "${outfile}" -+ COMMAND sed -i \"\" "/^# /d" "${outfile}" - MAIN_DEPENDENCY "${infile}" - ) - endif() diff --git a/cad/freecad/files/patch-cMake_FreeCAD__Helpers_SetupSalomeSMESH.cmake b/cad/freecad/files/patch-cMake_FreeCAD__Helpers_SetupSalomeSMESH.cmake index 2b3bc745c000..2d20cbb7e033 100644 --- a/cad/freecad/files/patch-cMake_FreeCAD__Helpers_SetupSalomeSMESH.cmake +++ b/cad/freecad/files/patch-cMake_FreeCAD__Helpers_SetupSalomeSMESH.cmake @@ -1,40 +1,11 @@ ---- cMake/FreeCAD_Helpers/SetupSalomeSMESH.cmake.orig 2021-04-15 09:17:08 UTC +--- cMake/FreeCAD_Helpers/SetupSalomeSMESH.cmake.orig 2022-06-14 23:16:43 +0200 +++ cMake/FreeCAD_Helpers/SetupSalomeSMESH.cmake -@@ -12,24 +12,24 @@ macro(SetupSalomeSMESH) - - #if we use smesh we definitely also need vtk, no matter of external or internal smesh - set (VTK_COMPONENTS -- vtkCommonCore -- vtkCommonDataModel -- vtkFiltersVerdict -- vtkIOXML -- vtkFiltersCore -- vtkFiltersGeneral -- vtkIOLegacy -- vtkFiltersExtraction -- vtkFiltersSources -- vtkFiltersGeometry -+ CommonCore -+ tkCommonDataModel -+ tkFiltersVerdict -+ tkIOXML -+ tkFiltersCore -+ tkFiltersGeneral -+ tkIOLegacy -+ tkFiltersExtraction -+ tkFiltersSources -+ tkFiltersGeometry - ) +@@ -26,7 +26,7 @@ # check which modules are available if(UNIX OR WIN32) - find_package(VTK COMPONENTS vtkCommonCore REQUIRED NO_MODULE) -- list(APPEND VTK_COMPONENTS vtkIOMPIParallel vtkParallelMPI vtkhdf5 vtkFiltersParallelDIY2 vtkRenderingCore vtkInteractionStyle vtkRenderingFreeType vtkRenderingOpenGL2) + find_package(VTK COMPONENTS CommonCore REQUIRED NO_MODULE) -+ list(APPEND VTK_COMPONENTS IOMPIParallel ParallelMPI hdf5 FiltersParallelDIY2 RenderingCore InteractionStyle RenderingFreeType RenderingOpenGL2) - foreach(_module ${VTK_COMPONENTS}) -- list (FIND VTK_MODULES_ENABLED ${_module} _index) -+ list (FIND VTK_AVAILABLE_COMPONENTS ${_module} _index) - if (${_index} GREATER -1) - list(APPEND AVAILABLE_VTK_COMPONENTS ${_module}) - endif() + if(${VTK_MAJOR_VERSION} LESS 9) + list(APPEND VTK_COMPONENTS vtkIOMPIParallel vtkParallelMPI vtkhdf5 vtkFiltersParallelDIY2 vtkRenderingCore vtkInteractionStyle vtkRenderingFreeType vtkRenderingOpenGL2) + foreach(_module ${VTK_COMPONENTS}) diff --git a/cad/freecad/files/patch-src_3rdParty_libE57Format_src_CheckedFile.cpp b/cad/freecad/files/patch-src_3rdParty_libE57Format_src_CheckedFile.cpp new file mode 100644 index 000000000000..bb6f490be2a9 --- /dev/null +++ b/cad/freecad/files/patch-src_3rdParty_libE57Format_src_CheckedFile.cpp @@ -0,0 +1,34 @@ +--- src/3rdParty/libE57Format/src/CheckedFile.cpp.orig 2022-06-14 16:52:22 +0200 ++++ src/3rdParty/libE57Format/src/CheckedFile.cpp +@@ -25,6 +25,11 @@ + * DEALINGS IN THE SOFTWARE. + */ + ++// convenience for all the BSDs ++#if defined( __FreeBSD__) || defined( __NetBSD__) || defined( __OpenBSD__) ++#define __BSD ++#endif ++ + #if defined( _WIN32 ) + #if defined( _MSC_VER ) + #include +@@ -47,6 +52,10 @@ + #elif defined( __APPLE__ ) + #include + #include ++#elif defined( __BSD ) ++#include ++#include ++#include + #else + #error "no supported OS platform defined" + #endif +@@ -483,7 +492,7 @@ + #endif + #elif defined( __linux__ ) + int64_t result = ::lseek64( fd_, offset, whence ); +-#elif defined( __APPLE__ ) ++#elif defined( __APPLE__ ) || defined ( __BSD ) + int64_t result = ::lseek( fd_, offset, whence ); + #else + #error "no supported OS platform defined" diff --git a/cad/freecad/files/patch-src_3rdParty_salomesmesh_src_SMESH_SMESH_Mesh.cpp b/cad/freecad/files/patch-src_3rdParty_salomesmesh_src_SMESH_SMESH_Mesh.cpp deleted file mode 100644 index f88315cbaeb4..000000000000 --- a/cad/freecad/files/patch-src_3rdParty_salomesmesh_src_SMESH_SMESH_Mesh.cpp +++ /dev/null @@ -1,10 +0,0 @@ ---- src/3rdParty/salomesmesh/src/SMESH/SMESH_Mesh.cpp.orig 2022-01-30 21:22:20.383703000 +0100 -+++ src/3rdParty/salomesmesh/src/SMESH/SMESH_Mesh.cpp 2022-01-30 21:22:56.240456000 +0100 -@@ -64,7 +64,6 @@ - - #include - --#undef _Precision_HeaderFile - #include - #include - #include diff --git a/cad/freecad/files/patch-src_App_PropertyExpressionEngine.h b/cad/freecad/files/patch-src_App_PropertyExpressionEngine.h new file mode 100644 index 000000000000..ed1096e7b835 --- /dev/null +++ b/cad/freecad/files/patch-src_App_PropertyExpressionEngine.h @@ -0,0 +1,11 @@ +--- src/App/PropertyExpressionEngine.h.orig 2022-06-14 21:47:38 +0200 ++++ src/App/PropertyExpressionEngine.h +@@ -179,7 +179,7 @@ + typedef boost::adjacency_list< boost::listS, boost::vecS, boost::directedS > DiGraph; + typedef std::pair Edge; + // Note: use std::map instead of unordered_map to keep the binding order stable +- #ifdef FC_OS_MACOSX ++ #if defined(FC_OS_MACOSX) || defined(FC_OS_BSD) + typedef std::map ExpressionMap; + #else + typedef std::map ExpressionMap; diff --git a/cad/freecad/files/patch-src_Mod_Fem_App_FemConstraint.cpp b/cad/freecad/files/patch-src_Mod_Fem_App_FemConstraint.cpp deleted file mode 100644 index 88d9de1b36e6..000000000000 --- a/cad/freecad/files/patch-src_Mod_Fem_App_FemConstraint.cpp +++ /dev/null @@ -1,22 +0,0 @@ ---- src/Mod/Fem/App/FemConstraint.cpp.orig 2022-02-04 00:04:15.767125000 +0100 -+++ src/Mod/Fem/App/FemConstraint.cpp 2022-02-04 00:04:38.270409000 +0100 -@@ -36,8 +36,6 @@ - # include - # include - # include --# include --# include - # include - # include - # include -@@ -248,8 +246,8 @@ - gp_Pnt center; - - // Get an estimate for the number of arrows by finding the average length of curves -- Handle(Adaptor3d_HSurface) hsurf; -- hsurf = new BRepAdaptor_HSurface(surface); -+ Handle(Adaptor3d_Surface) hsurf; -+ hsurf = new BRepAdaptor_Surface(surface); - - Adaptor3d_IsoCurve isoc(hsurf); - try { diff --git a/cad/freecad/files/patch-src_Mod_Fem_App_FemConstraintFixed.cpp b/cad/freecad/files/patch-src_Mod_Fem_App_FemConstraintFixed.cpp deleted file mode 100644 index 319300cae57e..000000000000 --- a/cad/freecad/files/patch-src_Mod_Fem_App_FemConstraintFixed.cpp +++ /dev/null @@ -1,11 +0,0 @@ ---- src/Mod/Fem/App/FemConstraintFixed.cpp.orig 2022-02-03 23:52:01.569143000 +0100 -+++ src/Mod/Fem/App/FemConstraintFixed.cpp 2022-02-03 23:52:36.672029000 +0100 -@@ -32,8 +32,6 @@ - #include - #include - #include --#include --#include - #include - #include - #include diff --git a/cad/freecad/files/patch-src_Mod_MeshPart_App_MeshFlattening.cpp b/cad/freecad/files/patch-src_Mod_MeshPart_App_MeshFlattening.cpp deleted file mode 100644 index b68142a11254..000000000000 --- a/cad/freecad/files/patch-src_Mod_MeshPart_App_MeshFlattening.cpp +++ /dev/null @@ -1,52 +0,0 @@ ---- src/Mod/MeshPart/App/MeshFlattening.cpp.orig 2022-02-03 23:13:33.919226000 +0100 -+++ src/Mod/MeshPart/App/MeshFlattening.cpp 2022-02-03 23:30:59.747315000 +0100 -@@ -141,37 +141,37 @@ - if (triangulation.IsNull()) - throw std::runtime_error("null triangulation in face construction"); - -+ Standard_Integer numNodes = triangulation->NbNodes(); -+ Standard_Integer numTriangles = triangulation->NbTriangles(); -+ - // compute uv coordinates - if (triangulation->HasUVNodes()) - { -- const TColgp_Array1OfPnt2d &_uv_nodes = triangulation->UVNodes(); -- this->uv_nodes.resize(triangulation->NbNodes(), 2); -+ this->uv_nodes.resize(numNodes, 2); - i = 0; -- for (Standard_Integer index = _uv_nodes.Lower(); index <= _uv_nodes.Upper(); ++index) -+ for (Standard_Integer index = 1; index <= numNodes; ++index) - { -- const gp_Pnt2d& _uv_node = _uv_nodes.Value(index); -+ const gp_Pnt2d& _uv_node = triangulation->UVNode(index); - this->uv_nodes.row(i) << _uv_node.X(), _uv_node.Y(); - i++; - } - } - // -- const TColgp_Array1OfPnt &_nodes = triangulation->Nodes(); -- this->xyz_nodes.resize(triangulation->NbNodes(), 3); -+ this->xyz_nodes.resize(numNodes, 3); - i = 0; -- for (Standard_Integer index = _nodes.Lower(); index <= _nodes.Upper(); ++index) -+ for (Standard_Integer index = 1; index <= numNodes; ++index) - { -- gp_Pnt _node = _nodes.Value(index); -+ gp_Pnt _node = triangulation->Node(index); - this->xyz_nodes.row(i) << _node.X(), _node.Y(), _node.Z(); - i++; - } - -- const Poly_Array1OfTriangle &_tris = triangulation->Triangles(); -- this->tris.resize(triangulation->NbTriangles(), 3); -+ this->tris.resize(numTriangles, 3); - i = 0; -- for (Standard_Integer index = _tris.Lower(); index <= _tris.Upper(); ++index) -+ for (Standard_Integer index = 1; index <= numTriangles; ++index) - { - int n1, n2, n3; -- Poly_Triangle _tri = _tris.Value(index); -+ Poly_Triangle _tri = triangulation->Triangle(index); - _tri.Get(n1, n2, n3); - this->tris.row(i) << n1-1, n2-1, n3-1; - i++; diff --git a/cad/freecad/files/patch-src_Mod_PartDesign_Gui_ViewProviderAddSub.cpp b/cad/freecad/files/patch-src_Mod_PartDesign_Gui_ViewProviderAddSub.cpp deleted file mode 100644 index 7c7c3c09accd..000000000000 --- a/cad/freecad/files/patch-src_Mod_PartDesign_Gui_ViewProviderAddSub.cpp +++ /dev/null @@ -1,21 +0,0 @@ ---- src/Mod/PartDesign/Gui/ViewProviderAddSub.cpp.orig 2022-03-03 20:43:05.599798000 +0100 -+++ src/Mod/PartDesign/Gui/ViewProviderAddSub.cpp 2022-03-03 21:06:11.466643000 +0100 -@@ -194,8 +194,7 @@ - - // cycling through the poly mesh - const Poly_Array1OfTriangle& Triangles = mesh->Triangles(); -- const TColgp_Array1OfPnt& Nodes = mesh->Nodes(); -- TColgp_Array1OfDir Normals (Nodes.Lower(), Nodes.Upper()); -+ TColgp_Array1OfDir Normals (1, nbNodesInFace); - getNormals(actFace, mesh, Normals); - - for (int g=1;g<=nbTriInFace;g++) { -@@ -211,7 +210,7 @@ - } - - // get the 3 points of this triangle -- gp_Pnt V1(Nodes(N1)), V2(Nodes(N2)), V3(Nodes(N3)); -+ gp_Pnt V1(mesh->Node(N1)), V2(mesh->Node(N2)), V3(mesh->Node(N3)); - - // get the 3 previewNormals of this triangle - gp_Dir NV1(Normals(N1)), NV2(Normals(N2)), NV3(Normals(N3)); diff --git a/cad/freecad/files/patch-src_Mod_PartDesign_Gui_ViewProviderTransformed.cpp b/cad/freecad/files/patch-src_Mod_PartDesign_Gui_ViewProviderTransformed.cpp deleted file mode 100644 index 2e2c02a95065..000000000000 --- a/cad/freecad/files/patch-src_Mod_PartDesign_Gui_ViewProviderTransformed.cpp +++ /dev/null @@ -1,19 +0,0 @@ ---- src/Mod/PartDesign/Gui/ViewProviderTransformed.cpp.orig 2022-03-03 21:21:36.816245000 +0100 -+++ src/Mod/PartDesign/Gui/ViewProviderTransformed.cpp 2022-03-03 21:22:41.559121000 +0100 -@@ -285,7 +285,6 @@ - - // cycling through the poly mesh - const Poly_Array1OfTriangle& Triangles = mesh->Triangles(); -- const TColgp_Array1OfPnt& Nodes = mesh->Nodes(); - for (int g=1; g <= nbTriInFace; g++) { - // Get the triangle - Standard_Integer N1,N2,N3; -@@ -299,7 +298,7 @@ - } - - // get the 3 points of this triangle -- gp_Pnt V1(Nodes(N1)), V2(Nodes(N2)), V3(Nodes(N3)); -+ gp_Pnt V1(mesh->Node(N1)), V2(mesh->Node(N2)), V3(mesh->Node(N3)); - - // transform the vertices to the place of the face - if (!identity) { diff --git a/cad/freecad/files/patch-src_Mod_Part_App_AppPartPy.cpp b/cad/freecad/files/patch-src_Mod_Part_App_AppPartPy.cpp deleted file mode 100644 index dc95388b984e..000000000000 --- a/cad/freecad/files/patch-src_Mod_Part_App_AppPartPy.cpp +++ /dev/null @@ -1,29 +0,0 @@ ---- src/Mod/Part/App/AppPartPy.cpp.orig 2022-01-30 22:29:02.026790000 +0100 -+++ src/Mod/Part/App/AppPartPy.cpp 2022-01-30 22:50:54.044159000 +0100 -@@ -804,14 +804,26 @@ - const TopAbs_Orientation anOrientation = currentFace.Orientation(); - bool flip = (anOrientation == TopAbs_REVERSED); - if (!facets.IsNull()) { -+#if OCC_VERSION_HEX < 0x070600 - const TColgp_Array1OfPnt& nodes = facets->Nodes(); - const Poly_Array1OfTriangle& triangles = facets->Triangles(); - for (int i = 1; i <= triangles.Length(); i++) { -+#else -+ int nbtri = facets->NbTriangles(); -+ for (int i = 1; i <= nbtri; i++) { -+#endif - Standard_Integer n1,n2,n3; -+#if OCC_VERSION_HEX < 0x070600 - triangles(i).Get(n1, n2, n3); - gp_Pnt p1 = nodes(n1); - gp_Pnt p2 = nodes(n2); - gp_Pnt p3 = nodes(n3); -+#else -+ facets->Triangle(i).Get(n1, n2, n3); -+ gp_Pnt p1 = facets->Node(n1); -+ gp_Pnt p2 = facets->Node(n2); -+ gp_Pnt p3 = facets->Node(n3); -+#endif - p1.Transform(loc.Transformation()); - p2.Transform(loc.Transformation()); - p3.Transform(loc.Transformation()); diff --git a/cad/freecad/files/patch-src_Mod_Part_App_Tools.cpp b/cad/freecad/files/patch-src_Mod_Part_App_Tools.cpp deleted file mode 100644 index 191d1c081f35..000000000000 --- a/cad/freecad/files/patch-src_Mod_Part_App_Tools.cpp +++ /dev/null @@ -1,45 +0,0 @@ ---- src/Mod/Part/App/Tools.cpp.orig 2022-02-03 20:59:16.862252000 +0100 -+++ src/Mod/Part/App/Tools.cpp 2022-02-03 21:43:13.008464000 +0100 -@@ -25,10 +25,9 @@ - # include - # include - # include --# include - # include - # include --# include -+# include - # include - # include - # include -@@ -98,8 +97,8 @@ - return found; - } - --/*! The objects in \a theBoundaries must be of the type Adaptor3d_HCurveOnSurface or --GeomAdaptor_HCurve or Geom_Point indicating type of a constraint. Otherwise an exception -+/*! The objects in \a theBoundaries must be of the type Adaptor3d_CurveOnSurface or -+GeomAdaptor_Curve or Geom_Point indicating type of a constraint. Otherwise an exception - Standard_TypeMismatch is thrown. - - If the \a theBoundaries list is empty then Standard_ConstructionError is thrown. -@@ -138,15 +137,15 @@ - assert (0); - Standard_ConstructionError::Raise ("Tools::makeSurface()"); - } -- else if (aCur->IsKind (STANDARD_TYPE (Adaptor3d_HCurveOnSurface))) { -+ else if (aCur->IsKind (STANDARD_TYPE (Adaptor3d_CurveOnSurface))) { - //G1 constraint -- Handle(Adaptor3d_HCurveOnSurface) aHCOS (Handle(Adaptor3d_HCurveOnSurface)::DownCast (aCur)); -+ Handle(Adaptor3d_CurveOnSurface) aHCOS (Handle(Adaptor3d_CurveOnSurface)::DownCast (aCur)); - Handle (GeomPlate_CurveConstraint) aConst = new GeomPlate_CurveConstraint (aHCOS, 1 /*GeomAbs_G1*/,aNbPnts, aTol3d, anAngTol, aCurvTol); - aPlateBuilder.Add (aConst); - } -- else if (aCur->IsKind (STANDARD_TYPE (GeomAdaptor_HCurve))) { -+ else if (aCur->IsKind (STANDARD_TYPE (GeomAdaptor_Curve))) { - //G0 constraint -- Handle(GeomAdaptor_HCurve) aHC (Handle(GeomAdaptor_HCurve)::DownCast (aCur)); -+ Handle(GeomAdaptor_Curve) aHC (Handle(GeomAdaptor_Curve)::DownCast (aCur)); - Handle (GeomPlate_CurveConstraint) aConst = new GeomPlate_CurveConstraint (aHC, 0 /*GeomAbs_G0*/, aNbPnts, aTol3d); - aPlateBuilder.Add (aConst); - } diff --git a/cad/freecad/files/patch-src_Mod_Part_App_TopoShape.cpp b/cad/freecad/files/patch-src_Mod_Part_App_TopoShape.cpp deleted file mode 100644 index 51285e1c05f4..000000000000 --- a/cad/freecad/files/patch-src_Mod_Part_App_TopoShape.cpp +++ /dev/null @@ -1,146 +0,0 @@ ---- src/Mod/Part/App/TopoShape.cpp.orig 2022-02-03 21:51:04.000000000 +0100 -+++ src/Mod/Part/App/TopoShape.cpp 2022-02-03 22:55:05.882488000 +0100 -@@ -38,8 +38,6 @@ - # include - # include - # include --# include --# include - # include - # include - # include -@@ -1122,10 +1120,10 @@ - // check orientation - TopAbs_Orientation orient = aFace.Orientation(); - -+ nbTriInFace = aPoly->NbTriangles(); - // cycling through the poly mesh - const Poly_Array1OfTriangle& Triangles = aPoly->Triangles(); -- const TColgp_Array1OfPnt& Nodes = aPoly->Nodes(); -- for (int i=1;i<=nbTriInFace;i++) { -+ for (int i=1; i<=nbTriInFace; i++) { - // Get the triangle - Standard_Integer N1,N2,N3; - Triangles(i).Get(N1,N2,N3); -@@ -1137,9 +1135,9 @@ - N2 = tmp; - } - -- gp_Pnt V1 = Nodes(N1); -- gp_Pnt V2 = Nodes(N2); -- gp_Pnt V3 = Nodes(N3); -+ gp_Pnt V1 = aPoly->Node(N1); -+ gp_Pnt V2 = aPoly->Node(N2); -+ gp_Pnt V3 = aPoly->Node(N3); - - // transform the vertices to the place of the face - if (!identity) { -@@ -1193,6 +1191,7 @@ - - std::vector vertices; - Standard_Integer nbNodesInFace; -+ Standard_Integer nbNodesInTria; - - // triangulation succeeded? - if (!aPoly.IsNull()) { -@@ -1233,16 +1232,14 @@ - - // getting size and create the array - nbNodesInFace = aPoly->NbNodes(); -+ nbNodesInTria = aPolyTria->NbNodes(); - vertices.resize(nbNodesInFace); - -- const TColStd_Array1OfInteger& indices = aPoly->Nodes(); -- const TColgp_Array1OfPnt& Nodes = aPolyTria->Nodes(); -- - gp_Pnt V; - int pos = 0; - // go through the index array -- for (Standard_Integer i=indices.Lower();i <= indices.Upper();i++) { -- V = Nodes(indices(i)); -+ for (Standard_Integer i=1; i<=nbNodesInTria; i++) { -+ V = aPolyTria->Node(i); - V.Transform(myTransf); - vertices[pos++].Set((float)(V.X()),(float)(V.Y()),(float)(V.Z())); - } -@@ -2215,12 +2212,20 @@ - if (this->_Shape.IsNull()) - Standard_Failure::Raise("Cannot sweep along empty spine"); - -+#if OCC_VERSION_HEX >= 0x070600 -+ Handle(Adaptor3d_Curve) myPath; -+ if (this->_Shape.ShapeType() == TopAbs_EDGE) { -+ const TopoDS_Edge& path_edge = TopoDS::Edge(this->_Shape); -+ myPath = new BRepAdaptor_Curve(path_edge); -+ } -+#else - Handle(Adaptor3d_HCurve) myPath; - if (this->_Shape.ShapeType() == TopAbs_EDGE) { - const TopoDS_Edge& path_edge = TopoDS::Edge(this->_Shape); - BRepAdaptor_Curve path_adapt(path_edge); - myPath = new BRepAdaptor_HCurve(path_adapt); - } -+#endif - //else if (this->_Shape.ShapeType() == TopAbs_WIRE) { - // const TopoDS_Wire& path_wire = TopoDS::Wire(this->_Shape); - // BRepAdaptor_CompCurve path_adapt(path_wire); -@@ -3401,10 +3406,10 @@ - - Domain domain; - // copy the points -- const TColgp_Array1OfPnt& points = theTriangulation->Nodes(); -- domain.points.reserve(points.Length()); -- for (int i = 1; i <= points.Length(); i++) { -- gp_Pnt p = points(i); -+ int nbptintria = theTriangulation->NbNodes(); -+ domain.points.reserve(nbptintria); -+ for (int i = 1; i <= nbptintria; i++) { -+ gp_Pnt p = theTriangulation->Node(i); - p.Transform(loc.Transformation()); - Standard_Real X, Y, Z; - p.Coord (X, Y, Z); -@@ -3414,11 +3419,11 @@ - // copy the triangles - const TopAbs_Orientation anOrientation = face.Orientation(); - bool flip = (anOrientation == TopAbs_REVERSED); -- const Poly_Array1OfTriangle& faces = theTriangulation->Triangles(); -- domain.facets.reserve(faces.Length()); -- for (int i = 1; i <= faces.Length(); i++) { -+ int nbtri = theTriangulation->NbTriangles(); -+ domain.facets.reserve(nbtri); -+ for (int i = 1; i <= nbtri; i++) { - Standard_Integer N1, N2, N3; -- faces(i).Get(N1, N2, N3); -+ theTriangulation->Triangle(i).Get(N1, N2, N3); - - Facet tria; - tria.I1 = N1-1; tria.I2 = N2-1; tria.I3 = N3-1; -@@ -3774,8 +3779,8 @@ - const TColgp_Array1OfPnt& Nodes = aPoly->Nodes(); - - gp_Pnt V; -- for (Standard_Integer i=0;i < nbNodesInFace;i++) { -- V = Nodes(i+1); -+ for (Standard_Integer i=1; i <= nbNodesInFace; i++) { -+ V = Nodes(i); - V.Transform(myTransf); - vertices.emplace_back(V.X(),V.Y(),V.Z()); - } -@@ -3808,14 +3813,12 @@ - - // getting size and create the array - nbNodesInFace = aPoly->NbNodes(); -+ int nbNodesInTria = aPolyTria->NbNodes(); - -- const TColStd_Array1OfInteger& indices = aPoly->Nodes(); -- const TColgp_Array1OfPnt& Nodes = aPolyTria->Nodes(); -- - gp_Pnt V; - // go through the index array -- for (Standard_Integer i=indices.Lower();i <= indices.Upper();i++) { -- V = Nodes(indices(i)); -+ for (Standard_Integer i=1 ;i <= nbNodesInTria; i++) { -+ V = aPolyTria->Node(i); - V.Transform(myTransf); - vertices.emplace_back(V.X(),V.Y(),V.Z()); - } diff --git a/cad/freecad/files/patch-src_Mod_Part_Gui_ViewProviderExt.cpp b/cad/freecad/files/patch-src_Mod_Part_Gui_ViewProviderExt.cpp deleted file mode 100644 index 197253155500..000000000000 --- a/cad/freecad/files/patch-src_Mod_Part_Gui_ViewProviderExt.cpp +++ /dev/null @@ -1,81 +0,0 @@ ---- src/Mod/Part/Gui/ViewProviderExt.cpp.orig 2022-03-02 17:15:16.283319000 +0100 -+++ src/Mod/Part/Gui/ViewProviderExt.cpp 2022-03-02 23:49:04.036080000 +0100 -@@ -137,26 +137,17 @@ - const Handle(Poly_Triangulation)& aPolyTri, - TColgp_Array1OfDir& theNormals) - { -- const TColgp_Array1OfPnt& aNodes = aPolyTri->Nodes(); -- - if(aPolyTri->HasNormals()) - { - // normals pre-computed in triangulation structure -- const TShort_Array1OfShortReal& aNormals = aPolyTri->Normals(); -- const Standard_ShortReal* aNormArr = &(aNormals.Value(aNormals.Lower())); -- -- for(Standard_Integer aNodeIter = aNodes.Lower(); aNodeIter <= aNodes.Upper(); ++aNodeIter) -+ for(Standard_Integer aNodeIter = 1; aNodeIter <= aPolyTri->NbNodes(); ++aNodeIter) - { -- const Standard_Integer anId = 3 * (aNodeIter - aNodes.Lower()); -- const gp_Dir aNorm(aNormArr[anId + 0], -- aNormArr[anId + 1], -- aNormArr[anId + 2]); -- theNormals(aNodeIter) = aNorm; -+ theNormals(aNodeIter) = aPolyTri->Normal(aNodeIter); - } - - if(theFace.Orientation() == TopAbs_REVERSED) - { -- for(Standard_Integer aNodeIter = aNodes.Lower(); aNodeIter <= aNodes.Upper(); ++aNodeIter) -+ for(Standard_Integer aNodeIter = 1; aNodeIter <= aPolyTri->NbNodes(); ++aNodeIter) - { - theNormals.ChangeValue(aNodeIter).Reverse(); - } -@@ -172,16 +163,13 @@ - const Standard_Real aTol = Precision::Confusion(); - Handle(TShort_HArray1OfShortReal) aNormals = new TShort_HArray1OfShortReal(1, aPolyTri->NbNodes() * 3); - const Poly_Array1OfTriangle& aTriangles = aPolyTri->Triangles(); -- const TColgp_Array1OfPnt2d* aNodesUV = aPolyTri->HasUVNodes() && !aSurf.IsNull() -- ? &aPolyTri->UVNodes() -- : NULL; -+ const Standard_Boolean hasUV = aPolyTri->HasUVNodes() && !aSurf.IsNull(); - Standard_Integer aTri[3]; - -- for(Standard_Integer aNodeIter = aNodes.Lower(); aNodeIter <= aNodes.Upper(); ++aNodeIter) -+ for(Standard_Integer aNodeIter = 1; aNodeIter <= aPolyTri->NbNodes(); ++aNodeIter) - { - // try to retrieve normal from real surface first, when UV coordinates are available -- if(aNodesUV == NULL -- || GeomLib::NormEstim(aSurf, aNodesUV->Value(aNodeIter), aTol, theNormals(aNodeIter)) > 1) -+ if(hasUV || GeomLib::NormEstim(aSurf, aPolyTri->UVNode(aNodeIter), aTol, theNormals(aNodeIter)) > 1) - { - // compute flat normals - gp_XYZ eqPlan(0.0, 0.0, 0.0); -@@ -189,8 +177,8 @@ - for(thePolyConnect.Initialize(aNodeIter); thePolyConnect.More(); thePolyConnect.Next()) - { - aTriangles(thePolyConnect.Value()).Get(aTri[0], aTri[1], aTri[2]); -- const gp_XYZ v1(aNodes(aTri[1]).Coord() - aNodes(aTri[0]).Coord()); -- const gp_XYZ v2(aNodes(aTri[2]).Coord() - aNodes(aTri[1]).Coord()); -+ const gp_XYZ v1(aPolyTri->Node(aTri[1]).Coord() - aPolyTri->Node(aTri[0]).Coord()); -+ const gp_XYZ v2(aPolyTri->Node(aTri[2]).Coord() - aPolyTri->Node(aTri[1]).Coord()); - const gp_XYZ vv = v1 ^ v2; - const Standard_Real aMod = vv.Modulus(); - -@@ -204,7 +192,7 @@ - theNormals(aNodeIter) = (aModMax > aTol) ? gp_Dir(eqPlan) : gp::DZ(); - } - -- const Standard_Integer anId = (aNodeIter - aNodes.Lower()) * 3; -+ const Standard_Integer anId = (aNodeIter - 1) * 3; - aNormals->SetValue(anId + 1, (Standard_ShortReal)theNormals(aNodeIter).X()); - aNormals->SetValue(anId + 2, (Standard_ShortReal)theNormals(aNodeIter).Y()); - aNormals->SetValue(anId + 3, (Standard_ShortReal)theNormals(aNodeIter).Z()); -@@ -214,7 +202,7 @@ - - if(theFace.Orientation() == TopAbs_REVERSED) - { -- for(Standard_Integer aNodeIter = aNodes.Lower(); aNodeIter <= aNodes.Upper(); ++aNodeIter) -+ for(Standard_Integer aNodeIter = 1; aNodeIter <= aPolyTri->NbNodes(); ++aNodeIter) - { - theNormals.ChangeValue(aNodeIter).Reverse(); - } diff --git a/cad/freecad/files/patch-src_Mod_Raytracing_App_PovTools.cpp b/cad/freecad/files/patch-src_Mod_Raytracing_App_PovTools.cpp deleted file mode 100644 index c96ce988fc2d..000000000000 --- a/cad/freecad/files/patch-src_Mod_Raytracing_App_PovTools.cpp +++ /dev/null @@ -1,23 +0,0 @@ ---- src/Mod/Raytracing/App/PovTools.cpp.orig 2022-02-03 23:01:51.000000000 +0100 -+++ src/Mod/Raytracing/App/PovTools.cpp 2022-02-03 23:03:51.000000000 +0100 -@@ -402,7 +402,6 @@ - - // cycling through the poly mesh - const Poly_Array1OfTriangle& Triangles = aPoly->Triangles(); -- const TColgp_Array1OfPnt& Nodes = aPoly->Nodes(); - for (i=1; i<=nbTriInFace; i++) { - // Get the triangle - Standard_Integer N1,N2,N3; -@@ -416,9 +415,9 @@ - N2 = tmp; - } - -- gp_Pnt V1 = Nodes(N1); -- gp_Pnt V2 = Nodes(N2); -- gp_Pnt V3 = Nodes(N3); -+ gp_Pnt V1 = aPoly->Node(N1); -+ gp_Pnt V2 = aPoly->Node(N2); -+ gp_Pnt V3 = aPoly->Node(N3); - - // transform the vertices to the place of the face - if (!identity) { diff --git a/cad/freecad/pkg-plist b/cad/freecad/pkg-plist index 94bf76ac6e6a..e8821e95206d 100644 --- a/cad/freecad/pkg-plist +++ b/cad/freecad/pkg-plist @@ -1,1691 +1,1984 @@ FreeCAD/Ext/PySide/QtCore.py FreeCAD/Ext/PySide/QtGui.py FreeCAD/Ext/PySide/QtSvg.py FreeCAD/Ext/PySide/QtUiTools.py FreeCAD/Ext/PySide/__init__.py +FreeCAD/Ext/freecad/UiTools.py FreeCAD/Ext/freecad/__init__.py FreeCAD/Ext/freecad/gui/RemoteDebugger.py FreeCAD/Ext/freecad/gui/RemoteDebugger.ui FreeCAD/Ext/lazy_loader/__init__.py FreeCAD/Ext/lazy_loader/lazy_loader.py +FreeCAD/Mod/AddonManager/ALLOWED_PYTHON_PACKAGES.txt +FreeCAD/Mod/AddonManager/Addon.py FreeCAD/Mod/AddonManager/AddonManager.py FreeCAD/Mod/AddonManager/AddonManager.ui FreeCAD/Mod/AddonManager/AddonManagerOptions.ui +FreeCAD/Mod/AddonManager/AddonManagerTest/__init__.py +FreeCAD/Mod/AddonManager/AddonManagerTest/app/__init__.py +FreeCAD/Mod/AddonManager/AddonManagerTest/app/test_addon.py +FreeCAD/Mod/AddonManager/AddonManagerTest/app/test_macro.py +FreeCAD/Mod/AddonManager/AddonManagerTest/app/test_utilities.py +FreeCAD/Mod/AddonManager/AddonManagerTest/data/DoNothing.FCMacro +FreeCAD/Mod/AddonManager/AddonManagerTest/data/__init__.py +FreeCAD/Mod/AddonManager/AddonManagerTest/data/bad_macro_metadata.FCStd +FreeCAD/Mod/AddonManager/AddonManagerTest/data/combination.xml +FreeCAD/Mod/AddonManager/AddonManagerTest/data/depends_on_all_workbenches.xml +FreeCAD/Mod/AddonManager/AddonManagerTest/data/good_macro_metadata.FCStd +FreeCAD/Mod/AddonManager/AddonManagerTest/data/good_package.xml +FreeCAD/Mod/AddonManager/AddonManagerTest/data/macro_only.xml +FreeCAD/Mod/AddonManager/AddonManagerTest/data/macro_template.FCStd +FreeCAD/Mod/AddonManager/AddonManagerTest/data/missing_macro_metadata.FCStd +FreeCAD/Mod/AddonManager/AddonManagerTest/data/prefpack_only.xml +FreeCAD/Mod/AddonManager/AddonManagerTest/data/test_version_detection.xml +FreeCAD/Mod/AddonManager/AddonManagerTest/data/workbench_only.xml +FreeCAD/Mod/AddonManager/AddonManagerTest/gui/__init__.py +FreeCAD/Mod/AddonManager/AddonManagerTest/gui/test_gui.py +FreeCAD/Mod/AddonManager/AddonManagerTest/test_information.md FreeCAD/Mod/AddonManager/AddonManager_rc.py FreeCAD/Mod/AddonManager/Init.py FreeCAD/Mod/AddonManager/InitGui.py +FreeCAD/Mod/AddonManager/NetworkManager.py +FreeCAD/Mod/AddonManager/TestAddonManagerApp.py +FreeCAD/Mod/AddonManager/TestAddonManagerGui.py +FreeCAD/Mod/AddonManager/add_toolbar_button_dialog.ui FreeCAD/Mod/AddonManager/addonmanager_macro.py FreeCAD/Mod/AddonManager/addonmanager_utilities.py FreeCAD/Mod/AddonManager/addonmanager_workers.py +FreeCAD/Mod/AddonManager/change_branch.py +FreeCAD/Mod/AddonManager/change_branch.ui +FreeCAD/Mod/AddonManager/compact_view.py +FreeCAD/Mod/AddonManager/dependency_resolution_dialog.ui +FreeCAD/Mod/AddonManager/expanded_view.py +FreeCAD/Mod/AddonManager/first_run.ui +FreeCAD/Mod/AddonManager/install_to_toolbar.py +FreeCAD/Mod/AddonManager/loading.html +FreeCAD/Mod/AddonManager/package_details.py +FreeCAD/Mod/AddonManager/package_list.py +FreeCAD/Mod/AddonManager/select_toolbar_dialog.ui FreeCAD/Mod/Arch/Arch.py FreeCAD/Mod/Arch/ArchAxis.py +FreeCAD/Mod/Arch/ArchAxisSystem.py FreeCAD/Mod/Arch/ArchBuilding.py FreeCAD/Mod/Arch/ArchBuildingPart.py FreeCAD/Mod/Arch/ArchCommands.py FreeCAD/Mod/Arch/ArchComponent.py FreeCAD/Mod/Arch/ArchCurtainWall.py FreeCAD/Mod/Arch/ArchCutPlane.py FreeCAD/Mod/Arch/ArchEquipment.py FreeCAD/Mod/Arch/ArchFence.py FreeCAD/Mod/Arch/ArchFloor.py FreeCAD/Mod/Arch/ArchFrame.py +FreeCAD/Mod/Arch/ArchGrid.py FreeCAD/Mod/Arch/ArchIFC.py FreeCAD/Mod/Arch/ArchIFCSchema.py FreeCAD/Mod/Arch/ArchIFCView.py FreeCAD/Mod/Arch/ArchMaterial.py FreeCAD/Mod/Arch/ArchNesting.py FreeCAD/Mod/Arch/ArchPanel.py FreeCAD/Mod/Arch/ArchPipe.py FreeCAD/Mod/Arch/ArchPrecast.py FreeCAD/Mod/Arch/ArchProfile.py FreeCAD/Mod/Arch/ArchProject.py FreeCAD/Mod/Arch/ArchRebar.py FreeCAD/Mod/Arch/ArchReference.py FreeCAD/Mod/Arch/ArchRoof.py FreeCAD/Mod/Arch/ArchSchedule.py FreeCAD/Mod/Arch/ArchSectionPlane.py FreeCAD/Mod/Arch/ArchSite.py FreeCAD/Mod/Arch/ArchSpace.py FreeCAD/Mod/Arch/ArchStairs.py FreeCAD/Mod/Arch/ArchStructure.py FreeCAD/Mod/Arch/ArchTruss.py FreeCAD/Mod/Arch/ArchVRM.py FreeCAD/Mod/Arch/ArchWall.py FreeCAD/Mod/Arch/ArchWindow.py FreeCAD/Mod/Arch/ArchWindowPresets.py FreeCAD/Mod/Arch/Arch_rc.py FreeCAD/Mod/Arch/Dice3DS/__init__.py FreeCAD/Mod/Arch/Dice3DS/dom3ds.py FreeCAD/Mod/Arch/Dice3DS/util.py FreeCAD/Mod/Arch/Init.py FreeCAD/Mod/Arch/InitGui.py FreeCAD/Mod/Arch/OfflineRenderingUtils.py FreeCAD/Mod/Arch/TestArch.py FreeCAD/Mod/Arch/exportIFC.py FreeCAD/Mod/Arch/exportIFCHelper.py FreeCAD/Mod/Arch/exportIFCStructuralTools.py FreeCAD/Mod/Arch/import3DS.py FreeCAD/Mod/Arch/importDAE.py FreeCAD/Mod/Arch/importIFC.py FreeCAD/Mod/Arch/importIFCHelper.py FreeCAD/Mod/Arch/importIFClegacy.py FreeCAD/Mod/Arch/importIFCmulticore.py FreeCAD/Mod/Arch/importJSON.py FreeCAD/Mod/Arch/importOBJ.py FreeCAD/Mod/Arch/importSH3D.py FreeCAD/Mod/Arch/importSHP.py FreeCAD/Mod/Arch/importWebGL.py FreeCAD/Mod/Draft/Draft.py FreeCAD/Mod/Draft/DraftFillet.py FreeCAD/Mod/Draft/DraftGeomUtils.py FreeCAD/Mod/Draft/DraftGui.py FreeCAD/Mod/Draft/DraftLayer.py FreeCAD/Mod/Draft/DraftTools.py FreeCAD/Mod/Draft/DraftVecUtils.py FreeCAD/Mod/Draft/Draft_rc.py FreeCAD/Mod/Draft/Init.py FreeCAD/Mod/Draft/InitGui.py FreeCAD/Mod/Draft/TestDraft.py FreeCAD/Mod/Draft/TestDraftGui.py FreeCAD/Mod/Draft/WorkingPlane.py FreeCAD/Mod/Draft/draftfunctions/README.md FreeCAD/Mod/Draft/draftfunctions/__init__.py FreeCAD/Mod/Draft/draftfunctions/array.py FreeCAD/Mod/Draft/draftfunctions/cut.py FreeCAD/Mod/Draft/draftfunctions/downgrade.py FreeCAD/Mod/Draft/draftfunctions/draftify.py FreeCAD/Mod/Draft/draftfunctions/dxf.py FreeCAD/Mod/Draft/draftfunctions/extrude.py FreeCAD/Mod/Draft/draftfunctions/fuse.py FreeCAD/Mod/Draft/draftfunctions/heal.py FreeCAD/Mod/Draft/draftfunctions/join.py FreeCAD/Mod/Draft/draftfunctions/mirror.py FreeCAD/Mod/Draft/draftfunctions/move.py FreeCAD/Mod/Draft/draftfunctions/offset.py FreeCAD/Mod/Draft/draftfunctions/rotate.py FreeCAD/Mod/Draft/draftfunctions/scale.py FreeCAD/Mod/Draft/draftfunctions/split.py FreeCAD/Mod/Draft/draftfunctions/svg.py FreeCAD/Mod/Draft/draftfunctions/svgshapes.py FreeCAD/Mod/Draft/draftfunctions/svgtext.py FreeCAD/Mod/Draft/draftfunctions/upgrade.py FreeCAD/Mod/Draft/draftgeoutils/__init__.py FreeCAD/Mod/Draft/draftgeoutils/arcs.py FreeCAD/Mod/Draft/draftgeoutils/circle_inversion.py FreeCAD/Mod/Draft/draftgeoutils/circles.py FreeCAD/Mod/Draft/draftgeoutils/circles_apollonius.py FreeCAD/Mod/Draft/draftgeoutils/circles_incomplete.py FreeCAD/Mod/Draft/draftgeoutils/cuboids.py FreeCAD/Mod/Draft/draftgeoutils/edges.py FreeCAD/Mod/Draft/draftgeoutils/faces.py FreeCAD/Mod/Draft/draftgeoutils/fillets.py FreeCAD/Mod/Draft/draftgeoutils/general.py FreeCAD/Mod/Draft/draftgeoutils/geo_arrays.py FreeCAD/Mod/Draft/draftgeoutils/geometry.py FreeCAD/Mod/Draft/draftgeoutils/intersections.py FreeCAD/Mod/Draft/draftgeoutils/linear_algebra.py FreeCAD/Mod/Draft/draftgeoutils/offsets.py FreeCAD/Mod/Draft/draftgeoutils/sort_edges.py FreeCAD/Mod/Draft/draftgeoutils/wires.py FreeCAD/Mod/Draft/draftguitools/README.md FreeCAD/Mod/Draft/draftguitools/__init__.py FreeCAD/Mod/Draft/draftguitools/gui_annotationstyleeditor.py FreeCAD/Mod/Draft/draftguitools/gui_arcs.py FreeCAD/Mod/Draft/draftguitools/gui_array_simple.py FreeCAD/Mod/Draft/draftguitools/gui_arrays.py FreeCAD/Mod/Draft/draftguitools/gui_base.py FreeCAD/Mod/Draft/draftguitools/gui_base_original.py FreeCAD/Mod/Draft/draftguitools/gui_beziers.py FreeCAD/Mod/Draft/draftguitools/gui_circles.py FreeCAD/Mod/Draft/draftguitools/gui_circulararray.py FreeCAD/Mod/Draft/draftguitools/gui_clone.py FreeCAD/Mod/Draft/draftguitools/gui_dimension_ops.py FreeCAD/Mod/Draft/draftguitools/gui_dimensions.py FreeCAD/Mod/Draft/draftguitools/gui_downgrade.py FreeCAD/Mod/Draft/draftguitools/gui_draft2sketch.py FreeCAD/Mod/Draft/draftguitools/gui_drawing.py FreeCAD/Mod/Draft/draftguitools/gui_edit.py FreeCAD/Mod/Draft/draftguitools/gui_edit_arch_objects.py FreeCAD/Mod/Draft/draftguitools/gui_edit_base_object.py FreeCAD/Mod/Draft/draftguitools/gui_edit_draft_objects.py FreeCAD/Mod/Draft/draftguitools/gui_edit_part_objects.py FreeCAD/Mod/Draft/draftguitools/gui_edit_sketcher_objects.py FreeCAD/Mod/Draft/draftguitools/gui_ellipses.py FreeCAD/Mod/Draft/draftguitools/gui_facebinders.py FreeCAD/Mod/Draft/draftguitools/gui_fillets.py FreeCAD/Mod/Draft/draftguitools/gui_grid.py FreeCAD/Mod/Draft/draftguitools/gui_groups.py +FreeCAD/Mod/Draft/draftguitools/gui_hatch.py FreeCAD/Mod/Draft/draftguitools/gui_heal.py FreeCAD/Mod/Draft/draftguitools/gui_join.py FreeCAD/Mod/Draft/draftguitools/gui_labels.py FreeCAD/Mod/Draft/draftguitools/gui_layers.py -FreeCAD/Mod/Draft/draftguitools/gui_lineops.py FreeCAD/Mod/Draft/draftguitools/gui_lines.py FreeCAD/Mod/Draft/draftguitools/gui_lineslope.py FreeCAD/Mod/Draft/draftguitools/gui_mirror.py FreeCAD/Mod/Draft/draftguitools/gui_move.py FreeCAD/Mod/Draft/draftguitools/gui_offset.py FreeCAD/Mod/Draft/draftguitools/gui_orthoarray.py FreeCAD/Mod/Draft/draftguitools/gui_patharray.py FreeCAD/Mod/Draft/draftguitools/gui_pathtwistedarray.py FreeCAD/Mod/Draft/draftguitools/gui_planeproxy.py FreeCAD/Mod/Draft/draftguitools/gui_pointarray.py FreeCAD/Mod/Draft/draftguitools/gui_points.py FreeCAD/Mod/Draft/draftguitools/gui_polararray.py FreeCAD/Mod/Draft/draftguitools/gui_polygons.py FreeCAD/Mod/Draft/draftguitools/gui_rectangles.py FreeCAD/Mod/Draft/draftguitools/gui_rotate.py FreeCAD/Mod/Draft/draftguitools/gui_scale.py FreeCAD/Mod/Draft/draftguitools/gui_selectplane.py FreeCAD/Mod/Draft/draftguitools/gui_setstyle.py FreeCAD/Mod/Draft/draftguitools/gui_shape2dview.py FreeCAD/Mod/Draft/draftguitools/gui_shapestrings.py FreeCAD/Mod/Draft/draftguitools/gui_snapper.py FreeCAD/Mod/Draft/draftguitools/gui_snaps.py FreeCAD/Mod/Draft/draftguitools/gui_splines.py FreeCAD/Mod/Draft/draftguitools/gui_split.py FreeCAD/Mod/Draft/draftguitools/gui_stretch.py FreeCAD/Mod/Draft/draftguitools/gui_styles.py FreeCAD/Mod/Draft/draftguitools/gui_subelements.py FreeCAD/Mod/Draft/draftguitools/gui_texts.py FreeCAD/Mod/Draft/draftguitools/gui_togglemodes.py FreeCAD/Mod/Draft/draftguitools/gui_tool_utils.py FreeCAD/Mod/Draft/draftguitools/gui_trackers.py FreeCAD/Mod/Draft/draftguitools/gui_trimex.py FreeCAD/Mod/Draft/draftguitools/gui_upgrade.py FreeCAD/Mod/Draft/draftguitools/gui_wire2spline.py FreeCAD/Mod/Draft/draftmake/README.md FreeCAD/Mod/Draft/draftmake/__init__.py FreeCAD/Mod/Draft/draftmake/make_arc_3points.py FreeCAD/Mod/Draft/draftmake/make_array.py FreeCAD/Mod/Draft/draftmake/make_bezcurve.py FreeCAD/Mod/Draft/draftmake/make_block.py FreeCAD/Mod/Draft/draftmake/make_bspline.py FreeCAD/Mod/Draft/draftmake/make_circle.py FreeCAD/Mod/Draft/draftmake/make_circulararray.py FreeCAD/Mod/Draft/draftmake/make_clone.py FreeCAD/Mod/Draft/draftmake/make_copy.py FreeCAD/Mod/Draft/draftmake/make_dimension.py FreeCAD/Mod/Draft/draftmake/make_drawingview.py FreeCAD/Mod/Draft/draftmake/make_ellipse.py FreeCAD/Mod/Draft/draftmake/make_facebinder.py FreeCAD/Mod/Draft/draftmake/make_fillet.py +FreeCAD/Mod/Draft/draftmake/make_hatch.py FreeCAD/Mod/Draft/draftmake/make_label.py FreeCAD/Mod/Draft/draftmake/make_layer.py FreeCAD/Mod/Draft/draftmake/make_line.py FreeCAD/Mod/Draft/draftmake/make_orthoarray.py FreeCAD/Mod/Draft/draftmake/make_patharray.py FreeCAD/Mod/Draft/draftmake/make_point.py FreeCAD/Mod/Draft/draftmake/make_pointarray.py FreeCAD/Mod/Draft/draftmake/make_polararray.py FreeCAD/Mod/Draft/draftmake/make_polygon.py FreeCAD/Mod/Draft/draftmake/make_rectangle.py FreeCAD/Mod/Draft/draftmake/make_shape2dview.py FreeCAD/Mod/Draft/draftmake/make_shapestring.py FreeCAD/Mod/Draft/draftmake/make_sketch.py FreeCAD/Mod/Draft/draftmake/make_text.py FreeCAD/Mod/Draft/draftmake/make_wire.py FreeCAD/Mod/Draft/draftmake/make_wpproxy.py FreeCAD/Mod/Draft/draftobjects/README.md FreeCAD/Mod/Draft/draftobjects/__init__.py FreeCAD/Mod/Draft/draftobjects/array.py FreeCAD/Mod/Draft/draftobjects/base.py FreeCAD/Mod/Draft/draftobjects/bezcurve.py FreeCAD/Mod/Draft/draftobjects/block.py FreeCAD/Mod/Draft/draftobjects/bspline.py FreeCAD/Mod/Draft/draftobjects/circle.py FreeCAD/Mod/Draft/draftobjects/clone.py FreeCAD/Mod/Draft/draftobjects/dimension.py FreeCAD/Mod/Draft/draftobjects/draft_annotation.py FreeCAD/Mod/Draft/draftobjects/draftlink.py FreeCAD/Mod/Draft/draftobjects/drawingview.py FreeCAD/Mod/Draft/draftobjects/ellipse.py FreeCAD/Mod/Draft/draftobjects/facebinder.py FreeCAD/Mod/Draft/draftobjects/fillet.py +FreeCAD/Mod/Draft/draftobjects/hatch.py FreeCAD/Mod/Draft/draftobjects/label.py FreeCAD/Mod/Draft/draftobjects/layer.py FreeCAD/Mod/Draft/draftobjects/patharray.py FreeCAD/Mod/Draft/draftobjects/pathtwistedarray.py FreeCAD/Mod/Draft/draftobjects/point.py FreeCAD/Mod/Draft/draftobjects/pointarray.py FreeCAD/Mod/Draft/draftobjects/polygon.py FreeCAD/Mod/Draft/draftobjects/rectangle.py FreeCAD/Mod/Draft/draftobjects/shape2dview.py FreeCAD/Mod/Draft/draftobjects/shapestring.py FreeCAD/Mod/Draft/draftobjects/text.py FreeCAD/Mod/Draft/draftobjects/wire.py FreeCAD/Mod/Draft/draftobjects/wpproxy.py FreeCAD/Mod/Draft/drafttaskpanels/README.md FreeCAD/Mod/Draft/drafttaskpanels/__init__.py FreeCAD/Mod/Draft/drafttaskpanels/task_circulararray.py FreeCAD/Mod/Draft/drafttaskpanels/task_orthoarray.py FreeCAD/Mod/Draft/drafttaskpanels/task_polararray.py FreeCAD/Mod/Draft/drafttaskpanels/task_scale.py FreeCAD/Mod/Draft/drafttaskpanels/task_selectplane.py FreeCAD/Mod/Draft/drafttaskpanels/task_shapestring.py FreeCAD/Mod/Draft/drafttests/README.md FreeCAD/Mod/Draft/drafttests/__init__.py FreeCAD/Mod/Draft/drafttests/auxiliary.py FreeCAD/Mod/Draft/drafttests/draft_test_objects.py FreeCAD/Mod/Draft/drafttests/test_airfoildat.py FreeCAD/Mod/Draft/drafttests/test_creation.py +FreeCAD/Mod/Draft/drafttests/test_draftgeomutils.py FreeCAD/Mod/Draft/drafttests/test_dwg.py FreeCAD/Mod/Draft/drafttests/test_dxf.py FreeCAD/Mod/Draft/drafttests/test_import.py FreeCAD/Mod/Draft/drafttests/test_import_gui.py FreeCAD/Mod/Draft/drafttests/test_import_tools.py FreeCAD/Mod/Draft/drafttests/test_modification.py FreeCAD/Mod/Draft/drafttests/test_oca.py FreeCAD/Mod/Draft/drafttests/test_pivy.py FreeCAD/Mod/Draft/drafttests/test_svg.py FreeCAD/Mod/Draft/draftutils/README.md FreeCAD/Mod/Draft/draftutils/__init__.py FreeCAD/Mod/Draft/draftutils/groups.py FreeCAD/Mod/Draft/draftutils/gui_utils.py FreeCAD/Mod/Draft/draftutils/init_draft_statusbar.py FreeCAD/Mod/Draft/draftutils/init_tools.py FreeCAD/Mod/Draft/draftutils/messages.py FreeCAD/Mod/Draft/draftutils/todo.py FreeCAD/Mod/Draft/draftutils/translate.py FreeCAD/Mod/Draft/draftutils/units.py FreeCAD/Mod/Draft/draftutils/utils.py FreeCAD/Mod/Draft/draftviewproviders/README.md FreeCAD/Mod/Draft/draftviewproviders/__init__.py FreeCAD/Mod/Draft/draftviewproviders/view_array.py FreeCAD/Mod/Draft/draftviewproviders/view_base.py FreeCAD/Mod/Draft/draftviewproviders/view_bezcurve.py FreeCAD/Mod/Draft/draftviewproviders/view_bspline.py FreeCAD/Mod/Draft/draftviewproviders/view_circulararray.py FreeCAD/Mod/Draft/draftviewproviders/view_clone.py FreeCAD/Mod/Draft/draftviewproviders/view_dimension.py FreeCAD/Mod/Draft/draftviewproviders/view_draft_annotation.py FreeCAD/Mod/Draft/draftviewproviders/view_draftlink.py FreeCAD/Mod/Draft/draftviewproviders/view_facebinder.py FreeCAD/Mod/Draft/draftviewproviders/view_fillet.py +FreeCAD/Mod/Draft/draftviewproviders/view_hatch.py FreeCAD/Mod/Draft/draftviewproviders/view_label.py FreeCAD/Mod/Draft/draftviewproviders/view_layer.py FreeCAD/Mod/Draft/draftviewproviders/view_orthoarray.py FreeCAD/Mod/Draft/draftviewproviders/view_point.py FreeCAD/Mod/Draft/draftviewproviders/view_polararray.py FreeCAD/Mod/Draft/draftviewproviders/view_rectangle.py +FreeCAD/Mod/Draft/draftviewproviders/view_shapestring.py FreeCAD/Mod/Draft/draftviewproviders/view_text.py FreeCAD/Mod/Draft/draftviewproviders/view_wire.py FreeCAD/Mod/Draft/draftviewproviders/view_wpproxy.py FreeCAD/Mod/Draft/importAirfoilDAT.py FreeCAD/Mod/Draft/importDWG.py FreeCAD/Mod/Draft/importDXF.py FreeCAD/Mod/Draft/importOCA.py FreeCAD/Mod/Draft/importSVG.py FreeCAD/Mod/Drawing/DrawingExample.py FreeCAD/Mod/Drawing/DrawingPatterns.py FreeCAD/Mod/Drawing/DrawingTests.py FreeCAD/Mod/Drawing/Init.py FreeCAD/Mod/Drawing/InitGui.py FreeCAD/Mod/Drawing/README.md FreeCAD/Mod/Fem/Init.py FreeCAD/Mod/Fem/InitGui.py FreeCAD/Mod/Fem/ObjectsFem.py +FreeCAD/Mod/Fem/Resources/ui/ConstraintCentrif.ui FreeCAD/Mod/Fem/Resources/ui/ConstraintSectionPrint.ui FreeCAD/Mod/Fem/Resources/ui/ConstraintTie.ui FreeCAD/Mod/Fem/Resources/ui/ElectrostaticPotential.ui FreeCAD/Mod/Fem/Resources/ui/ElementFluid1D.ui FreeCAD/Mod/Fem/Resources/ui/ElementGeometry1D.ui FreeCAD/Mod/Fem/Resources/ui/ElementGeometry2D.ui FreeCAD/Mod/Fem/Resources/ui/ElementRotation1D.ui FreeCAD/Mod/Fem/Resources/ui/FlowVelocity.ui FreeCAD/Mod/Fem/Resources/ui/InitialFlowVelocity.ui FreeCAD/Mod/Fem/Resources/ui/Material.ui FreeCAD/Mod/Fem/Resources/ui/MaterialReinforcement.ui FreeCAD/Mod/Fem/Resources/ui/MeshBoundaryLayer.ui FreeCAD/Mod/Fem/Resources/ui/MeshGmsh.ui FreeCAD/Mod/Fem/Resources/ui/MeshGroup.ui FreeCAD/Mod/Fem/Resources/ui/MeshGroupXDMFExport.ui FreeCAD/Mod/Fem/Resources/ui/MeshRegion.ui FreeCAD/Mod/Fem/Resources/ui/ResultHints.ui FreeCAD/Mod/Fem/Resources/ui/ResultShow.ui FreeCAD/Mod/Fem/Resources/ui/SolverCalculix.ui FreeCAD/Mod/Fem/TestFemApp.py FreeCAD/Mod/Fem/TestFemGui.py FreeCAD/Mod/Fem/coding_conventions.md FreeCAD/Mod/Fem/femcommands/__init__.py FreeCAD/Mod/Fem/femcommands/commands.py FreeCAD/Mod/Fem/femcommands/manager.py FreeCAD/Mod/Fem/femexamples/__init__.py +FreeCAD/Mod/Fem/femexamples/boxanalysis_base.py FreeCAD/Mod/Fem/femexamples/boxanalysis_frequency.py FreeCAD/Mod/Fem/femexamples/boxanalysis_static.py +FreeCAD/Mod/Fem/femexamples/buckling_lateraltorsionalbuckling.py +FreeCAD/Mod/Fem/femexamples/buckling_platebuckling.py +FreeCAD/Mod/Fem/femexamples/ccx_buckling_flexuralbuckling.py +FreeCAD/Mod/Fem/femexamples/ccx_cantilever_base_edge.py +FreeCAD/Mod/Fem/femexamples/ccx_cantilever_base_face.py +FreeCAD/Mod/Fem/femexamples/ccx_cantilever_base_solid.py +FreeCAD/Mod/Fem/femexamples/ccx_cantilever_beam_circle.py +FreeCAD/Mod/Fem/femexamples/ccx_cantilever_beam_pipe.py +FreeCAD/Mod/Fem/femexamples/ccx_cantilever_beam_rect.py +FreeCAD/Mod/Fem/femexamples/ccx_cantilever_ele_hexa20.py +FreeCAD/Mod/Fem/femexamples/ccx_cantilever_ele_quad4.py +FreeCAD/Mod/Fem/femexamples/ccx_cantilever_ele_quad8.py +FreeCAD/Mod/Fem/femexamples/ccx_cantilever_ele_seg2.py +FreeCAD/Mod/Fem/femexamples/ccx_cantilever_ele_seg3.py +FreeCAD/Mod/Fem/femexamples/ccx_cantilever_ele_tetra4.py +FreeCAD/Mod/Fem/femexamples/ccx_cantilever_ele_tria3.py +FreeCAD/Mod/Fem/femexamples/ccx_cantilever_ele_tria6.py FreeCAD/Mod/Fem/femexamples/ccx_cantilever_faceload.py -FreeCAD/Mod/Fem/femexamples/ccx_cantilever_hexa20faceload.py FreeCAD/Mod/Fem/femexamples/ccx_cantilever_nodeload.py FreeCAD/Mod/Fem/femexamples/ccx_cantilever_prescribeddisplacement.py +FreeCAD/Mod/Fem/femexamples/constraint_centrif.py FreeCAD/Mod/Fem/femexamples/constraint_contact_shell_shell.py FreeCAD/Mod/Fem/femexamples/constraint_contact_solid_solid.py FreeCAD/Mod/Fem/femexamples/constraint_section_print.py FreeCAD/Mod/Fem/femexamples/constraint_selfweight_cantilever.py FreeCAD/Mod/Fem/femexamples/constraint_tie.py FreeCAD/Mod/Fem/femexamples/constraint_transform_beam_hinged.py +FreeCAD/Mod/Fem/femexamples/constraint_transform_torque.py +FreeCAD/Mod/Fem/femexamples/elmer_nonguitutorial01_eigenvalue_of_elastic_beam.py FreeCAD/Mod/Fem/femexamples/equation_electrostatics_capacitance_two_balls.py FreeCAD/Mod/Fem/femexamples/equation_electrostatics_electricforce_elmer_nongui6.py FreeCAD/Mod/Fem/femexamples/examplesgui.py +FreeCAD/Mod/Fem/femexamples/frequency_beamsimple.py FreeCAD/Mod/Fem/femexamples/manager.py FreeCAD/Mod/Fem/femexamples/material_multiple_bendingbeam_fiveboxes.py FreeCAD/Mod/Fem/femexamples/material_multiple_bendingbeam_fivefaces.py FreeCAD/Mod/Fem/femexamples/material_multiple_tensionrod_twoboxes.py FreeCAD/Mod/Fem/femexamples/material_nl_platewithhole.py FreeCAD/Mod/Fem/femexamples/meshes/__init__.py +FreeCAD/Mod/Fem/femexamples/meshes/mesh_beamsimple_tetra10.py FreeCAD/Mod/Fem/femexamples/meshes/mesh_boxanalysis_tetra10.py FreeCAD/Mod/Fem/femexamples/meshes/mesh_boxes_2_vertikal_tetra10.py +FreeCAD/Mod/Fem/femexamples/meshes/mesh_buckling_ibeam_tria6.py +FreeCAD/Mod/Fem/femexamples/meshes/mesh_buckling_plate_tria6.py FreeCAD/Mod/Fem/femexamples/meshes/mesh_canticcx_hexa20.py +FreeCAD/Mod/Fem/femexamples/meshes/mesh_canticcx_quad4.py +FreeCAD/Mod/Fem/femexamples/meshes/mesh_canticcx_quad8.py +FreeCAD/Mod/Fem/femexamples/meshes/mesh_canticcx_seg2.py +FreeCAD/Mod/Fem/femexamples/meshes/mesh_canticcx_seg3.py FreeCAD/Mod/Fem/femexamples/meshes/mesh_canticcx_tetra10.py +FreeCAD/Mod/Fem/femexamples/meshes/mesh_canticcx_tria3.py +FreeCAD/Mod/Fem/femexamples/meshes/mesh_canticcx_tria6.py FreeCAD/Mod/Fem/femexamples/meshes/mesh_capacitance_two_balls_tetra10.py +FreeCAD/Mod/Fem/femexamples/meshes/mesh_constraint_centrif_tetra10.py FreeCAD/Mod/Fem/femexamples/meshes/mesh_constraint_tie_tetra10.py FreeCAD/Mod/Fem/femexamples/meshes/mesh_contact_box_halfcylinder_tetra10.py FreeCAD/Mod/Fem/femexamples/meshes/mesh_contact_tube_tube_tria3.py +FreeCAD/Mod/Fem/femexamples/meshes/mesh_eigenvalue_of_elastic_beam_tetra10.py FreeCAD/Mod/Fem/femexamples/meshes/mesh_electricforce_elmer_nongui6_tetra10.py +FreeCAD/Mod/Fem/femexamples/meshes/mesh_flexural_buckling.py FreeCAD/Mod/Fem/femexamples/meshes/mesh_multibodybeam_tetra10.py FreeCAD/Mod/Fem/femexamples/meshes/mesh_multibodybeam_tria6.py +FreeCAD/Mod/Fem/femexamples/meshes/mesh_plate_mystran_quad4.py FreeCAD/Mod/Fem/femexamples/meshes/mesh_platewithhole_tetra10.py FreeCAD/Mod/Fem/femexamples/meshes/mesh_rc_wall_2d_tria6.py FreeCAD/Mod/Fem/femexamples/meshes/mesh_section_print_tetra10.py FreeCAD/Mod/Fem/femexamples/meshes/mesh_selfweight_cantilever_tetra10.py FreeCAD/Mod/Fem/femexamples/meshes/mesh_square_pipe_end_twisted_tria6.py FreeCAD/Mod/Fem/femexamples/meshes/mesh_thermomech_bimetall_tetra10.py FreeCAD/Mod/Fem/femexamples/meshes/mesh_thermomech_flow1d_seg3.py FreeCAD/Mod/Fem/femexamples/meshes/mesh_thermomech_spine_tetra10.py FreeCAD/Mod/Fem/femexamples/meshes/mesh_transform_beam_hinged_tetra10.py +FreeCAD/Mod/Fem/femexamples/meshes/mesh_transform_torque_tetra10.py +FreeCAD/Mod/Fem/femexamples/meshes/mesh_truss_crane_seg2.py +FreeCAD/Mod/Fem/femexamples/meshes/mesh_truss_crane_seg3.py +FreeCAD/Mod/Fem/femexamples/mystran_plate.py FreeCAD/Mod/Fem/femexamples/rc_wall_2d.py FreeCAD/Mod/Fem/femexamples/square_pipe_end_twisted_edgeforces.py FreeCAD/Mod/Fem/femexamples/square_pipe_end_twisted_nodeforces.py FreeCAD/Mod/Fem/femexamples/thermomech_bimetall.py FreeCAD/Mod/Fem/femexamples/thermomech_flow1d.py FreeCAD/Mod/Fem/femexamples/thermomech_spine.py +FreeCAD/Mod/Fem/femexamples/truss_3d_cs_circle_ele_seg2.py +FreeCAD/Mod/Fem/femexamples/truss_3d_cs_circle_ele_seg3.py FreeCAD/Mod/Fem/femguiobjects/__init__.py FreeCAD/Mod/Fem/femguiobjects/readme.md FreeCAD/Mod/Fem/femguiutils/__init__.py FreeCAD/Mod/Fem/femguiutils/migrate_gui.py FreeCAD/Mod/Fem/femguiutils/selection_widgets.py FreeCAD/Mod/Fem/feminout/__init__.py FreeCAD/Mod/Fem/feminout/convert2TetGen.py +FreeCAD/Mod/Fem/feminout/exportNastranMesh.py FreeCAD/Mod/Fem/feminout/importCcxDatResults.py FreeCAD/Mod/Fem/feminout/importCcxFrdResults.py FreeCAD/Mod/Fem/feminout/importFenicsMesh.py FreeCAD/Mod/Fem/feminout/importInpMesh.py FreeCAD/Mod/Fem/feminout/importPyMesh.py FreeCAD/Mod/Fem/feminout/importToolsFem.py FreeCAD/Mod/Fem/feminout/importVTKResults.py FreeCAD/Mod/Fem/feminout/importYamlJsonMesh.py FreeCAD/Mod/Fem/feminout/importZ88Mesh.py FreeCAD/Mod/Fem/feminout/importZ88O2Results.py FreeCAD/Mod/Fem/feminout/readFenicsXDMF.py FreeCAD/Mod/Fem/feminout/readFenicsXML.py FreeCAD/Mod/Fem/feminout/writeFenicsXDMF.py FreeCAD/Mod/Fem/feminout/writeFenicsXML.py FreeCAD/Mod/Fem/femmesh/__init__.py FreeCAD/Mod/Fem/femmesh/femmesh2mesh.py FreeCAD/Mod/Fem/femmesh/gmshtools.py +FreeCAD/Mod/Fem/femmesh/meshsetsgetter.py FreeCAD/Mod/Fem/femmesh/meshtools.py FreeCAD/Mod/Fem/femobjects/__init__.py FreeCAD/Mod/Fem/femobjects/base_fempythonobject.py FreeCAD/Mod/Fem/femobjects/constant_vacuumpermittivity.py FreeCAD/Mod/Fem/femobjects/constraint_bodyheatsource.py +FreeCAD/Mod/Fem/femobjects/constraint_centrif.py FreeCAD/Mod/Fem/femobjects/constraint_electrostaticpotential.py FreeCAD/Mod/Fem/femobjects/constraint_flowvelocity.py FreeCAD/Mod/Fem/femobjects/constraint_initialflowvelocity.py FreeCAD/Mod/Fem/femobjects/constraint_sectionprint.py FreeCAD/Mod/Fem/femobjects/constraint_selfweight.py FreeCAD/Mod/Fem/femobjects/constraint_tie.py FreeCAD/Mod/Fem/femobjects/element_fluid1D.py FreeCAD/Mod/Fem/femobjects/element_geometry1D.py FreeCAD/Mod/Fem/femobjects/element_geometry2D.py FreeCAD/Mod/Fem/femobjects/element_rotation1D.py FreeCAD/Mod/Fem/femobjects/material_common.py FreeCAD/Mod/Fem/femobjects/material_mechanicalnonlinear.py FreeCAD/Mod/Fem/femobjects/material_reinforced.py FreeCAD/Mod/Fem/femobjects/mesh_boundarylayer.py FreeCAD/Mod/Fem/femobjects/mesh_gmsh.py FreeCAD/Mod/Fem/femobjects/mesh_group.py FreeCAD/Mod/Fem/femobjects/mesh_region.py FreeCAD/Mod/Fem/femobjects/mesh_result.py FreeCAD/Mod/Fem/femobjects/result_mechanical.py FreeCAD/Mod/Fem/femobjects/solver_ccxtools.py FreeCAD/Mod/Fem/femresult/__init__.py FreeCAD/Mod/Fem/femresult/resulttools.py FreeCAD/Mod/Fem/femsolver/__init__.py FreeCAD/Mod/Fem/femsolver/calculix/__init__.py FreeCAD/Mod/Fem/femsolver/calculix/solver.py FreeCAD/Mod/Fem/femsolver/calculix/tasks.py +FreeCAD/Mod/Fem/femsolver/calculix/write_constraint_centrif.py +FreeCAD/Mod/Fem/femsolver/calculix/write_constraint_contact.py +FreeCAD/Mod/Fem/femsolver/calculix/write_constraint_displacement.py +FreeCAD/Mod/Fem/femsolver/calculix/write_constraint_fixed.py +FreeCAD/Mod/Fem/femsolver/calculix/write_constraint_fluidsection.py +FreeCAD/Mod/Fem/femsolver/calculix/write_constraint_force.py +FreeCAD/Mod/Fem/femsolver/calculix/write_constraint_heatflux.py +FreeCAD/Mod/Fem/femsolver/calculix/write_constraint_initialtemperature.py +FreeCAD/Mod/Fem/femsolver/calculix/write_constraint_planerotation.py +FreeCAD/Mod/Fem/femsolver/calculix/write_constraint_pressure.py +FreeCAD/Mod/Fem/femsolver/calculix/write_constraint_sectionprint.py +FreeCAD/Mod/Fem/femsolver/calculix/write_constraint_selfweight.py +FreeCAD/Mod/Fem/femsolver/calculix/write_constraint_temperature.py +FreeCAD/Mod/Fem/femsolver/calculix/write_constraint_tie.py +FreeCAD/Mod/Fem/femsolver/calculix/write_constraint_transform.py +FreeCAD/Mod/Fem/femsolver/calculix/write_femelement_geometry.py +FreeCAD/Mod/Fem/femsolver/calculix/write_femelement_material.py +FreeCAD/Mod/Fem/femsolver/calculix/write_femelement_matgeosets.py +FreeCAD/Mod/Fem/femsolver/calculix/write_footer.py +FreeCAD/Mod/Fem/femsolver/calculix/write_mesh.py +FreeCAD/Mod/Fem/femsolver/calculix/write_step_equation.py +FreeCAD/Mod/Fem/femsolver/calculix/write_step_output.py FreeCAD/Mod/Fem/femsolver/calculix/writer.py FreeCAD/Mod/Fem/femsolver/elmer/__init__.py FreeCAD/Mod/Fem/femsolver/elmer/equations/__init__.py FreeCAD/Mod/Fem/femsolver/elmer/equations/elasticity.py FreeCAD/Mod/Fem/femsolver/elmer/equations/electricforce.py FreeCAD/Mod/Fem/femsolver/elmer/equations/electrostatic.py FreeCAD/Mod/Fem/femsolver/elmer/equations/equation.py FreeCAD/Mod/Fem/femsolver/elmer/equations/flow.py FreeCAD/Mod/Fem/femsolver/elmer/equations/flux.py FreeCAD/Mod/Fem/femsolver/elmer/equations/heat.py FreeCAD/Mod/Fem/femsolver/elmer/equations/linear.py FreeCAD/Mod/Fem/femsolver/elmer/equations/nonlinear.py FreeCAD/Mod/Fem/femsolver/elmer/sifio.py FreeCAD/Mod/Fem/femsolver/elmer/solver.py FreeCAD/Mod/Fem/femsolver/elmer/tasks.py FreeCAD/Mod/Fem/femsolver/elmer/writer.py FreeCAD/Mod/Fem/femsolver/equationbase.py FreeCAD/Mod/Fem/femsolver/fenics/__init__.py FreeCAD/Mod/Fem/femsolver/fenics/fenics_tools.py +FreeCAD/Mod/Fem/femsolver/mystran/__init__.py +FreeCAD/Mod/Fem/femsolver/mystran/add_con_fixed.py +FreeCAD/Mod/Fem/femsolver/mystran/add_con_force.py +FreeCAD/Mod/Fem/femsolver/mystran/add_femelement_geometry.py +FreeCAD/Mod/Fem/femsolver/mystran/add_femelement_material.py +FreeCAD/Mod/Fem/femsolver/mystran/add_mesh.py +FreeCAD/Mod/Fem/femsolver/mystran/add_solver_control.py +FreeCAD/Mod/Fem/femsolver/mystran/solver.py +FreeCAD/Mod/Fem/femsolver/mystran/tasks.py +FreeCAD/Mod/Fem/femsolver/mystran/writer.py FreeCAD/Mod/Fem/femsolver/report.py FreeCAD/Mod/Fem/femsolver/reportdialog.py FreeCAD/Mod/Fem/femsolver/run.py FreeCAD/Mod/Fem/femsolver/settings.py FreeCAD/Mod/Fem/femsolver/signal.py FreeCAD/Mod/Fem/femsolver/solver_taskpanel.py FreeCAD/Mod/Fem/femsolver/solverbase.py FreeCAD/Mod/Fem/femsolver/task.py FreeCAD/Mod/Fem/femsolver/writerbase.py FreeCAD/Mod/Fem/femsolver/z88/__init__.py FreeCAD/Mod/Fem/femsolver/z88/solver.py FreeCAD/Mod/Fem/femsolver/z88/tasks.py FreeCAD/Mod/Fem/femsolver/z88/writer.py FreeCAD/Mod/Fem/femtaskpanels/__init__.py +FreeCAD/Mod/Fem/femtaskpanels/task_constraint_centrif.py FreeCAD/Mod/Fem/femtaskpanels/task_constraint_electrostaticpotential.py FreeCAD/Mod/Fem/femtaskpanels/task_constraint_flowvelocity.py FreeCAD/Mod/Fem/femtaskpanels/task_constraint_initialflowvelocity.py FreeCAD/Mod/Fem/femtaskpanels/task_constraint_sectionprint.py FreeCAD/Mod/Fem/femtaskpanels/task_constraint_tie.py FreeCAD/Mod/Fem/femtaskpanels/task_element_fluid1D.py FreeCAD/Mod/Fem/femtaskpanels/task_element_geometry1D.py FreeCAD/Mod/Fem/femtaskpanels/task_element_geometry2D.py FreeCAD/Mod/Fem/femtaskpanels/task_element_rotation1D.py FreeCAD/Mod/Fem/femtaskpanels/task_material_common.py FreeCAD/Mod/Fem/femtaskpanels/task_material_reinforced.py FreeCAD/Mod/Fem/femtaskpanels/task_mesh_boundarylayer.py FreeCAD/Mod/Fem/femtaskpanels/task_mesh_gmsh.py FreeCAD/Mod/Fem/femtaskpanels/task_mesh_group.py FreeCAD/Mod/Fem/femtaskpanels/task_mesh_region.py FreeCAD/Mod/Fem/femtaskpanels/task_result_mechanical.py FreeCAD/Mod/Fem/femtaskpanels/task_solver_ccxtools.py FreeCAD/Mod/Fem/femtest/__init__.py FreeCAD/Mod/Fem/femtest/app/__init__.py FreeCAD/Mod/Fem/femtest/app/support_utils.py FreeCAD/Mod/Fem/femtest/app/test_ccxtools.py FreeCAD/Mod/Fem/femtest/app/test_common.py FreeCAD/Mod/Fem/femtest/app/test_femimport.py FreeCAD/Mod/Fem/femtest/app/test_material.py FreeCAD/Mod/Fem/femtest/app/test_mesh.py FreeCAD/Mod/Fem/femtest/app/test_object.py FreeCAD/Mod/Fem/femtest/app/test_open.py FreeCAD/Mod/Fem/femtest/app/test_result.py FreeCAD/Mod/Fem/femtest/app/test_solver_calculix.py FreeCAD/Mod/Fem/femtest/app/test_solver_elmer.py +FreeCAD/Mod/Fem/femtest/app/test_solver_mystran.py FreeCAD/Mod/Fem/femtest/app/test_solver_z88.py FreeCAD/Mod/Fem/femtest/data/__init__.py FreeCAD/Mod/Fem/femtest/data/calculix/__init__.py FreeCAD/Mod/Fem/femtest/data/calculix/box.FCStd FreeCAD/Mod/Fem/femtest/data/calculix/box_frequency.FCStd FreeCAD/Mod/Fem/femtest/data/calculix/box_frequency.dat FreeCAD/Mod/Fem/femtest/data/calculix/box_frequency.frd FreeCAD/Mod/Fem/femtest/data/calculix/box_frequency.inp FreeCAD/Mod/Fem/femtest/data/calculix/box_frequency_expected_values FreeCAD/Mod/Fem/femtest/data/calculix/box_static.FCStd FreeCAD/Mod/Fem/femtest/data/calculix/box_static.dat FreeCAD/Mod/Fem/femtest/data/calculix/box_static.frd FreeCAD/Mod/Fem/femtest/data/calculix/box_static.inp FreeCAD/Mod/Fem/femtest/data/calculix/box_static_expected_values -FreeCAD/Mod/Fem/femtest/data/calculix/ccxcantilever_faceload.inp -FreeCAD/Mod/Fem/femtest/data/calculix/ccxcantilever_hexa20.inp -FreeCAD/Mod/Fem/femtest/data/calculix/ccxcantilever_nodeload.inp -FreeCAD/Mod/Fem/femtest/data/calculix/ccxcantilever_prescribeddisplacement.inp +FreeCAD/Mod/Fem/femtest/data/calculix/ccx_buckling_flexuralbuckling.dat +FreeCAD/Mod/Fem/femtest/data/calculix/ccx_buckling_flexuralbuckling.inp +FreeCAD/Mod/Fem/femtest/data/calculix/ccx_cantilever_beam_circle.inp +FreeCAD/Mod/Fem/femtest/data/calculix/ccx_cantilever_beam_pipe.inp +FreeCAD/Mod/Fem/femtest/data/calculix/ccx_cantilever_beam_rect.inp +FreeCAD/Mod/Fem/femtest/data/calculix/ccx_cantilever_ele_hexa20.inp +FreeCAD/Mod/Fem/femtest/data/calculix/ccx_cantilever_ele_quad4.inp +FreeCAD/Mod/Fem/femtest/data/calculix/ccx_cantilever_ele_quad8.inp +FreeCAD/Mod/Fem/femtest/data/calculix/ccx_cantilever_ele_seg2.inp +FreeCAD/Mod/Fem/femtest/data/calculix/ccx_cantilever_ele_seg3.inp +FreeCAD/Mod/Fem/femtest/data/calculix/ccx_cantilever_ele_tria3.inp +FreeCAD/Mod/Fem/femtest/data/calculix/ccx_cantilever_ele_tria6.inp +FreeCAD/Mod/Fem/femtest/data/calculix/ccx_cantilever_faceload.inp +FreeCAD/Mod/Fem/femtest/data/calculix/ccx_cantilever_nodeload.inp +FreeCAD/Mod/Fem/femtest/data/calculix/ccx_cantilever_prescribeddisplacement.inp +FreeCAD/Mod/Fem/femtest/data/calculix/constraint_centrif.inp FreeCAD/Mod/Fem/femtest/data/calculix/constraint_contact_shell_shell.FCStd FreeCAD/Mod/Fem/femtest/data/calculix/constraint_contact_shell_shell.inp FreeCAD/Mod/Fem/femtest/data/calculix/constraint_contact_solid_solid.FCStd FreeCAD/Mod/Fem/femtest/data/calculix/constraint_contact_solid_solid.inp FreeCAD/Mod/Fem/femtest/data/calculix/constraint_sectionprint.inp FreeCAD/Mod/Fem/femtest/data/calculix/constraint_selfweight_cantilever.inp FreeCAD/Mod/Fem/femtest/data/calculix/constraint_tie.inp +FreeCAD/Mod/Fem/femtest/data/calculix/constraint_transform_beam_hinged.inp +FreeCAD/Mod/Fem/femtest/data/calculix/constraint_transform_torque.inp +FreeCAD/Mod/Fem/femtest/data/calculix/frequency_beamsimple.inp FreeCAD/Mod/Fem/femtest/data/calculix/material_multiple_bendingbeam_fiveboxes.inp FreeCAD/Mod/Fem/femtest/data/calculix/material_multiple_bendingbeam_fivefaces.inp FreeCAD/Mod/Fem/femtest/data/calculix/material_multiple_tensionrod_twoboxes.inp FreeCAD/Mod/Fem/femtest/data/calculix/material_nonlinear.inp FreeCAD/Mod/Fem/femtest/data/calculix/square_pipe_end_twisted_edgeforces.inp FreeCAD/Mod/Fem/femtest/data/calculix/square_pipe_end_twisted_nodeforces.inp FreeCAD/Mod/Fem/femtest/data/calculix/thermomech_bimetall.inp FreeCAD/Mod/Fem/femtest/data/calculix/thermomech_flow1D.FCStd FreeCAD/Mod/Fem/femtest/data/calculix/thermomech_flow1D.dat FreeCAD/Mod/Fem/femtest/data/calculix/thermomech_flow1D.frd FreeCAD/Mod/Fem/femtest/data/calculix/thermomech_flow1D.inp FreeCAD/Mod/Fem/femtest/data/calculix/thermomech_flow1D_expected_values FreeCAD/Mod/Fem/femtest/data/calculix/thermomech_flow1D_inout_nodes.txt FreeCAD/Mod/Fem/femtest/data/calculix/thermomech_spine.FCStd FreeCAD/Mod/Fem/femtest/data/calculix/thermomech_spine.dat FreeCAD/Mod/Fem/femtest/data/calculix/thermomech_spine.frd FreeCAD/Mod/Fem/femtest/data/calculix/thermomech_spine.inp FreeCAD/Mod/Fem/femtest/data/calculix/thermomech_spine_expected_values FreeCAD/Mod/Fem/femtest/data/elmer/ELMERSOLVER_STARTINFO FreeCAD/Mod/Fem/femtest/data/elmer/__init__.py FreeCAD/Mod/Fem/femtest/data/elmer/box_static_0_mm.sif FreeCAD/Mod/Fem/femtest/data/elmer/ccxcantilever_faceload_0_mm.sif FreeCAD/Mod/Fem/femtest/data/elmer/ccxcantilever_faceload_1_si.sif FreeCAD/Mod/Fem/femtest/data/elmer/ccxcantilever_nodeload_0_mm.sif FreeCAD/Mod/Fem/femtest/data/elmer/ccxcantilever_prescribeddisplacement_0_mm.sif FreeCAD/Mod/Fem/femtest/data/elmer/group_mesh.geo FreeCAD/Mod/Fem/femtest/data/mesh/__init__.py FreeCAD/Mod/Fem/femtest/data/mesh/tetra10_mesh.inp FreeCAD/Mod/Fem/femtest/data/mesh/tetra10_mesh.unv FreeCAD/Mod/Fem/femtest/data/mesh/tetra10_mesh.vtk FreeCAD/Mod/Fem/femtest/data/mesh/tetra10_mesh.yml FreeCAD/Mod/Fem/femtest/data/mesh/tetra10_mesh.z88 +FreeCAD/Mod/Fem/femtest/data/mystran/__init__.py +FreeCAD/Mod/Fem/femtest/data/mystran/ccx_cantilever_ele_quad4.bdf +FreeCAD/Mod/Fem/femtest/data/mystran/ccx_cantilever_ele_seg2.bdf +FreeCAD/Mod/Fem/femtest/data/mystran/ccx_cantilever_ele_tria3.bdf +FreeCAD/Mod/Fem/femtest/data/mystran/ccx_cantilever_faceload.bdf +FreeCAD/Mod/Fem/femtest/data/mystran/ccx_cantilever_nodeload.bdf +FreeCAD/Mod/Fem/femtest/data/mystran/mystran_plate.bdf FreeCAD/Mod/Fem/femtest/data/open/__init__.py FreeCAD/Mod/Fem/femtest/data/open/all_objects_de9b3fb438.FCStd FreeCAD/Mod/Fem/femtest/data/z88/__init__.py -FreeCAD/Mod/Fem/femtest/data/z88/ccxcantilever_faceload/51.txt -FreeCAD/Mod/Fem/femtest/data/z88/ccxcantilever_faceload/__init__.py -FreeCAD/Mod/Fem/femtest/data/z88/ccxcantilever_faceload/z88.dyn -FreeCAD/Mod/Fem/femtest/data/z88/ccxcantilever_faceload/z88elp.txt -FreeCAD/Mod/Fem/femtest/data/z88/ccxcantilever_faceload/z88i1.txt -FreeCAD/Mod/Fem/femtest/data/z88/ccxcantilever_faceload/z88i2.txt -FreeCAD/Mod/Fem/femtest/data/z88/ccxcantilever_faceload/z88i5.txt -FreeCAD/Mod/Fem/femtest/data/z88/ccxcantilever_faceload/z88int.txt -FreeCAD/Mod/Fem/femtest/data/z88/ccxcantilever_faceload/z88man.txt -FreeCAD/Mod/Fem/femtest/data/z88/ccxcantilever_faceload/z88mat.txt -FreeCAD/Mod/Fem/femtest/data/z88/ccxcantilever_hexa20/51.txt -FreeCAD/Mod/Fem/femtest/data/z88/ccxcantilever_hexa20/__init__.py -FreeCAD/Mod/Fem/femtest/data/z88/ccxcantilever_hexa20/z88.dyn -FreeCAD/Mod/Fem/femtest/data/z88/ccxcantilever_hexa20/z88elp.txt -FreeCAD/Mod/Fem/femtest/data/z88/ccxcantilever_hexa20/z88i1.txt -FreeCAD/Mod/Fem/femtest/data/z88/ccxcantilever_hexa20/z88i2.txt -FreeCAD/Mod/Fem/femtest/data/z88/ccxcantilever_hexa20/z88i5.txt -FreeCAD/Mod/Fem/femtest/data/z88/ccxcantilever_hexa20/z88int.txt -FreeCAD/Mod/Fem/femtest/data/z88/ccxcantilever_hexa20/z88man.txt -FreeCAD/Mod/Fem/femtest/data/z88/ccxcantilever_hexa20/z88mat.txt -FreeCAD/Mod/Fem/femtest/data/z88/ccxcantilever_nodeload/51.txt -FreeCAD/Mod/Fem/femtest/data/z88/ccxcantilever_nodeload/__init__.py -FreeCAD/Mod/Fem/femtest/data/z88/ccxcantilever_nodeload/z88.dyn -FreeCAD/Mod/Fem/femtest/data/z88/ccxcantilever_nodeload/z88elp.txt -FreeCAD/Mod/Fem/femtest/data/z88/ccxcantilever_nodeload/z88i1.txt -FreeCAD/Mod/Fem/femtest/data/z88/ccxcantilever_nodeload/z88i2.txt -FreeCAD/Mod/Fem/femtest/data/z88/ccxcantilever_nodeload/z88i5.txt -FreeCAD/Mod/Fem/femtest/data/z88/ccxcantilever_nodeload/z88int.txt -FreeCAD/Mod/Fem/femtest/data/z88/ccxcantilever_nodeload/z88man.txt -FreeCAD/Mod/Fem/femtest/data/z88/ccxcantilever_nodeload/z88mat.txt +FreeCAD/Mod/Fem/femtest/data/z88/ccx_cantilever_ele_hexa20/51.txt +FreeCAD/Mod/Fem/femtest/data/z88/ccx_cantilever_ele_hexa20/__init__.py +FreeCAD/Mod/Fem/femtest/data/z88/ccx_cantilever_ele_hexa20/z88.dyn +FreeCAD/Mod/Fem/femtest/data/z88/ccx_cantilever_ele_hexa20/z88elp.txt +FreeCAD/Mod/Fem/femtest/data/z88/ccx_cantilever_ele_hexa20/z88i1.txt +FreeCAD/Mod/Fem/femtest/data/z88/ccx_cantilever_ele_hexa20/z88i2.txt +FreeCAD/Mod/Fem/femtest/data/z88/ccx_cantilever_ele_hexa20/z88i5.txt +FreeCAD/Mod/Fem/femtest/data/z88/ccx_cantilever_ele_hexa20/z88int.txt +FreeCAD/Mod/Fem/femtest/data/z88/ccx_cantilever_ele_hexa20/z88man.txt +FreeCAD/Mod/Fem/femtest/data/z88/ccx_cantilever_ele_hexa20/z88mat.txt +FreeCAD/Mod/Fem/femtest/data/z88/ccx_cantilever_ele_tria6/51.txt +FreeCAD/Mod/Fem/femtest/data/z88/ccx_cantilever_ele_tria6/__init__.py +FreeCAD/Mod/Fem/femtest/data/z88/ccx_cantilever_ele_tria6/z88.dyn +FreeCAD/Mod/Fem/femtest/data/z88/ccx_cantilever_ele_tria6/z88elp.txt +FreeCAD/Mod/Fem/femtest/data/z88/ccx_cantilever_ele_tria6/z88i1.txt +FreeCAD/Mod/Fem/femtest/data/z88/ccx_cantilever_ele_tria6/z88i2.txt +FreeCAD/Mod/Fem/femtest/data/z88/ccx_cantilever_ele_tria6/z88i5.txt +FreeCAD/Mod/Fem/femtest/data/z88/ccx_cantilever_ele_tria6/z88int.txt +FreeCAD/Mod/Fem/femtest/data/z88/ccx_cantilever_ele_tria6/z88man.txt +FreeCAD/Mod/Fem/femtest/data/z88/ccx_cantilever_ele_tria6/z88mat.txt +FreeCAD/Mod/Fem/femtest/data/z88/ccx_cantilever_faceload/51.txt +FreeCAD/Mod/Fem/femtest/data/z88/ccx_cantilever_faceload/__init__.py +FreeCAD/Mod/Fem/femtest/data/z88/ccx_cantilever_faceload/z88.dyn +FreeCAD/Mod/Fem/femtest/data/z88/ccx_cantilever_faceload/z88elp.txt +FreeCAD/Mod/Fem/femtest/data/z88/ccx_cantilever_faceload/z88i1.txt +FreeCAD/Mod/Fem/femtest/data/z88/ccx_cantilever_faceload/z88i2.txt +FreeCAD/Mod/Fem/femtest/data/z88/ccx_cantilever_faceload/z88i5.txt +FreeCAD/Mod/Fem/femtest/data/z88/ccx_cantilever_faceload/z88int.txt +FreeCAD/Mod/Fem/femtest/data/z88/ccx_cantilever_faceload/z88man.txt +FreeCAD/Mod/Fem/femtest/data/z88/ccx_cantilever_faceload/z88mat.txt +FreeCAD/Mod/Fem/femtest/data/z88/ccx_cantilever_nodeload/51.txt +FreeCAD/Mod/Fem/femtest/data/z88/ccx_cantilever_nodeload/__init__.py +FreeCAD/Mod/Fem/femtest/data/z88/ccx_cantilever_nodeload/z88.dyn +FreeCAD/Mod/Fem/femtest/data/z88/ccx_cantilever_nodeload/z88elp.txt +FreeCAD/Mod/Fem/femtest/data/z88/ccx_cantilever_nodeload/z88i1.txt +FreeCAD/Mod/Fem/femtest/data/z88/ccx_cantilever_nodeload/z88i2.txt +FreeCAD/Mod/Fem/femtest/data/z88/ccx_cantilever_nodeload/z88i5.txt +FreeCAD/Mod/Fem/femtest/data/z88/ccx_cantilever_nodeload/z88int.txt +FreeCAD/Mod/Fem/femtest/data/z88/ccx_cantilever_nodeload/z88man.txt +FreeCAD/Mod/Fem/femtest/data/z88/ccx_cantilever_nodeload/z88mat.txt FreeCAD/Mod/Fem/femtest/gui/__init__.py FreeCAD/Mod/Fem/femtest/gui/test_open.py FreeCAD/Mod/Fem/femtest/test_commands.sh FreeCAD/Mod/Fem/femtest/test_information.md FreeCAD/Mod/Fem/femtools/__init__.py FreeCAD/Mod/Fem/femtools/ccxtools.py FreeCAD/Mod/Fem/femtools/checksanalysis.py FreeCAD/Mod/Fem/femtools/constants.py FreeCAD/Mod/Fem/femtools/errors.py FreeCAD/Mod/Fem/femtools/femutils.py FreeCAD/Mod/Fem/femtools/geomtools.py FreeCAD/Mod/Fem/femtools/membertools.py FreeCAD/Mod/Fem/femtools/migrate_app.py FreeCAD/Mod/Fem/femtools/tokrules.py FreeCAD/Mod/Fem/femviewprovider/__init__.py FreeCAD/Mod/Fem/femviewprovider/view_base_femconstraint.py FreeCAD/Mod/Fem/femviewprovider/view_base_femobject.py FreeCAD/Mod/Fem/femviewprovider/view_constant_vacuumpermittivity.py FreeCAD/Mod/Fem/femviewprovider/view_constraint_bodyheatsource.py +FreeCAD/Mod/Fem/femviewprovider/view_constraint_centrif.py FreeCAD/Mod/Fem/femviewprovider/view_constraint_electrostaticpotential.py FreeCAD/Mod/Fem/femviewprovider/view_constraint_flowvelocity.py FreeCAD/Mod/Fem/femviewprovider/view_constraint_initialflowvelocity.py FreeCAD/Mod/Fem/femviewprovider/view_constraint_sectionprint.py FreeCAD/Mod/Fem/femviewprovider/view_constraint_selfweight.py FreeCAD/Mod/Fem/femviewprovider/view_constraint_tie.py FreeCAD/Mod/Fem/femviewprovider/view_element_fluid1D.py FreeCAD/Mod/Fem/femviewprovider/view_element_geometry1D.py FreeCAD/Mod/Fem/femviewprovider/view_element_geometry2D.py FreeCAD/Mod/Fem/femviewprovider/view_element_rotation1D.py FreeCAD/Mod/Fem/femviewprovider/view_material_common.py FreeCAD/Mod/Fem/femviewprovider/view_material_mechanicalnonlinear.py FreeCAD/Mod/Fem/femviewprovider/view_material_reinforced.py FreeCAD/Mod/Fem/femviewprovider/view_mesh_boundarylayer.py FreeCAD/Mod/Fem/femviewprovider/view_mesh_gmsh.py FreeCAD/Mod/Fem/femviewprovider/view_mesh_group.py FreeCAD/Mod/Fem/femviewprovider/view_mesh_region.py FreeCAD/Mod/Fem/femviewprovider/view_mesh_result.py FreeCAD/Mod/Fem/femviewprovider/view_result_mechanical.py FreeCAD/Mod/Fem/femviewprovider/view_solver_ccxtools.py FreeCAD/Mod/Idf/Idf.py FreeCAD/Mod/Idf/Idflibs/0603_SMD.stp FreeCAD/Mod/Idf/Idflibs/0805_SMD.stp FreeCAD/Mod/Idf/Idflibs/1206_SMD.stp FreeCAD/Mod/Idf/Idflibs/1210_SMD.stp FreeCAD/Mod/Idf/Idflibs/1812_SMD.stp FreeCAD/Mod/Idf/Idflibs/2225_SMD.stp FreeCAD/Mod/Idf/Idflibs/2512_SMD.stp FreeCAD/Mod/Idf/Idflibs/CAP_50SGV_8_10.stp FreeCAD/Mod/Idf/Idflibs/EPL22_6_16.stp FreeCAD/Mod/Idf/Idflibs/I22_2_5_16.stp FreeCAD/Mod/Idf/Idflibs/I22_2_5_16withEPL22_6_16.stp FreeCAD/Mod/Idf/Idflibs/License.txt FreeCAD/Mod/Idf/Idflibs/MSOP_10.stp FreeCAD/Mod/Idf/Idflibs/RLF_12545.igs FreeCAD/Mod/Idf/Idflibs/RLF_12545.stp FreeCAD/Mod/Idf/Idflibs/RLF_7030.stp FreeCAD/Mod/Idf/Idflibs/SMB_DO_214AA.stp FreeCAD/Mod/Idf/Idflibs/SMC_DO_214AB.stp FreeCAD/Mod/Idf/Idflibs/SOD_323.igs FreeCAD/Mod/Idf/Idflibs/SOD_323.stp FreeCAD/Mod/Idf/Idflibs/SOD_523.stp FreeCAD/Mod/Idf/Idflibs/SOT23.igs FreeCAD/Mod/Idf/Idflibs/SOT23.stp FreeCAD/Mod/Idf/Idflibs/SOT404.igs FreeCAD/Mod/Idf/Idflibs/SOT404.stp FreeCAD/Mod/Idf/Idflibs/SOT428_DPAK.stp FreeCAD/Mod/Idf/Idflibs/SOT_323_3.stp FreeCAD/Mod/Idf/Idflibs/SOT_96.stp FreeCAD/Mod/Idf/Idflibs/TCMT1107_4.stp FreeCAD/Mod/Idf/Idflibs/TSM_103_01_L_DV_A.stp FreeCAD/Mod/Idf/Idflibs/TSM_104_01_L_DV_A.stp FreeCAD/Mod/Idf/Idflibs/TSS0P_8.stp FreeCAD/Mod/Idf/Idflibs/VC0603_SMD.stp FreeCAD/Mod/Idf/Idflibs/footprints_models.csv FreeCAD/Mod/Idf/Init.py FreeCAD/Mod/Image/ImageTools/_CommandImageScaling.py FreeCAD/Mod/Image/ImageTools/__init__.py FreeCAD/Mod/Image/Init.py FreeCAD/Mod/Image/InitGui.py FreeCAD/Mod/Import/Init.py FreeCAD/Mod/Import/InitGui.py FreeCAD/Mod/Import/gzip_utf8.py FreeCAD/Mod/Import/stepZ.py FreeCAD/Mod/Inspection/Init.py FreeCAD/Mod/Inspection/InitGui.py FreeCAD/Mod/Material/Init.py FreeCAD/Mod/Material/InitGui.py FreeCAD/Mod/Material/Material.py FreeCAD/Mod/Material/MaterialEditor.py FreeCAD/Mod/Material/Material_rc.py FreeCAD/Mod/Material/Templatematerial.yml FreeCAD/Mod/Material/importFCMat.py FreeCAD/Mod/Material/materials-editor.ui FreeCAD/Mod/Material/materialtools/__init__.py FreeCAD/Mod/Material/materialtools/cardutils.py FreeCAD/Mod/Measure/Init.py +FreeCAD/Mod/Mesh/App/TestData/NASTRAN_Test_Delimited_GRID_CQUAD4.bdf +FreeCAD/Mod/Mesh/App/TestData/NASTRAN_Test_GRIDSTAR_CQUAD4.bdf +FreeCAD/Mod/Mesh/App/TestData/NASTRAN_Test_GRID_CQUAD4.bdf +FreeCAD/Mod/Mesh/App/TestData/NASTRAN_Test_GRID_CTRIA3.bdf FreeCAD/Mod/Mesh/BuildRegularGeoms.py FreeCAD/Mod/Mesh/Init.py FreeCAD/Mod/Mesh/InitGui.py FreeCAD/Mod/Mesh/MeshTestsApp.py FreeCAD/Mod/MeshPart/Init.py FreeCAD/Mod/MeshPart/InitGui.py FreeCAD/Mod/MeshPart/MeshFlatteningCommand.py FreeCAD/Mod/OpenSCAD/Init.py FreeCAD/Mod/OpenSCAD/InitGui.py FreeCAD/Mod/OpenSCAD/OpenSCAD2Dgeom.py FreeCAD/Mod/OpenSCAD/OpenSCADCommands.py FreeCAD/Mod/OpenSCAD/OpenSCADFeatures.py +FreeCAD/Mod/OpenSCAD/OpenSCADTest/__init__.py +FreeCAD/Mod/OpenSCAD/OpenSCADTest/app/__init__.py +FreeCAD/Mod/OpenSCAD/OpenSCADTest/app/test_importCSG.py +FreeCAD/Mod/OpenSCAD/OpenSCADTest/data/CSG.csg +FreeCAD/Mod/OpenSCAD/OpenSCADTest/data/CSG.scad +FreeCAD/Mod/OpenSCAD/OpenSCADTest/data/Cube.stl +FreeCAD/Mod/OpenSCAD/OpenSCADTest/data/Square.dxf +FreeCAD/Mod/OpenSCAD/OpenSCADTest/data/Surface.dat +FreeCAD/Mod/OpenSCAD/OpenSCADTest/data/Surface.png +FreeCAD/Mod/OpenSCAD/OpenSCADTest/data/Surface2.dat +FreeCAD/Mod/OpenSCAD/OpenSCADTest/data/__init__.py +FreeCAD/Mod/OpenSCAD/OpenSCADTest/gui/__init__.py +FreeCAD/Mod/OpenSCAD/OpenSCADTest/gui/test_dummy.py +FreeCAD/Mod/OpenSCAD/OpenSCADTest/test_information.md FreeCAD/Mod/OpenSCAD/OpenSCADUtils.py FreeCAD/Mod/OpenSCAD/OpenSCAD_rc.py +FreeCAD/Mod/OpenSCAD/TestOpenSCADApp.py +FreeCAD/Mod/OpenSCAD/TestOpenSCADGui.py FreeCAD/Mod/OpenSCAD/colorcodeshapes.py FreeCAD/Mod/OpenSCAD/expandplacements.py FreeCAD/Mod/OpenSCAD/exportCSG.py FreeCAD/Mod/OpenSCAD/importCSG.py FreeCAD/Mod/OpenSCAD/replaceobj.py FreeCAD/Mod/OpenSCAD/tokrules.py FreeCAD/Mod/Part/AttachmentEditor/Commands.py FreeCAD/Mod/Part/AttachmentEditor/FrozenClass.py FreeCAD/Mod/Part/AttachmentEditor/TaskAttachmentEditor.py FreeCAD/Mod/Part/AttachmentEditor/TaskAttachmentEditor.ui FreeCAD/Mod/Part/AttachmentEditor/__init__.py FreeCAD/Mod/Part/BOPTools/GeneralFuseResult.py FreeCAD/Mod/Part/BOPTools/JoinAPI.py FreeCAD/Mod/Part/BOPTools/JoinFeatures.py FreeCAD/Mod/Part/BOPTools/ShapeMerge.py FreeCAD/Mod/Part/BOPTools/SplitAPI.py FreeCAD/Mod/Part/BOPTools/SplitFeatures.py FreeCAD/Mod/Part/BOPTools/Utils.py FreeCAD/Mod/Part/BOPTools/__init__.py FreeCAD/Mod/Part/BasicShapes/CommandShapes.py +FreeCAD/Mod/Part/BasicShapes/ShapeContent.py FreeCAD/Mod/Part/BasicShapes/Shapes.py FreeCAD/Mod/Part/BasicShapes/TaskTube.ui FreeCAD/Mod/Part/BasicShapes/ViewProviderShapes.py FreeCAD/Mod/Part/BasicShapes/__init__.py FreeCAD/Mod/Part/CompoundTools/CompoundFilter.py FreeCAD/Mod/Part/CompoundTools/Explode.py FreeCAD/Mod/Part/CompoundTools/_CommandCompoundFilter.py FreeCAD/Mod/Part/CompoundTools/_CommandExplodeCompound.py FreeCAD/Mod/Part/CompoundTools/__init__.py FreeCAD/Mod/Part/Init.py FreeCAD/Mod/Part/InitGui.py FreeCAD/Mod/Part/JoinFeatures.py FreeCAD/Mod/Part/MakeBottle.py +FreeCAD/Mod/Part/PartEnums.py FreeCAD/Mod/Part/TestPartApp.py FreeCAD/Mod/Part/TestPartGui.py FreeCAD/Mod/Part/parttests/__init__.py FreeCAD/Mod/Part/parttests/part_test_objects.py FreeCAD/Mod/Part/parttests/regression_tests.py FreeCAD/Mod/PartDesign/Init.py FreeCAD/Mod/PartDesign/InitGui.py FreeCAD/Mod/PartDesign/InvoluteGearFeature.py FreeCAD/Mod/PartDesign/InvoluteGearFeature.ui FreeCAD/Mod/PartDesign/PartDesignTests/TestBoolean.py FreeCAD/Mod/PartDesign/PartDesignTests/TestChamfer.py FreeCAD/Mod/PartDesign/PartDesignTests/TestDatum.py FreeCAD/Mod/PartDesign/PartDesignTests/TestDraft.py FreeCAD/Mod/PartDesign/PartDesignTests/TestFillet.py FreeCAD/Mod/PartDesign/PartDesignTests/TestHole.py +FreeCAD/Mod/PartDesign/PartDesignTests/TestInvoluteGear.py FreeCAD/Mod/PartDesign/PartDesignTests/TestLinearPattern.py FreeCAD/Mod/PartDesign/PartDesignTests/TestLoft.py FreeCAD/Mod/PartDesign/PartDesignTests/TestMirrored.py FreeCAD/Mod/PartDesign/PartDesignTests/TestMultiTransform.py FreeCAD/Mod/PartDesign/PartDesignTests/TestPad.py FreeCAD/Mod/PartDesign/PartDesignTests/TestPipe.py FreeCAD/Mod/PartDesign/PartDesignTests/TestPocket.py FreeCAD/Mod/PartDesign/PartDesignTests/TestPolarPattern.py FreeCAD/Mod/PartDesign/PartDesignTests/TestPrimitive.py FreeCAD/Mod/PartDesign/PartDesignTests/TestRevolve.py FreeCAD/Mod/PartDesign/PartDesignTests/TestShapeBinder.py FreeCAD/Mod/PartDesign/PartDesignTests/TestThickness.py FreeCAD/Mod/PartDesign/PartDesignTests/__init__.py FreeCAD/Mod/PartDesign/Scripts/DistanceBolt.py FreeCAD/Mod/PartDesign/Scripts/Epitrochoid.py FreeCAD/Mod/PartDesign/Scripts/FilletArc.py FreeCAD/Mod/PartDesign/Scripts/Gear.py FreeCAD/Mod/PartDesign/Scripts/Parallelepiped.py FreeCAD/Mod/PartDesign/Scripts/RadialCopy.py FreeCAD/Mod/PartDesign/Scripts/Spring.py FreeCAD/Mod/PartDesign/Scripts/__init__.py FreeCAD/Mod/PartDesign/SprocketFeature.py FreeCAD/Mod/PartDesign/SprocketFeature.ui FreeCAD/Mod/PartDesign/TestPartDesignApp.py FreeCAD/Mod/PartDesign/TestPartDesignGui.py FreeCAD/Mod/PartDesign/WizardShaft/SegmentFunction.py FreeCAD/Mod/PartDesign/WizardShaft/Shaft.py FreeCAD/Mod/PartDesign/WizardShaft/ShaftDiagram.py FreeCAD/Mod/PartDesign/WizardShaft/ShaftFeature.py FreeCAD/Mod/PartDesign/WizardShaft/WizardShaft.py FreeCAD/Mod/PartDesign/WizardShaft/WizardShaft.svg FreeCAD/Mod/PartDesign/WizardShaft/WizardShaftTable.py FreeCAD/Mod/PartDesign/WizardShaft/__init__.py FreeCAD/Mod/PartDesign/__init__.py FreeCAD/Mod/PartDesign/fcgear/__init__.py FreeCAD/Mod/PartDesign/fcgear/fcgear.py FreeCAD/Mod/PartDesign/fcgear/fcgeardialog.py FreeCAD/Mod/PartDesign/fcgear/involute.py FreeCAD/Mod/PartDesign/fcgear/svggear.py FreeCAD/Mod/PartDesign/fcsprocket/__init__.py FreeCAD/Mod/PartDesign/fcsprocket/fcsprocket.py FreeCAD/Mod/PartDesign/fcsprocket/fcsprocketdialog.py FreeCAD/Mod/PartDesign/fcsprocket/sprocket.py -FreeCAD/Mod/Path/Data/Threads/imperial-internal.csv -FreeCAD/Mod/Path/Data/Threads/metric-internal.csv +FreeCAD/Mod/Path/Data/Threads/imperial-external-2A.csv +FreeCAD/Mod/Path/Data/Threads/imperial-external-3A.csv +FreeCAD/Mod/Path/Data/Threads/imperial-internal-2B.csv +FreeCAD/Mod/Path/Data/Threads/imperial-internal-3B.csv +FreeCAD/Mod/Path/Data/Threads/metric-external-4G6G.csv +FreeCAD/Mod/Path/Data/Threads/metric-external-6G.csv +FreeCAD/Mod/Path/Data/Threads/metric-internal-6H.csv +FreeCAD/Mod/Path/Generators/drill_generator.py +FreeCAD/Mod/Path/Generators/helix_generator.py +FreeCAD/Mod/Path/Generators/rotation_generator.py +FreeCAD/Mod/Path/Generators/threadmilling_generator.py +FreeCAD/Mod/Path/Generators/toolchange_generator.py FreeCAD/Mod/Path/Images/Ops/chamfer.svg FreeCAD/Mod/Path/Images/Tools/drill.svg FreeCAD/Mod/Path/Images/Tools/endmill.svg FreeCAD/Mod/Path/Images/Tools/v-bit.svg FreeCAD/Mod/Path/Init.py FreeCAD/Mod/Path/InitGui.py FreeCAD/Mod/Path/PathCommands.py +FreeCAD/Mod/Path/PathFeedRate.py +FreeCAD/Mod/Path/PathMachineState.py +FreeCAD/Mod/Path/PathPythonGui/__init__.py +FreeCAD/Mod/Path/PathPythonGui/simple_edit_panel.py FreeCAD/Mod/Path/PathScripts/PathAdaptive.py FreeCAD/Mod/Path/PathScripts/PathAdaptiveGui.py FreeCAD/Mod/Path/PathScripts/PathAreaOp.py FreeCAD/Mod/Path/PathScripts/PathArray.py FreeCAD/Mod/Path/PathScripts/PathCircularHoleBase.py FreeCAD/Mod/Path/PathScripts/PathCircularHoleBaseGui.py -FreeCAD/Mod/Path/PathScripts/PathCommands.py FreeCAD/Mod/Path/PathScripts/PathComment.py FreeCAD/Mod/Path/PathScripts/PathCopy.py FreeCAD/Mod/Path/PathScripts/PathCustom.py FreeCAD/Mod/Path/PathScripts/PathCustomGui.py FreeCAD/Mod/Path/PathScripts/PathDeburr.py FreeCAD/Mod/Path/PathScripts/PathDeburrGui.py FreeCAD/Mod/Path/PathScripts/PathDressup.py FreeCAD/Mod/Path/PathScripts/PathDressupAxisMap.py FreeCAD/Mod/Path/PathScripts/PathDressupDogbone.py FreeCAD/Mod/Path/PathScripts/PathDressupDragknife.py FreeCAD/Mod/Path/PathScripts/PathDressupHoldingTags.py FreeCAD/Mod/Path/PathScripts/PathDressupLeadInOut.py FreeCAD/Mod/Path/PathScripts/PathDressupPathBoundary.py FreeCAD/Mod/Path/PathScripts/PathDressupPathBoundaryGui.py FreeCAD/Mod/Path/PathScripts/PathDressupRampEntry.py FreeCAD/Mod/Path/PathScripts/PathDressupTag.py FreeCAD/Mod/Path/PathScripts/PathDressupTagGui.py FreeCAD/Mod/Path/PathScripts/PathDressupTagPreferences.py FreeCAD/Mod/Path/PathScripts/PathDressupZCorrect.py FreeCAD/Mod/Path/PathScripts/PathDrilling.py FreeCAD/Mod/Path/PathScripts/PathDrillingGui.py FreeCAD/Mod/Path/PathScripts/PathEngrave.py FreeCAD/Mod/Path/PathScripts/PathEngraveBase.py FreeCAD/Mod/Path/PathScripts/PathEngraveGui.py +FreeCAD/Mod/Path/PathScripts/PathFeatureExtensions.py +FreeCAD/Mod/Path/PathScripts/PathFeatureExtensionsGui.py FreeCAD/Mod/Path/PathScripts/PathFixture.py FreeCAD/Mod/Path/PathScripts/PathGeom.py FreeCAD/Mod/Path/PathScripts/PathGetPoint.py FreeCAD/Mod/Path/PathScripts/PathGui.py FreeCAD/Mod/Path/PathScripts/PathGuiInit.py FreeCAD/Mod/Path/PathScripts/PathHelix.py FreeCAD/Mod/Path/PathScripts/PathHelixGui.py FreeCAD/Mod/Path/PathScripts/PathHop.py FreeCAD/Mod/Path/PathScripts/PathIconViewProvider.py FreeCAD/Mod/Path/PathScripts/PathInspect.py FreeCAD/Mod/Path/PathScripts/PathJob.py FreeCAD/Mod/Path/PathScripts/PathJobCmd.py FreeCAD/Mod/Path/PathScripts/PathJobDlg.py FreeCAD/Mod/Path/PathScripts/PathJobGui.py FreeCAD/Mod/Path/PathScripts/PathLog.py FreeCAD/Mod/Path/PathScripts/PathMillFace.py FreeCAD/Mod/Path/PathScripts/PathMillFaceGui.py FreeCAD/Mod/Path/PathScripts/PathOp.py FreeCAD/Mod/Path/PathScripts/PathOpGui.py FreeCAD/Mod/Path/PathScripts/PathOpTools.py FreeCAD/Mod/Path/PathScripts/PathPocket.py FreeCAD/Mod/Path/PathScripts/PathPocketBase.py FreeCAD/Mod/Path/PathScripts/PathPocketBaseGui.py FreeCAD/Mod/Path/PathScripts/PathPocketGui.py FreeCAD/Mod/Path/PathScripts/PathPocketShape.py FreeCAD/Mod/Path/PathScripts/PathPocketShapeGui.py FreeCAD/Mod/Path/PathScripts/PathPost.py FreeCAD/Mod/Path/PathScripts/PathPostProcessor.py FreeCAD/Mod/Path/PathScripts/PathPreferences.py FreeCAD/Mod/Path/PathScripts/PathPreferencesAdvanced.py FreeCAD/Mod/Path/PathScripts/PathPreferencesPathDressup.py FreeCAD/Mod/Path/PathScripts/PathPreferencesPathJob.py FreeCAD/Mod/Path/PathScripts/PathProbe.py FreeCAD/Mod/Path/PathScripts/PathProbeGui.py FreeCAD/Mod/Path/PathScripts/PathProfile.py FreeCAD/Mod/Path/PathScripts/PathProfileContour.py FreeCAD/Mod/Path/PathScripts/PathProfileContourGui.py FreeCAD/Mod/Path/PathScripts/PathProfileEdges.py FreeCAD/Mod/Path/PathScripts/PathProfileEdgesGui.py FreeCAD/Mod/Path/PathScripts/PathProfileFaces.py FreeCAD/Mod/Path/PathScripts/PathProfileFacesGui.py FreeCAD/Mod/Path/PathScripts/PathProfileGui.py FreeCAD/Mod/Path/PathScripts/PathProperty.py FreeCAD/Mod/Path/PathScripts/PathPropertyBag.py FreeCAD/Mod/Path/PathScripts/PathPropertyBagGui.py FreeCAD/Mod/Path/PathScripts/PathPropertyEditor.py FreeCAD/Mod/Path/PathScripts/PathSanity.py FreeCAD/Mod/Path/PathScripts/PathSelection.py FreeCAD/Mod/Path/PathScripts/PathSetupSheet.py FreeCAD/Mod/Path/PathScripts/PathSetupSheetGui.py FreeCAD/Mod/Path/PathScripts/PathSetupSheetOpPrototype.py FreeCAD/Mod/Path/PathScripts/PathSetupSheetOpPrototypeGui.py FreeCAD/Mod/Path/PathScripts/PathSimpleCopy.py FreeCAD/Mod/Path/PathScripts/PathSimulatorGui.py FreeCAD/Mod/Path/PathScripts/PathSlot.py FreeCAD/Mod/Path/PathScripts/PathSlotGui.py FreeCAD/Mod/Path/PathScripts/PathStock.py FreeCAD/Mod/Path/PathScripts/PathStop.py FreeCAD/Mod/Path/PathScripts/PathSurface.py FreeCAD/Mod/Path/PathScripts/PathSurfaceGui.py FreeCAD/Mod/Path/PathScripts/PathSurfaceSupport.py FreeCAD/Mod/Path/PathScripts/PathThreadMilling.py FreeCAD/Mod/Path/PathScripts/PathThreadMillingGui.py FreeCAD/Mod/Path/PathScripts/PathToolBit.py FreeCAD/Mod/Path/PathScripts/PathToolBitCmd.py FreeCAD/Mod/Path/PathScripts/PathToolBitEdit.py FreeCAD/Mod/Path/PathScripts/PathToolBitGui.py FreeCAD/Mod/Path/PathScripts/PathToolBitLibraryCmd.py FreeCAD/Mod/Path/PathScripts/PathToolBitLibraryGui.py FreeCAD/Mod/Path/PathScripts/PathToolController.py FreeCAD/Mod/Path/PathScripts/PathToolControllerGui.py FreeCAD/Mod/Path/PathScripts/PathToolEdit.py FreeCAD/Mod/Path/PathScripts/PathToolLibraryEditor.py FreeCAD/Mod/Path/PathScripts/PathToolLibraryManager.py FreeCAD/Mod/Path/PathScripts/PathUtil.py FreeCAD/Mod/Path/PathScripts/PathUtils.py FreeCAD/Mod/Path/PathScripts/PathUtilsGui.py FreeCAD/Mod/Path/PathScripts/PathVcarve.py FreeCAD/Mod/Path/PathScripts/PathVcarveGui.py FreeCAD/Mod/Path/PathScripts/PathWaterline.py FreeCAD/Mod/Path/PathScripts/PathWaterlineGui.py FreeCAD/Mod/Path/PathScripts/PostUtils.py FreeCAD/Mod/Path/PathScripts/__init__.py +FreeCAD/Mod/Path/PathScripts/drillableLib.py +FreeCAD/Mod/Path/PathScripts/post/KineticNCBeamicon2_post.py FreeCAD/Mod/Path/PathScripts/post/__init__.py FreeCAD/Mod/Path/PathScripts/post/centroid_post.py FreeCAD/Mod/Path/PathScripts/post/comparams_post.py FreeCAD/Mod/Path/PathScripts/post/dxf_post.py FreeCAD/Mod/Path/PathScripts/post/dynapath_post.py FreeCAD/Mod/Path/PathScripts/post/example_pre.py +FreeCAD/Mod/Path/PathScripts/post/fablin_post.py +FreeCAD/Mod/Path/PathScripts/post/fanuc_post.py FreeCAD/Mod/Path/PathScripts/post/gcode_pre.py FreeCAD/Mod/Path/PathScripts/post/grbl_post.py +FreeCAD/Mod/Path/PathScripts/post/heidenhain_post.py FreeCAD/Mod/Path/PathScripts/post/jtech_post.py FreeCAD/Mod/Path/PathScripts/post/linuxcnc_post.py FreeCAD/Mod/Path/PathScripts/post/mach3_mach4_post.py +FreeCAD/Mod/Path/PathScripts/post/marlin_post.py FreeCAD/Mod/Path/PathScripts/post/nccad_post.py FreeCAD/Mod/Path/PathScripts/post/opensbp_post.py FreeCAD/Mod/Path/PathScripts/post/opensbp_pre.py FreeCAD/Mod/Path/PathScripts/post/philips_post.py FreeCAD/Mod/Path/PathScripts/post/rml_post.py +FreeCAD/Mod/Path/PathScripts/post/rrf_post.py FreeCAD/Mod/Path/PathScripts/post/slic3r_pre.py FreeCAD/Mod/Path/PathScripts/post/smoothie_post.py +FreeCAD/Mod/Path/PathScripts/post/uccnc_post.py +FreeCAD/Mod/Path/PathTests/Drilling_1.FCStd FreeCAD/Mod/Path/PathTests/PathTestUtils.py +FreeCAD/Mod/Path/PathTests/TestPathAdaptive.py FreeCAD/Mod/Path/PathTests/TestPathCore.py FreeCAD/Mod/Path/PathTests/TestPathDeburr.py FreeCAD/Mod/Path/PathTests/TestPathDepthParams.py FreeCAD/Mod/Path/PathTests/TestPathDressupDogbone.py FreeCAD/Mod/Path/PathTests/TestPathDressupHoldingTags.py +FreeCAD/Mod/Path/PathTests/TestPathDrillGenerator.py +FreeCAD/Mod/Path/PathTests/TestPathDrillable.py FreeCAD/Mod/Path/PathTests/TestPathGeom.py FreeCAD/Mod/Path/PathTests/TestPathHelix.py +FreeCAD/Mod/Path/PathTests/TestPathHelixGenerator.py +FreeCAD/Mod/Path/PathTests/TestPathHelpers.py FreeCAD/Mod/Path/PathTests/TestPathLog.py FreeCAD/Mod/Path/PathTests/TestPathOpTools.py FreeCAD/Mod/Path/PathTests/TestPathPost.py FreeCAD/Mod/Path/PathTests/TestPathPreferences.py FreeCAD/Mod/Path/PathTests/TestPathPropertyBag.py +FreeCAD/Mod/Path/PathTests/TestPathRotationGenerator.py FreeCAD/Mod/Path/PathTests/TestPathSetupSheet.py FreeCAD/Mod/Path/PathTests/TestPathStock.py FreeCAD/Mod/Path/PathTests/TestPathThreadMilling.py +FreeCAD/Mod/Path/PathTests/TestPathThreadMillingGenerator.py FreeCAD/Mod/Path/PathTests/TestPathTool.py FreeCAD/Mod/Path/PathTests/TestPathToolBit.py +FreeCAD/Mod/Path/PathTests/TestPathToolChangeGenerator.py FreeCAD/Mod/Path/PathTests/TestPathToolController.py FreeCAD/Mod/Path/PathTests/TestPathTooltable.py FreeCAD/Mod/Path/PathTests/TestPathUtil.py FreeCAD/Mod/Path/PathTests/TestPathVcarve.py FreeCAD/Mod/Path/PathTests/TestPathVoronoi.py FreeCAD/Mod/Path/PathTests/Tools/Bit/test-path-tool-bit-bit-00.fctb FreeCAD/Mod/Path/PathTests/Tools/Library/test-path-tool-bit-library-00.fctl FreeCAD/Mod/Path/PathTests/Tools/Shape/test-path-tool-bit-shape-00.fcstd FreeCAD/Mod/Path/PathTests/__init__.py FreeCAD/Mod/Path/PathTests/boxtest.fcstd FreeCAD/Mod/Path/PathTests/test-path-tool-bit-bit-00.fctb FreeCAD/Mod/Path/PathTests/test-path-tool-bit-library-00.fctl FreeCAD/Mod/Path/PathTests/test-path-tool-bit-shape-00.fcstd +FreeCAD/Mod/Path/PathTests/test_adaptive.fcstd FreeCAD/Mod/Path/PathTests/test_centroid_00.ngc FreeCAD/Mod/Path/PathTests/test_geomop.fcstd FreeCAD/Mod/Path/PathTests/test_holes00.fcstd FreeCAD/Mod/Path/PathTests/test_linuxcnc_00.ngc FreeCAD/Mod/Path/TestPathApp.py FreeCAD/Mod/Path/Tools/Bit/45degree_chamfer.fctb FreeCAD/Mod/Path/Tools/Bit/5mm-thread-cutter.fctb FreeCAD/Mod/Path/Tools/Bit/5mm_Drill.fctb FreeCAD/Mod/Path/Tools/Bit/5mm_Endmill.fctb FreeCAD/Mod/Path/Tools/Bit/60degree_Vbit.fctb FreeCAD/Mod/Path/Tools/Bit/6mm_Ball_End.fctb FreeCAD/Mod/Path/Tools/Bit/6mm_Bullnose.fctb FreeCAD/Mod/Path/Tools/Bit/probe.fctb FreeCAD/Mod/Path/Tools/Bit/slittingsaw.fctb FreeCAD/Mod/Path/Tools/Library/Default.fctl +FreeCAD/Mod/Path/Tools/README.md FreeCAD/Mod/Path/Tools/Shape/ballend.fcstd FreeCAD/Mod/Path/Tools/Shape/bullnose.fcstd FreeCAD/Mod/Path/Tools/Shape/chamfer.fcstd FreeCAD/Mod/Path/Tools/Shape/drill.fcstd FreeCAD/Mod/Path/Tools/Shape/endmill.fcstd FreeCAD/Mod/Path/Tools/Shape/probe.fcstd FreeCAD/Mod/Path/Tools/Shape/slittingsaw.fcstd FreeCAD/Mod/Path/Tools/Shape/thread-mill.fcstd FreeCAD/Mod/Path/Tools/Shape/v-bit.fcstd +FreeCAD/Mod/Plot/Plot.py FreeCAD/Mod/Points/Init.py FreeCAD/Mod/Points/InitGui.py FreeCAD/Mod/Raytracing/Init.py FreeCAD/Mod/Raytracing/InitGui.py FreeCAD/Mod/Raytracing/RaytracingExample.py FreeCAD/Mod/ReverseEngineering/Init.py FreeCAD/Mod/ReverseEngineering/InitGui.py FreeCAD/Mod/Robot/Init.py FreeCAD/Mod/Robot/InitGui.py FreeCAD/Mod/Robot/KukaExporter.py FreeCAD/Mod/Robot/MovieTool.py FreeCAD/Mod/Robot/RobotExample.py FreeCAD/Mod/Robot/RobotExampleTrajectoryOutOfShapes.py FreeCAD/Mod/Show/Containers.py FreeCAD/Mod/Show/DepGraphTools.py FreeCAD/Mod/Show/SceneDetail.py FreeCAD/Mod/Show/SceneDetails/Camera.py FreeCAD/Mod/Show/SceneDetails/ClipPlane.py FreeCAD/Mod/Show/SceneDetails/ObjectClipPlane.py FreeCAD/Mod/Show/SceneDetails/Pickability.py FreeCAD/Mod/Show/SceneDetails/VProperty.py FreeCAD/Mod/Show/SceneDetails/Workbench.py FreeCAD/Mod/Show/SceneDetails/__init__.py FreeCAD/Mod/Show/ShowUtils.py FreeCAD/Mod/Show/TVObserver.py FreeCAD/Mod/Show/TVStack.py FreeCAD/Mod/Show/__init__.py FreeCAD/Mod/Show/mTempoVis.py FreeCAD/Mod/Sketcher/Init.py FreeCAD/Mod/Sketcher/InitGui.py FreeCAD/Mod/Sketcher/ProfileLib/Hexagon.py FreeCAD/Mod/Sketcher/ProfileLib/RegularPolygon.py FreeCAD/Mod/Sketcher/ProfileLib/__init__.py FreeCAD/Mod/Sketcher/Profiles.py FreeCAD/Mod/Sketcher/SketcherExample.py +FreeCAD/Mod/Sketcher/SketcherTests/TestSketchExpression.py FreeCAD/Mod/Sketcher/SketcherTests/TestSketchFillet.py FreeCAD/Mod/Sketcher/SketcherTests/TestSketcherSolver.py FreeCAD/Mod/Sketcher/SketcherTests/__init__.py FreeCAD/Mod/Sketcher/TestSketcherApp.py FreeCAD/Mod/Sketcher/TestSketcherGui.py FreeCAD/Mod/Spreadsheet/Init.py FreeCAD/Mod/Spreadsheet/InitGui.py FreeCAD/Mod/Spreadsheet/TestSpreadsheet.py FreeCAD/Mod/Spreadsheet/importXLSX.py FreeCAD/Mod/Start/Init.py FreeCAD/Mod/Start/InitGui.py FreeCAD/Mod/Start/StartPage/StartPage.py FreeCAD/Mod/Start/StartPage/TranslationTexts.py FreeCAD/Mod/Start/StartPage/__init__.py -FreeCAD/Mod/Start/TestStartGui.py FreeCAD/Mod/Start/TestStart/TestStartPage.py FreeCAD/Mod/Start/TestStart/__init__.py +FreeCAD/Mod/Start/TestStartGui.py FreeCAD/Mod/Surface/Init.py FreeCAD/Mod/Surface/InitGui.py FreeCAD/Mod/TechDraw/Init.py FreeCAD/Mod/TechDraw/InitGui.py FreeCAD/Mod/TechDraw/TDTest/DHatchTest.py FreeCAD/Mod/TechDraw/TDTest/DProjGroupTest.py FreeCAD/Mod/TechDraw/TDTest/DVAnnoSymImageTest.py FreeCAD/Mod/TechDraw/TDTest/DVBalloonTest.py FreeCAD/Mod/TechDraw/TDTest/DVDimensionTest.py FreeCAD/Mod/TechDraw/TDTest/DVPartTest.py FreeCAD/Mod/TechDraw/TDTest/DVSectionTest.py FreeCAD/Mod/TechDraw/TDTest/TestHatch.svg FreeCAD/Mod/TechDraw/TDTest/TestImage.png FreeCAD/Mod/TechDraw/TDTest/TestSymbol.svg FreeCAD/Mod/TechDraw/TDTest/TestTemplate.svg FreeCAD/Mod/TechDraw/TDTest/__init__.py +FreeCAD/Mod/TechDraw/TechDrawTools/CommandMoveView.py +FreeCAD/Mod/TechDraw/TechDrawTools/CommandShareView.py +FreeCAD/Mod/TechDraw/TechDrawTools/Gui/DlgPageChooser.ui +FreeCAD/Mod/TechDraw/TechDrawTools/Gui/TaskMoveView.ui +FreeCAD/Mod/TechDraw/TechDrawTools/TDToolsMovers.py +FreeCAD/Mod/TechDraw/TechDrawTools/TDToolsUtil.py +FreeCAD/Mod/TechDraw/TechDrawTools/TaskMoveView.py +FreeCAD/Mod/TechDraw/TechDrawTools/TaskShareView.py +FreeCAD/Mod/TechDraw/TechDrawTools/__init__.py FreeCAD/Mod/TechDraw/TestTechDrawApp.py FreeCAD/Mod/Test/BaseTests.py FreeCAD/Mod/Test/Document.py FreeCAD/Mod/Test/Init.py FreeCAD/Mod/Test/InitGui.py FreeCAD/Mod/Test/Menu.py +FreeCAD/Mod/Test/Metadata.py FreeCAD/Mod/Test/TestApp.py +FreeCAD/Mod/Test/TestData/bad_root_node.xml +FreeCAD/Mod/Test/TestData/bad_version.xml +FreeCAD/Mod/Test/TestData/bad_xml.xml +FreeCAD/Mod/Test/TestData/basic_metadata.xml +FreeCAD/Mod/Test/TestData/content_items.xml FreeCAD/Mod/Test/TestGui.py FreeCAD/Mod/Test/TestPythonSyntax.py FreeCAD/Mod/Test/UnicodeTests.py FreeCAD/Mod/Test/UnitTests.py FreeCAD/Mod/Test/Workbench.py FreeCAD/Mod/Test/__init__.py FreeCAD/Mod/Test/qtunittest.py FreeCAD/Mod/Test/testmakeWireString.py FreeCAD/Mod/Test/unittestgui.py FreeCAD/Mod/Tux/InitGui.py FreeCAD/Mod/Tux/NavigationIndicatorGui.py FreeCAD/Mod/Tux/PersistentToolbars.py FreeCAD/Mod/Tux/PersistentToolbarsGui.py FreeCAD/Mod/Tux/Tux_rc.py FreeCAD/Mod/Web/Init.py FreeCAD/Mod/Web/InitGui.py FreeCAD/Mod/Web/TestWebGui.py FreeCAD/bin/FreeCAD FreeCAD/bin/FreeCADCmd +FreeCAD/include/E57Format/E57Export.h FreeCAD/lib/DraftUtils.so FreeCAD/lib/Drawing.so FreeCAD/lib/DrawingGui.so FreeCAD/lib/Fem.so FreeCAD/lib/FemGui.so FreeCAD/lib/FreeCAD.so FreeCAD/lib/FreeCADGui.so FreeCAD/lib/Image.so FreeCAD/lib/ImageGui.so FreeCAD/lib/Import.so FreeCAD/lib/ImportGui.so FreeCAD/lib/Inspection.so FreeCAD/lib/InspectionGui.so FreeCAD/lib/Measure.so FreeCAD/lib/Mesh.so FreeCAD/lib/MeshGui.so FreeCAD/lib/MeshPart.so FreeCAD/lib/MeshPartGui.so FreeCAD/lib/Part.so FreeCAD/lib/PartDesignGui.so FreeCAD/lib/PartGui.so FreeCAD/lib/Path.so FreeCAD/lib/PathGui.so FreeCAD/lib/PathSimulator.so FreeCAD/lib/Points.so FreeCAD/lib/PointsGui.so FreeCAD/lib/QtUnitGui.so FreeCAD/lib/Raytracing.so FreeCAD/lib/RaytracingGui.so FreeCAD/lib/ReverseEngineering.so FreeCAD/lib/ReverseEngineeringGui.so FreeCAD/lib/Robot.so FreeCAD/lib/RobotGui.so FreeCAD/lib/Sketcher.so FreeCAD/lib/SketcherGui.so FreeCAD/lib/Spreadsheet.so FreeCAD/lib/SpreadsheetGui.so FreeCAD/lib/Start.so FreeCAD/lib/StartGui.so FreeCAD/lib/Surface.so FreeCAD/lib/SurfaceGui.so FreeCAD/lib/TechDraw.so FreeCAD/lib/TechDrawGui.so FreeCAD/lib/Web.so FreeCAD/lib/WebGui.so FreeCAD/lib/_PartDesign.so FreeCAD/lib/area.so FreeCAD/lib/flatmesh.so FreeCAD/lib/libDriver.so FreeCAD/lib/libDriverDAT.so FreeCAD/lib/libDriverSTL.so FreeCAD/lib/libDriverUNV.so +FreeCAD/lib/libE57Format.a FreeCAD/lib/libFreeCADApp.so FreeCAD/lib/libFreeCADBase.so FreeCAD/lib/libFreeCADGui.so FreeCAD/lib/libMEFISTO2.so FreeCAD/lib/libSMDS.so FreeCAD/lib/libSMESH.so FreeCAD/lib/libSMESHDS.so FreeCAD/lib/libStdMeshers.so FreeCAD/lib/libarea-native.so FreeCAD/share/3Dconnexion/3DConnexion.xml +FreeCAD/share/Gui/PreferencePackTemplates/Arch_Colors.cfg +FreeCAD/share/Gui/PreferencePackTemplates/Console_Colors.cfg +FreeCAD/share/Gui/PreferencePackTemplates/Draft_Colors.cfg +FreeCAD/share/Gui/PreferencePackTemplates/Editor_Colors.cfg +FreeCAD/share/Gui/PreferencePackTemplates/Editor_Font.cfg +FreeCAD/share/Gui/PreferencePackTemplates/Main_window_layout.cfg +FreeCAD/share/Gui/PreferencePackTemplates/Path_Colors.cfg +FreeCAD/share/Gui/PreferencePackTemplates/Sketcher_Colors.cfg +FreeCAD/share/Gui/PreferencePackTemplates/Start_Colors.cfg +FreeCAD/share/Gui/PreferencePackTemplates/TechDraw_Colors.cfg +FreeCAD/share/Gui/PreferencePackTemplates/Window_Colors.cfg +FreeCAD/share/Gui/PreferencePacks/FreeCAD Classic Colors/FreeCAD Classic Colors.cfg +FreeCAD/share/Gui/PreferencePacks/package.xml FreeCAD/share/Gui/Stylesheets/Behave-dark.qss FreeCAD/share/Gui/Stylesheets/Dark-blue.qss FreeCAD/share/Gui/Stylesheets/Dark-contrast.qss FreeCAD/share/Gui/Stylesheets/Dark-green.qss FreeCAD/share/Gui/Stylesheets/Dark-orange.qss FreeCAD/share/Gui/Stylesheets/Darker-blue.qss FreeCAD/share/Gui/Stylesheets/Darker-green.qss FreeCAD/share/Gui/Stylesheets/Darker-orange.qss FreeCAD/share/Gui/Stylesheets/Light-blue.qss FreeCAD/share/Gui/Stylesheets/Light-green.qss FreeCAD/share/Gui/Stylesheets/Light-orange.qss FreeCAD/share/Gui/Stylesheets/ProDark.qss FreeCAD/share/Gui/Stylesheets/images_dark-light/Hmovetoolbar_dark.svg FreeCAD/share/Gui/Stylesheets/images_dark-light/Hmovetoolbar_light.svg FreeCAD/share/Gui/Stylesheets/images_dark-light/Hsepartoolbar_dark.svg FreeCAD/share/Gui/Stylesheets/images_dark-light/Hsepartoolbar_light.svg FreeCAD/share/Gui/Stylesheets/images_dark-light/Vmovetoolbar_dark.svg FreeCAD/share/Gui/Stylesheets/images_dark-light/Vmovetoolbar_light.svg FreeCAD/share/Gui/Stylesheets/images_dark-light/Vsepartoolbar_dark.svg FreeCAD/share/Gui/Stylesheets/images_dark-light/Vsepartoolbar_light.svg FreeCAD/share/Gui/Stylesheets/images_dark-light/background_freecad.svg FreeCAD/share/Gui/Stylesheets/images_dark-light/background_freecad_dark.svg FreeCAD/share/Gui/Stylesheets/images_dark-light/background_freecad_light.svg FreeCAD/share/Gui/Stylesheets/images_dark-light/branch_end_closed_dark.svg FreeCAD/share/Gui/Stylesheets/images_dark-light/branch_end_closed_light.svg FreeCAD/share/Gui/Stylesheets/images_dark-light/branch_end_dark.svg FreeCAD/share/Gui/Stylesheets/images_dark-light/branch_end_light.svg FreeCAD/share/Gui/Stylesheets/images_dark-light/branch_end_open_dark.svg FreeCAD/share/Gui/Stylesheets/images_dark-light/branch_end_open_light.svg FreeCAD/share/Gui/Stylesheets/images_dark-light/branch_more_closed_dark.svg FreeCAD/share/Gui/Stylesheets/images_dark-light/branch_more_closed_light.svg FreeCAD/share/Gui/Stylesheets/images_dark-light/branch_more_dark.svg FreeCAD/share/Gui/Stylesheets/images_dark-light/branch_more_light.svg FreeCAD/share/Gui/Stylesheets/images_dark-light/branch_more_open_dark.svg FreeCAD/share/Gui/Stylesheets/images_dark-light/branch_more_open_light.svg FreeCAD/share/Gui/Stylesheets/images_dark-light/branch_vline_dark.svg FreeCAD/share/Gui/Stylesheets/images_dark-light/branch_vline_light.svg FreeCAD/share/Gui/Stylesheets/images_dark-light/checkbox_indeterminate_light.svg FreeCAD/share/Gui/Stylesheets/images_dark-light/checkbox_light.svg FreeCAD/share/Gui/Stylesheets/images_dark-light/close_dark.svg FreeCAD/share/Gui/Stylesheets/images_dark-light/close_light.svg FreeCAD/share/Gui/Stylesheets/images_dark-light/down_arrow_dark.svg FreeCAD/share/Gui/Stylesheets/images_dark-light/down_arrow_darker.svg FreeCAD/share/Gui/Stylesheets/images_dark-light/down_arrow_disabled_dark.svg FreeCAD/share/Gui/Stylesheets/images_dark-light/down_arrow_disabled_light.svg FreeCAD/share/Gui/Stylesheets/images_dark-light/down_arrow_light.svg FreeCAD/share/Gui/Stylesheets/images_dark-light/down_arrow_lighter.svg FreeCAD/share/Gui/Stylesheets/images_dark-light/left_arrow_dark.svg FreeCAD/share/Gui/Stylesheets/images_dark-light/left_arrow_darker.svg FreeCAD/share/Gui/Stylesheets/images_dark-light/left_arrow_disabled_dark.svg FreeCAD/share/Gui/Stylesheets/images_dark-light/left_arrow_disabled_light.svg FreeCAD/share/Gui/Stylesheets/images_dark-light/left_arrow_light.svg FreeCAD/share/Gui/Stylesheets/images_dark-light/left_arrow_lighter.svg FreeCAD/share/Gui/Stylesheets/images_dark-light/more_dark.svg FreeCAD/share/Gui/Stylesheets/images_dark-light/more_light.svg FreeCAD/share/Gui/Stylesheets/images_dark-light/radiobutton_dark.svg FreeCAD/share/Gui/Stylesheets/images_dark-light/radiobutton_light.svg FreeCAD/share/Gui/Stylesheets/images_dark-light/right_arrow_dark.svg FreeCAD/share/Gui/Stylesheets/images_dark-light/right_arrow_darker.svg FreeCAD/share/Gui/Stylesheets/images_dark-light/right_arrow_disabled_dark.svg FreeCAD/share/Gui/Stylesheets/images_dark-light/right_arrow_disabled_light.svg FreeCAD/share/Gui/Stylesheets/images_dark-light/right_arrow_light.svg FreeCAD/share/Gui/Stylesheets/images_dark-light/right_arrow_lighter.svg FreeCAD/share/Gui/Stylesheets/images_dark-light/sizegrip_dark.svg FreeCAD/share/Gui/Stylesheets/images_dark-light/sizegrip_light.svg FreeCAD/share/Gui/Stylesheets/images_dark-light/splitter_horizontal_dark.svg FreeCAD/share/Gui/Stylesheets/images_dark-light/splitter_horizontal_light.svg FreeCAD/share/Gui/Stylesheets/images_dark-light/splitter_vertical_dark.svg FreeCAD/share/Gui/Stylesheets/images_dark-light/splitter_vertical_light.svg FreeCAD/share/Gui/Stylesheets/images_dark-light/transparent.svg FreeCAD/share/Gui/Stylesheets/images_dark-light/undock_dark.svg FreeCAD/share/Gui/Stylesheets/images_dark-light/undock_light.svg FreeCAD/share/Gui/Stylesheets/images_dark-light/up-down_arrow_dark.svg FreeCAD/share/Gui/Stylesheets/images_dark-light/up-down_arrow_darker.svg FreeCAD/share/Gui/Stylesheets/images_dark-light/up-down_arrow_disabled_dark.svg FreeCAD/share/Gui/Stylesheets/images_dark-light/up-down_arrow_disabled_light.svg FreeCAD/share/Gui/Stylesheets/images_dark-light/up-down_arrow_light.svg FreeCAD/share/Gui/Stylesheets/images_dark-light/up-down_arrow_lighter.svg FreeCAD/share/Gui/Stylesheets/images_dark-light/up_arrow_dark.svg FreeCAD/share/Gui/Stylesheets/images_dark-light/up_arrow_darker.svg FreeCAD/share/Gui/Stylesheets/images_dark-light/up_arrow_disabled_dark.svg FreeCAD/share/Gui/Stylesheets/images_dark-light/up_arrow_disabled_light.svg FreeCAD/share/Gui/Stylesheets/images_dark-light/up_arrow_light.svg FreeCAD/share/Gui/Stylesheets/images_dark-light/up_arrow_lighter.svg FreeCAD/share/License.txt FreeCAD/share/Mod/Arch/Presets/ifc_contexts_IFC2X3.json FreeCAD/share/Mod/Arch/Presets/ifc_contexts_IFC4.json FreeCAD/share/Mod/Arch/Presets/ifc_products_IFC2X3.json FreeCAD/share/Mod/Arch/Presets/ifc_products_IFC4.json FreeCAD/share/Mod/Arch/Presets/ifc_types_IFC2X3.json FreeCAD/share/Mod/Arch/Presets/ifc_types_IFC4.json FreeCAD/share/Mod/Arch/Presets/profiles.csv FreeCAD/share/Mod/Arch/Presets/pset_definitions.csv FreeCAD/share/Mod/Arch/Resources/icons/ArchWorkbench.svg FreeCAD/share/Mod/Draft/Resources/icons/DraftWorkbench.svg FreeCAD/share/Mod/Drawing/Resources/icons/DrawingWorkbench.svg FreeCAD/share/Mod/Drawing/Templates/A0_Landscape_ISO7200.dxf FreeCAD/share/Mod/Drawing/Templates/A0_Landscape_ISO7200.svg FreeCAD/share/Mod/Drawing/Templates/A0_Landscape_plain.dxf FreeCAD/share/Mod/Drawing/Templates/A0_Landscape_plain.svg FreeCAD/share/Mod/Drawing/Templates/A0_Portrait_plain.dxf FreeCAD/share/Mod/Drawing/Templates/A0_Portrait_plain.svg FreeCAD/share/Mod/Drawing/Templates/A1_Landscape_ISO7200.dxf FreeCAD/share/Mod/Drawing/Templates/A1_Landscape_ISO7200.svg FreeCAD/share/Mod/Drawing/Templates/A1_Landscape_plain.dxf FreeCAD/share/Mod/Drawing/Templates/A1_Landscape_plain.svg FreeCAD/share/Mod/Drawing/Templates/A1_Portrait_plain.dxf FreeCAD/share/Mod/Drawing/Templates/A1_Portrait_plain.svg FreeCAD/share/Mod/Drawing/Templates/A2_Landscape_ISO7200.dxf FreeCAD/share/Mod/Drawing/Templates/A2_Landscape_ISO7200.svg FreeCAD/share/Mod/Drawing/Templates/A2_Landscape_plain.dxf FreeCAD/share/Mod/Drawing/Templates/A2_Landscape_plain.svg FreeCAD/share/Mod/Drawing/Templates/A2_Portrait_plain.dxf FreeCAD/share/Mod/Drawing/Templates/A2_Portrait_plain.svg FreeCAD/share/Mod/Drawing/Templates/A3_Landscape.dxf FreeCAD/share/Mod/Drawing/Templates/A3_Landscape.svg FreeCAD/share/Mod/Drawing/Templates/A3_Landscape_ISO7200.dxf FreeCAD/share/Mod/Drawing/Templates/A3_Landscape_ISO7200.svg FreeCAD/share/Mod/Drawing/Templates/A3_Landscape_plain.dxf FreeCAD/share/Mod/Drawing/Templates/A3_Landscape_plain.svg FreeCAD/share/Mod/Drawing/Templates/A3_Portrait_plain.dxf FreeCAD/share/Mod/Drawing/Templates/A3_Portrait_plain.svg FreeCAD/share/Mod/Drawing/Templates/A4_Landscape.dxf FreeCAD/share/Mod/Drawing/Templates/A4_Landscape.svg FreeCAD/share/Mod/Drawing/Templates/A4_Landscape_ISO7200.dxf FreeCAD/share/Mod/Drawing/Templates/A4_Landscape_ISO7200.svg FreeCAD/share/Mod/Drawing/Templates/A4_Landscape_plain.dxf FreeCAD/share/Mod/Drawing/Templates/A4_Landscape_plain.svg FreeCAD/share/Mod/Drawing/Templates/A4_Portrait_ISO7200.dxf FreeCAD/share/Mod/Drawing/Templates/A4_Portrait_ISO7200.svg FreeCAD/share/Mod/Drawing/Templates/A4_Portrait_plain.dxf FreeCAD/share/Mod/Drawing/Templates/A4_Portrait_plain.svg FreeCAD/share/Mod/Fem/Resources/icons/FemWorkbench.svg FreeCAD/share/Mod/Image/Resources/icons/ImageWorkbench.svg FreeCAD/share/Mod/Import/DxfPlate/blocks10.rub FreeCAD/share/Mod/Import/DxfPlate/blocks112.rub FreeCAD/share/Mod/Import/DxfPlate/blocks114.rub FreeCAD/share/Mod/Import/DxfPlate/classes14.rub FreeCAD/share/Mod/Import/DxfPlate/entities0.rub FreeCAD/share/Mod/Import/DxfPlate/entities12.rub FreeCAD/share/Mod/Import/DxfPlate/entities14.rub FreeCAD/share/Mod/Import/DxfPlate/header0.rub FreeCAD/share/Mod/Import/DxfPlate/header12.rub FreeCAD/share/Mod/Import/DxfPlate/header14.rub FreeCAD/share/Mod/Import/DxfPlate/objects14.rub FreeCAD/share/Mod/Import/DxfPlate/tables10.rub FreeCAD/share/Mod/Import/DxfPlate/tables112.rub FreeCAD/share/Mod/Import/DxfPlate/tables114.rub FreeCAD/share/Mod/Import/DxfPlate/tables20.rub FreeCAD/share/Mod/Import/DxfPlate/tables212.rub FreeCAD/share/Mod/Import/DxfPlate/tables214.rub FreeCAD/share/Mod/Inspection/Resources/icons/InspectionWorkbench.svg FreeCAD/share/Mod/Material/FluidMaterial/Air.FCMat +FreeCAD/share/Mod/Material/FluidMaterial/Argon.FCMat +FreeCAD/share/Mod/Material/FluidMaterial/Nitrogen.FCMat FreeCAD/share/Mod/Material/FluidMaterial/None.FCMat FreeCAD/share/Mod/Material/FluidMaterial/Water.FCMat FreeCAD/share/Mod/Material/StandardMaterial/ABS-Generic.FCMat FreeCAD/share/Mod/Material/StandardMaterial/Acrylic-Glass-Generic.FCMat FreeCAD/share/Mod/Material/StandardMaterial/AlMg3F24.FCMat FreeCAD/share/Mod/Material/StandardMaterial/AlMgSi1F31.FCMat FreeCAD/share/Mod/Material/StandardMaterial/AlZn4-5Mg1F35.FCMat FreeCAD/share/Mod/Material/StandardMaterial/Aluminum-6061-T6.FCMat FreeCAD/share/Mod/Material/StandardMaterial/CalculiX-Steel.FCMat FreeCAD/share/Mod/Material/StandardMaterial/Concrete-EN-C35_45.FCMat FreeCAD/share/Mod/Material/StandardMaterial/Concrete-Generic.FCMat FreeCAD/share/Mod/Material/StandardMaterial/Glass-E-GlassFibre.FCMat FreeCAD/share/Mod/Material/StandardMaterial/Glass-Generic.FCMat FreeCAD/share/Mod/Material/StandardMaterial/Glass-S2-GlassFibre.FCMat +FreeCAD/share/Mod/Material/StandardMaterial/Graphite.FCMat FreeCAD/share/Mod/Material/StandardMaterial/None.FCMat FreeCAD/share/Mod/Material/StandardMaterial/PA6-Generic.FCMat FreeCAD/share/Mod/Material/StandardMaterial/PET-Generic.FCMat FreeCAD/share/Mod/Material/StandardMaterial/PLA-Generic.FCMat FreeCAD/share/Mod/Material/StandardMaterial/PP-Generic.FCMat FreeCAD/share/Mod/Material/StandardMaterial/PTFE-Generic.FCMat FreeCAD/share/Mod/Material/StandardMaterial/PVC-Generic.FCMat FreeCAD/share/Mod/Material/StandardMaterial/Reinforcement-FIB-B500.FCMat FreeCAD/share/Mod/Material/StandardMaterial/Steel-15CrNi6.FCMat FreeCAD/share/Mod/Material/StandardMaterial/Steel-17CrNiMo6.FCMat FreeCAD/share/Mod/Material/StandardMaterial/Steel-1C22.FCMat FreeCAD/share/Mod/Material/StandardMaterial/Steel-1C35.FCMat FreeCAD/share/Mod/Material/StandardMaterial/Steel-1C45.FCMat FreeCAD/share/Mod/Material/StandardMaterial/Steel-1C60.FCMat FreeCAD/share/Mod/Material/StandardMaterial/Steel-20NiCrMo2.FCMat FreeCAD/share/Mod/Material/StandardMaterial/Steel-28Mn6.FCMat FreeCAD/share/Mod/Material/StandardMaterial/Steel-2C10.FCMat FreeCAD/share/Mod/Material/StandardMaterial/Steel-30CrNiMo8.FCMat FreeCAD/share/Mod/Material/StandardMaterial/Steel-34CrNiMo6.FCMat FreeCAD/share/Mod/Material/StandardMaterial/Steel-36CrNiMo4.FCMat FreeCAD/share/Mod/Material/StandardMaterial/Steel-36NiCrMo16.FCMat FreeCAD/share/Mod/Material/StandardMaterial/Steel-3C15.FCMat FreeCAD/share/Mod/Material/StandardMaterial/Steel-3C22.FCMat FreeCAD/share/Mod/Material/StandardMaterial/Steel-3C35.FCMat FreeCAD/share/Mod/Material/StandardMaterial/Steel-3V45.FCMat FreeCAD/share/Mod/Material/StandardMaterial/Steel-C10.FCMat FreeCAD/share/Mod/Material/StandardMaterial/Steel-C15.FCMat FreeCAD/share/Mod/Material/StandardMaterial/Steel-C22E.FCMat FreeCAD/share/Mod/Material/StandardMaterial/Steel-C25E.FCMat FreeCAD/share/Mod/Material/StandardMaterial/Steel-C30E.FCMat FreeCAD/share/Mod/Material/StandardMaterial/Steel-C40E.FCMat FreeCAD/share/Mod/Material/StandardMaterial/Steel-C50E.FCMat FreeCAD/share/Mod/Material/StandardMaterial/Steel-C55E.FCMat FreeCAD/share/Mod/Material/StandardMaterial/Steel-C60E.FCMat FreeCAD/share/Mod/Material/StandardMaterial/Steel-E295-GC.FCMat FreeCAD/share/Mod/Material/StandardMaterial/Steel-E295.FCMat FreeCAD/share/Mod/Material/StandardMaterial/Steel-E335-GC.FCMat FreeCAD/share/Mod/Material/StandardMaterial/Steel-E335.FCMat FreeCAD/share/Mod/Material/StandardMaterial/Steel-E360-GC.FCMat FreeCAD/share/Mod/Material/StandardMaterial/Steel-E360.FCMat FreeCAD/share/Mod/Material/StandardMaterial/Steel-EN-GJL-100.FCMat FreeCAD/share/Mod/Material/StandardMaterial/Steel-EN-GJL-150.FCMat FreeCAD/share/Mod/Material/StandardMaterial/Steel-EN-GJL-200.FCMat FreeCAD/share/Mod/Material/StandardMaterial/Steel-EN-GJL-250.FCMat FreeCAD/share/Mod/Material/StandardMaterial/Steel-EN-GJL-300.FCMat FreeCAD/share/Mod/Material/StandardMaterial/Steel-EN-GJL-350.FCMat FreeCAD/share/Mod/Material/StandardMaterial/Steel-EN-GJMB-350-10.FCMat FreeCAD/share/Mod/Material/StandardMaterial/Steel-EN-GJMB-550-4.FCMat FreeCAD/share/Mod/Material/StandardMaterial/Steel-EN-GJMB-650-2.FCMat FreeCAD/share/Mod/Material/StandardMaterial/Steel-EN-GJMW-350-4.FCMat FreeCAD/share/Mod/Material/StandardMaterial/Steel-EN-GJMW-360-12.FCMat FreeCAD/share/Mod/Material/StandardMaterial/Steel-EN-GJMW-400-5.FCMat FreeCAD/share/Mod/Material/StandardMaterial/Steel-EN-GJMW-450-7.FCMat FreeCAD/share/Mod/Material/StandardMaterial/Steel-EN-GJS-400-15.FCMat FreeCAD/share/Mod/Material/StandardMaterial/Steel-EN-GJS-500-7.FCMat FreeCAD/share/Mod/Material/StandardMaterial/Steel-EN-GJS-600-3.FCMat FreeCAD/share/Mod/Material/StandardMaterial/Steel-EN-GJS-700-2.FCMat FreeCAD/share/Mod/Material/StandardMaterial/Steel-EN-GJS-800-1.FCMat FreeCAD/share/Mod/Material/StandardMaterial/Steel-G16Mn5.FCMat FreeCAD/share/Mod/Material/StandardMaterial/Steel-G200.FCMat FreeCAD/share/Mod/Material/StandardMaterial/Steel-G20Mn5.FCMat FreeCAD/share/Mod/Material/StandardMaterial/Steel-G230.FCMat FreeCAD/share/Mod/Material/StandardMaterial/Steel-G260.FCMat FreeCAD/share/Mod/Material/StandardMaterial/Steel-G300.FCMat FreeCAD/share/Mod/Material/StandardMaterial/Steel-G30Mn5.FCMat FreeCAD/share/Mod/Material/StandardMaterial/Steel-Generic.FCMat FreeCAD/share/Mod/Material/StandardMaterial/Steel-S185.FCMat FreeCAD/share/Mod/Material/StandardMaterial/Steel-S235JO.FCMat FreeCAD/share/Mod/Material/StandardMaterial/Steel-S235JR.FCMat FreeCAD/share/Mod/Material/StandardMaterial/Steel-S235JRG1.FCMat FreeCAD/share/Mod/Material/StandardMaterial/Steel-S260NC.FCMat FreeCAD/share/Mod/Material/StandardMaterial/Steel-S275JO.FCMat FreeCAD/share/Mod/Material/StandardMaterial/Steel-S275JR.FCMat FreeCAD/share/Mod/Material/StandardMaterial/Steel-S275N.FCMat FreeCAD/share/Mod/Material/StandardMaterial/Steel-S335JO.FCMat FreeCAD/share/Mod/Material/StandardMaterial/Steel-S335JR.FCMat FreeCAD/share/Mod/Material/StandardMaterial/Steel-S335N.FCMat FreeCAD/share/Mod/Material/StandardMaterial/Steel-S340MC.FCMat FreeCAD/share/Mod/Material/StandardMaterial/Steel-S355J2G3.FCMat FreeCAD/share/Mod/Material/StandardMaterial/Steel-S380MC.FCMat FreeCAD/share/Mod/Material/StandardMaterial/Steel-S420MC.FCMat FreeCAD/share/Mod/Material/StandardMaterial/Steel-S420N.FCMat FreeCAD/share/Mod/Material/StandardMaterial/Steel-S460MC.FCMat FreeCAD/share/Mod/Material/StandardMaterial/Steel-S460N.FCMat FreeCAD/share/Mod/Material/StandardMaterial/Steel-S500MC.FCMat FreeCAD/share/Mod/Material/StandardMaterial/Steel-S550MC.FCMat FreeCAD/share/Mod/Material/StandardMaterial/Steel-S690MC.FCMat FreeCAD/share/Mod/Material/StandardMaterial/Steel-St-37-2K.FCMat FreeCAD/share/Mod/Material/StandardMaterial/Steel-St-E-255.FCMat FreeCAD/share/Mod/Material/StandardMaterial/Steel-St-E-315.FCMat FreeCAD/share/Mod/Material/StandardMaterial/Steel-St-E-380.FCMat FreeCAD/share/Mod/Material/StandardMaterial/Steel-St-E-460.FCMat FreeCAD/share/Mod/Material/StandardMaterial/Steel-St-E-500.FCMat FreeCAD/share/Mod/Material/StandardMaterial/Steel-X2CrNiMoN17-13-3.FCMat FreeCAD/share/Mod/Material/StandardMaterial/Steel-X2CrNiN24-4.FCMat FreeCAD/share/Mod/Material/StandardMaterial/Steel-X39CrMo17-1.FCMat FreeCAD/share/Mod/Material/StandardMaterial/Steel-X3CrNiMo13-14.FCMat FreeCAD/share/Mod/Material/StandardMaterial/Steel-X5CrNi18-10.FCMat FreeCAD/share/Mod/Material/StandardMaterial/Steel-X5CrNiMo17-12-2.FCMat FreeCAD/share/Mod/Material/StandardMaterial/Steel-X6CrNiTi18-10.FCMat FreeCAD/share/Mod/Material/StandardMaterial/TEMPLATE.FCMat FreeCAD/share/Mod/Material/StandardMaterial/Wood-Generic.FCMat FreeCAD/share/Mod/Mesh/Resources/icons/MeshWorkbench.svg FreeCAD/share/Mod/OpenSCAD/Resources/icons/OpenSCADWorkbench.svg FreeCAD/share/Mod/Part/Resources/icons/PartWorkbench.svg FreeCAD/share/Mod/PartDesign/Resources/Hole/din7984.json FreeCAD/share/Mod/PartDesign/Resources/Hole/iso10642-fine.json FreeCAD/share/Mod/PartDesign/Resources/Hole/iso10642.json FreeCAD/share/Mod/PartDesign/Resources/Hole/iso12474-fine.json FreeCAD/share/Mod/PartDesign/Resources/Hole/iso14583.json FreeCAD/share/Mod/PartDesign/Resources/Hole/iso14583part.json FreeCAD/share/Mod/PartDesign/Resources/Hole/iso2009.json FreeCAD/share/Mod/PartDesign/Resources/Hole/iso4762-fine.json FreeCAD/share/Mod/PartDesign/Resources/Hole/iso4762.json FreeCAD/share/Mod/PartDesign/Resources/Hole/iso4762_7089.json FreeCAD/share/Mod/PartDesign/Resources/Hole/iso7046.json FreeCAD/share/Mod/PartDesign/Resources/icons/PartDesignWorkbench.svg FreeCAD/share/Mod/Path/Resources/icons/PathWorkbench.svg FreeCAD/share/Mod/Points/Resources/icons/PointsWorkbench.svg FreeCAD/share/Mod/Raytracing/Resources/icons/RaytracingWorkbench.svg FreeCAD/share/Mod/Raytracing/Templates/LuxClassic.lxs FreeCAD/share/Mod/Raytracing/Templates/LuxOutdoor.lxs FreeCAD/share/Mod/Raytracing/Templates/ProjectStd.pov FreeCAD/share/Mod/Raytracing/Templates/RadiosityNormal.pov FreeCAD/share/Mod/Raytracing/Templates/RadiosityOutdoorHQ.pov FreeCAD/share/Mod/ReverseEngineering/Resources/icons/ReverseEngineeringWorkbench.svg FreeCAD/share/Mod/Robot/Lib/Kuka/kr125_3.wrl FreeCAD/share/Mod/Robot/Lib/Kuka/kr16.wrl FreeCAD/share/Mod/Robot/Lib/Kuka/kr210.WRL FreeCAD/share/Mod/Robot/Lib/Kuka/kr500_1.csv FreeCAD/share/Mod/Robot/Lib/Kuka/kr500_1.wrl FreeCAD/share/Mod/Robot/Lib/Kuka/kr_125.csv FreeCAD/share/Mod/Robot/Lib/Kuka/kr_16.csv FreeCAD/share/Mod/Robot/Lib/Kuka/kr_210_2.csv FreeCAD/share/Mod/Robot/Lib/Kuka/testprog.dat FreeCAD/share/Mod/Robot/Lib/Kuka/testprog.src FreeCAD/share/Mod/Robot/Resources/icons/RobotWorkbench.svg FreeCAD/share/Mod/Sketcher/Resources/icons/SketcherWorkbench.svg FreeCAD/share/Mod/Spreadsheet/Resources/icons/SpreadsheetWorkbench.svg FreeCAD/share/Mod/Start/Resources/icons/StartWorkbench.svg FreeCAD/share/Mod/Start/StartPage/EnableDownload.py FreeCAD/share/Mod/Start/StartPage/LoadCustom.py FreeCAD/share/Mod/Start/StartPage/LoadExample.py FreeCAD/share/Mod/Start/StartPage/LoadMRU.py FreeCAD/share/Mod/Start/StartPage/LoadNew.py FreeCAD/share/Mod/Start/StartPage/OpenSettings.py FreeCAD/share/Mod/Start/StartPage/StartPage.css FreeCAD/share/Mod/Start/StartPage/StartPage.html FreeCAD/share/Mod/Start/StartPage/StartPage.js FreeCAD/share/Mod/Start/StartPage/images/developerhub.png FreeCAD/share/Mod/Start/StartPage/images/freecad.png FreeCAD/share/Mod/Start/StartPage/images/installed.png FreeCAD/share/Mod/Start/StartPage/images/manual.png FreeCAD/share/Mod/Start/StartPage/images/new_file_thumbnail.svg FreeCAD/share/Mod/Start/StartPage/images/poweruserhub.png FreeCAD/share/Mod/Start/StartPage/images/settings.png FreeCAD/share/Mod/Start/StartPage/images/userhub.png FreeCAD/share/Mod/Surface/Resources/icons/Surface_Workbench.svg FreeCAD/share/Mod/TechDraw/LineGroup/LineGroup.csv FreeCAD/share/Mod/TechDraw/PAT/FCPAT.pat FreeCAD/share/Mod/TechDraw/Patterns/aluminium.svg FreeCAD/share/Mod/TechDraw/Patterns/brick01.svg FreeCAD/share/Mod/TechDraw/Patterns/concrete.svg FreeCAD/share/Mod/TechDraw/Patterns/cross.svg FreeCAD/share/Mod/TechDraw/Patterns/cuprous.svg FreeCAD/share/Mod/TechDraw/Patterns/diagonal1.svg FreeCAD/share/Mod/TechDraw/Patterns/diagonal2.svg FreeCAD/share/Mod/TechDraw/Patterns/earth.svg FreeCAD/share/Mod/TechDraw/Patterns/general_steel.svg FreeCAD/share/Mod/TechDraw/Patterns/glass.svg FreeCAD/share/Mod/TechDraw/Patterns/hatch45L.svg FreeCAD/share/Mod/TechDraw/Patterns/hatch45R.svg FreeCAD/share/Mod/TechDraw/Patterns/hbone.svg FreeCAD/share/Mod/TechDraw/Patterns/line.svg FreeCAD/share/Mod/TechDraw/Patterns/plastic.svg FreeCAD/share/Mod/TechDraw/Patterns/plus.svg FreeCAD/share/Mod/TechDraw/Patterns/simple.svg FreeCAD/share/Mod/TechDraw/Patterns/solid.svg FreeCAD/share/Mod/TechDraw/Patterns/square.svg FreeCAD/share/Mod/TechDraw/Patterns/steel.svg FreeCAD/share/Mod/TechDraw/Patterns/titanium.svg FreeCAD/share/Mod/TechDraw/Patterns/wood.svg FreeCAD/share/Mod/TechDraw/Patterns/woodgrain.svg FreeCAD/share/Mod/TechDraw/Patterns/zinc.svg FreeCAD/share/Mod/TechDraw/Resources/fonts/osifont-lgpl3fe.ttf FreeCAD/share/Mod/TechDraw/Resources/fonts/osifont.license FreeCAD/share/Mod/TechDraw/Resources/icons/preferences-techdraw.svg FreeCAD/share/Mod/TechDraw/Symbols/Welding/AWS/SquareDown.svg FreeCAD/share/Mod/TechDraw/Symbols/Welding/AWS/SquareUp.svg FreeCAD/share/Mod/TechDraw/Symbols/Welding/AWS/VDown.svg FreeCAD/share/Mod/TechDraw/Symbols/Welding/AWS/VUp.svg FreeCAD/share/Mod/TechDraw/Symbols/Welding/AWS/beadDown.svg FreeCAD/share/Mod/TechDraw/Symbols/Welding/AWS/beadUp.svg FreeCAD/share/Mod/TechDraw/Symbols/Welding/AWS/filletDown.svg FreeCAD/share/Mod/TechDraw/Symbols/Welding/AWS/filletUp.svg FreeCAD/share/Mod/TechDraw/Symbols/Welding/AWS/plug.svg FreeCAD/share/Mod/TechDraw/Symbols/Welding/GOST/edge-weld.svg FreeCAD/share/Mod/TechDraw/Symbols/Welding/GOST/flanging.svg FreeCAD/share/Mod/TechDraw/Symbols/Welding/GOST/flare-bevel-groove.svg FreeCAD/share/Mod/TechDraw/Symbols/Welding/GOST/flare-v-groove.svg FreeCAD/share/Mod/TechDraw/Symbols/Welding/GOST/gost-2_312/cathetus.svg FreeCAD/share/Mod/TechDraw/Symbols/Welding/GOST/gost-2_312/gost-2_312-intermittent.svg FreeCAD/share/Mod/TechDraw/Symbols/Welding/GOST/gost-2_312/gost-2_312-non-closed.svg FreeCAD/share/Mod/TechDraw/Symbols/Welding/GOST/gost-2_312/gost-2_312-site-weld.svg FreeCAD/share/Mod/TechDraw/Symbols/Welding/GOST/gost-2_312/gost-2_312-smooth-processing.svg FreeCAD/share/Mod/TechDraw/Symbols/Welding/GOST/gost-2_312/gost-2_312-usilenie-remove.svg FreeCAD/share/Mod/TechDraw/Symbols/Welding/GOST/seam-weld.svg FreeCAD/share/Mod/TechDraw/Symbols/Welding/GOST/single-bevel-cjp-groove-weld.svg FreeCAD/share/Mod/TechDraw/Symbols/Welding/GOST/single-bevel-groove-weld-with-broad-root-face.svg FreeCAD/share/Mod/TechDraw/Symbols/Welding/GOST/single-bevel-groove-weld.svg FreeCAD/share/Mod/TechDraw/Symbols/Welding/GOST/single-j-groove-weld.svg FreeCAD/share/Mod/TechDraw/Symbols/Welding/GOST/single-u-groove-weld.svg FreeCAD/share/Mod/TechDraw/Symbols/Welding/GOST/single-v-cjp-groove-weld.svg FreeCAD/share/Mod/TechDraw/Symbols/Welding/GOST/single-v-groove-weld-with-broad-root-face.svg FreeCAD/share/Mod/TechDraw/Symbols/Welding/GOST/single-v-groove-weld.svg FreeCAD/share/Mod/TechDraw/Symbols/Welding/GOST/spile-weld.svg FreeCAD/share/Mod/TechDraw/Symbols/Welding/GOST/square-groove-weld.svg FreeCAD/share/Mod/TechDraw/Symbols/Welding/GOST/surfacing.svg FreeCAD/share/Mod/TechDraw/Symbols/Welding/blankTile.svg FreeCAD/share/Mod/TechDraw/Symbols/gd-and-t/ConcentricityFrame.svg FreeCAD/share/Mod/TechDraw/Symbols/gd-and-t/CylindricityFrame.svg FreeCAD/share/Mod/TechDraw/Symbols/gd-and-t/FlatnessFrame.svg FreeCAD/share/Mod/TechDraw/Symbols/gd-and-t/ParallelismFrame.svg FreeCAD/share/Mod/TechDraw/Symbols/gd-and-t/ReferenceSurface.svg FreeCAD/share/Mod/TechDraw/Symbols/gd-and-t/RoundnessFrame.svg FreeCAD/share/Mod/TechDraw/Symbols/gd-and-t/SquarenessFrame.svg FreeCAD/share/Mod/TechDraw/Symbols/gd-and-t/angularity-left.svg FreeCAD/share/Mod/TechDraw/Symbols/gd-and-t/angularity-right.svg FreeCAD/share/Mod/TechDraw/Symbols/gd-and-t/concentricity.svg FreeCAD/share/Mod/TechDraw/Symbols/gd-and-t/cylindricity.svg FreeCAD/share/Mod/TechDraw/Symbols/gd-and-t/flatness.svg FreeCAD/share/Mod/TechDraw/Symbols/gd-and-t/parallelism.svg FreeCAD/share/Mod/TechDraw/Symbols/gd-and-t/perpendicularity.svg FreeCAD/share/Mod/TechDraw/Symbols/gd-and-t/position.svg FreeCAD/share/Mod/TechDraw/Symbols/gd-and-t/profile-tolerance-of-line.svg FreeCAD/share/Mod/TechDraw/Symbols/gd-and-t/profile-tolerance-of-plane.svg FreeCAD/share/Mod/TechDraw/Symbols/gd-and-t/roundness.svg FreeCAD/share/Mod/TechDraw/Symbols/gd-and-t/symmetry.svg FreeCAD/share/Mod/TechDraw/Symbols/gd-and-t/totalrunout.svg +FreeCAD/share/Mod/TechDraw/Symbols/misc/1st_Angle_Projection.svg +FreeCAD/share/Mod/TechDraw/Symbols/misc/3rd_Angle_Projection.svg +FreeCAD/share/Mod/TechDraw/Symbols/misc/Arrow_Long_Filled.svg +FreeCAD/share/Mod/TechDraw/Symbols/misc/Arrow_Long_Open.svg +FreeCAD/share/Mod/TechDraw/Symbols/misc/Arrow_Medium_Filled.svg +FreeCAD/share/Mod/TechDraw/Symbols/misc/Arrow_Medium_Open.svg +FreeCAD/share/Mod/TechDraw/Symbols/misc/Arrow_Short_Filled.svg +FreeCAD/share/Mod/TechDraw/Symbols/misc/Arrow_Short_Open.svg +FreeCAD/share/Mod/TechDraw/Symbols/misc/Balloon_Editable_Text.svg +FreeCAD/share/Mod/TechDraw/Symbols/misc/Balloon_Long.svg +FreeCAD/share/Mod/TechDraw/Symbols/misc/Balloon_Medium.svg +FreeCAD/share/Mod/TechDraw/Symbols/misc/Balloon_Short.svg +FreeCAD/share/Mod/TechDraw/Symbols/misc/CallOut.svg +FreeCAD/share/Mod/TechDraw/Symbols/misc/CallOut_Left.svg +FreeCAD/share/Mod/TechDraw/Symbols/misc/CallOut_Right.svg +FreeCAD/share/Mod/TechDraw/Symbols/misc/Centre_Justified_Text_10_Lines.svg +FreeCAD/share/Mod/TechDraw/Symbols/misc/Cloud.svg +FreeCAD/share/Mod/TechDraw/Symbols/misc/Cosmetic_Break_Long.svg +FreeCAD/share/Mod/TechDraw/Symbols/misc/Cosmetic_Break_Medium.svg +FreeCAD/share/Mod/TechDraw/Symbols/misc/Cosmetic_Break_Small.svg +FreeCAD/share/Mod/TechDraw/Symbols/misc/Cosmetic_Round_Section_End.svg +FreeCAD/share/Mod/TechDraw/Symbols/misc/Cosmetic_Round_Section_End_Large.svg +FreeCAD/share/Mod/TechDraw/Symbols/misc/Cosmetic_Round_Section_Middle.svg +FreeCAD/share/Mod/TechDraw/Symbols/misc/Cosmetic_Round_Section_Middle_Large.svg +FreeCAD/share/Mod/TechDraw/Symbols/misc/Datum_Left.svg +FreeCAD/share/Mod/TechDraw/Symbols/misc/Datum_Point.svg +FreeCAD/share/Mod/TechDraw/Symbols/misc/Datum_Right.svg +FreeCAD/share/Mod/TechDraw/Symbols/misc/Datum_Target_Left.svg +FreeCAD/share/Mod/TechDraw/Symbols/misc/Datum_Target_Plain.svg +FreeCAD/share/Mod/TechDraw/Symbols/misc/Datum_Target_Right.svg +FreeCAD/share/Mod/TechDraw/Symbols/misc/Datum_Target_Up.svg +FreeCAD/share/Mod/TechDraw/Symbols/misc/Datum_Up.svg +FreeCAD/share/Mod/TechDraw/Symbols/misc/Feature_Left.svg +FreeCAD/share/Mod/TechDraw/Symbols/misc/Feature_Right.svg +FreeCAD/share/Mod/TechDraw/Symbols/misc/Feature_Up.svg +FreeCAD/share/Mod/TechDraw/Symbols/misc/Left_Justified_Text_10_Lines.svg +FreeCAD/share/Mod/TechDraw/Symbols/misc/North.svg +FreeCAD/share/Mod/TechDraw/Symbols/misc/Revision_Triangle.svg +FreeCAD/share/Mod/TechDraw/Symbols/misc/Right_Justified_Text_10_Lines.svg +FreeCAD/share/Mod/TechDraw/Symbols/misc/Whiteout_Rectangle_Long.svg +FreeCAD/share/Mod/TechDraw/Symbols/misc/Whiteout_Rectangle_Medium.svg +FreeCAD/share/Mod/TechDraw/Symbols/misc/Whiteout_Rectangle_Short.svg +FreeCAD/share/Mod/TechDraw/Symbols/misc/Whiteout_Square.svg FreeCAD/share/Mod/TechDraw/Symbols/other/CutLine.svg FreeCAD/share/Mod/TechDraw/Symbols/other/Diameter.svg FreeCAD/share/Mod/TechDraw/Symbols/other/Envelope.svg FreeCAD/share/Mod/TechDraw/Symbols/other/FilletInside.svg FreeCAD/share/Mod/TechDraw/Symbols/other/FilletOutside.svg FreeCAD/share/Mod/TechDraw/Symbols/other/IndexCircle.svg FreeCAD/share/Mod/TechDraw/Symbols/other/IndexTriangle.svg FreeCAD/share/Mod/TechDraw/Symbols/other/InsideEdgeBroken.svg FreeCAD/share/Mod/TechDraw/Symbols/other/OutsideEdgeBroken.svg FreeCAD/share/Mod/TechDraw/Symbols/other/Rectangle.svg FreeCAD/share/Mod/TechDraw/Symbols/other/SectionLine.svg FreeCAD/share/Mod/TechDraw/Symbols/other/Square.svg FreeCAD/share/Mod/TechDraw/Symbols/surface-roughness-symbols/Roughness.svg FreeCAD/share/Mod/TechDraw/Symbols/surface-roughness-symbols/RoughnessGeneral.svg FreeCAD/share/Mod/TechDraw/Symbols/surface-roughness-symbols/surface-roughness-contour.svg FreeCAD/share/Mod/TechDraw/Symbols/surface-roughness-symbols/surface-roughness-layer-removing.svg FreeCAD/share/Mod/TechDraw/Symbols/surface-roughness-symbols/surface-roughness-no-layer-removing.svg FreeCAD/share/Mod/TechDraw/Symbols/surface-roughness-symbols/surface-roughness.svg FreeCAD/share/Mod/TechDraw/Templates/A0_Landscape_ISO7200TD.svg FreeCAD/share/Mod/TechDraw/Templates/A0_Landscape_ISO7200_Pep.svg FreeCAD/share/Mod/TechDraw/Templates/A0_Landscape_blank.svg FreeCAD/share/Mod/TechDraw/Templates/A1_Landscape_ISO7200TD.svg FreeCAD/share/Mod/TechDraw/Templates/A1_Landscape_ISO7200_Pep.svg FreeCAD/share/Mod/TechDraw/Templates/A1_Landscape_blank.svg FreeCAD/share/Mod/TechDraw/Templates/A2_Landscape_ISO7200TD.svg FreeCAD/share/Mod/TechDraw/Templates/A2_Landscape_ISO7200_Pep.svg FreeCAD/share/Mod/TechDraw/Templates/A2_Landscape_blank.svg FreeCAD/share/Mod/TechDraw/Templates/A3_LandscapeTD.svg FreeCAD/share/Mod/TechDraw/Templates/A3_Landscape_EN_m52.svg FreeCAD/share/Mod/TechDraw/Templates/A3_Landscape_FR_m52.svg FreeCAD/share/Mod/TechDraw/Templates/A3_Landscape_ISO7200TD.svg FreeCAD/share/Mod/TechDraw/Templates/A3_Landscape_ISO7200_Pep.svg FreeCAD/share/Mod/TechDraw/Templates/A3_Landscape_IT_m52.svg FreeCAD/share/Mod/TechDraw/Templates/A3_Landscape_blank.svg +FreeCAD/share/Mod/TechDraw/Templates/A4_IRAM4504.svg FreeCAD/share/Mod/TechDraw/Templates/A4_LandscapeTD.svg FreeCAD/share/Mod/TechDraw/Templates/A4_Landscape_ISO7200TD.svg FreeCAD/share/Mod/TechDraw/Templates/A4_Landscape_ISO7200_Pep.svg FreeCAD/share/Mod/TechDraw/Templates/A4_Landscape_blank.svg FreeCAD/share/Mod/TechDraw/Templates/A4_Portrait_ISO7200Pep.svg FreeCAD/share/Mod/TechDraw/Templates/A4_Portrait_ISO7200TD.svg FreeCAD/share/Mod/TechDraw/Templates/A4_Portrait_blank.svg FreeCAD/share/Mod/TechDraw/Templates/ANSIB.svg FreeCAD/share/Mod/TechDraw/Templates/ANSIB_Portrait.svg FreeCAD/share/Mod/TechDraw/Templates/Arch_A_Landscape.svg FreeCAD/share/Mod/TechDraw/Templates/Arch_A_Portrait.svg FreeCAD/share/Mod/TechDraw/Templates/Arch_B_Landscape.svg FreeCAD/share/Mod/TechDraw/Templates/Arch_B_Portrait.svg FreeCAD/share/Mod/TechDraw/Templates/Arch_C_Landscape.svg FreeCAD/share/Mod/TechDraw/Templates/Arch_C_Portrait.svg FreeCAD/share/Mod/TechDraw/Templates/Arch_D_Landscape.svg FreeCAD/share/Mod/TechDraw/Templates/Arch_D_Portrait.svg FreeCAD/share/Mod/TechDraw/Templates/Arch_E1_Landscape.svg FreeCAD/share/Mod/TechDraw/Templates/Arch_E1_Portrait.svg FreeCAD/share/Mod/TechDraw/Templates/Arch_E2_Landscape.svg FreeCAD/share/Mod/TechDraw/Templates/Arch_E2_Portrait.svg FreeCAD/share/Mod/TechDraw/Templates/Arch_E3_Landscape.svg FreeCAD/share/Mod/TechDraw/Templates/Arch_E3_Portrait.svg FreeCAD/share/Mod/TechDraw/Templates/Arch_E_Landscape.svg FreeCAD/share/Mod/TechDraw/Templates/Arch_E_Portrait.svg FreeCAD/share/Mod/TechDraw/Templates/HowToExample.svg FreeCAD/share/Mod/TechDraw/Templates/RU_GOST/Leading/Landscape_A0.svg FreeCAD/share/Mod/TechDraw/Templates/RU_GOST/Leading/Landscape_A1.svg FreeCAD/share/Mod/TechDraw/Templates/RU_GOST/Leading/Landscape_A2.svg FreeCAD/share/Mod/TechDraw/Templates/RU_GOST/Leading/Landscape_A3.svg FreeCAD/share/Mod/TechDraw/Templates/RU_GOST/Leading/Landscape_A4_NotInGOST.svg FreeCAD/share/Mod/TechDraw/Templates/RU_GOST/Leading/Portrait_A0.svg FreeCAD/share/Mod/TechDraw/Templates/RU_GOST/Leading/Portrait_A1.svg FreeCAD/share/Mod/TechDraw/Templates/RU_GOST/Leading/Portrait_A2.svg FreeCAD/share/Mod/TechDraw/Templates/RU_GOST/Leading/Portrait_A3.svg FreeCAD/share/Mod/TechDraw/Templates/RU_GOST/Leading/Portrait_A4.svg FreeCAD/share/Mod/TechDraw/Templates/RU_GOST/Leading_text/Portrait_A3.svg FreeCAD/share/Mod/TechDraw/Templates/RU_GOST/Leading_text/Portrait_A4.svg FreeCAD/share/Mod/TechDraw/Templates/RU_GOST/Subsequent/Landscape_A0.svg FreeCAD/share/Mod/TechDraw/Templates/RU_GOST/Subsequent/Landscape_A1.svg FreeCAD/share/Mod/TechDraw/Templates/RU_GOST/Subsequent/Landscape_A2.svg FreeCAD/share/Mod/TechDraw/Templates/RU_GOST/Subsequent/Landscape_A3.svg FreeCAD/share/Mod/TechDraw/Templates/RU_GOST/Subsequent/Landscape_A4.svg FreeCAD/share/Mod/TechDraw/Templates/RU_GOST/Subsequent/Portrait_A0.svg FreeCAD/share/Mod/TechDraw/Templates/RU_GOST/Subsequent/Portrait_A1.svg FreeCAD/share/Mod/TechDraw/Templates/RU_GOST/Subsequent/Portrait_A2.svg FreeCAD/share/Mod/TechDraw/Templates/RU_GOST/Subsequent/Portrait_A3.svg FreeCAD/share/Mod/TechDraw/Templates/RU_GOST/Subsequent/Portrait_A4.svg FreeCAD/share/Mod/TechDraw/Templates/USLetter_Landscape.svg FreeCAD/share/Mod/TechDraw/Templates/USLetter_Landscape_blank.svg FreeCAD/share/Mod/TechDraw/Templates/zh_CN/landscape/A0_Landscape_CN_CLIP.svg FreeCAD/share/Mod/TechDraw/Templates/zh_CN/landscape/A0_Landscape_CN_NO_CLIP.svg FreeCAD/share/Mod/TechDraw/Templates/zh_CN/landscape/A1_Landscape_CN_CLIP.svg FreeCAD/share/Mod/TechDraw/Templates/zh_CN/landscape/A1_Landscape_CN_NO_CLIP.svg FreeCAD/share/Mod/TechDraw/Templates/zh_CN/landscape/A2_Landscape_CN_CLIP.svg FreeCAD/share/Mod/TechDraw/Templates/zh_CN/landscape/A2_Landscape_CN_NO_CLIP.svg FreeCAD/share/Mod/TechDraw/Templates/zh_CN/landscape/A3_Landscape_CN_CLIP.svg FreeCAD/share/Mod/TechDraw/Templates/zh_CN/landscape/A3_Landscape_CN_NO_CLIP.svg FreeCAD/share/Mod/TechDraw/Templates/zh_CN/landscape/A4_Landscape_CN_CLIP.svg FreeCAD/share/Mod/TechDraw/Templates/zh_CN/landscape/A4_Landscape_CN_NO_CLIP.svg FreeCAD/share/Mod/TechDraw/Templates/zh_CN/portrait/A3_Portrait_CN_CLIP.svg FreeCAD/share/Mod/TechDraw/Templates/zh_CN/portrait/A4_Portrait_CN_CLIP.svg FreeCAD/share/Mod/Test/Resources/icons/TestWorkbench.svg FreeCAD/share/Mod/Web/Resources/icons/WebWorkbench.svg FreeCAD/share/applications/org.freecadweb.FreeCAD.desktop FreeCAD/share/examples/ArchDetail.FCStd FreeCAD/share/examples/EngineBlock.FCStd FreeCAD/share/examples/FemCalculixCantilever2D.FCStd FreeCAD/share/examples/FemCalculixCantilever3D.FCStd FreeCAD/share/examples/FemCalculixCantilever3D_newSolver.FCStd FreeCAD/share/examples/PartDesignExample.FCStd FreeCAD/share/examples/RobotExample.FCStd FreeCAD/share/examples/Schenkel.stp FreeCAD/share/examples/draft_test_objects.FCStd FreeCAD/share/icons/hicolor/16x16/apps/freecad.png FreeCAD/share/icons/hicolor/32x32/apps/freecad.png FreeCAD/share/icons/hicolor/48x48/apps/freecad.png FreeCAD/share/icons/hicolor/64x64/apps/freecad.png FreeCAD/share/icons/hicolor/scalable/apps/freecad.svg FreeCAD/share/icons/hicolor/scalable/apps/org.freecadweb.FreeCAD.svg FreeCAD/share/icons/hicolor/scalable/mimetypes/application-x-extension-fcstd.svg FreeCAD/share/metainfo/org.freecadweb.FreeCAD.appdata.xml FreeCAD/share/mime/packages/org.freecadweb.FreeCAD.xml FreeCAD/share/pixmaps/freecad.xpm FreeCAD/share/thumbnailers/FreeCAD.thumbnailer bin/FreeCAD bin/FreeCADCmd @dir FreeCAD @dir FreeCAD/share @dir FreeCAD/share/Mod/Material/StandardMaterial/Tools