TurboCAD Forums

The Ultimate Resource for TurboCAD Knowledge

Register
 
All posts discussing pricing or where to buy TurboCAD will be deleted.

Apparent Bug: TC Surface Simplification makes conversion to Solid hollow
Read 687 times
September 10, 2018, 03:36:55 AM
The attached 2018 file contains a sun glass frame in TC Surface format and a groove object in ACIS Solid.

If I convert the frame as-is to ACIS Solid (which takes upwards of half an hour), I can 3D Subtract the groove object from it and get the desired result.

However, the resulting file is well over 100 MB.  I want to make the file smaller, so I tried TC Surface Simplification.  Unfortunately, converting the resulting object to ACIS Solid and 3D Subtracting the groove object results in a hollow frame.

This has been the result for simplification values ranging from 20% up to 80%, regardless of the settings for the various options (Full Update, Fix Boundaries, Contract Boundaries or Ignore Boundaries).

Am I using the function wrong, or have I discovered a bug?


Thanks in advance,

Jeff

Logged
TC Pro Platinum 2018, 2017, 2016 & 2015 (all with LightWorks & RedSDK) & V21
System: i7-5820K @ 3.30GHz, ASRock X99 Extreme4, 16GB DDR4-2133 RAM, Gigabyte GTX 970, Samsung NVMe SSD 950 (256GB), Windows 7 Pro (64-bit) SP1


* September 10, 2018, 04:01:12 AM
#1
I dont know if it's a bug, but i have seen this hollow solid "always" deepending on what i do with the base solid, and you use the Surface simplification that should indicate that you will end up with just a Surface, i guess that is part of the reason for why TC have convert to Solid from Surface tool

Torfinn

Logged
V18, V19, V20, V21, 2015/ 16/ 17/ 18 Pro. Platinum
Deluxe V20, V21, 2015/ 16/ 17
RedSDK enabled
Windows 10 Home Premium 64 bit, 32 GB
NVIDIA Geforce GTX 780m, 1 GB


* September 10, 2018, 04:34:35 AM
#2
If the surface isn't manifold/watertight TC/ACIS can still solidify the object if the seams are within a tolerance.  I think that I've read somewhere that the absolute tolerance is .oooo1 units but that's relying on my memory.  Google ACIS healing tolerance for more, it's complicated or at least technical.  Try SAT healing before the boolean, that's worked for me sometimes, and when it hasn't it's still told me that I have bad geometry, as if I needed the confirmation. 

Logged


* September 10, 2018, 05:25:39 AM
#3
If it is a bug, it may be system dependant,  as I cannot reproduce the problem.

I tried twice by simplifying to 20% and 50 %, changed it to ACIS, exploded the two 'groves' so they were 2 ACIS solids, and subtracted from the ACIS solid frame.  The resultant object appears solid.

I use RedSDK, no idea if that makes any difference.

Logged


* September 10, 2018, 05:52:19 AM
#4
Another alternative is to make the grooves surfaces and subtract them from the frame, solidify it afterwards if you really need to.  Seems redundant for a faceted surface anyway. 

Logged


September 10, 2018, 04:59:52 PM
#5
If the surface isn't manifold/watertight TC/ACIS can still solidify the object if the seams are within a tolerance.  I think that I've read somewhere that the absolute tolerance is .oooo1 units but that's relying on my memory.  Google ACIS healing tolerance for more, it's complicated or at least technical.  Try SAT healing before the boolean, that's worked for me sometimes, and when it hasn't it's still told me that I have bad geometry, as if I needed the confirmation.

TC/ACIS was obviously not sealing the object in my experiments.

