# OffsetSrf Problem

In the attached:

Problem Offset.3dm.zip (437.3 KB)

I am trying to illustrate an obsolete naval construction technique where a seamstrap was placed over a joint and the plates on either side were welded to the seamstrap rather than directly The steamstrap was scalloped for maximum welding surface.

Here’s what one really looks like. Because access is limited to cramped spaces, I am doing this in RhIno.

At the present I am trying to show this on plates that are faceted so all that the streamstrap consists of planar surfaces as here in read:

If I use planarsrf, join, and offsetsrf (7/8-inch), I get spectacular messes on many of the seamstraps. Some work (as shown above) but many completely fail

Will consider a different approach.

Hello- I’d make sure that all of the seams and edges are what you intend - they seem a little messy:

-Pascal

Would the original seamstrap have been one continuous piece of metal, or a series of pieces like your grouped sections?

Regards
Jeremy

Should cleaning up the curves not get you there, here’s one way to do it.

If you create the strap as a straight vertical surface you can extrude it successfully, then flow it along a curve (which can be a polyline) to get the finished article. I’ve done an illustration, but not to your exact shapes due to a lack of time.

Problem Offset 001.3dm (3.2 MB)

The originals would be a single strip of metal. They would use a torch cutter on a sheet so that each cut is for two strips.

I have done flow but the output appears to be highly resource intensive in Rhino. In fact, the way I created the planar curves was to flow along the surface, subtract to get flush, explode, dupborder, and simplycrv.

Pascal notes that this creates a messy curve, unfortunately.

I should have added that, when I made all the straps using FLOW, the straps become uncopyable.

When I do FLOW, I am getting this weirdness that is causing all kinds of problems.

Should this be considered a BUG?

Problem Flow.3dm (10.1 MB)

Hello - when a polysurface is flowed, the surfaces are refit - these are curvature continuous, and when they hit a G0 location on the target polyline, there is not much else that can happen. I’d build straight segments of this thing, intersect them cleanly and trim them to one another, if what you want is angled like the polyline.

-Pascal

The fold only happens where the strap angles inward. You can eliminate it by replacing the G0 point on the target line with a small arc, just big enough to push the bend centre outside the strap - a 1" arc length being enough in this example:

In addition to being more work, making straight sections and getting situations where each join may cut the scallop edge with non-perpendicular intersections, creates its own artefacts:

Thanks,

I am wondering if there is some less resource intensive way of doing this. I cannot copy and paste a group of these. Just a few of these alone, creates a 300MB+ file.

Hi @Miano,

Have you applied materials to them? Half a dozen of my version, without materials, occupy just 11MB on my machine.

No materials. I’ve got 45 of them (one side) and nothing else in a file and its 350MB even after a PURGE command.

Hello- `SaveSmall` and see what that does for the file size.

-Pascal

Savesmall ==> 177MB

Hello- `Audit3dmFile` will tell us where the file size is - maybe a large background image or a block difinition(s)

-Pascal

Testing 3dm Archive: /Users/johnmiano/Documents/Rhino/Problem Copy 4.3dm
Start Section: Id bytes (offset Id to Id)
Offset: Id
3dm archive version: 70
Interface Name: Rhinoceros 7 (7.19.22165.13002, 2022-06-14) - Commercial, build 2022-06-14 - (compiled Jun 14 2022)
SDK Version: 2387378366.2387378366
OpenNURBS Version: 2387378366
3dm Version: 7
Operating System: Apple macOS Version 10.14.6 (Build 18G9323)
Runtime: ON::RuntimeEnvironment::Apple 3DM I/O processor: OpenNURBS toolkit version 2387378366 (compiled on Jun 14 2022)

