Class: Layout::SketchUpModel

Inherits:
Entity
  • Object
show all
Defined in:
lib/sketchup-api-stubs/stubs/Layout/SketchUpModel.rb

Overview

A SketchUp Model entity. This is an instance of a SketchUp Model that is inserted into a .layout file. You can change the render mode, line weight, and set the current scene for the SketchUp Model with this interface.

Examples:

bounds = Geom::Bounds2d.new(1, 1, 3, 3)
model = Layout::SketchUpModel.new("C:/Path/to/model.skp", bounds)
model.current_scene = 2
model.view = Layout::SketchUpModel::FRONT_VIEW
model.render_mode = Layout::SketchUpModel::VECTOR_RENDER
model.render if model.render_needed?

Version:

  • LayOut 2018

Constant Summary collapse

BOTTOM_RELATIVE_VIEW =

Constants

nil
BOTTOM_VIEW =

Stub value.

nil
BACK_VIEW =

Stub value.

nil
CUSTOM_VIEW =

Stub value.

nil
FRONT_VIEW =

Stub value.

nil
HYBRID_RENDER =

Stub value.

nil
ISO_VIEW =

Stub value.

nil
LEFT_VIEW =

Stub value.

nil
RASTER_RENDER =

Stub value.

nil
RIGHT_VIEW =

Stub value.

nil
TOP_RELATIVE_VIEW =

Stub value.

nil
TOP_VIEW =

Stub value.

nil
VECTOR_RENDER =

Stub value.

nil

Instance Method Summary collapse

Methods inherited from Entity

#==, #bounds, #document, #drawing_bounds, #group, #layer_instance, #locked=, #locked?, #move_to_group, #move_to_layer, #on_shared_layer?, #page, #style, #style=, #transform!, #transformation, #untransformed_bounds, #untransformed_bounds=

Constructor Details

#initialize(path, bounds) ⇒ Layout::SketchUpModel

The #initialize method creates a new Layout::SketchUpModel.

Examples:

bounds = Geom::Bounds2d.new(1, 1, 3, 3)
model = Layout::SketchUpModel.new("C:/Path/to/model.skp", bounds)

Parameters:

Raises:

  • (ArgumentError)

    if path does not point to a valid SketchUp Model file

  • (ArgumentError)

    if bounds is zero size

Version:

  • LayOut 2018



248
249
# File 'lib/sketchup-api-stubs/stubs/Layout/SketchUpModel.rb', line 248

def initialize(path, bounds)
end

Instance Method Details

#clip_maskLayout::Entity

The #clip_mask method returns the clip mask entity for the Layout::SketchUpModel, or nil if it does not have one. clip_mask can be a Rectangle, Ellipse, or Path.

Examples:

bounds = Geom::Bounds2d.new(1, 1, 3, 3)
model = Layout::SketchUpModel.new("C:/Path/to/model.skp", bounds)
clip_mask = model.clip_mask

Returns:

Version:

  • LayOut 2018



59
60
# File 'lib/sketchup-api-stubs/stubs/Layout/SketchUpModel.rb', line 59

def clip_mask
end

#clip_mask=(clip_mask) ⇒ Object

The #clip_mask= method sets a clip mask for the Layout::SketchUpModel. clip_mask can be a Rectangle, Ellipse, or Path, and it must not currently exist in a Document.

Examples:

bounds = Geom::Bounds2d.new(1, 1, 3, 3)
model = Layout::SketchUpModel.new("C:/Path/to/model.skp", bounds)
rect = Layout::Rectangle.new([[2, 2], [3, 3]]);
model.clip_mask = rect

Parameters:

Raises:

Version:

  • LayOut 2018



85
86
# File 'lib/sketchup-api-stubs/stubs/Layout/SketchUpModel.rb', line 85

def clip_mask=(clip_mask)
end

#current_sceneInteger

The #current_scene method returns the index of the most recently selected scene of the Layout::SketchUpModel.

Examples:

bounds = Geom::Bounds2d.new(1, 1, 3, 3)
model = Layout::SketchUpModel.new("C:/Path/to/model.skp", bounds)
scene_index = model.current_scene

Returns:

  • (Integer)

Raises:

  • (ArgumentError)

    if the most recently selected scene no longer exists

Version:

  • LayOut 2018



101
102
# File 'lib/sketchup-api-stubs/stubs/Layout/SketchUpModel.rb', line 101

def current_scene
end

#current_scene=(index) ⇒ Object

Note:

LayOut automatically adds the scene “Last Saved SketchUp View” to each Layout::SketchUpModel. This means that the Sketchup::Model‘s scenes start with index 1.

The #current_scene= method sets the scene of the Layout::SketchUpModel.

Examples:

