Skip to content
This repository was archived by the owner on Mar 1, 2025. It is now read-only.
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
6 changes: 4 additions & 2 deletions blog/2024-04-22/catia.mdx
Original file line number Diff line number Diff line change
Expand Up @@ -28,7 +28,7 @@ A lot of companies that use CATIA are interested in migrating away and are looki

## A bit of history

First off, CATIA isn’t just old, it’s old. The project was started in 1977 (Jimmy Carter was president and disco was the rage) by Dassault Systèmes for designing fighter jets. Even today, when you ask which Dassault’s software you should pick, CATIA or SolidWorks, you are likely to hear something along the lines of “if it has wheels or wings, go CATIA”. Many big names in the automotive and aerospace industries rely on CATIA, both in the US and the EU.
First off, CATIA isn’t just old, it’s _ancient_. The project was started in 1977 by Dassault Systèmes for designing fighter jets. That was back when Jimmy Carter was president, and disco was all the rage. Even today, when you ask which Dassault’s software you should pick, CATIA or SolidWorks, you are likely to hear something along the lines of “if it has wheels or wings, go CATIA”. Many big names in the automotive and aerospace industries rely on this software, both in the US and the EU.

Dassault has been very conservative about updating the software, and users are equally conservative about upgrading. They released v5 in 1998, then v6 in 2009. Both are still widely used. Since 2014 they’ve been trying hard to get everyone to switch to 3DEXPERIENCE CATIA.

Expand Down Expand Up @@ -60,7 +60,9 @@ Users commonly cite frustrations with frequent crashes especially when performin

## The cost