Properties Section: 6138 bytes (offset 419 to 6557)
3dm archive openNURBS version: 2387378366 (7.19 2022-06-14:2)
Application Information:
Name: “Rhinoceros 7”
URL: “http://www.rhino3d.com
Details: “Commercial, build 2022-06-14”
Revision History:
Create Time: Monday June 20 23:49:34 2022 UCT
Last Edit Time: Tuesday June 21 18:57:41 2022 UCT
Revision Count: 3
Created By: “john miano”
Last Edit By: “john miano”
Settings Section: 15642 bytes (offset 6557 to 22199)
Length unit system: inches
Plug-ins:
Name: AnimationTools
Version: Jun 14 2022 15:20:30
Id: 3AA81848-5635-41bb-ABDB-0EC069BC5519
File: /Applications/Rhino 7.app/Contents/PlugIns/AnimationTools.rhp
SDK Version: C++ 2387378366.2387378366 (7.19 2022-06-14:2)
Name: Commands
Version: 7.19.22165.13002
Id: 02BF604D-799C-4cc2-830E-8D72F21B14B7
File: /Applications/Rhino 7.app/Contents/Frameworks/RhCore.framework/Resources/ManagedPlugIns/Commands.rhp
SDK Version: .NET 0.0
Name: Displacement
Version: Jun 14 2022 15:14:06
Id: F293DE5C-D1FF-467a-9BD1-CAC8EC4B2E6B
File: /Applications/Rhino 7.app/Contents/PlugIns/Displacement.rhp
SDK Version: C++ 2387378366.2387378366 (7.19 2022-06-14:2)
Name: Grasshopper
Version: 7.19.22165.13002
Id: B45A29B1-4343-4035-989E-044E8580D9CF
File: /Applications/Rhino 7.app/Contents/Frameworks/RhCore.framework/Resources/ManagedPlugIns/GrasshopperPlugin.rhp
SDK Version: .NET 0.0
Name: IronPython
Version: 7.19.22165.13002
Id: 814D908A-E25C-493d-97E9-EE3861957F49
File: /Applications/Rhino 7.app/Contents/Frameworks/RhCore.framework/Resources/ManagedPlugIns/RhinoDLR_Python.rhp
SDK Version: .NET 0.0
Name: Legacy Rhino Render
Version: 1.50, Jun 14 2022, 15:20:15
Id: 5DC0192D-73DC-44f5-9141-8E72542E792D
File: /Applications/Rhino 7.app/Contents/PlugIns/RhinoRender.rhp
SDK Version: C++ 2387378366.2387378366 (7.19 2022-06-14:2)
Name: PanelingTools
Version: Jun 14 2022 15:11:36
Id: 6CAED836-BC06-4ebc-B1FD-E10886A0DC94
File: /Applications/Rhino 7.app/Contents/PlugIns/PanelingTools.rhp
SDK Version: C++ 2387378366.2387378366 (7.19 2022-06-14:2)
Name: RDK_EtoUI
Version: 7.19.22165.13002
Id: 638A0098-0511-482b-95BF-8CF47FD32C17
File: /Applications/Rhino 7.app/Contents/Frameworks/RhCore.framework/Resources/ManagedPlugIns/RDK_EtoUI.rhp
SDK Version: .NET 0.0
Name: Renderer Development Kit
Version: Jun 14 2022 15:18:00
Id: 16592D58-4A2F-401d-BF5E-3B87741C1B1B
File: /Applications/Rhino 7.app/Contents/Frameworks/RhMaterialEditor.framework
SDK Version: C++ 2387378366.2387378366 (7.19 2022-06-14:2)
Name: Rhino Bonus Tools
Version: Jun 14 2022 15:07:24
Id: 213A2661-A9EC-4ac4-867A-BC8CABE5AE29
File: /Applications/Rhino 7.app/Contents/PlugIns/RhinoBonusTools.rhp
SDK Version: C++ 2387378366.2387378366 (7.19 2022-06-14:2)
Name: Rhino Render
Version: 7.19.22165.13002
File: /Applications/Rhino 7.app/Contents/Frameworks/RhCore.framework/Resources/ManagedPlugIns/RhinoRenderCycles.rhp
SDK Version: .NET 0.0
Name: RhinoCycles
Version: 7.19.22165.13002
Id: 9BC28E9E-7A6C-4b8f-A0C6-3D05E02D1B97
File: /Applications/Rhino 7.app/Contents/Frameworks/RhCore.framework/Resources/ManagedPlugIns/RhinoCycles.rhp
SDK Version: .NET 0.0
Name: Snapshots
Version: Jun 14 2022 15:11:57
Id: 73B88F43-C32C-4306-93B5-1D0082FFFEE8
File: /Applications/Rhino 7.app/Contents/PlugIns/NamedSnapshots.rhp
SDK Version: C++ 2387378366.2387378366 (7.19 2022-06-14:2)
Embedded image Table:
0 embedded images, 24 bytes (offset 22199 to 22223)
Texture Mapping Table:
0 texture mappings, 24 bytes (offset 22223 to 22247)
Material Table:
0 materials, 24 bytes (offset 22247 to 22271)
Linetype Table:
linetype[0]: Hidden
linetype[1]: Dashed
linetype[2]: DashDot
linetype[3]: Center
linetype[4]: Border
linetype[5]: Dots
6 linetypes, 1360 bytes (offset 22271 to 23631)
Layer Table:
layer[0]: Default
1 layers, 272 bytes (offset 23631 to 23903)
Group Table:
0 groups, 24 bytes (offset 23903 to 23927)
Annotation Style Table:
annotation style[0]: Label
1 annotation styles, 1641 bytes (offset 23927 to 25568)
Light Table:
0 lights, 24 bytes (offset 25568 to 25592)
HatchPattern Table:
hatchpattern[0]: Solid
hatchpattern[1]: Hatch1
hatchpattern[2]: Hatch2
hatchpattern[3]: Hatch3
hatchpattern[4]: HatchDash
hatchpattern[5]: Grid
hatchpattern[6]: Grid60
hatchpattern[7]: Plus
hatchpattern[8]: Squares
9 hatchpatterns, 3112 bytes (offset 25592 to 28704)
Block Definition Table:
0 block definitions, 24 bytes (offset 28704 to 28728)
Object Table:
object[0]: 4266597 bytes, id = d1160a39-7e13-4c3f-972e-11221a7f93e6, name = “”
object[1]: 3693475 bytes, id = 006a8e6b-d714-4e33-aece-a6da5004f4d1, name = “”
object[2]: 3582030 bytes, id = c66c2f54-48b7-4f69-b30a-38e3ef3b50eb, name = “”
object[3]: 3590384 bytes, id = 070c6d08-5cfc-45f3-a975-967698d011bb, name = “”
object[4]: 3641485 bytes, id = 9c5857c8-1d09-461f-b2b2-6d660bf5b8a8, name = “”
object[5]: 3564358 bytes, id = acb0dd6e-880b-4892-a80a-94fdcda89315, name = “”
object[6]: 3380154 bytes, id = c3bbec95-f336-411a-a95d-b4231cf7a836, name = “”
object[7]: 4124430 bytes, id = 057260d3-813c-4fb7-97e8-36802478a170, name = “”
object[8]: 4118018 bytes, id = 06b5cd00-1ffa-4e8a-a0b3-50f0a461788c, name = “”
object[9]: 4182889 bytes, id = 69a62491-073d-4dd8-a321-b9255bb31a55, name = “”
object[10]: 4165095 bytes, id = 743e5fb7-4450-456a-9c64-a95e11a88112, name = “”
object[11]: 4117434 bytes, id = be5a6855-88cb-4b3e-84e6-78f027a062ee, name = “”
object[12]: 4163463 bytes, id = d4e9058e-ae05-444c-a299-a5b8d1171d4d, name = “”
object[13]: 4220453 bytes, id = d58e2845-2f1f-4b0b-9327-140064b0d415, name = “”
object[14]: 4118018 bytes, id = d6b0aa55-9936-4ab6-a1a6-89398bc420dc, name = “”
object[15]: 4141667 bytes, id = db66bc27-52d4-4e76-8c01-06976ff49e6d, name = “”
object[16]: 4118018 bytes, id = dd7bbe70-dc3a-47a2-960e-3dd210d3181d, name = “”
object[17]: 4173325 bytes, id = e34fbb1b-7045-48ea-aefd-d165ab6182df, name = “”
object[18]: 4124647 bytes, id = e8db720c-dbdd-440c-9164-b2342411e40c, name = “”
object[19]: 4112862 bytes, id = 64ac5747-e44d-4e1e-92eb-d4c2f55bb50e, name = “”
object[20]: 4113502 bytes, id = aee8c13a-1821-4714-9315-f11dca03f391, name = “”
object[21]: 4113502 bytes, id = 03eba442-b7d9-4cf6-a7e6-85d869a7d9dc, name = “”
object[22]: 4117434 bytes, id = 1c1a29d7-7958-408d-a433-00b02294b699, name = “”
object[23]: 4113502 bytes, id = 2f135abd-80b5-4776-be8d-fd0fe460d4c0, name = “”
object[24]: 4113502 bytes, id = 5409f18f-f080-4b59-8eee-8c9cf0c7bdcc, name = “”
object[25]: 4113502 bytes, id = 6d775899-31d2-40d5-8da7-f0904a7534da, name = “”
object[26]: 4113502 bytes, id = 76c17408-9942-4140-b758-f865418ba451, name = “”
object[27]: 4113502 bytes, id = a2ff8ad7-1fcb-484a-b1ca-76f70026f987, name = “”
object[28]: 4113502 bytes, id = d847f699-0f84-450c-95c7-38165fd63994, name = “”
object[29]: 4113502 bytes, id = e7e7ea72-ca2c-49e0-9b75-0243e5600fb2, name = “”
object[30]: 4136217 bytes, id = fd879186-cf2c-4403-9999-7006ebb03b0a, name = “”
object[31]: 3918463 bytes, id = 5b4e3803-969a-4a26-a139-ef7041ec5724, name = “”
object[32]: 3587461 bytes, id = 10393f24-2898-4101-9fd9-0fc640a81c56, name = “”
object[33]: 3587461 bytes, id = 1f06408e-b8d0-4a0c-b20f-5fd97013bced, name = “”
object[34]: 3587461 bytes, id = 2483c297-809c-488d-8fbd-12643a677190, name = “”
object[35]: 3587301 bytes, id = ad29dec1-5125-4793-87b8-e67f6e92413c, name = “”
object[36]: 3587237 bytes, id = bf6765a4-6c6a-4610-9c66-ef06136937a7, name = “”
object[37]: 3586657 bytes, id = eecd85f1-eee7-4ffb-953f-4af7645689e7, name = “”
object[38]: 3587213 bytes, id = 9206bfa8-25a8-49fa-94d6-c76126634fe7, name = “”
object[39]: 3587213 bytes, id = ec680eb8-c948-4448-847d-13b76641f62d, name = “”
object[40]: 3858736 bytes, id = be4bb033-654a-4ea8-b972-821bb87c615a, name = “”
object[41]: 3760798 bytes, id = c7dc0a00-d023-47ba-b3db-774c8b235979, name = “”
object[42]: 3777902 bytes, id = cd7537a0-6912-4443-b94b-856772888b67, name = “”
object[43]: 3464058 bytes, id = d1216441-c77a-404d-bbb9-8a2973bae315, name = “”
object[44]: 4113507 bytes, id = caf6cf83-ca5e-45ae-8eef-769883aacd0f, name = “”
45 objects, 176465463 bytes (offset 28728 to 176494191)
History Record Table:
0 history records, 24 bytes (offset 176494191 to 176494215)
Model User Data Table:
user table[0]: (1707 bytes)
Plug-in id: 06F3218E-F5EC-4f6c-B74C-14583F0ED7BC
user table[1]: (913 bytes)
Plug-in name: AnimationTools
Plug-in id: 3AA81848-5635-41bb-ABDB-0EC069BC5519
user table[2]: (9970 bytes)
Plug-in name: Renderer Development Kit
Plug-in id: 16592D58-4A2F-401d-BF5E-3B87741C1B1B
user table[3]: (497 bytes)
Plug-in name: Legacy Rhino Render
Plug-in id: 5DC0192D-73DC-44f5-9141-8E72542E792D
4 user tables, 13491 bytes (offset 176494215 to 176507706)
Archive size = 176507726 bytes (end mark size = 176507726)

Pretty much all objects…

-Pascal

I wish I had some way to simply.

Perhaps you could look into custom display meshes?
-wim