I tried SAT Healing on simplified Surfaces that had been solidified. 
If the Surface was simplified to 80% and solidified, ACIS Healing failed almost immediately. 
If the Surface was simplified to 20% and solidified, ACIS Healing is very, very slow (more than 2 hours and counting... pretty sure it's in an infinite loop).

It is beyond aggravating that TurboCAD operates differently on differing systems.


Jeff

Logged
TC Pro Platinum 2018, 2017, 2016 & 2015 (all with LightWorks & RedSDK) & V21
System: i7-5820K @ 3.30GHz, ASRock X99 Extreme4, 16GB DDR4-2133 RAM, Gigabyte GTX 970, Samsung NVMe SSD 950 (256GB), Windows 7 Pro (64-bit) SP1


September 10, 2018, 05:02:54 PM
#6
I tried twice by simplifying to 20% and 50 %, changed it to ACIS, exploded the two 'groves' so they were 2 ACIS solids, and subtracted from the ACIS solid frame.  The resultant object appears solid.

I use RedSDK, no idea if that makes any difference.

Exploding the two grooves is something I had not considered.  I had originally added them to speed up the groove creating process when using the object with the original polygon count.  When (or if) the SAT Healing finishes, I will experiment with that.


Jeff

Logged
TC Pro Platinum 2018, 2017, 2016 & 2015 (all with LightWorks & RedSDK) & V21
System: i7-5820K @ 3.30GHz, ASRock X99 Extreme4, 16GB DDR4-2133 RAM, Gigabyte GTX 970, Samsung NVMe SSD 950 (256GB), Windows 7 Pro (64-bit) SP1


September 10, 2018, 11:36:32 PM
#7
Exploding the two grooves before 3D Subtracting did not help; I still ended up with hollow frames after solidifying.

Any other suggestions on a way to proceed?


Jeff

Logged
TC Pro Platinum 2018, 2017, 2016 & 2015 (all with LightWorks & RedSDK) & V21
System: i7-5820K @ 3.30GHz, ASRock X99 Extreme4, 16GB DDR4-2133 RAM, Gigabyte GTX 970, Samsung NVMe SSD 950 (256GB), Windows 7 Pro (64-bit) SP1


September 11, 2018, 01:45:18 AM
#8
... you use the Surface simplification that should indicate that you will end up with just a Surface, i guess that is part of the reason for why TC have convert to Solid from Surface tool

I used TC Surface Simplification, then I converted to an ACIS Solid (although I had to do it from the Properties popup because the Surface to Solid command under the Format menu was greyed out).  Following some advice here, I then tried the SAT Healing, but that failed (either immediately, or when I gave up after 5 hours).

I am now pursuing a different method.  I am Slicing most of the frame, tracing the edges with 3D Polyline (locked to 2D), then converting them to Beziers.  It is annoying, because the To Bezier function greys out if multiple Polylines are selected and it doesn't remember the previous Line Length setting when I only use one (moreover, the Transformation Record function fails, too).  So... I am forced to select, invoke, specify and convert, repeatedly.


Jeff

Logged
TC Pro Platinum 2018, 2017, 2016 & 2015 (all with LightWorks & RedSDK) & V21
System: i7-5820K @ 3.30GHz, ASRock X99 Extreme4, 16GB DDR4-2133 RAM, Gigabyte GTX 970, Samsung NVMe SSD 950 (256GB), Windows 7 Pro (64-bit) SP1


* September 11, 2018, 03:42:09 AM
#9
I dont have any issue about this on your drawing.
In Attached on left side is a copy turned in to Acis solid in about 10 min, next is copy the solid and Slice maybe 10 min.
On rigth side is copy, simplification, keep 20 % about 5 sec, Slice it another 3-4 sec and both the Acis' solids are NOT hollow.

Torfinn

Logged
V18, V19, V20, V21, 2015/ 16/ 17/ 18 Pro. Platinum
Deluxe V20, V21, 2015/ 16/ 17
RedSDK enabled
Windows 10 Home Premium 64 bit, 32 GB
NVIDIA Geforce GTX 780m, 1 GB


September 11, 2018, 10:44:38 PM
#10
In Attached on left side is a copy turned in to Acis solid in about 10 min, next is copy the solid and Slice maybe 10 min.
On rigth side is copy, simplification, keep 20 % about 5 sec, Slice it another 3-4 sec and both the Acis' solids are NOT hollow.

I am annoyed that you got so much easier results and faster than my poor results.

I wonder what settings are different between your solidification results and mine.

Did you use the Format / Solid / From Surface command, or the To Solid under the Properties / 3D popup menu?  The From Surface command is greyed out every time I look at it.


Jeff

Logged
TC Pro Platinum 2018, 2017, 2016 & 2015 (all with LightWorks & RedSDK) & V21
System: i7-5820K @ 3.30GHz, ASRock X99 Extreme4, 16GB DDR4-2133 RAM, Gigabyte GTX 970, Samsung NVMe SSD 950 (256GB), Windows 7 Pro (64-bit) SP1


* September 12, 2018, 12:51:17 AM
#11
I use "Solid" in Selection Info palette
After it have changed to a solid i got an Acis Solid, and on this one i can use make Surface from Solid and after that make Solid from Surface, that route can be handy if the object is Hollow for some reason.
The one i use'd Simplification on turn in to a Acis solid after i Slice it.

The times i get are made in Hidden line mode

I try to keep my settings as default as possible, so the ACIS Faceter Quality is at 50 %, maybe you have it higher there ??

Torfinn

Logged
V18, V19, V20, V21, 2015/ 16/ 17/ 18 Pro. Platinum
Deluxe V20, V21, 2015/ 16/ 17
RedSDK enabled
Windows 10 Home Premium 64 bit, 32 GB
NVIDIA Geforce GTX 780m, 1 GB


September 12, 2018, 03:16:14 AM
#12
I use "Solid" in Selection Info palette

Yes, you can change an object between Solid and Surface under the Selection Info palette, but when I Slice a Surface object and convert it to Solid (I use the Properties pop-up), it is an ACIS Solid, but it has walls with zero thickness.  How do you keep that from happening?


After it have changed to a solid i got an Acis Solid, and on this one i can use make Surface from Solid and after that make Solid from Surface, that route can be handy if the object is Hollow for some reason.

This does not happen for me.


The one i use'd Simplification on turn in to a Acis solid after i Slice it.

Why would that happen?  TC Surface Simplification only works on Surface objects.  It does not work on ACIS Solid objects and it doesn't convert from Surface to Solid (unless there's some secret setting).