bounds = Geom::Bounds2d.new(1, 1, 3, 3)
model = Layout::SketchUpModel.new("C:/Path/to/model.skp", bounds)
model.current_scene = 1

Parameters:

  • index (Integer)

    The index into the list of available scenes.

Raises:

Version:

  • LayOut 2018



126
127
# File 'lib/sketchup-api-stubs/stubs/Layout/SketchUpModel.rb', line 126

def current_scene=(index)
end

#current_scene_modified?Boolean

The #current_scene_modified? method returns whether the most recently selected scene of the Layout::SketchUpModel has been modified.

Examples:

bounds = Geom::Bounds2d.new(1, 1, 3, 3)
model = Layout::SketchUpModel.new("C:/Path/to/model.skp", bounds)
modified = model.current_scene_modified?

Returns:

  • (Boolean)

Raises:

  • (ArgumentError)

    if the most recently selected scene no longer exists

Version:

  • LayOut 2018



142
143
# File 'lib/sketchup-api-stubs/stubs/Layout/SketchUpModel.rb', line 142

def current_scene_modified?
end

#dash_scaleFloat

The #dash_scale method returns the dash scale for the Layout::SketchUpModel. A scale value of 0.0 means the dashes are scaled based on the line weight.

Examples:

bounds = Geom::Bounds2d.new(1, 1, 3, 3)
model = Layout::SketchUpModel.new("C:/Path/to/model.skp", bounds)
dash_scale = model.dash_scale

Returns:

  • (Float)

Version:

  • LayOut 2019



157
158
# File 'lib/sketchup-api-stubs/stubs/Layout/SketchUpModel.rb', line 157

def dash_scale
end

#dash_scale=(dash_scale) ⇒ Object

The #dash_scale= method sets the dash scale for the Layout::SketchUpModel. A scale value of 0.0 or lower will “auto” scale the dashes based on the line weight.

Examples:

bounds = Geom::Bounds2d.new(1, 1, 3, 3)
model = Layout::SketchUpModel.new("C:/Path/to/model.skp", bounds)
model.dash_scale = 2.5

Parameters:

  • dash_scale (Float)

Raises:

Version:

  • LayOut 2018



177
178
# File 'lib/sketchup-api-stubs/stubs/Layout/SketchUpModel.rb', line 177

def dash_scale=(dash_scale)
end

#display_background=(display) ⇒ Object

The #display_background= method sets whether the background is displayed for the Layout::SketchUpModel.

Examples:

bounds = Geom::Bounds2d.new(1, 1, 3, 3)
model = Layout::SketchUpModel.new("C:/Path/to/model.skp", bounds)
model.display_background = false

Parameters:

  • display (Boolean)

Raises:

Version:

  • LayOut 2018



196
197
# File 'lib/sketchup-api-stubs/stubs/Layout/SketchUpModel.rb', line 196

def display_background=(display)
end

#display_background?Boolean

The #display_background? method returns whether the background is displayed for the Layout::SketchUpModel.

Examples:

bounds = Geom::Bounds2d.new(1, 1, 3, 3)
model = Layout::SketchUpModel.new("C:/Path/to/model.skp", bounds)
displayed = model.display_background?

Returns:

  • (Boolean)

Version:

  • LayOut 2018



210
211
# File 'lib/sketchup-api-stubs/stubs/Layout/SketchUpModel.rb', line 210

def display_background?
end

#entitiesLayout::Entity

The #entities method returns the Group that represents the Layout::SketchUpModel in its exploded form. The Group will contain a Image for raster and hybrid-rendered models, and will contain a Group of LayOut entities for vector and hybrid-rendered models.

Examples:

bounds = Geom::Bounds2d.new(1, 1, 3, 3)
model = Layout::SketchUpModel.new("C:/Path/to/model.skp", bounds)
entities = model.entities

Returns:

Version:

  • LayOut 2018



227
228
# File 'lib/sketchup-api-stubs/stubs/Layout/SketchUpModel.rb', line 227

def entities
end

#line_weightFloat

The #line_weight method returns the line weight for the Layout::SketchUpModel.

Examples:

bounds = Geom::Bounds2d.new(1, 1, 3, 3)
model = Layout::SketchUpModel.new("C:/Path/to/model.skp", bounds)
line_weight = model.line_weight

Returns:

  • (Float)

Version:

  • LayOut 2018



262
263
# File 'lib/sketchup-api-stubs/stubs/Layout/SketchUpModel.rb', line 262

def line_weight
end

#line_weight=(line_weight) ⇒ Object

The #line_weight= method sets the line weight for the Layout::SketchUpModel. Line weight must be at least 0.01.

Examples:

bounds = Geom::Bounds2d.new(1, 1, 3, 3)
model = Layout::SketchUpModel.new("C:/Path/to/model.skp", bounds)
model.line_weight = 2.5

