Bug in 2.0.14113 invalidates T-body for conversion to Brep

Bug in 2.0.14113 invalidates T-body for conversion to Brep

dunderhead
Advocate Advocate
2,806 Views
13 Replies
Message 1 of 14

Bug in 2.0.14113 invalidates T-body for conversion to Brep

dunderhead
Advocate
Advocate

I have a closed T-spline body, which I modified slightly - no sign of self-intersections. I was prompted to upgrade to a new T-spline representation. I accepted. The new object looks honkey-dory - no self-intersections.  As I tried to exit form-mode I was met with the error message:

Conversion error for: XXX
   T-spline surface has no topological components.
  • I copied the object and started removing faces from the new copy using a bisection method. This gave me a minimal area whose removal allows the then open surface to be converted.  The area contains two adjacent polygons. But I can't figure out to fill the hole - to obtain a closed surface - without the above error to re-occur.
  • I tried to save the original T-mesh in the internal format -- saw that discussed somewhere -- but that functionality seems to have disappeared.  Instead, I saved it as an .obj file. Upon reading that file, I get an object that appears with a negative volume -- it also appears to have a couple of strange polygons that seem to have nothing to do with the original mesh. These do appear to form self-intersections. In other words, the conversion to new T-spline appears to mess up the geometry or topology.
  • Thus, I believe that the T-spline upgrade routine contains a bug.
0 Likes
Accepted solutions (1)
2,807 Views
13 Replies
Replies (13)
Message 2 of 14

TrippyLighting
Consultant
Consultant

Can you share the model ? (export as .f3d and attach to post)


EESignature

0 Likes
Message 3 of 14

dunderhead
Advocate
Advocate

Thanks @TrippyLighting. Here you go! The zip contains one .tsm file that can be imported into Fusion 360 in "Form" mode (under Insert menu).  This file is a much simplified version of the original T-spline, obtained by conversion per prompt about upgrading T-splines. This file cannot be converted to Brep : the "no topological components" error is raised. Can you read the .tsm text format? There are tons of apparent ghosted faces, edges, etc. 

 

0 Likes
Message 4 of 14

TrippyLighting
Consultant
Consultant

The T-Spline simply contains too many triangles.

When I export it as a .obj and re-import it, that its what prevents the mesh to convert into a T-Spline.

While the error message doesn't make much sense to mere mortals like us, the topology of the mesh definitely will need to be improved.

 

I would generally avoid triangles and limit the amount of 5-sided N-Gons. I also avoid any N-gons over 5 sides.

 


EESignature

0 Likes
Message 5 of 14

dunderhead
Advocate
Advocate

Hi, thanks a bunch for looking at it so quickly!  No, the T-spline does not contain too many triangles or polygons-- it's derived from a shape in nature. There's no need for improvements for my purposes.

 

The programming behind Fusion 360 makes no such assumptions, either, I bet you. Of course, as a designer and aesthetician, you're completely right that the mesh could be improved! But that's besides the point: there's a genuine bug here. It was reported elsewhere recently without an example  (just a week ago, https://forums.autodesk.com/t5/fusion-360-support/error-trying-to-convert-t-splines-to-brep-no-topol...

 

This particular error message has not appeared ever before in the history of Fusion 360 as far as I can tell.  So, I'd like to file this as a new bug report - I reduced it to a reproducible error. (Although I don't know which exact operation produced a corrupted data structure if that's what it is.)

 

Would you happen to know how to insert it into Autodesk's bug priority queue?

0 Likes
Message 6 of 14

TrippyLighting
Consultant
Consultant

@dunderhead wrote:

Hi, thanks a bunch for looking at it so quickly!  No, the T-spline does not contain too many triangles or polygons-- it's derived from a shape in nature.


How this was derived is hardly relevant. I made just a couple of minor edits removing the triangles and the one N-Gon and the thing  converts.

 


@dunderhead wrote:

 

The programming behind Fusion 360 makes no such assumptions, either,


The need for working with quad topology is mathematical and is widely recognized. The difference between untrimmed NURBs surfaces, Sub-D meshes and their limit surfaces and T-Splines, it's really not that large and all of them require quad topology.

Sometimes software can create the quad topology by inserting edges - Fusion 360 does this when converting into BRep - but whether or not that is possible that depends on the existing topology.

 

Again, the need here is mathematical, not aesthetic.


@dunderhead wrote:

 

I reduced it to a reproducible error. (Although I don't know which exact operation produced a corrupted data structure if that's what it is.)

 


The error here is the mesh topology. The data is not corrupt, it simply represents inadequate topology.

 