Or did you mean to say that you used Simplification and then you converted it to a Solid object?


I try to keep my settings as default as possible, so the ACIS Faceter Quality is at 50 %, maybe you have it higher there ??

I typically run at 100%.  That's why you get faster rendering results.


Jeff


Logged
TC Pro Platinum 2018, 2017, 2016 & 2015 (all with LightWorks & RedSDK) & V21
System: i7-5820K @ 3.30GHz, ASRock X99 Extreme4, 16GB DDR4-2133 RAM, Gigabyte GTX 970, Samsung NVMe SSD 950 (256GB), Windows 7 Pro (64-bit) SP1


* September 12, 2018, 05:07:54 AM
#13
I dont convert it, after Slice a Surface i get an Acis solid, i guess because i have preset my "solids" to Solid and not the default Surface

And maybe that is the answer for all q's

Torfinn

Logged
V18, V19, V20, V21, 2015/ 16/ 17/ 18 Pro. Platinum
Deluxe V20, V21, 2015/ 16/ 17
RedSDK enabled
Windows 10 Home Premium 64 bit, 32 GB
NVIDIA Geforce GTX 780m, 1 GB


September 12, 2018, 05:27:20 AM
#14
My default object creation is ACIS Solid, so this doesn't help me figure out what is going wrong.

Thanks for the effort, anyway.


Jeff

Logged
TC Pro Platinum 2018, 2017, 2016 & 2015 (all with LightWorks & RedSDK) & V21
System: i7-5820K @ 3.30GHz, ASRock X99 Extreme4, 16GB DDR4-2133 RAM, Gigabyte GTX 970, Samsung NVMe SSD 950 (256GB), Windows 7 Pro (64-bit) SP1


* September 12, 2018, 07:52:00 AM
#15
Your welcome

