New API doc - typos and questions
-
_
Model.title@unknownuser said:
The tile method retrieves the name of the model. If the model is saved on disk, returns the file name without extension. Otherwise returns an empty string.
http://code.google.com/apis/sketchup/docs/ourdoc/model.html#title
Change 'tile' to 'title' in method description.We could use Model.is_saved? and Model.is_unsaved? methods, as the Model.title method is the only way (that I can find) to determine if the model has yet been saved or not. We cannot rely upon the word 'Untitled' (in the caption bar) because that may actually be a valid filename.
Workaround:
class Sketchup;;Model def is_saved? return not title.empty? end def is_unsaved? return title.empty? end end # class
_
-
Camera.set
http://code.google.com/intl/nb/apis/sketchup/docs/ourdoc/camera.html#setThe initialize method is deprecated. It essentially does the same thing as Camera.set.
Seems that's the description for
Camera.new
http://code.google.com/intl/nb/apis/sketchup/docs/ourdoc/camera.html#new
...and thatCamera.new
has the description forCamera.set
-
View.pickray
http://code.google.com/apis/sketchup/docs/ourdoc/view.html#pickray@unknownuser said:
Returns:
ray
a ray"a ray"? Without testing this I#m guessing either a vector or line.
-
@thomthom said:
View.pickray
http://code.google.com/apis/sketchup/docs/ourdoc/view.html#pickray@unknownuser said:
Returns:
ray a ray"a ray"? Without testing this I#m guessing either a vector or line.
see this...
@unknownuser said:
Model.raytest
A ray is a two element array containing a point and a vector [Geom::Point3d(), Geom::Vector3d()]. http://code.google.com/apis/sketchup/docs/ourdoc/model.html#raytest
_ -
Yea - I tested it later that day. It's what the
Geom
module describes as a line. -
@thomthom said:
Yea - I tested it later that day. It's what the
Geom
module describes as a line.Shouldn't the API have a definition for Line and/or Ray as a class (under the Geom module) ?
something like:
class Geom;;Ray < Array def new(*args) Array[Geom;;Point3d().new, Geom;;Vector3d().new] super() end end
-
Line
andPlane
? hm... maybe... thought of that myself. but never really felt the need for it to make a request. works fine as it is.Dealing with them as Arrays works ok. They are simple structures.
-
Model.add_note
The note is not displayed unless there are entities in the model. If you add a note first thing in a new model, it is invisible but .visible? on the note object still returns true.
As soon as you draw something, the note appears.
-
Thanks Dan - yet more never-seen-before docs coming to light.
-
I have the mental image of Scott drowning in printouts from this thread...
-
Oh, I think there is a completely undocumented UTM class in there somewhere under Geom.
-
@jim said:
Oh, I think there is a completely undocumented UTM class in there somewhere under Geom.
hm.. all I can find out about that one is:
Geom::UTM.instance_methods.sort.join("\n") (eval):894: warning: instance_methods: parameter will default to 'true' as of 1.8.1 to_a to_latlong to_s x y zone_letter zone_number
-
Documentation for this method contains some poorly-parsed html tags.
-
@thomthom said:
@jim said:
Oh, I think there is a completely undocumented UTM class in there somewhere under Geom.
hm.. all I can find out about that one is:
Geom::UTM.instance_methods.sort.join("\n")
... snip ...from Wikipedia search on "UTM":
Universal Transverse Mercator coordinate system, a grid-based method of mapping locations on the surface of the Earth.
http://en.wikipedia.org/wiki/Universal_Transverse_Mercator_coordinate_system
_ -
Model.get_product_family
http://code.google.com/apis/sketchup/docs/ourdoc/model.html#get_product_family@unknownuser said:
Returns a constant number which indicates the product family of the installed SketchUp application.
This is an Application related attribute, why is it part of the Model class?
This should be a method of the Sketchup module as in: Sketchup.get_product_family
_ -
Model.export
http://code.google.com/apis/sketchup/docs/ourdoc/model.html#export@unknownuser said:
options_hash______ A hash containing the COLLADA (.dae) export options.
The options listed in the hash example is missing the option for hidden geometry.
The Registry Attribute Name is "ExportHiddenGeometry", but what is the options hash key?- hiddengeometry ?* hidden_geometry ?
_
- hiddengeometry ?* hidden_geometry ?
-
Set class
http://code.google.com/apis/sketchup/docs/ourdoc/set.htmlThis class is defined in the Objectspace and should be listed under "Core Ruby Classes" (along with Array, Length, Numeric and String.)
Instead it's buried under "App Level Classes" and listed with all those classes that are defined inside the Sketchup module.
_ -
OptionsProviderObserver.onOptionsProviderChanged
http://code.google.com/apis/sketchup/docs/ourdoc/optionsproviderobserver.html#onOptionsProviderChanged@unknownuser said:
The onOptionsProviderChanged method is invoked when an element is added to an Pages object.
Should read, "The onOptionsProviderChanged method is invoked when an option is changed for an OptionsProvider object."
_ -
Entities.add_curve
http://code.google.com/intl/nb/apis/sketchup/docs/ourdoc/entities.html#add_curveReturns an array of edges - not a
Curve
object. -
@thomthom said:
Entities.add_curve
http://code.google.com/intl/nb/apis/sketchup/docs/ourdoc/entities.html#add_curveReturns an array of edges - not a
Curve
object.Ita's the same as
add_circle
which returns an array od edges and to find the just made curves curve you useedges=entities.add_curve(array_of_points) curve=edges[0].curve
But strangely not withadd_arc
which returns anArcCurve
?It would be unadvisable to change what the API does with these
add_
methods - rather it we should keep it as is and fix the API's Guide to reflect it properly - too many scripts already get the curve from the edges array and would fail if it were updated to return the curve not the curve's edges...
Advertisement