[Plugin] Arc_Offset_True
-
Here's v1.3 http://forums.sketchucation.com/viewtopic.php?p=395769#p395769
Multiple offsets will now intersect with other geometry only AFTER they have ALL been formed.
The native Offset tool's offset-arcs that are intersected become Curves, but this tool will make them as Arcs [albeit 'split'].
Offset-arcs made from an Arc that bounds a face will become Curves in the native Offset tool; this tool produces similar results.
I think that now addresses the various issues... -
excellent plugin.
a query.
is possible to make the plugin more interactive? not to use dialog. Use vcv Viewer?thank you very much
-
Here's v1.4 http://forums.sketchucation.com/viewtopic.php?p=395769#p395769
The final pieces of the jigsaw are hopefully in place...Unlike the native Offset tool, all offset-arcs are now always made as 'Arcs' - whether they are faced/not-faced, or intersect with other geometry.
-
Here's v1.5 http://forums.sketchucation.com/viewtopic.php?p=395769#p395769
Includes a needed a minor code tweak... you'd probably not notice, but I will -
ha! awesome.. this one immediately went to a shortcut assignment
the next challenge, if it's even possible, would be to allow us to select a string(?) of lines/curves/arcs then offset them.. say i had a straight line, then a tangent arc, then another straight line.. select all three and you could offset them at once.. only since there's an arc in there, your offset_true will recognize it and deal with it accordingly
(as this is a scenario where vanilla offset will really flounder) -
@tig said:
..Multiple offsets will now intersect with other geometry only AFTER they have ALL been formed....
Thanks TIG, for all the changes you made with the speed of lightning.
I used "isolate the problematic arc in a group" before multiple offsets. Then explode the result again.
Out of curiosity, is this how you work around the intersect problem in the newest version?
Thanks again. -
@wo3dan said:
@tig said:
..Multiple offsets will now intersect with other geometry only AFTER they have ALL been formed....
Thanks TIG, for all the changes you made with the speed of lightning.
I used "isolate the problematic arc in a group" before multiple offsets. Then explode the result again.
Out of curiosity, is this how you work around the intersect problem in the newest version?
Thanks again.
I now group the original arc [as a copy] and then scale it multiple times about its origin, then explode all of them when I'm done; that way, they only 'intersect' with everything else when it's all done...
The way it gets around the issue of offsetting an arc that is bounding a face [that manifests itself as a new curve with the native tool] is to group the original arc AND all of its connected faces, then erase all of the edges in the group that are not part of the original arc. Then we have a grouped arc that can be scaled/exploded etc...
Thus all 'true' offsets of an arc now always result in new arcs [unless of course it's a -ve offset, when some will not get made at all, if the inwards offset is <= arc.radius]
-
Some errors in console when you run tool...
offset_true.rb;130;in `new' C;/Users/Da Beast 2022/AppData/Roaming/SketchUp/SketchUp 2022/SketchUp/Plugins/Arc-offset_true.rb;48;in `block (2 levels) in <module;Arc_Offset_True>' Error; #<TypeError; wrong argument type (expected Sketchup;;Entity or Array of Sketchup;;Entity)> C;/Users/Da Beast 2022/AppData/Roaming/SketchUp/SketchUp 2022/SketchUp/Plugins/Arc-offset_true.rb;130;in `add' C;/Users/Da Beast 2022/AppData/Roaming/SketchUp/SketchUp 2022/SketchUp/Plugins/Arc-offset_true.rb;130;in `new' C;/Users/Da Beast 2022/AppData/Roaming/SketchUp/SketchUp 2022/SketchUp/Plugins/Arc-offset_true.rb;48;in `block (2 levels) in <module;Arc_Offset_True>'
-
https://sketchucation.com/pluginstore?pln=Arc_offset_true
This is v1.6 which avoids that error message.
The tool worked fine before, but the closing code which tried to add the new arc to the selection set was failing at the very end with that error message.
That was because the newer API versions handle exploded groups' entities differently - previously you could get a collection of the groups entities and then explode the group, then process those entities [e.g. the edges to add to the selection set]; but the API changes make such a collection 'invalid' because its references to the entities are reported as deleted; so now you must collect the results of the explosion, and filter out unwanted stuff to keep just the 'new' edges and then process them...
It's much more convoluted but has the same outcome...
Most scripts have been appropriately adjusted over the recent years to accommodate this API change - but this one escaped - because it's ten years old and it did the offset OK, just falling over at the final hurdle of changing the selection set, and therefore printing an error into the Ruby Console, if you had it open ! -
Mucho gracias
Advertisement