If the Acis solid is hollow i can use make Surface from Solid and use the new surface for make a new Solid from Surface

Torfinn

Logged
V18, V19, V20, V21, 2015/ 16/ 17/ 18 Pro. Platinum
Deluxe V20, V21, 2015/ 16/ 17
RedSDK enabled
Windows 10 Home Premium 64 bit, 32 GB
NVIDIA Geforce GTX 780m, 1 GB


September 12, 2018, 03:59:09 PM
#16
If the Acis solid is hollow i can use make Surface from Solid and use the new surface for make a new Solid from Surface

Those two functions are greyed out (inactive) under the Format menu with this file.  I can convert using the setting under Selection Info or in the Properties popup, but I have not seen any difference between the two.  When I Slice a Surface and then convert to Solid, it is always hollow, even if I 3D Add the two Surfaces before converting to Solid.

I was able to solve my problem with polygon reduction (Simplification) by taking it outside TurboCAD.  I used MeshLab, exported to STL and imported that into TurboCAD for Solidification.  It was actually pretty quick after I remembered your tip to set ACIS / Faceter Quality to 50.


Jeff

Logged
TC Pro Platinum 2018, 2017, 2016 & 2015 (all with LightWorks & RedSDK) & V21
System: i7-5820K @ 3.30GHz, ASRock X99 Extreme4, 16GB DDR4-2133 RAM, Gigabyte GTX 970, Samsung NVMe SSD 950 (256GB), Windows 7 Pro (64-bit) SP1


* September 12, 2018, 05:49:14 PM
#17
The solid-from-surface modify item is from ACIS surfaces, which can be curved nurb surfaces, which TC surfaces can't.  You can convert a mesh TC surface to a faceted ACIS surface by exploding it to polylines, modify|modify 3D objects|surface|from profile, while they're all selected together, then boolean adding them all together.  From there, ACIS surface objects will become volume solids if the surface is watertight, but if it isn't, you get the "all faces are used twice, is this an open shell?" message - with some exceptions.  ACIS can cap simple openings to an open shell and convert it to a volume solid without protest, leaving you unaware that that's happened.  Solid from TC surface through properties does have a couple of interesting functions, like consolidating coplanar faces into a single face (I know of another program that touts that as a feature for sketchup imports).  It also cleans up outlier faces (faces that are only connected to the mesh by one edge), and sometimes SAT healing will work after that's done first, while it fails otherwise.  From what I've noticed, that's only with all mesh/facet objects like imported .stls, not nurbs objects with curved faces.   
For the record, your original file with 52.5K faces converted to solid in Selection Info in 9 minutes on my i7-7500 tablet with 8Gb, the result with the groove subtracted is 67Mb filesize.  I also use a CAD system called PunchCAD, also ACIS kernel, which TC Mac is based on, that limits solidifying mesh objects to no more than 3K faces.   It won't even let you slice the .stl up into smaller units.
« Last Edit: September 12, 2018, 06:10:26 PM by murray dickinson »

Logged


September 12, 2018, 05:53:49 PM
#18
... You can convert a mesh TC surface to a faceted ACIS surface by exploding it to polylines, modify|modify 3D objects|surface|from profile, while they're all selected together, then boolean adding them all together.  From there, ACIS surface objects will become volume solids if the surface is watertight, but if it isn't, you get the "all faces are used twice, is this an open shell?" message. 

Interesting.  I will have to experiment with this.


Jeff

Logged
TC Pro Platinum 2018, 2017, 2016 & 2015 (all with LightWorks & RedSDK) & V21
System: i7-5820K @ 3.30GHz, ASRock X99 Extreme4, 16GB DDR4-2133 RAM, Gigabyte GTX 970, Samsung NVMe SSD 950 (256GB), Windows 7 Pro (64-bit) SP1


September 13, 2018, 05:33:29 PM
#19
Okay... experimentation has commenced.

The results are not what I was expecting (or at least hoping for).  It's not only hollow, but faces are missing.

