SketchUp API Wish List
-
As you may know, Scott Lininger recently posted an encouraging entry on the SketchUp API blog:
@unknownuser said:
... I'm here to assure you that Trimble is committed to preserving the vitality of SketchUp’s developer community. ... In the longer term, I expect [this change] to improve the state of our APIs and developer resources. Trimble wants to invest strongly in SketchUp as a platform, and advance its mission of "3D for Everyone." ...
-- A new home for SketchUp
http://sketchupapi.blogspot.com/2012/04/new-home-for-sketchup.htmlI am quite willing (nay, delighted) to believe that "Trimble wants to invest strongly in SketchUp as a platform". What I'm not sure about is what this could mean for me as a developer.
Over the past several years, many of us have made suggestions, only to be told "that's a great idea, but the resources aren't available". Well, what if the resources were available? What projects should Scott propose to Trimble and/or John Bacus?
Well-known "clean up" items aside, what new projects would we like Scott to propose? What things could his team do if they had (say) another half-dozen programmers?
FYI: Constructive comments and suggestions are welcome, but please take any negativity elsewhere. We all have gripes about the past and worries about the future; this topic isn't the place for them. Let's see if we can give Scott some help, while he's busy packing for the move...
I'll start with some general items:
- concurrency (eg, actors, distributed Ruby)
- debugging support (eg, logging framework)
- documentation (eg, API, best practices, examples)
- interpreter (eg, Ruby 1.9.x, mruby)
- library support (eg, full standard library, gem access)
- plugin management (eg, installation, signing, vetting)
- plugin namespacing (eg, classes and modules, files)
API changes really deserve their own section, eg:
- improved access to menu items
- improved API for WebDialogs (eg, WebSockets)
What am I missing, folks? (ducks)
-r
-
I could make a very loooong post. Better wait until I've sovered uip.!
-
*Make it possible to explode components within Sketchup.active_model.start_operation and Sketchup.active_model.abort_operation tags... without crashing Sketchup
*Allow me to selectively lock components - I'd like to be able to supply the user with a component they can move, rotate & copy, but can't edit the internal definition.
-
@kwalkerman said:
*Make it possible to explode components within Sketchup.active_model.start_operation and Sketchup.active_model.abort_operation tags... without crashing Sketchup
Got an example of this? I've never experienced this.
(Sure you don't have some observers attached that is misbehaving? Or that you are not holding on to stale entity references?) -
Expose the dimension objects in the API.
-
Expose Text and Section-Planes in the API.
-
@thomthom said:
@kwalkerman said:
*Make it possible to explode components within Sketchup.active_model.start_operation and Sketchup.active_model.abort_operation tags... without crashing Sketchup
Got an example of this? I've never experienced this.
(Sure you don't have some observers attached that is misbehaving? Or that you are not holding on to stale entity references?)I have had this issue on various machines running both SU7 and SU8. After exploding a group, the program crashes on commit_operation. I am unable to reproduce it right this moment in the ruby console or webconsole, which is curious.
-
A
Geom::Axis
class. -
Retrieve the location and dimensions of any Group shape created from "Draw -> Shapes", even after it has been moved or resized.
-
@lestercavey said:
Retrieve the location and dimensions of any Group shape created from "Draw -> Shapes", even after it has been moved or resized.
That is a plugin (with a submenu,) not part of the API.
-
layout api
-
Well, since "Draw -> Shapes" is a plugin, my wish is to include SketchUp API Group subclasses of common 3D shapes (Box, Cylinder, etc). Those subclasses would be able to return the shape's current size and location, even after transformations and scaling take place.
-
@lestercavey said:
Well, since "Draw -> Shapes" is a plugin, my wish is to include SketchUp API Group subclasses of common 3D shapes (Box, Cylinder, etc). Those subclasses would be able to return the shape's current size and location, even after transformations and scaling take place.
Surely you can just use the current API for that?
-
@kwalkerman said:
*Allow me to selectively lock components - I'd like to be able to supply the user with a component they can move, rotate & copy, but can't edit the internal definition.
Agree. For example, I have a sundial object that, once created, can be moved around via translation and still work find but will break if it is rotated on any axis. It would be nice to prevent users from rotating it, while permitting scaling and translation.
Maybe this is possible with a DC (including some morphing when gross changes in latitude/longitude take place) but this is just a hobby with me; I'm not willing to shell out for the pro version.
-
@pc0158 said:
@kwalkerman said:
*Allow me to selectively lock components - I'd like to be able to supply the user with a component they can move, rotate & copy, but can't edit the internal definition.
Agree. For example, I have a sundial object that, once created, can be moved around via translation and still work find but will break if it is rotated on any axis. It would be nice to prevent users from rotating it, while permitting scaling and translation.
Maybe this is possible with a DC (including some morphing when gross changes in latitude/longitude take place) but this is just a hobby with me; I'm not willing to shell out for the pro version.
There are some things you can do with dynamic components. You can fix the rotation or the location, and restrict scaling. However, if the user can edit the component definition, they can still create problems.
-
To keep my initial posting brief, I mentioned some wish list items without providing any explanations. Here are some follow-up posts which clarify what I have in mind:
Wish List - plugin management and namespacing http://forums.sketchucation.com/viewtopic.php?f=180&t=45083
Wish List - Ruby interpreter and libraries
http://forums.sketchucation.com/viewtopic.php?f=180&t=45148Other posts of this type may be forthcoming; watch for titles of the form "Wish List - ...".
-r
-
HI all I have been working on a ruby now for over 4 years, I created it so that I can draw faster and smarter. It is almost finished and I think it will change the way home owners Architects and builder design and create domestic homes whilst creating a bill of quantities, orders and quotation requests (BIM). Now I have a ruby that is very comprehensive that has cost me a lot of money to build for my self. I was wondering if anyone had any advice on the best way to release it or what I should do to protect my intellectual property? I beleive it will revolutionalise the way we draw homes in Sketchup.
-
@aadbuild said:
I was wondering if anyone had any advice on the best way to release it or what I should do to protect my intellectual property?
Use the Scrambler: https://developers.google.com/sketchup/docs/tutorial_distributing (See Step 2)
-
@aadbuild said:
HI all I have been working on a ruby now for over 4 years, I created it so that I can draw faster and smarter. It is almost finished and I think it will change the way home owners Architects and builder design and create domestic homes whilst creating a bill of quantities, orders and quotation requests (BIM). Now I have a ruby that is very comprehensive that has cost me a lot of money to build for my self. I was wondering if anyone had any advice on the best way to release it or what I should do to protect my intellectual property? I beleive it will revolutionalise the way we draw homes in Sketchup.
Just my 0.02 worth. You need to be clear what you're trying to achieve.
Scrambler won't stop people copying your IP, though it does provide some basic protection to stop people peeking at how you do what you do.
If this is going to be a commercial venture beyond earning some 'beer bucks' money, you do need more than Scrambler.
Adam
-
Please, folks, don't hijack this topic (or any topic, really) for unrelated discussions. Just start a new topic with an appropriate Subject; your karma will benefit greatly ...
Advertisement