The Pages class contains methods for manipulating a collection of Pages
(scenes) in a model.
You get a handle to this collection by calling Model.pages.
model = Sketchup.active_model
pages = model.pagesThe [] method retrieves a page by either name or index.
Arguments:
Returns:
model = Sketchup.active_model pages = model.pages status = pages.add "Page 1" status = pages.add "Page 2" page = pages["Page 2"] if (page) UI.messagebox page else UI.messagebox "Failure" end
The add method is used to add an empty Page object to the collection.
If no name is given, then a new name is generated using the default name for
new Pages. If a name is given, then a new Page with that name is
added.
If the flags parameter is given, it controls which properties are saved with
the Page. See the Page.update method for a description of the flags that can
be set.
If index is given, it specifies the position in the page list that the new
page is added. Otherwise the new page is added to the end.
Arguments:
Returns:
model = Sketchup.active_model pages = model.pages status = pages.add "Page 1" status = pages.add "Page 2" if (status) UI.messagebox status else UI.messagebox "Failure" end
The add_frame_change_observer method is used to add a new frame change
observer that is called with each frame of an animation, meaning the
end user has clicked on a Scene tab (aka Page) inside SketchUp and
the camera is animating to that scene.
The argument is an object that implements a method frameChange with the
following form:
This method is called during a slide show or creation of an animation after the camera has been set up, but before the frame is displayed. It give you a chance to perform your own actions during the animation. The arguments for frameChange method are the Page that you transition from (fromPage), the Page that you transition to (toPage), and a percent_done between 0.0 and 1.0 that tell you the percentage of the way between the two pages.
By watching the percent_done for 1.0, you can activate Ruby code that
executes as soon as the user's camera has finished animating.
The method returns an integer id that can be stored and later used to remove
the observer with the Pages.remove_frame_change_observer method.
Note: In SketchUp 6 and 7, the fromPage argument into the callback does not
appear to be populated on the PC. You can store a variable that keeps track
of the toPage and then use that on a subsequent Scene selection to determine
the last Page that the user was on.
Arguments:
Returns:
id = Sketchup::Pages.add_frame_change_observer(FrameChangeObserver.new)
The add_matchphoto_page method is used to add a photomatch page to the model. This is an advanced feature that was added to support internal SketchUp work, so it is unlikely to be useful to you.
Arguments:
Returns:
pages = Sketchup.active_model.pages page = pages.add_matchphoto_page "Test"
The add_observer method is used to add an observer to the Pages object. See the PagesObserver interface for more details.
Arguments:
Returns:
pages = Sketchup.active_model.pages status = pages.add_observer observer
The count method is an alias for size. See also Page.size.
Returns:
model = Sketchup.active_model pages = model.pages status = pages.add "Page 1" status = pages.add "Page 2" num = pages.count
The each method is used to iterate through pages.
Arguments:
Returns:
model = Sketchup.active_model
pages = model.pages
status = pages.add "Page 1"
status = pages.add "Page 2"
pages.each {|page| UI.messagebox page}The erase method is used to remove a page from the collection.
Arguments:
Returns:
status = Sketchup.active_model.pages.erase my_page
The parent method is used to determine the model for the Pages collection.
Returns:
model = Sketchup.active_model pages = model.pages status = pages.add "Page 1" status = pages.add "Page 2" model = pages.parent
The remove_frame_change_observer method is used to remove a frame change
observer
The argument is the number returned from the call to
add_frame_change_observer.
Arguments:
Returns:
Sketchup::Pages.remove_frame_change_observer id
The remove_observer method is used to remove an observer from the current object. See the PagesObserver interface for more details.
Arguments:
Returns:
pages = Sketchup.active_model.pages status = pages.remove_observer observer
The selected_page method is used to retrieve the currently selected page.
Returns:
model = Sketchup.active_model pages = model.pages status = pages.add "Page 1" status = pages.add "Page 2" page = pages.selected_page
The selected_page method is used to set the currently selected page. Once you set this, SketchUp will animate to that page as if the user had clicked on its scene tab.
Returns:
model = Sketchup.active_model pages = model.pages status = pages.add "Page 1" status = pages.add "Page 2" pages.selected_page = model.pages[1]
The show_frame_at method is used to show a frame in animation (of the slide show) at a given time in seconds.
Arguments:
Returns:
model = Sketchup.active_model pages = model.pages status = pages.add "Page 1" status = pages.add "Page 2" status = pages.show_frame_at 10
The size method is used to retrieve the number of pages.
Returns:
model = Sketchup.active_model pages = model.pages status = pages.add "Page 1" status = pages.add "Page 2" size = pages.size
The slideshow_time method is used to get the amount of time that a slideshow of all of the pages will take. This takes into account the transition time for each Page and the amount of time that each Page is displayed.
Returns:
pages = Sketchup.active_model.pages time = pages.slideshow_time