I did the following steps and got no warnings:
1.   Exploding it to Polylines.
2.   Select all of them.
3.   Modify | Modify 3D Objects | Surface | From Profile
4.   Boolean add them all together. 
5.   From there, ACIS surface objects will become volume solids if the surface is watertight, but if it isn't, you get the "all faces are used twice, is this an open shell?" message - with some exceptions.

BTW: SAT Healing didn't help and may have hurt.

What do you think is the reason for this and how would I go about dealing with it?


Jeff
« Last Edit: September 13, 2018, 05:50:15 PM by Jeffin90620 »

Logged
TC Pro Platinum 2018, 2017, 2016 & 2015 (all with LightWorks & RedSDK) & V21
System: i7-5820K @ 3.30GHz, ASRock X99 Extreme4, 16GB DDR4-2133 RAM, Gigabyte GTX 970, Samsung NVMe SSD 950 (256GB), Windows 7 Pro (64-bit) SP1


* September 13, 2018, 07:01:26 PM
#20
I don't know why that workflow doesn't work for you, Jeff, but it's not the only one that works for me, it shouldn't take brute force.  Have you considered slicing the mesh into smaller pieces, say eight for the sake of experiment, solidifying them in properties and adding them back together?  TC slices a watertight mesh into watertight divisions with less faces so solidifying them is snappier.    Adding them back together again is slow, but it's doable, even on an Atom CPU convertible tablet with 4Gb RAM that I use on the road.    But I have to ask: why are you wanting to do it with this mesh?  Meshes don't generally shell or blend well, can you see an advantage to it that I can't?  When you do it, everything's slower.
TC does see the object differently after I sliced it and solidified it on that Atom tablet: The mesh solidified all-of-a-piece on my i7 tab is 67Mb, the slice'n'dice Atom version finished at 80Mb.   
« Last Edit: September 13, 2018, 08:28:08 PM by murray dickinson »

Logged


* September 14, 2018, 12:14:42 AM
#21
I tried surface simplification too, leaving 30% facet count, 70% reduction, on this little tablet.  No problems, solidifies in properties in four or five minutes, it's a volume solid, not a surface solid.  Dunno, Jeff.  This is 2016, have you tried it in other versions or reinstalled 2018, you're experiencing issues that I'm not, although I used 2018 trial to play with this, then saved to 2016. 

Logged


September 14, 2018, 02:23:28 AM
#22
I don't know what is going on.  Maybe I should try an older version.


Jeff

Logged
TC Pro Platinum 2018, 2017, 2016 & 2015 (all with LightWorks & RedSDK) & V21
System: i7-5820K @ 3.30GHz, ASRock X99 Extreme4, 16GB DDR4-2133 RAM, Gigabyte GTX 970, Samsung NVMe SSD 950 (256GB), Windows 7 Pro (64-bit) SP1


* September 14, 2018, 02:03:33 PM
#23
I don't know what is going on.  Maybe I should try an older version.


Jeff

Jeff, what's the "Target" for this?
I mean, why do you  need the "Mesh" converted to an ACIS Solid.


Logged
"What do I know, I'm still learning"..
Windows 7 64 bit HP > on a stock HP laptop with 4gb-2.4 GHz.Turbocad 2018-2017, TurboCad Platinum 21.Using Lightworks and Redsdk, Anilab lab 5. ATI Mobility Radeon HD 4500/5100


September 14, 2018, 02:43:40 PM
#24
The CAM software need an ACIS Solid in either DXF or STEP format.

BTW: It doesn't read TurboCAD's DXF output, so that's another problem.


Jeff

Logged
TC Pro Platinum 2018, 2017, 2016 & 2015 (all with LightWorks & RedSDK) & V21
System: i7-5820K @ 3.30GHz, ASRock X99 Extreme4, 16GB DDR4-2133 RAM, Gigabyte GTX 970, Samsung NVMe SSD 950 (256GB), Windows 7 Pro (64-bit) SP1


* September 17, 2018, 06:00:46 AM
#25
The attached 2018 file contains a sun glass frame in TC Surface format and a groove object in ACIS Solid.

