Hatch filesize largely unoptimized

Hi all.
This hex grid (used for DnD)


is made of many hexagonal cells with a “dot” in the center:

as required for the print service, everything is a hatch (but also the original curves are saved)…

Problem:
Doing “Save small” with Rhino 7 .3dm format create a 1.397 GB file!

If I export the same geometries to .dwg format (and each circle hatch is converted to a closed polyline hatch of 265 hatch points), the dwg file have a size of 5.57 MB … way more acceptable!

grid 7.zip (4.4 MB)
This is the .dwg , zipped, if re-saved to .3dm format takes 21MB

EDIT: grid 7 3dm.zip (4.8 MB)
This is a .3dm without the circular hatches, 5 MB. (you can re-create the hatches from the circles)
Here is the problem ^ circular hatches.

What’s even more interesting (or worse):

  • .3dm , 1.4 GB file, opens in a minute!
  • .dwg , 5.6 MB file, virtually same content than the .3dm, opens in 20-30 seconds!

Are hatches something similar to meshes? (If so, here some guess, if not, i’m all wrong here)
If so, I suspect the meshing of hatches from the .dwg file (with 0.6 million hatch points from the circles) is taking less time than LOADING the .3dm file (where I expect the rendermesh of the hatch is ready).
So, a lose-lose situation for the .3dm format or a win-win situation for .dwg format :upside_down_face:

Maybe setting up so “Save small” actually save only the primitive data for hatches and not the rendermesh?


1.4 GB file I can have 3 whole projects of a full ebike, rendermesh included.


PS funny enough and obviously, the .gh used to generate the grid is 17kB, but a worded description would probably take less than 300 Bytes…

Hi Riccardo - does the dwg file you posted have the exact same contents, once opened in Rhino, as the 1.4 GB file? If you save the massive file without plug-in data, is there a difference? (-SaveAs SavePlugInData=No)

-Pascal

Hi Pascal.
I do not use plugins:

SystemInfo

Rhino 7 SR37 2024-4-16 (Rhino 7, 7.37.24107.15001, Git hash:master @ d2e42f70b9d3aa58f6053e2998a0db2abcd7555b)
License type: Commerciale, build 2024-04-16
License details: Cloud Zoo

Windows 10 (10.0.19045 SR0.0) or greater (Physical RAM: 32Gb)

Computer platform: DESKTOP

Standard graphics configuration.
Primary display and OpenGL: AMD Radeon RX 6700 XT (AMD) Memory: 12GB, Driver date: 3-13-2024 (M-D-Y). OpenGL Ver: 4.6.0 Compatibility Profile Context 24.3.1.240312
> Accelerated graphics device with 7 adapter port(s)
- Windows Main Display attached to adapter port #0
- Secondary monitor attached to adapter port #1

OpenGL Settings
Safe mode: Off
Use accelerated hardware modes: On
Redraw scene when viewports are exposed: On
Graphics level being used: OpenGL 4.6 (primary GPU’s maximum)

Anti-alias mode: 8x
Mip Map Filtering: Linear
Anisotropic Filtering Mode: High

Vendor Name: ATI Technologies Inc.
Render version: 4.6
Shading Language: 4.60
Driver Date: 3-13-2024
Driver Version: 31.0.24027.1012
Maximum Texture size: 16384 x 16384
Z-Buffer depth: 24 bits
Maximum Viewport size: 16384 x 16384
Total Video Memory: 12243 MB

Rhino plugins that do not ship with Rhino

Rhino plugins that ship with Rhino
C:\Program Files\Rhino 7\Plug-ins\Commands.rhp “Commands” 7.37.24107.15001
C:\Program Files\Rhino 7\Plug-ins\WebBrowser.rhp “WebBrowser”
C:\Program Files\Rhino 7\Plug-ins\rdk.rhp “Renderer Development Kit”
C:\Program Files\Rhino 7\Plug-ins\RhinoRenderCycles.rhp “Rhino Render” 7.37.24107.15001
C:\Program Files\Rhino 7\Plug-ins\rdk_etoui.rhp “RDK_EtoUI” 7.37.24107.15001
C:\Program Files\Rhino 7\Plug-ins\rdk_ui.rhp “Renderer Development Kit UI”
C:\Program Files\Rhino 7\Plug-ins\NamedSnapshots.rhp “Snapshots”
C:\Program Files\Rhino 7\Plug-ins\RhinoCycles.rhp “RhinoCycles” 7.37.24107.15001
C:\Program Files\Rhino 7\Plug-ins\Toolbars\Toolbars.rhp “Toolbars” 7.37.24107.15001
C:\Program Files\Rhino 7\Plug-ins\3dxrhino.rhp “3Dconnexion 3D Mouse”
C:\Program Files\Rhino 7\Plug-ins\Displacement.rhp “Displacement”

No idea what’s going on.
I created the geometries using vanilla gh components, baked, done hatches in rhino.
-SaveAs SavePlugInData=No doesn’t help.