And let’s take a minute to talk about the cost. The pricing varies a lot year to year, but also depends on what modules you need and other factors that Dassault doesn’t disclose openly. You need to request a quote from a distributor. But there’s no arguing that CATIA is expensive — really expensive. It’s at least in the early 5 figures for the one-time payment and at least $2,000 for further annual license maintenance — per seat. Pretty much the same goes for 3DEXPERIENCE CATIA. At this price point the product still causes a lot of frustration with frequent bugs and lukewarm customer support (a thread like [this one](https://www.reddit.com/r/SolidWorks/comments/1al1jtr/3dexperience_really_that_bad/) will give you a pretty good idea).
And let’s take a minute to talk about the cost. The pricing varies a lot year to year, but also depends on what modules you need and other factors that Dassault doesn’t disclose openly. You need to request a quote from a distributor. But there’s no arguing that CATIA is expensive — really expensive. It’s at least in the early 5 figures for the one-time payment and at least $2,000 for further annual license maintenance — per seat.

Pretty much the same goes for 3DEXPERIENCE CATIA. At this price point the product still causes a lot of frustration with frequent bugs and lukewarm customer support (a thread like [this one](https://www.reddit.com/r/SolidWorks/comments/1al1jtr/3dexperience_really_that_bad/) will give you a pretty good idea).

## Putting things in perspective

Expand Down
14 changes: 9 additions & 5 deletions blog/2024-07-03/bom-tool.md
Original file line number Diff line number Diff line change
@@ -1,6 +1,6 @@
---
slug: introducing-bom-tool
title: "BOM generation should be a core feature, so let's do it"
title: "BOM generation should be a core feature, so we implemented it"
description: "Ondsel recently implemented a bill of materials tool as part of the integrated assembly workbench."
authors:

Expand All @@ -19,7 +19,9 @@ image: ./titlecard.jpg
draft: false
---

Back when we did the [user survey](https://ondsel.com/blog/freecad-user-survey-results-part-1/), the generation of bills of materials (BOM) was the next important thing after the ability to create assemblies. People don’t even need collision detection as much as they need their BOMs. Based on this data, Pierre-Louis Boyer (Ondsel) recently added a Bill of Materials tool to the Assembly workbench for the upcoming Ondsel ES v2024.3 and FreeCAD v1.0. It is already available in weekly builds of Ondsel ES and the upstream project.
Back when we did the [user survey](https://ondsel.com/blog/freecad-user-survey-results-part-1/), the generation of bills of materials (BOM) was the next important thing after the ability to create assemblies. People don’t even need collision detection as much as they need their BOMs.

Based on this data, Pierre-Louis Boyer (Ondsel) recently added a Bill of Materials tool to the Assembly workbench for the upcoming Ondsel ES v2024.3 and FreeCAD v1.0. It is already available in weekly builds of Ondsel ES and the upstream project.

<!-- truncate -->

Expand Down Expand Up @@ -47,7 +49,7 @@ Or we could be talking about service BOMs where a technician has no use for a BO

There are [even more types of BOMs](https://www.optiproerp.com/blog/10-types-boms-explained/) out there. Is it possible to handle this variety of use cases with existing implementations? Not really, and here is why.

## The problems with existing implementations
## Where existing implementations fail

With just one exception (more on that below), existing BOM generators for FreeCAD are workbench-specific:

Expand All @@ -64,7 +66,7 @@ Alas, it suffers from the same issue as other existing solutions we mentioned ab

## Design and workflow

This particular design flaw — completely overwriting spreadsheets — is why the BOM tool developed by Ondsel creates a new parametric object in the project tree every time you use it. Internally, the BOM object is a subclass of spreadsheet, so it has its features like columns, but also some special features to generate spreadsheet data.
This particular design flaw in the workbench by Paul Ebbers — completely overwriting spreadsheets — is why the BOM tool developed by Ondsel creates a new parametric object in the project tree every time you use it. Internally, the BOM object is a subclass of spreadsheet, so it has its features like columns, but also some special features to generate spreadsheet data.

Creating parametric objects in the tree has two major benefits:

Expand Down Expand Up @@ -124,4 +126,6 @@ The initial implementation has been merged into upstream FreeCAD and is availabl

For now, we are shipping the BOM tool as part of the Assembly workbench, but the plan is to make it a feature that looks and behaves more like a core feature. You can already use it even if there is no assembly in your project, but you have to switch to the Assembly workbench to use it. And that is one of the things where we want your feedback.

We requested a conversation with the upstream design working group, and for that, it would be great to have more use cases readily available to discuss. So we are looking for feedback from developers and users alike to tell us if our approach is sound and allows for the possible use cases we listed above. You can drop by the upstream [issue tracker](https://github.com/FreeCAD/FreeCAD/issues) and file a request or a bug report or you can join our [Discord server](https://discord.gg/7jmzezyyfP) (the #assembly-wb chat) and tell us what you think.
We requested a conversation with the upstream design working group, and for that, it would be great to have more use cases readily available to discuss. So we are looking for feedback from developers and users alike to tell us if our approach is sound and allows for the possible use cases we listed above.

Are you interested? Please drop by the upstream [issue tracker](https://github.com/FreeCAD/FreeCAD/issues) and file a request or a bug report or you can join our [Discord server](https://discord.gg/7jmzezyyfP) (the #assembly-wb chat) and tell us what you think.
14 changes: 8 additions & 6 deletions blog/2024-09-16/gdt.mdx
Original file line number Diff line number Diff line change
Expand Up @@ -32,7 +32,7 @@ Experienced designers and engineers know this. They design the parts to have tig

![GD&T example](gdt-example.webp)

Traditionally, tolerance requirements were captured in the technical drawings. As CAD matures, these requirements are being captured in the design itself and that is called Geometric Dimensioning and Tolerancing (GD&T) — a set of rules that communicate the intent behind design and what tolerances are acceptable.
Traditionally, tolerance requirements were captured in the technical drawings, such as the one on the illustration above. As CAD matures, these requirements are being captured in the design itself and that is called Geometric Dimensioning and Tolerancing (GD&T) — a set of rules that communicate the intent behind design and what tolerances are acceptable.

Let’s discuss what GD&T is and what it isn’t, what’s currently available in FreeCAD to support this standard, how the program currently stacks against competition with regards to GD&T, and what we think the plan forward should be.

Expand All @@ -56,7 +56,9 @@ This video works as a very good introduction to the topic:

If you want to take an even deeper dive, the [GeoTol channel on YouTube](https://www.youtube.com/@GeoTolPro/videos) provides very useful information that is not tied to a specific CAD.

While we specifically refer to ASME GD&T in this post, this is not the only standard that deals with dimensioning and tolerancing, as well as with the use of gauges, acceptance testing etc. Another common option is ISO’s Geometrical Product Specifications. GD&T and GPS have an overlapping scope and a few fundamentals differences (you can use [this guide](https://www.gdandtbasics.com/iso-vs-asme-standards/) for reference). The two standards also use different terminology for the same tolerances and _mostly_ the same symbols. In the future, it would be useful to provide means to work in either GD&T or in ISO-GPS context.
While we specifically refer to ASME GD&T in this post, this is not the only standard that deals with dimensioning and tolerancing, as well as with the use of gauges, acceptance testing etc.

Another common option is ISO’s Geometrical Product Specifications. GD&T and GPS have an overlapping scope and a few fundamentals differences (you can use [this guide](https://www.gdandtbasics.com/iso-vs-asme-standards/) for reference). The two standards also use different terminology for the same tolerances and _mostly_ the same symbols. In the future, it would be useful to provide means to work in either GD&T or in ISO-GPS context.

From users’ perspective, any GD&T implementation should allow doing three things: attaching tolerance constraints to features, displaying them on the screen on a 2D drawing, importing and exporting GD&T data from and to STEP files. Let’s see what’s available in FreeCAD.

Expand All @@ -74,9 +76,9 @@ Overall, while the workbench provides an initial implementation of GD&T, there a

![Incorrect label placement](freecad-gdt-placed-wrongly.webp)

It is obvious though that the feature is all but trivial, so it's supposed to take time and effort to complete it.
It's obvious though that the feature is all but trivial, so it's supposed to take time and effort to complete it.

## Support for GD&T data in STEP loader/saver
## Support for GD&T data in the STEP loader/saver

There are multiple reasons why you would want this.

Expand Down Expand Up @@ -142,10 +144,10 @@ The first step in designing such a system should be updating the file format to

Once that is done, it’s possible to implement some basic capturing of the GD&T data. Then you can start adding GD&T visualization, as well as manipulation tools to refine captured data and add more annotations.

Finally, once _that_ is done and users have full control over annotations, STEP loading and exporting code can be updated to match the existing feature set.
Finally, once _that_ is done, and users have full control over annotations, STEP loading and exporting code can be updated to match the existing feature set.

We can (and likely _should_) argue on implementation details, but let's agree on the general proposal first.

## What the next step should be

While maintainers are busy getting FreeCAD 1.0 out the door, let’s discuss the plan and flesh it out so that real work could start. There's a [dedicated GitHub board](https://github.com/orgs/FreeCAD/projects/23), but right now it only has one issue card related to inefficient GD&T workflow in the TechDraw workbench. Let’s use it to plan further work.
While maintainers are busy getting FreeCAD 1.0 out the door, let’s discuss the plan and flesh it out so that real work could start. There's a [dedicated GitHub board](https://github.com/orgs/FreeCAD/projects/23), but right now it only has one issue card related to inefficient GD&T workflow in the TechDraw workbench. Let’s use it to plan further work.
2 changes: 1 addition & 1 deletion blog/2024-09-27/svg-postprocessor.mdx
Original file line number Diff line number Diff line change
@@ -1,6 +1,6 @@
---
slug: ondsel-svg-postprocessor
title: "Streamlining laser cutter workflows with Ondsel postprocessor"
title: "We've just streamlined laser cutter workflows for you"
description: "Laser cutters are a staple in maker spaces and are often the first exposure users have to CNC equipment. We developed a postprocessor to create SVG files for laser cutters"
authors:

Expand Down
4 changes: 2 additions & 2 deletions blog/2024-10-02/lsf-feature.mdx
Original file line number Diff line number Diff line change
Expand Up @@ -50,9 +50,9 @@ PICOBUS has the following parts:
- The rocket mounting flange that attaches the deployer to the rocket.
- The door that has the deployment mechanism, thermal knives, and electronics.

Here is the entire model on Lens:
<!-- Here is the entire model on Lens:

<iframe width="560" height="315" src="https://lens.ondsel.com/share/66f0a17144d4d1e0926a8c5a" title="PICOBUS assembly for simulation"></iframe>
<iframe width="560" height="315" src="https://lens.ondsel.com/share/66f0a17144d4d1e0926a8c5a" title="PICOBUS assembly for simulation"></iframe> -->

So how does the deployment in space happen? The door is held shut by a spring-loaded pin, and that pin is held in place by a string. When signal is received from the rocket, two thermal knives are heated, and the string is cut. Once they are cut, the pin is pulled out, and the door is allowed to rotate. With the door open, the constant-force spring pushes CubeSats out, and they exit the deployer.

Expand Down
Binary file added static/img/homepage-lens-screen.png
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
Loading