Replacing default KiCad (?) 3D model with an external model

Good idea. Adds a small step but would create better looking mechanical designs.

There’s no confusion if the user is informed that the file doesn’t exist. That’s why I reported the bug/wish.

As i stated above, there is the potential of confusion depending on how this information is given to the user. If it looks like an error message then the users assume that there was a problem with the library installation or with the footprint.

Looks like a choice between two behaviours:

Silent: leads to threads like this

Error message: leads to spurious bug reports

Perhaps a more informative message needs to be presented, e.g. a warning triangle next to the path with a tooltip that says a suitable 3D model needs to be created and that the viewer only shows the footprint. The message would have to be carefully worded so that it clear that it’s not a matter of configuration or a missing library. Maybe even a link to a FAQ.

That’s exactly what I proposed in my bugreport. It looks like nobody reads them carefully…

I read it and i bet the word error you used to describe non existing model files will lead to user confusion. A different kind of confusion but still confusion. (We had a similar message in the past.) To be honest i doubt that there will be a message possible that will avoid confusion of all users.

Disclaimer: I have not fully thought the below through. It is just a basic idea that will fall apart when looked at too closely especially in edgecases

So maybe a better option would be to change the whole idea of model assignment. Possibly instead of having the model fully defined in the library that thing would simply be a default model and something similar to the footprint assignment process is then used to really connect the models to footprints for a layout (in this program a non existing model could be marked more clearly without the same confusion potential)


I could even imagine that having the option to auto generate crude bounding box 3d models is something of use in some future. So for example give the footprint a height information and then extrude the fab outline to get a bounding box model if the assigned 3d model is not found. An error message would then only be generated if the 3d model is not found and the height info does not exist. Otherwise, just a line in the log output details which models were replaced by the bounding box information.

Hi everyone,
I was out last evening and on my return I discovered that there was a vibrant discussion among the experts about the issue raised in this thread by me. I am sorry that I couldn’t respond earliar but reading all arguments in the committed discussion I feel obliged to respond to a point where a clear confirmation from me seems to be missing.

Yes, as I already confirmed in my previous reply, there was confusion on my side. I had not known that as things stand, there wasn’t a model to start with and thus obviously I could also not remove or delete it. But after your explanation I have got the point you made.

I fully understand the dilemma in wording a statement for the user about something which is actually not an error or shortcoming but at the same time still doesn’t confuse the user.

Thanks to everyone who contributed to this thread I have got a number of new incitements.
Best regards

I hope people can see behind the details and see the big picture. I told there about “my own proposition” to solve a problem. Of course it may not be ready for consumption even though I tried to make it detailed. It’s one possible way to tackle the underlying problem. You can for example create a category for “missing file in the official library” problem. The message can be “The official KiCad library doesn’t have 3D model for every footprint but still has a 3D model file path defined for every footprint. Blah blah blah etc.” Because the message is visible only if the user initiates seeing the message it can be as informative as needed.

The main point is that letting the user know about possible problem is better than leaving them without any information when the problem arises.

Another important thing to understand is that if a 3D model can’t be seen the user has no way of knowing what is wrong. And there’s more than just “the path is correct but the file not found” which can go wrong. This proposition would help to see and understand every possible problem in the place where the problem can first be detected and analyzed.

That bug report isn’t needed if something else is changed radically.

Yes and no :slight_smile:
You have written:

And in the same reply:

For me that means:

  1. You confirm that you just didn’t noticed that there was no model to be deleted so deletion had no effect at your PC.
  2. You still wonder why deletion had no effect at your PC.

And which one of 1 and 2 is valid?

1 Like

There is a third option:
add a menu to launch a 3D models missing checker, with an option to create a report file with the list of missing wrl/step files required in the pcbnew file.
There is a similar report when the pcbnew STEP exporting is launched.
I think it would be nice to have it also for wrl models, having the check at the pcb file level, before the need to export the board.

2 Likes

@Piotr
I didn’t intend to be impolite by any means by my silence to your question. Please accept my apologies. It was just that I was off-line for some time due to personal reasons. Though, a bit late, still kindly allow to respond to your querstion as follows:

For me, both 1 and 2 are valid.
Number 1, - I just didn’t notice (because I didn’t know) that there are cases where no models may be existant to be deleted and number 2, because in such a case I would have expected some kind message from KiCad informing the user about the futility of the action (i.e. trying to delete something that is not there).

But I think you and other experts have exchanged views on possible alternatives for such cases in the future.
Best regards

Absolutely no need. I also don’t take Internet with me everywhere.

In my opinion no need for extra info (and one extra user click to confirm it) as you have 3D preview and you see at once the effect of your actions.

May be others, but I’m certainly not a KiCad expert. I have designed only 3 PCBs with KiCad till now.

This topic was automatically closed 90 days after the last reply. New replies are no longer allowed.