Design456 Workbench: Difference between revisions

From FreeCAD Documentation
No edit summary
Line 1: Line 1:
<languages/>
<translate>

{{VeryImportantMessage|This workbench is under heavy development}}
{{VeryImportantMessage|This workbench is under heavy development}}


Line 6: Line 9:
{{TOCright}}
{{TOCright}}


The Design456 workbench is an [[external_workbenches|External workbench]] that plans to implement a Direct Modeling methodology in FreeCAD. Think 'push and pull geometry' that one finds in CAD suites like SketchUp and Fusion360.
The Design456 workbench is an [[External_workbenches|External workbench]] that plans to implement a Direct Modeling methodology in FreeCAD. Think 'push and pull geometry' that one finds in CAD suites like SketchUp and Fusion360.

The original idea came to live when the developer of Design456 wanted to do the basic tasks which is simple and easy to do in 123D Design. FreeCAD could do the same job but the tools aren't interfaced in that way. This workbench will not keep track of old shapes. It tries to clean up the garbage which might be produced during running under commands. It tries to make the tree as simple as possible. Parameters must be decided during the desired manipulations which cannot be changed later.
The original idea came to live when the developer of Design456 wanted to do the basic tasks which is simple and easy to do in 123D Design. FreeCAD could do the same job but the tools aren't interfaced in that way. This workbench will not keep track of old shapes. It tries to clean up the garbage which might be produced during running under commands. It tries to make the tree as simple as possible. Parameters must be decided during the desired manipulations which cannot be changed later.


Line 13: Line 17:
==Background==
==Background==


Traditionally, FreeCAD employs a Parametric Modeling methodology which is a powerful and scalable approach. It is also has been an industry standard.
Traditionally, FreeCAD employs a Parametric Modeling methodology which is a powerful and scalable approach. It is also has been an industry standard. But I wish to have another approach. My workbench will try to implement direct modeling which is not provided at the moment by FreeCAD.

But I wish to have another approach. My workbench will try to implement direct modeling which is not provided at the moment by FreeCAD.
==Installation==
==Installation==


Line 20: Line 24:


===== Note: =====
===== Note: =====

If the above is not working for you please consider :
If the above is not working for you please consider :
* Addon manager no longer works in FreeCAD 0.18 due to changes in Github use FreeCAD 0.20 instead.
* Addon manager no longer works in FreeCAD 0.18 due to changes in Github use FreeCAD 0.20 instead.
Line 30: Line 35:


* Developer: @MariwanJ (Mariwan Jalal)
* Developer: @MariwanJ (Mariwan Jalal)
* Youtube channel : [https://www.youtube.com/user/BestofMyDream (used to announce new updates 2022-01-20)]
* Youtube channel : [https://www.youtube.com/user/BestofMyDream Youtube channel] used to announce new updates 2022-01-20
* Github: https://github.com/MariwanJ/Design456 (used to announce new updates 2022-01-20)
* Github: {https://github.com/MariwanJ/Design456 Design456] used to announce new updates 2022-01-20
* Discussion: https://forum.freecadweb.org/viewtopic.php?f=8&t=54893 (Not used anymore 2022-01-20)
* Discussion: [https://forum.freecadweb.org/viewtopic.php?f=8&t=54893 forum thread] Not used anymore 2022-01-20


==Tools==
==Tools==

===2D Drawing and manipulation tools===
===2D Drawing and manipulation tools===

* [[Image:Design456_3Point.svg|32px]] [[Design456_3Point|Design456 Arc3Points]]: Use this tool to create an Arc from 3 vertices.
* [[Image:Design456_3Point.svg|32px]] [[Design456_3Point|Design456 Arc3Points]]: Use this tool to create an Arc from 3 vertices.
* [[Image:Design456_MultiPointsToWireClose.svg|32px]] [[Design456_MultiPointsToWireClose|Design456 MultiPointsToWireClose]]: Use this tool to create a series of lines between points selected in series(closed).
* [[Image:Design456_MultiPointsToWireClose.svg|32px]] [[Design456_MultiPointsToWireClose|Design456 MultiPointsToWireClose]]: Use this tool to create a series of lines between points selected in series(closed).
Line 43: Line 50:


===3D Drawing and manipulation tools===
===3D Drawing and manipulation tools===

* [[Image:Design456_Extrude.svg|32px]] [[Design456_Extrude|Design456 Extrude]]: Use this tool to extrude any face of 2D or 3D object.
* [[Image:Design456_Extrude.svg|32px]] [[Design456_Extrude|Design456 Extrude]]: Use this tool to extrude any face of 2D or 3D object.
* [[Image:Design456_Extract.svg|32px]] [[Design456_Extract|Design456 Extract Face]]: Use this tool to extract a face, edge or vertex from any object.
* [[Image:Design456_Extract.svg|32px]] [[Design456_Extract|Design456 Extract Face]]: Use this tool to extract a face, edge or vertex from any object.
Line 62: Line 70:


===Alignment tools===
===Alignment tools===

* [[Image:Design456_PartMagnet.svg|32px]] [[Design456_PartMagnet|Design456 Magnet]]: Use this tool align an object on another one by selecting the target face.
* [[Image:Design456_PartMagnet.svg|32px]] [[Design456_PartMagnet|Design456 Magnet]]: Use this tool align an object on another one by selecting the target face.
* [[Image:Design456_AlignToPlane.svg|32px]] [[Design456_AlignToPlane|Design456 Align to plane]]: Use this tool to align object(s) on the surface of the plane.
* [[Image:Design456_AlignToPlane.svg|32px]] [[Design456_AlignToPlane|Design456 Align to plane]]: Use this tool to align object(s) on the surface of the plane.
Line 74: Line 83:
* [[Image:Design456_SmartAlignment.svg|32px]] [[Design456_SmartAlignment|Design456 Align multiple objects]]: Do 9 alignments based on shapes bound boxes.
* [[Image:Design456_SmartAlignment.svg|32px]] [[Design456_SmartAlignment|Design456 Align multiple objects]]: Do 9 alignments based on shapes bound boxes.


===[[FreeCAD Direct Modeling|FreeCAD Direct Modeling]]===
===FreeCAD Direct Modeling===

Main goal of Design456 is to provide Direct Modeling tool set. There are some tools that are partially finished or ready to use. Please try them and report your comments at the github pages. This wiki will be updated whenever I have time. It is almost certain that the github has more info than these pages (at the moment due to lack of time for updating the wiki pages)
Main goal of Design456 is to provide [[FreeCAD Direct Modeling|Direct Modeling]] tool set. There are some tools that are partially finished or ready to use. Please try them and report your comments at the github pages. This wiki will be updated whenever I have time. It is almost certain that the github has more info than these pages (at the moment due to lack of time for updating the wiki pages)


*smart Scale
*smart Scale
Line 95: Line 105:


=====Note: =====
=====Note: =====

*Please notice that there is no released version yet for this workbench. Intensively development is ongoing and bug is expected for the tools. Don't use it on serious document yet. Make a copy of you object and apply my tools. By that you know if it works for you or not without taking risk.
*Please notice that there is no released version yet for this workbench. Intensively development is ongoing and bug is expected for the tools. Don't use it on serious document yet. Make a copy of you object and apply my tools. By that you know if it works for you or not without taking risk.


===[[FreeCAD GUI Widgets toolkit|FreeCAD GUI Widgets toolkit]]===
===FreeCAD GUI Widgets toolkit===

Fr_Widget system is a work for providing easy to use Coin3D drawing GUI toolkit. The toolkit will make it easy to draw and should provide an interactive way to manipulate FreeCAD e objects. The simplicity of the toolkit should make it easy to use it.
[[FreeCAD GUI Widgets toolkit|FreeCAD GUI Widgets toolkit]] is a work for providing easy to use Coin3D drawing GUI toolkit. The toolkit will make it easy to draw and should provide an interactive way to manipulate FreeCAD e objects. The simplicity of the toolkit should make it easy to use it.


Widgets gives you the ability to get callbacks, and are inspired by the well known multi-platform toolkit www.fltk.org. Almost all smart tools must have a widget from this toolkit.
Widgets gives you the ability to get callbacks, and are inspired by the well known multi-platform toolkit www.fltk.org. Almost all smart tools must have a widget from this toolkit.


===Defeaturing WB added to Design456===
===Defeaturing workbench added to Design456===

I added the workbench to my workbench and further development of the tools will continue. It was necessary to add the de-featuring tools to Design456. More tools must be added to the tool set in the feature.
I added the workbench to my workbench and further development of the tools will continue. It was necessary to add the de-featuring tools to Design456. More tools must be added to the tool set in the feature.


*Tobe continued!
*To be continued!

===Microelly2 Tools (Nurbs workbench) converted===

I did the conversion for the Nurbs and fixed many bugs. In the beginning I added the project to my workbench, but since the tools are not working well, I remove it. The work is huge and there were places where I didn't know how to solve the issues. More time required and more understanding of Microlley's work is required that is why the work on the project is suspended. Some good works are done and you can find the project at: [https://github.com/MariwanJ/nurbs Github Nurb]. Unfortunately, the code is more experimental code that is not made to be a tool in a workbench. Due to that, I wasn't able to retrieve all tools and it is hard to understand the tools. Most of the code are undocumented. There are good things there but not structured in a way a workbench requires.


Note: Due to what I described, further developing Nurbs workbench is not possible, at least for now.
===Microelly2 Tools (Nurbs WB) converted===
I did the conversion for the Nurbs and fixed many bugs. In the beginning I added the project to my WB, but since the tools are not working well, I remove it.
The work is huge and there were places where I didn't know how to solve the issues. More time required and more understanding of Microlley's work is required that is why the work on the project is suspended.
Some good works are done and you can find the project at :
https://github.com/MariwanJ/nurbs
Unfortunately, the code is more experimental code that is not made to be a tool in a workbench. Due to that, I wasn't able to retrieve all tools and it is hard to understand the tools. Most of the code are undocumented. There are good things there but not structured in a way a workbench requires.
Note: Due to what I described, further developing Nurbs WB is not possible, at least for now.


</translate>


{{Design456 Tools navi{{#translation:}}}}
{{Design456 Tools navi{{#translation:}}}}

Revision as of 09:26, 12 November 2022


This workbench is under heavy development

Introduction

Design456 External workbench icon

The Design456 workbench is an External workbench that plans to implement a Direct Modeling methodology in FreeCAD. Think 'push and pull geometry' that one finds in CAD suites like SketchUp and Fusion360.

The original idea came to live when the developer of Design456 wanted to do the basic tasks which is simple and easy to do in 123D Design. FreeCAD could do the same job but the tools aren't interfaced in that way. This workbench will not keep track of old shapes. It tries to clean up the garbage which might be produced during running under commands. It tries to make the tree as simple as possible. Parameters must be decided during the desired manipulations which cannot be changed later.

This Wikipage is not updated regularly. To get the latest tool-list, you need to look at Design456 github or youtube videos. Only one developer is working on this project, and time to update these all documents is missing unfortunately.

Background

Traditionally, FreeCAD employs a Parametric Modeling methodology which is a powerful and scalable approach. It is also has been an industry standard. But I wish to have another approach. My workbench will try to implement direct modeling which is not provided at the moment by FreeCAD.

Installation

Download the Design456 workbench via the Addon Manager Tools → Addon Manager

Note:

If the above is not working for you please consider :

  • Addon manager no longer works in FreeCAD 0.18 due to changes in Github use FreeCAD 0.20 instead.
  • Invoke the Addon Manager - Tools | Adddon manager.
  • Select Configure..Into Custom repositories enter https://github.com/MariwanJ/Design456.
  • Then OK.
  • Restart FreeCAD.

References

Tools

2D Drawing and manipulation tools

3D Drawing and manipulation tools

Alignment tools

FreeCAD Direct Modeling

Main goal of Design456 is to provide Direct Modeling tool set. There are some tools that are partially finished or ready to use. Please try them and report your comments at the github pages. This wiki will be updated whenever I have time. It is almost certain that the github has more info than these pages (at the moment due to lack of time for updating the wiki pages)

  • smart Scale
  • smart DirectScale
  • smart Fillet
  • smart Chamfer
  • smart Extrude
  • smart Extrude Rotate
  • smart Edge Extend
  • smart Face Extend
  • smart Alignment
  • Extend Edge
  • Extend Face
  • Paint
  • Hole
  • Reset Placement
  • Simplify Edges
  • Simplify Faces
Note:
  • Please notice that there is no released version yet for this workbench. Intensively development is ongoing and bug is expected for the tools. Don't use it on serious document yet. Make a copy of you object and apply my tools. By that you know if it works for you or not without taking risk.

FreeCAD GUI Widgets toolkit

FreeCAD GUI Widgets toolkit is a work for providing easy to use Coin3D drawing GUI toolkit. The toolkit will make it easy to draw and should provide an interactive way to manipulate FreeCAD e objects. The simplicity of the toolkit should make it easy to use it.

Widgets gives you the ability to get callbacks, and are inspired by the well known multi-platform toolkit www.fltk.org. Almost all smart tools must have a widget from this toolkit.

Defeaturing workbench added to Design456

I added the workbench to my workbench and further development of the tools will continue. It was necessary to add the de-featuring tools to Design456. More tools must be added to the tool set in the feature.

  • To be continued!

Microelly2 Tools (Nurbs workbench) converted

I did the conversion for the Nurbs and fixed many bugs. In the beginning I added the project to my workbench, but since the tools are not working well, I remove it. The work is huge and there were places where I didn't know how to solve the issues. More time required and more understanding of Microlley's work is required that is why the work on the project is suspended. Some good works are done and you can find the project at: Github Nurb. Unfortunately, the code is more experimental code that is not made to be a tool in a workbench. Due to that, I wasn't able to retrieve all tools and it is hard to understand the tools. Most of the code are undocumented. There are good things there but not structured in a way a workbench requires.

Note: Due to what I described, further developing Nurbs workbench is not possible, at least for now.


Template:Design456 Tools navi