trampas wrote:I am trying to run this enclosed openscad script in freecad 0.17 8046 (windows 10 x64) and it shows red explanation marks on the objects.
I am relatively new to FreeCAD so most likely I am doing something wrong.
I don't think you are doing anything wrong I think you have just hit a difficult bug.
Looking at the code it is in an area that has given problems in the past. There are a number of options in the OpenSCAD preferences that have been used in the past to deal with difficult files see comments in the code. You could try the OpenSCAD option Use Multmatrix Feature but I doubt it will make any difference as the code is barfing at trying to to do a multmatrix transformation on a null shape
"/Applications/CAD/FreeCAD.app/Contents/Mod/OpenSCAD/importCSG.py", line 802, in p_multmatrix_action
new_part.Shape = part.Base.Shape.transformGeometry(transform_matrix)
<class 'Part.OCCError'>: Cannot transform null shape.
All the explanation marks are boolean operations that have not worked and I therefore suspect the null shape. At a guess these are problems with OCC and boolean operations on the fustrum shapes as most seem to involve a fustrum
You might have better luck with a later version of OCC my version is
OS: Mac OS X
Word size of OS: 64-bit
Word size of FreeCAD: 64-bit
Version: 0.16.6706 (Git)
Build type: Release
Branch: tag: 0.16.6706
Python version: 2.7.11
Qt version: 4.8.7
Coin version: 3.1.3
OCC version: 6.8.0.oce-0.17
I am sure in at least the distant past there was an option to do a refine_shape operation after each boolean operation which might help trying to avoid do a transformation on a null shape. Doing a refine_shape after each boolean slows things down even further, but was a sticking plaster when booleans had OCC errors in the past. Obviously better if OCC fixed the error at source though. OCC did go through a stage of fixing a lot of errors. I will look again at the code tomorrow but doubt there will be able to fix in the short term.