Class: Sketchup::Camera
Relationships | |
Inherits: | Object |
Overview
The Camera class contains methods for creating and manipulating a camera. The camera in SketchUp is the “point of view” from which you look at the model.
Class Method Summary
-
.new ⇒ Sketchup::Camera
constructor
Returns a new camera with eye (where the camera is) and targets (where the camera is looking).
Instance Attribute Summary
-
#aspect_ratio ⇒ Float
rw
The #aspect_ratio method is used to retrieve the aspect ratio of the
Camera
. -
#aspect_ratio=(ratio)
rw
The #aspect_ratio= method is used to set the aspect ratio for a
Camera
. -
#description ⇒ String
rw
The #description method is used to retrieve the description for a
Camera
. -
#description=(description)
rw
The #description= method is used to set the description for the
Camera
. -
#fov ⇒ Float
rw
The #fov method retrieves the field of view of the
Camera
. -
#fov=(fov)
rw
The #fov= method sets the field of view for a
Camera
. -
#fov_is_height? ⇒ Boolean
readonly
The #fov_is_height? method indicates whether the field of view is measured vertically, as opposed horizontally.
-
#height ⇒ Float
rw
The #height method retrieves the height of a
Camera
. -
#height=(value)
rw
The #height= method is used to set the height for the
Camera
in inches. -
#image_width ⇒ Float
rw
The #image_width method returns the width of the image, as used to calculate the #focal_length.
-
#image_width=(image_width)
rw
The #image_width= method is used to set the width of the image, as used to calculate the #focal_length.
-
#is_2d? ⇒ Boolean
readonly
The #is_2d? method indicates if the camera two-point perspective or match photo mode.
-
#perspective=(perspective)
rw
The #perspective= method is used to set whether or not this is a perspective camera or an orthographic camera.
-
#perspective? ⇒ Boolean
rw
The #perspective? method is used to determine whether a camera is a perspective or orthographic camera.
Instance Method Summary
-
#center_2d ⇒ Geom::Point3d
The #center_2d method returns a point with the x and y offset of the camera when it’s in two-point perspective or math photo mode.
-
#direction ⇒ Geom::Vector3d
The #direction method is used to retrieve a Vector3d object in the direction that the
Camera
is pointing. -
#eye ⇒ Geom::Point3d
The #eye method is used to retrieve the eye Point3d object for the
Camera
. -
#focal_length(length) ⇒ Float
The focal_length method is used to get the focal length in millimeters of perspective
Camera
. -
#focal_length=(focal_length)
The #focal_length= method allows you to set the field of view by specifying a focal length in millimeters.
-
#scale_2d ⇒ Object
The #scale_2d method returns a float indicating the scaling factor of 2 point perspective cameras.
-
#set(eye, target, up) ⇒ Sketchup::Camera
The #set method sets the camera orientation.
-
#target ⇒ Geom::Point3d
The #target method retrieves Point3d that the camera is pointing at.
-
#up ⇒ Geom::Vector3d
The #up method is used to retrieve the up vector for the camera.
-
#xaxis ⇒ Geom::Vector3d
The #xaxis method is used to retrieve the x axis of the camera coordinate system.
-
#yaxis ⇒ Geom::Vector3d
The #yaxis method retrieves the y axis of the camera coordinate system.
-
#zaxis ⇒ Object
The #zaxis method retrieves the z axis of the camera coordinate system.
Constructor Details
.new ⇒ Camera
.new(eye, target, up, perspective = true, fov = 30.0) ⇒ Camera
Camera
.new(eye, target, up, perspective = true, fov = 30.0) ⇒ Camera
Returns a new camera with eye (where the camera is) and targets (where the camera is looking).
Instance Attribute Details
#aspect_ratio ⇒ Float
(rw)
The #aspect_ratio
method is used to retrieve the aspect ratio of the Camera
.
‘0.0` is the default value and denotes an aspect ratio matching that of the View
.
#aspect_ratio=(ratio) (rw)
The #aspect_ratio=
method is used to set the aspect ratio for a Camera
. Changing this value will cause SketchUp to show gray bars over the screen to show the resulting view.
If you set the value to ‘0.0`, then the aspect ratio of the Camera
will match the aspect ratio of its View
.
#description ⇒ String (rw)
The #description
method is used to retrieve the description for a Camera
.
#description=(description) (rw)
The #description=
method is used to set the description for the Camera
.
#fov ⇒ Float
(rw)
The #fov
method retrieves the field of view of the Camera
.
This is only applicable to perspective cameras.
#fov=(fov) (rw)
The #fov=
method sets the field of view for a Camera
. Field of view must be between 1 and 120 degrees, inclusive.
This is only valid on a perspective camera.
#fov_is_height? ⇒ Boolean
(readonly)
The #fov_is_height?
method indicates whether the field of view is measured vertically, as opposed horizontally.
#height ⇒ Float
(rw)
The #height
method retrieves the height of a Camera
.
This is only valid if it is not a perspective camera.
#height=(value) (rw)
The #height=
method is used to set the height for the Camera
in inches.
This is only valid if it is not a perspective camera.
#image_width ⇒ Float
(rw)
The #image_width
method returns the width of the image, as used to calculate the #focal_length. This value has no effect on how the view is displayed in SketchUp.
The default value, 0, is interpreted by SketchUp as 36 mm (the width of traditional 35 mm film).
#image_width=(image_width) (rw)
The #image_width=
method is used to set the width of the image, as used to calculate the #focal_length. This value has no effect on how the view is displayed in SketchUp.
The default value, 0, is interpreted by SketchUp as 36 mm (the width of traditional 35 mm film).
#is_2d? ⇒ Boolean
(readonly)
The #is_2d?
method indicates if the camera two-point perspective or match photo mode.
#perspective=(perspective) (rw)
The #perspective=
method is used to set whether or not this is a perspective camera or an orthographic camera.
#perspective? ⇒ Boolean
(rw)
The #perspective?
method is used to determine whether a camera is a perspective or orthographic camera.
Instance Method Details
#center_2d ⇒ Geom::Point3d
The #center_2d
method returns a point with the x and y offset of the camera when it’s in two-point perspective or math photo mode. When the camera is in two-point perspective and the user pans around, the x and y values will change. These values are in normalized device coordinates, so for instance, the range [-1.0, 1.0] spans the full width or height of the screen.
The z value is unused and it is always zero.
#direction ⇒ Geom::Vector3d
The #direction
method is used to retrieve a Vector3d object in the direction that the Camera
is pointing.
#eye ⇒ Geom::Point3d
The #eye
method is used to retrieve the eye Point3d object for the Camera
.
#focal_length(length) ⇒ Float
The focal_length method is used to get the focal length in millimeters of perspective Camera
.
This value is computed on the fly based on the camera #fov value and the camera #image_width value.
#focal_length=(focal_length)
The #focal_length=
method allows you to set the field of view by specifying a focal length in millimeters. Focal length must be between 1 and 3000, inclusive.
The camera #fov value is set based on the provided focal_length
and the current #image_width for the camera.
#scale_2d ⇒ Object
The #scale_2d
method returns a float indicating the scaling factor of 2 point perspective cameras.
When the camera is in two-point perspective and the user uses the zoom tools, this value will change. Zooming out will produce a value greater than 1.0.
#set(eye, target, up) ⇒ Camera
The #set
method sets the camera orientation. You have to set the camera eye, target and up parameters at the same time to make sure that you have a valid camera definition.
#target ⇒ Geom::Point3d
The #target
method retrieves Point3d that the camera is pointing at.
#up ⇒ Geom::Vector3d
The #up
method is used to retrieve the up vector for the camera. This is
the direction that the top of the camera is facing.
#xaxis ⇒ Geom::Vector3d
The #xaxis
method is used to retrieve the x axis of the camera coordinate system.
This value is computed from the cross product between the camera direction and the up vector.
#yaxis ⇒ Geom::Vector3d
The #yaxis
method retrieves the y axis of the camera coordinate system.
This value is computed to be perpendicular the camera x and z axes. It is equivalent to the up direction, but is computed to make sure that it is perpendicular to the direction.
#zaxis ⇒ Object
The #zaxis
method retrieves the z axis of the camera coordinate system.
This value is computed. It is the same as Camera
.direction