Case closed for me!

 

I can tag @jeff_strater and @adam.helps  

 


@dunderhead wrote:

...It was reported elsewhere recently without an example  (just a week ago, https://forums.autodesk.com/t5/fusion-360-support/error-trying-to-convert-t-splines-to-brep-no-topol...

.


That does not mean it is a bug. My response to that user is basically the same I told you.


EESignature

0 Likes
Message 7 of 14

dunderhead
Advocate
Advocate

Sometimes software can create the quad topology by inserting edges - Fusion 360 does this when converting into BRep - but whether or not that is possible that depends on the existing topology.

 

Again, the need here is mathematical, not aesthetic.

Yes, it's all math. But I believe that Fusion 360 indeed gives very strong guarantees thanks to the mathematics of T-splines, something like:

  • any repaired T-spline (orientable, without self-intersections) can be converted to a Brep
  • any orientable T-spline can be repaired

Remember that my T-spline converted fine until 2.0.14113 (august 2022 update I believe). The reason it converts when you delete stuff from my example is simply that I made it minimal in this regard. 

 

It would be great if @jeff.strater and @adam.helps  could comment because I think this is not the last you'll hear about this error.  You've been bugged twice within a week or so 🙂 Thanks for looping them in @TrippyLighting

0 Likes
Message 8 of 14

TrippyLighting
Consultant
Consultant

@dunderhead wrote:

The reason it converts when you delete stuff from my example is simply that I made it minimal in this regard. 

 


I did not delete stuff. I added necessary edge loops to create quads from triangles.

 

You have two choices now.

 

1. You can either insist that there is a bug and wait until you get a reply and perhaps a code improvement that replaces user inability with more software developer ingenuity.

But that'll likely be months down the road.

 

2. Or you can apply modeling techniques that have been proven to be effective by thousands of 3D artists


EESignature

Message 9 of 14

jeff_strater
Community Manager
Community Manager

The T-Spline team acknowledged that this is a regression.  The bug is TSP-4310.  I don't expect it will be "months" to be fixed, but I don't yet have a target date for a fix.  It should be sooner than later, I expect.

 


Jeff Strater
Engineering Director
Message 10 of 14

dunderhead
Advocate
Advocate
Accepted solution

Thanks T-spline team and @TrippyLighting for help on this. 

 

Here's a work-around shown on the example I enclosed above. It contains just one triangle and two pentagons, besides the quads.  Each pentagon in a T-spline is currently a suspect, but not all pentagons induce regression TSP-4310 reported by @jeff_strater. (I suspect n-gons for n >5 may be potentially problematic as well).

 

In this example, both pentagons can be eliminated by converting them to quads. To do this, use the Insert Point function from a point of the pentagon to the 0.5 mark (in red) on the opposite edge so as to divide into two quads. To spy the pentagons, use Repair Body; it'll show the number 5 label on each.  

 

When the T-spline team gets to a fuller understanding of the problem, the offending polygons can probably be better identified.

 

You will know that you've eliminated all bad pentagons, when you receive the message in the lower screen shot (after pressing on the convenient little yellowish, cubish icon shortcut that appears to the right of the name of the offending T-spline in the browser section).

 

dunderhead_0-1663704305857.png

dunderhead_1-1663704512236.png

 

0 Likes
Message 11 of 14

TrippyLighting
Consultant
Consultant

A T-Spline mesh should NEVER contain a triangle, except in cases where the modeler knows exactly what they are doing!

You should NEVER model with N-Gons with more than 5 vertices/edges.

 

Any 5-sided N-Gon can be broken in to  4 quads:

TrippyLighting_0-1663768389845.png

 

Any triangle can be divided into quads:

 

TrippyLighting_1-1663768536409.png

 

Some of this is done my Fusion 360 under the hood. Relying on it is bad modeling practice!

 

 


EESignature

0 Likes
Message 12 of 14

dunderhead
Advocate
Advocate

I tightened the language above in my answer, once again thanks for helping out constructively; I hope it's correct now. But the problem @TrippyLighting is not one of modeling or anyone's abilities.

0 Likes
Message 13 of 14

dunderhead
Advocate
Advocate

@jeff.strater and @adam.helps , hi again.  I notice that in my problematic example,  the "Repair body" is faulty: it does not appear possible to use T-points (aka T-junctions) anywhere, even in safe distances from star-points as per definition of T-splines. Please add to TSP-4310 if not already noted.

0 Likes
Message 14 of 14

TrippyLighting
Consultant
Consultant

This bug has been fixed with the October update.


EESignature