TechDraw Roadmap: Difference between revisions

From FreeCAD Documentation
No edit summary
 
(124 intermediate revisions by 8 users not shown)
Line 1: Line 1:
[[File:preferences-techdraw.svg|64px]]
[[File:preferences-techdraw.svg|64px]]

<!--T:1-->
The TechDraw workbench is still very much a work in progress. Not all functions are available, and not all functions work correctly. Here is a rough roadmap of areas to be addressed (in no particular order).

__NOTOC__
__NOTOC__
<!--T:2-->

===Coming Soon=== <!--T:2-->

<!--T:3-->
A Pull Request has been submitted for:
* Coverity fixes (internal technical changes to meet standards)
* Section face hatching
* remove XAxisDirectionProperty
* heavily revised ViewSection
* bug fix: projection group live preview for Automatic & Custom scaling
* bug fix: projection group view direction

===Drawing Tools=== <!--T:4-->

<!--T:5-->
This includes the ability to add leaders, callouts and detail highlights to Views. The detail highlights will be used in ViewDetail (see below).

===ViewSection=== <!--T:6-->

<!--T:7-->
The current implementation of ViewSection is buggy and limited. ViewSection will be revised to allow multiple sections based on the same base View, the creation dialog will be improved, and hopefully we'll get the arrows pointing in the right direction finally.

===ViewDetail=== <!--T:8-->

<!--T:9-->
This is the ability to create a View which enlarges a small portion of a base View. This is possible now to some degree with ViewClip, but it is not easy to use.


Here is a rough roadmap of areas to be addressed in the [[TechDraw_Workbench|TechDraw Workbench]] in 2023.
===Documentation=== <!--T10-->


===Current Activity===
<!--T:11-->
* refactoring code into more maintainable pieces
The wiki entries for TechDraw are very sparse and need to be expanded considerably. *** several wiki entries have recently been updated.


===Primary Focus for 2023===
===Geometry Changes/Topological Naming=== <!--T12-->


There are 2 main areas to be addressed in 2023:
<!--T:13-->
* conversion between drawing geometry and model geometry
Dimensions can be adversely affected by geometry changes - both in the 2D drawing and the 3D model. This is related to the widely discussed "topological naming" problem. Investigations are underway to at least detect when a Dimension's underlying geometry has changed and invalidated the Dimension's value.
** these conversions are scattered throughout the code
** the most visible impact is the difficulty in specifying cosmetic geometry
** cosmetic vertex/edge/centerline now rotates with the parent view.