Parameters:

  • line_weight (Float)

Raises:

Version:

  • LayOut 2018



283
284
# File 'lib/sketchup-api-stubs/stubs/Layout/SketchUpModel.rb', line 283

def line_weight=(line_weight)
end

#model_to_paper_point(model_point) ⇒ Geom::Point2d

The #model_to_paper_point method converts the Geom::Point3d in the Layout::SketchUpModel to a Geom::Point2d in paper space.

Examples:

bounds = Geom::Bounds2d.new(1, 1, 3, 3)
model = Layout::SketchUpModel.new("C:/Path/to/model.skp", bounds)
point_3d = [200, 100, 100]
point_2d = model.model_to_paper_point(point_3d)

Parameters:

Returns:

Version:

  • LayOut 2018



300
301
# File 'lib/sketchup-api-stubs/stubs/Layout/SketchUpModel.rb', line 300

def model_to_paper_point(model_point)
end

#perspective=(perspective) ⇒ Object

The #perspective= method sets whether the Layout::SketchUpModel‘s view is perspective or orthographic.

Examples:

bounds = Geom::Bounds2d.new(1, 1, 3, 3)
model = Layout::SketchUpModel.new("C:/Path/to/model.skp", bounds)
model.perspective = false

Parameters:

  • perspective (Boolean)

Raises:

Version:

  • LayOut 2018



319
320
# File 'lib/sketchup-api-stubs/stubs/Layout/SketchUpModel.rb', line 319

def perspective=(perspective)
end

#perspective?Boolean

The #perspective? method returns whether the Layout::SketchUpModel‘s view is perspective or orthographic.

Examples:

bounds = Geom::Bounds2d.new(1, 1, 3, 3)
model = Layout::SketchUpModel.new("C:/Path/to/model.skp", bounds)
perspective = model.perspective?

Returns:

  • (Boolean)

Version:

  • LayOut 2018



333
334
# File 'lib/sketchup-api-stubs/stubs/Layout/SketchUpModel.rb', line 333

def perspective?
end

#preserve_scale_on_resize=(preserve_scale) ⇒ Object

The #preserve_scale_on_resize= method sets whether the scale is preserved when the Layout::SketchUpModel is resized.

Examples:

bounds = Geom::Bounds2d.new(1, 1, 3, 3)
model = Layout::SketchUpModel.new("C:/Path/to/model.skp", bounds)
model.preserve_scale_on_resize = true

Parameters:

  • preserve_scale (Boolean)

Raises:

Version:

  • LayOut 2018



352
353
# File 'lib/sketchup-api-stubs/stubs/Layout/SketchUpModel.rb', line 352

def preserve_scale_on_resize=(preserve_scale)
end

#preserve_scale_on_resize?Boolean

The #preserve_scale_on_resize? method returns whether the scale is preserved when the Layout::SketchUpModel is resized.

Examples:

bounds = Geom::Bounds2d.new(1, 1, 3, 3)
model = Layout::SketchUpModel.new("C:/Path/to/model.skp", bounds)
will_scale = model.preserve_scale_on_resize?

Returns:

  • (Boolean)

Version:

  • LayOut 2018



366
367
# File 'lib/sketchup-api-stubs/stubs/Layout/SketchUpModel.rb', line 366

def preserve_scale_on_resize?
end

#renderObject

The #render method renders the Layout::SketchUpModel.

Examples:

bounds = Geom::Bounds2d.new(1, 1, 3, 3)
model = Layout::SketchUpModel.new("C:/Path/to/model.skp", bounds)
model.render if model.render_needed?

Raises:

Version:

  • LayOut 2018



382
383
# File 'lib/sketchup-api-stubs/stubs/Layout/SketchUpModel.rb', line 382

def render
end

#render_modeInteger

The #render_mode method returns the render mode of the Layout::SketchUpModel.

The render mode can be one of the following:

Layout::SketchUpModel::RASTER_RENDER
Layout::SketchUpModel::HYBRID_RENDER
Layout::SketchUpModel::VECTOR_RENDER

Examples:

bounds = Geom::Bounds2d.new(1, 1, 3, 3)
model = Layout::SketchUpModel.new("C:/Path/to/model.skp", bounds)
render_mode = model.render_mode

Returns:

  • (Integer)

Version:

  • LayOut 2018



401
402
# File 'lib/sketchup-api-stubs/stubs/Layout/SketchUpModel.rb', line 401

def render_mode
end

#render_mode=(render_mode) ⇒ Object

The #render_mode= method sets the render mode of the Layout::SketchUpModel.

The render mode can be one of the following:

Layout::SketchUpModel::RASTER_RENDER
Layout::SketchUpModel::HYBRID_RENDER
Layout::SketchUpModel::VECTOR_RENDER

Examples:

bounds = Geom::Bounds2d.new(1, 1, 3, 3)
model = Layout::SketchUpModel.new("C:/Path/to/model.skp", bounds)
model.render_mode = Layout::SketchUpModel::RASTER_RENDER

Parameters:

  • render_mode (Integer)

Raises:

Version:

  • LayOut 2018



427
428
# File 'lib/sketchup-api-stubs/stubs/Layout/SketchUpModel.rb', line 427

def render_mode=(render_mode)
end

#render_needed?Boolean

The #render_needed? method returns whether the Layout::SketchUpModel needs to be rendered.

Examples:

bounds = Geom::Bounds2d.new(1, 1, 3, 3)
model = Layout::SketchUpModel.new("C:/Path/to/model.skp", bounds)
model.render if model.render_needed?

Returns:

  • (Boolean)

Version:

  • LayOut 2018



441
442
# File 'lib/sketchup-api-stubs/stubs/Layout/SketchUpModel.rb', line 441

def render_needed?
end

#scaleFloat

The #scale method returns the scale of the Layout::SketchUpModel.

Examples:

bounds = Geom::Bounds2d.new(1, 1, 3, 3)
model = Layout::SketchUpModel.new("C:/Path/to/model.skp", bounds)
scale = model.scale

Returns:

  • (Float)

Version:

  • LayOut 2018



454
455
# File 'lib/sketchup-api-stubs/stubs/Layout/SketchUpModel.rb', line 454

def scale
end

#scale=(scale) ⇒ Object

The #scale= method sets the scale of the Layout::SketchUpModel. Scale must be at least 0.0000001, and the view must be orthographic.

Examples:

bounds = Geom::Bounds2d.new(1, 1, 3, 3)
model = Layout::SketchUpModel.new("C:/Path/to/model.skp", bounds)
model.scale = 2.0

Parameters:

  • scale (Float)

Raises:

Version:

  • LayOut 2018



477
478
# File 'lib/sketchup-api-stubs/stubs/Layout/SketchUpModel.rb', line 477

def scale=(scale)
end

#scenesArray<String>

The #scenes method returns an array of scene names that are available for the Layout::SketchUpModel. The first scene will always be the default scene, called “Last saved SketchUp View”.

Examples:

bounds = Geom::Bounds2d.new(1, 1, 3, 3)
model = Layout::SketchUpModel.new("C:/Path/to/model.skp", bounds)
scene_names = model.scenes

Returns:

Version:

  • LayOut 2018



492
493
# File 'lib/sketchup-api-stubs/stubs/Layout/SketchUpModel.rb', line 492

def scenes
end

#viewInteger

The #view method returns the standard view of the Layout::SketchUpModel.

The standard view can be one of the following values:

Layout::SketchUpModel::CUSTOM_VIEW
Layout::SketchUpModel::TOP_VIEW
Layout::SketchUpModel::TOP_RELATIVE_VIEW
Layout::SketchUpModel::BOTTOM_VIEW
Layout::SketchUpModel::BOTTOM_RELATIVE_VIEW
Layout::SketchUpModel::FRONT_VIEW
Layout::SketchUpModel::BACK_VIEW
Layout::SketchUpModel::LEFT_VIEW
Layout::SketchUpModel::RIGHT_VIEW
Layout::SketchUpModel::ISO_VIEW

Examples:

bounds = Geom::Bounds2d.new(1, 1, 3, 3)
model = Layout::SketchUpModel.new("C:/Path/to/model.skp", bounds)
view = model.view

Returns:

  • (Integer)

Version:

  • LayOut 2018



517
518
# File 'lib/sketchup-api-stubs/stubs/Layout/SketchUpModel.rb', line 517

def view
end

#view=(view) ⇒ Object

The #view= method sets the standard view of the Layout::SketchUpModel.

The standard view can be one of the following values:

Layout::SketchUpModel::TOP_VIEW
Layout::SketchUpModel::TOP_RELATIVE_VIEW
Layout::SketchUpModel::BOTTOM_VIEW
Layout::SketchUpModel::BOTTOM_RELATIVE_VIEW
Layout::SketchUpModel::FRONT_VIEW
Layout::SketchUpModel::BACK_VIEW
Layout::SketchUpModel::LEFT_VIEW
Layout::SketchUpModel::RIGHT_VIEW
Layout::SketchUpModel::ISO_VIEW

Examples:

bounds = Geom::Bounds2d.new(1, 1, 3, 3)
model = Layout::SketchUpModel.new("C:/Path/to/model.skp", bounds)
model.view = Layout::SketchUpModel::FRONT_VIEW

Parameters:

  • view (Integer)

Raises:

Version:

  • LayOut 2018



548
549
# File 'lib/sketchup-api-stubs/stubs/Layout/SketchUpModel.rb', line 548

def view=(view)
end