I started doing some digging into the Ruby API in hopes of writing extensions related to woodworking, and while experimenting around forming the geometry of some joints (by intersecting groups) I hit this error:
> result = group_a.intersect(group_b)
Error: #<ArgumentError: 'intersect' is a Pro only feature.>
I can understand having a set of methods that only function under Pro, but I can’t find them documented anywhere. Looking at the docs for Group#intersect
, I don’t see anything about it being license restricted.
It seems like a real roadblock to doing any development that might be used in a non-Pro setting if the only way to find restricted features is to exercise them and note the failure.
Does anyone know of a place where the list of Pro-only methods is documented?
Cursory Pro Only list of API methods and classes.
Since the boolean “Solid Tools” is Pro Only, it’s API methods are also:
intersect()
outer_shell()
split()
subtract()
trim()
union()
model.import()
will ignore all Pro Only filetypes on Make.
model.export()
will ignore all Pro Only filetypes on Make.
model.classifications()
Classifications
class
ClassificationSchema
class
Any action string (or command ID integer) that would fire a Pro Only feature via:
Sketchup::send_action()
@DanRathbun - thanks for that, definitely a helpful start.
Interestingly I found that while I can’t call Group#intersect
, I was able to run the intersection via Entities#intersect_with
, which looked like:
def draw_block(side_length, height)
group = Sketchup.active_model.entities.add_group
starter_face = group.entities.add_face(
[0,0,0], [side_length,0,0],
[side_length,side_length,0], [0,side_length,0]
).pushpull( -height )
return group
end
group_a = draw_block(10, 4)
group_b = draw_block(20, 1)
group_c = Sketchup.active_model.entities.add_group
group_a.entities.intersect_with(
false, IDENTITY, group_c.entities,
IDENTITY, false, group_b.entities.to_a
)
and puts the intersection lines into group_c
.