* the "lesser topological naming problem"
===Multi-part View=== <!--T14-->
** primarily making dimensions survive the renaming of reference geometry
*** Phase1 (reference geometry has a new name, but still exists) implemented by [https://github.com/FreeCAD/FreeCAD/pull/8989 PR #8989]
*** First attempt at Phase2 (handling situation where reference geometry has legitimately changed) stalled. Rethinking.
** also affects face hatching
** also affects edge appearance attributes


===Work Completed in 2023===
<!--T:15-->
* remove redundant edges from HLR result PR #9280
Currently, a view contains exactly 1 part. It would be convenient to display Views of multiple parts while preserving their orientation in the 3D model. This will also require changes to Dimensions, since currently Dimensions often assume both references (Vertex, Edge) belong to the same base Part.
* dimension reference name change handling PR #8989
* RichTextAnnotation fix text size & position in svg export PR #10019
* improve SVG hatch drawing speed PR #9995 and PR #9885
* add large ANSI format templates PR #9825
* fix precision errors in 3d window direction/orientation PR #9577
* add shaft/hole fit annotation PR #8455
* add ANSI Y14.5 compatible font PR #8198
* Replacement for Qt XMLPatterns [https://github.com/FreeCAD/FreeCAD/pull/9104 PR #9104] (Thanks Werner!)
* zoom improvements PR #10547, #10456
* hatch speed improvements PR #9995, #9985


===Other Items for 2023===
===Bug Fixes/Feature Requests=== <!--T16-->
These items would be nice to address in 2023:
* drawing overlay
** allow graphics to be added to a drawing page as on a transparent overlay in traditional drafting. This will build on the [https://github.com/WandererFan/FreeCAD/tree/SymbolsAndTraces SymbolsAndTraces] research project and @Evgeniy's schematic workbench.


<!--T:17-->
The are a number of bug reports and feature requests in Mantis and the forums. These will all be addressed eventually.


===Work Completed in 2022===
===Recent Changes/Known Problems=== <!--T18-->
These items were implemented in 2022:
* Navigation modes
* New face detection algorithm
* PrintAll function
* Bitmap hatching fix
* Extension line gaps
* Section dialog live/deferred update option (implemented as part of complex section)
* Convert all templates to "plain svg" (implemented for latin script templates)
* View stacking order
* Use separate thread for hidden line removal, face finding, section and detail cuts
* replace ActiveView Svg creation with simple screen capture
* complex section views
* easier dimensions from 3d geometry
* simple dimension reference repair dialog


===2022 Plan Items Not Completed===
<!--T:18-->
These items are still on the infamous TODO list. They will be worked on as and if time allows.
*Both phases of the performance improvement subproject have beeen merged into the master branch. In general, drawing generation is much faster, though not instantaneous. Some drawings still take a long time.
* Projection group dialog upgrade including live/deferred update option
* The confusing "xDirection" property in Part and Section views is under review. The goal is to replace it with a simple angular rotation property. Pull Request submitted to remove this property. View rotation will now be controlled only by the Rotation property.
* Ability to specify file preferences as relative paths [https://github.com/FreeCAD/FreeCAD/issues/6707 6707]
* ability to specify units by dimension or page instead of system wide.
* weld symbol upgrades including ISO/AWS symbology and help text [https://github.com/FreeCAD/FreeCAD/issues/6313 6313]
* ordinate dimensions [https://github.com/FreeCAD/FreeCAD/issues/6587 6587]
* broken view [https://github.com/FreeCAD/FreeCAD/issues/5694 5694]
* improved handling of Draft/Arch objects
* include sketcher points in drawings
* Feature Control Frames (GD&T)
* Threaded hole representation




{{TechDraw Tools navi{{#translation:}}}}
<!--T:19-->
{{Userdocnavi{{#translation:}}}}
[[Category:User Documentation]]
[[Category:Roadmap{{#translation:}}]]
<languages/>

Latest revision as of 12:45, 12 September 2023


Here is a rough roadmap of areas to be addressed in the TechDraw Workbench in 2023.

Current Activity

  • refactoring code into more maintainable pieces

Primary Focus for 2023

There are 2 main areas to be addressed in 2023:

  • conversion between drawing geometry and model geometry
    • these conversions are scattered throughout the code
    • the most visible impact is the difficulty in specifying cosmetic geometry
    • cosmetic vertex/edge/centerline now rotates with the parent view.
  • the "lesser topological naming problem"
    • primarily making dimensions survive the renaming of reference geometry
      • Phase1 (reference geometry has a new name, but still exists) implemented by PR #8989
      • First attempt at Phase2 (handling situation where reference geometry has legitimately changed) stalled. Rethinking.
    • also affects face hatching
    • also affects edge appearance attributes

Work Completed in 2023

  • remove redundant edges from HLR result PR #9280
  • dimension reference name change handling PR #8989
  • RichTextAnnotation fix text size & position in svg export PR #10019
  • improve SVG hatch drawing speed PR #9995 and PR #9885
  • add large ANSI format templates PR #9825
  • fix precision errors in 3d window direction/orientation PR #9577
  • add shaft/hole fit annotation PR #8455
  • add ANSI Y14.5 compatible font PR #8198
  • Replacement for Qt XMLPatterns PR #9104 (Thanks Werner!)
  • zoom improvements PR #10547, #10456
  • hatch speed improvements PR #9995, #9985

Other Items for 2023

These items would be nice to address in 2023:

  • drawing overlay
    • allow graphics to be added to a drawing page as on a transparent overlay in traditional drafting. This will build on the SymbolsAndTraces research project and @Evgeniy's schematic workbench.


Work Completed in 2022

These items were implemented in 2022:

  • Navigation modes
  • New face detection algorithm
  • PrintAll function
  • Bitmap hatching fix
  • Extension line gaps
  • Section dialog live/deferred update option (implemented as part of complex section)
  • Convert all templates to "plain svg" (implemented for latin script templates)
  • View stacking order
  • Use separate thread for hidden line removal, face finding, section and detail cuts
  • replace ActiveView Svg creation with simple screen capture
  • complex section views
  • easier dimensions from 3d geometry
  • simple dimension reference repair dialog

2022 Plan Items Not Completed

These items are still on the infamous TODO list. They will be worked on as and if time allows.

  • Projection group dialog upgrade including live/deferred update option
  • Ability to specify file preferences as relative paths 6707
  • ability to specify units by dimension or page instead of system wide.
  • weld symbol upgrades including ISO/AWS symbology and help text 6313
  • ordinate dimensions 6587
  • broken view 5694
  • improved handling of Draft/Arch objects
  • include sketcher points in drawings
  • Feature Control Frames (GD&T)
  • Threaded hole representation