If I convert the frame as-is to ACIS Solid (which takes upwards of half an hour), I can 3D Subtract the groove object from it and get the desired result.

However, the resulting file is well over 100 MB.  I want to make the file smaller, so I tried TC Surface Simplification.  Unfortunately, converting the resulting object to ACIS Solid and 3D Subtracting the groove object results in a hollow frame.

This has been the result for simplification values ranging from 20% up to 80%, regardless of the settings for the various options (Full Update, Fix Boundaries, Contract Boundaries or Ignore Boundaries).

Am I using the function wrong, or have I discovered a bug?


Thanks in advance,

Jeff

Jeff,
i'm curious  :)
when you get a chance try the dxf file in dropbox.

Here's the link.    https://www.dropbox.com/s/41uynafz3zjbksb/solid%20frame.dxf?dl=0

Logged
"What do I know, I'm still learning"..
Windows 7 64 bit HP > on a stock HP laptop with 4gb-2.4 GHz.Turbocad 2018-2017, TurboCad Platinum 21.Using Lightworks and Redsdk, Anilab lab 5. ATI Mobility Radeon HD 4500/5100


September 17, 2018, 02:59:14 PM
#26
i'm curious  :)
when you get a chance try the dxf file in dropbox.

Here's the link.    https://www.dropbox.com/s/41uynafz3zjbksb/solid%20frame.dxf?dl=0

Looks good, but I am puzzled.  The facet count seems to be approx. the same as my simplified frame, but the resulting DXF file is considerably smaller.

What was your procedure for the final result?


Jeff

Logged
TC Pro Platinum 2018, 2017, 2016 & 2015 (all with LightWorks & RedSDK) & V21
System: i7-5820K @ 3.30GHz, ASRock X99 Extreme4, 16GB DDR4-2133 RAM, Gigabyte GTX 970, Samsung NVMe SSD 950 (256GB), Windows 7 Pro (64-bit) SP1


* September 18, 2018, 05:26:21 AM
#27
i'm curious  :)
when you get a chance try the dxf file in dropbox.

Here's the link.    https://www.dropbox.com/s/41uynafz3zjbksb/solid%20frame.dxf?dl=0

Looks good, but I am puzzled.  The facet count seems to be approx. the same as my simplified frame, but the resulting DXF file is considerably smaller.

What was your procedure for the final result?


Jeff

Opened drawing > see attached.
Frame > TC surface simplification set to 50% with contract boundaries
Frame change properties to Solid
Groove > exploded once = (two ACIS solids) then subtracted them from frame one at a time.
Selected ACIS solid object > Saved as (selection) R14 DXF .
I usually save as in R14 or 2000 dxf. Always better unless requested to save in these dxf formats.

Logged
"What do I know, I'm still learning"..
Windows 7 64 bit HP > on a stock HP laptop with 4gb-2.4 GHz.Turbocad 2018-2017, TurboCad Platinum 21.Using Lightworks and Redsdk, Anilab lab 5. ATI Mobility Radeon HD 4500/5100


September 18, 2018, 05:37:50 PM
#28
That worked... this time.  I am certain that I followed these exact steps (except 20% instead of 50%) and it failed hollow.

I tried all three options for TC Surface Simplification (Fix Boundaries, Contract Boundaries at the End and Ignore Boundaries), but always with Do Full Update... (which didn't really seem to slow things down).

I'm now thinking that something was munged in the Built-In Folder (which has had to be rebuilt 4 times in the last couple weeks, starting with the previous build of 2018 and continuing with the current build).

Anyway... thanks for the help.


Jeff

Logged
TC Pro Platinum 2018, 2017, 2016 & 2015 (all with LightWorks & RedSDK) & V21
System: i7-5820K @ 3.30GHz, ASRock X99 Extreme4, 16GB DDR4-2133 RAM, Gigabyte GTX 970, Samsung NVMe SSD 950 (256GB), Windows 7 Pro (64-bit) SP1