Release notes 0.19: Difference between revisions

From FreeCAD Documentation
(→‎Arch Workbench: Large images; more complete information, and links to forum threads and commits)
(→‎Curved Shapes Workbench: Better formatting of links)
Line 149: Line 149:


{|
{|
|[[File:Curved_shapes_wb.png | 192px]] || A workbench for designing curves 3D surfaces. [https://github.com/chbergmann/CurvedShapesWorkbench
|[[File:Curved_shapes_wb.png|384px]] || A new workbench for designing curves 3D surfaces; [https://github.com/chbergmann/CurvedShapesWorkbench CurvedShapesWorkbench].
(github)] [https://forum.freecadweb.org/viewtopic.php?f=8&t=36989 (discussion)]
[https://forum.freecadweb.org/viewtopic.php?f=8&t=36989 Forum discussion].
|}
|}



Revision as of 01:09, 6 September 2019

This page tracks new features as they are added to the development version of FreeCAD, which is currently 0.19. When the 0.19 feature freeze happens, delete these messages, and don't add more features to this page. FreeCAD 0.19 is expected to be released in 2020.

Are features missing? Mention them in the Release notes for v0.19 forum thread.

See Help FreeCAD for ways to contribute to FreeCAD.


Older FreeCAD release notes can be found in Feature list.


General

Python 3 and Qt5

The effort to migrate from Python 2 and Qt4 to Python 3 and Qt5 is essentially complete and most developers have moved to the Python3/Qt5 toolchains.

Undoubtedly there are unforeseen bugs and unanticipated breakages that will present themselves during the next development cycle or two, but any existing dependence on Python 2 or Qt4 will not be supported moving forward. Note that the developers of certain addons have not yet ported to their tools to Python3/Qt5. This may be due to several reasons including lack of support, time, resources, or broken dependencies that may or may not be easily fixed. Individuals interested in the migration of a particular workbench or tool are encouraged to participate in the FreeCAD forum.

Fixed issue with Std Part containers visibility when the viewport is displayed in full screen in Qt5:

Development

Other

Known Limitations

  • Black screen due to video card drivers, while running FreeCAD inside a virtual machine; issue #3939.
  • Logitech Wingman USB joystick can cause erratic behavior when spinning and zooming in the view; forum discussion.
  • Gesture navigation is fully supported for Windows but yet to be maintained in Linux and MacOS. Problem: the developer, DeepSOIC, doesn't have a MacOS machine with its special trackpad, and hasn't tested it on Linux either; forum discussion.

User Interface

COIL icon theme developed by user 1D_Inc. This is a minimalistic icon set inspired on Blender's 2.8 outline-style icons. The intention is to have professional-looking icons that can be used with different color themes, including light, dark, and monochrome.

Forum discussion 1 (old thread), discussion 2 (main thread).

New icon theme management developed by user triplus.

Forum discussion.

New dark stylesheet developed by user userzmp2000.

Forum dscussion, BlenderLike-dark.qss.

Dark themes by user pablogil. Blue, green, and orange variations, which are darker than previous templates.

Forum discussion.

App::Link and assembly

After 2.5 years in development, the "Link" object, or more formally App::Link, was introduced in FreeCAD. This is a special type of App::DocumentObject with certain properties that will hopefully allow for doing assemblies easier.

A "Link" allows objects to use another object's data, such as geometry or even their 3D visual representation, in the same or different files. It can be thought of as a thin, absolute clone, or as the same object living into two different "instances". Some functionality offered by a "Link" is already present in some workbenches like Arch and BIM (clones, external references), but the "Link" implementation is at the core level, and thus can be used by all workbenches in different ways.

The "Link" component was thought and developed almost single-handedly by user realthunder. The motivations and design implementations behind this project are described in his GitHub page, Link. In order to accomplish this feature, several core changes to FreeCAD were made; these are also extensively documented in Core-Changes.

The history of "Link" can be traced to some essential forum threads:

Finally, the pull request and merge happened:

The "Link" object prepares FreeCAD for the phase that was scheduled to happen after the redesign of PartDesign in FreeCAD 0.17, which is working with assemblies.

"Assembly3" is an assembly workbench written in Python by realthunder, that makes use of the "Link" functionality. The workbench served as a testbed for the "Link" component during its development. While Assembly3 is still not officially part of FreeCAD, with the inclusion of "Link", it is a matter of time for Assembly3 to be provided as an installable add-on, just like A2plus Workbench is provided currently.

Beside the introduction of App::Link, the "LinkMerge" branch also introduced some changes visible to the user with regards to object properties, expressions, visual selection, and the tree view. These are described in the Core-Changes page.

App::Link object allows lightweight linking of objects in a document and from external documents.

Forum discussion.

File:Custom-property.gif Dynamic properties can be added to any object.

Forum discussion | Animated gif

Selected elements hidden by other elements are highlighted to indicate their position within the model.

Arch Workbench

The Arch Site tool once more is able to produce sun path diagrams if the given latitude, longitude, and declination are provided. This requires Pysolar 0.7 or above, and only works with Python 3.

Forum discussion, commit 2177f4437, commit c05bc0990.

The Arch Site tool now can display a compass to show the direction of the "true North" (declination) in the model. By the default, North is aligned to the Y axis. This is useful when working in real world coordinates.

Forum discussion, pull request #2111, commit ff1fb11af, pull request #2360.

The Arch SectionPlane tool now has the ability of clipping the view, to act as a camera.

Forum discussion, commit 9a64f3fad9.

The Arch Fence tool was added to produce fence objects starting from a post and a path.

Forum discussion, pull request #2151, pull request #2173, pull request #2263, pull request #2270.

Arch Fence in action.

Improvements in the Reinforcement Addon, which extends the Arch Rebar tool.

Automated reinforcement graphical user interface: the intention is to facilitate the automatic creation of simple and complex rebars. This development was carried out as a Google Summer of Code 2019 project: Suraj_Dadral/gsoc_proposal.

Forum discussion, FreeCAD-Reinforcement (master code), SurajDadral/FreeCAD-Reinforcement (development fork).

Curved Shapes Workbench

A new workbench for designing curves 3D surfaces; CurvedShapesWorkbench.

Forum discussion.

Draft Workbench

New Edit Improved mode to edit shapes by directly manipulating the nodes.
(Discussion)

(animated gif image)

File:Draft 3rd degree bezier.gif Create 3rd degree Bezier curves in Draft similar to Inkscape.
(Discussion)

(animated gif image)

New Draft Arc 3Points tool creates circular arcs by specifying three points through which the arc passes.
Replaces Draft VisGroup, providing a layer system familiar to other CAD systems. Supports adding objects by drag-and-drop, controls object visibility and, optionally, object color.

(Discussion) (Gihub)

Other Changes

  • Renamed DWire to PolyLine (Github)
  • Substantial reqorking to improve FreeCAD 2D drafting and better support for TechDraw by yorik (Discussion)

FEM Workbench

Part Workbench

  • New Face method : aFace.cutHoles(list_of_wires) to cut holes into a face. (The face usually needs to be validated after operation)
  • New command: Create face points object from mesh ([1])

PartDesign workbench

Path Workbench

Added Coolant Modes for Coolant Management (Discussion)

Other Changes

Render Workbench

Added support for Blender Cycles renderer (git commit)

Sketcher Workbench

Sketcher Elements Widget - Filter geomtry by type (Discussion)

Spreadsheet Workbench

Start Workbench

Re-added example files to the Start page with saved thumbnails in their icons, forum announcement, git commit ba6a6d63ee9c.

Surface Workbench

TechDraw Workbench

Improved scaling support for viewport geometry added as an image to a drawing

(Forum discussion)

Added balloon decorators for Techdraw notes

(Discussion)

Added support for leader lines and rich text formatting

(Discussion)

Support for "cosmetic" dimensioning, which is not based on existing geometry

(Discussion)

Mask portions of a drawing and add centerlines to faces

(Discussion)

Welding icon set

(Discussion)(Github)

Other TechDaw Changes

Material Handling

Macros

Automatic Light-Guage Steel Frame Creator

Forum discussion | Screencast

Additional Modules

A2plus
discussion github
A new workbench to assemble different parts in FreeCAD. It is an extension of the Assembly2 workbench providing an extended color and transparency handling for parts and a new constraint using the center of mass of parts.


Changes:

- improved pointOnPlane constraint: As point definition a sphere (it's center) can be used.
- improved pointOnLine constraint: As point definition a sphere can be used and as line definition an axis of a cylinder. (This allows more constraining to spheres)

CadQuery
github
Scripting based on the CadQuery CAD scripting API. A new code editor is available and script variables can be edited dynamically through a parameter dialog. The workbench also supports normal file operations for CadQuery scripts (open, new, close, etc), and example scripts to help users learn new concepts.
Civil Engineering/Transportation Workbench
A toolset for developing highway and railway designs, including horizontal alignments, vertical profiles, and 3D models
Curves
github discussion
A collection of tools to create and edit NURBS curves and surfaces.
Defeaturing Workbench
discussion github
Edit imported STEP models and remove selected features from the model.
Electromagnetic (EM)
discussion
Electromagnetic
Fasteners Workbench
discussion github details
Generate screws, bolts, washers, and other fasteners
Flamingo Workbench
discussion github
A set of customized FreeCAD commands and objects that help to speed-up the drawing of frames and pipelines.
InventorLoader
discussion github
Import Autodesk Inventor files (in progress).
KicadStepUp Workbench
discussion sourceforge
Provide support for KiCad and FreeCAD users in ECAD and MCAD collaboration.
Lithophane Workbench
github discussion
Create Lithophanes by projecting images onto solid surfaces
Manipulator Workbench
discussion
Tools to aid in part manipulation
Nurbs
discussion github Microelly's "FreeCAD Buch"
A collection of scripts for managing freeform surfaces and curves.
SheetMetal Workbench
Discussion (thread 1 | thread 2 | thread 3) github
Tools for designing and bending objects made from sheet metal
Silk
discussiongithub
A collection of NURBS surface modeling tools focused on low degree and seam continuity.
SQL Workbench
discussion github
Perform Structured Query Language (SQL) queries on FreeCAD document files to retrieve and report model data.