Class: Geom::Vector3d
- Inherits:
-
Object
- Object
- Geom::Vector3d
- Defined in:
- SketchUp/Geom/Vector3d.rb
Overview
The Vector3d class is used to represent vectors in a 3 dimensional space. Vectors in SketchUp have a direction and a length, but not a starting point.
There are numerous tutorials on 3D vectors available on the internet.
Class Method Summary collapse
-
.linear_combination(*args) ⇒ Object
The Vector3d.linear_combination method is used to create a new vector as a linear combination of other vectors.
Instance Method Summary collapse
-
#%(vector) ⇒ Float
The #% method is used to compute the dot product between two vectors.
-
#*(vector) ⇒ Geom::Vector3d
The #cross method is used to compute the cross product between two vectors.
-
#+(vector2) ⇒ Geom::Vector3d
The - method is used to add a vector to this one.
-
#-(vector2) ⇒ Geom::Vector3d
The - method is used to subtract a vector from this one.
-
#<(vector2) ⇒ Boolean
The < method is used to determine if a vector’s x, y or z value is less than another vector’s x, y or z value.
-
#==(vector2) ⇒ Boolean
The == method is used to determine if two vectors are equal to within tolerance.
-
#[](i) ⇒ Length
The [] method is used to access the coordinates of a vector as if it was an Array.
-
#[]=(index, value) ⇒ Numeric
The []= method is used to set the coordinates of a vector as if it was an Array.
-
#angle_between(vector2) ⇒ Float
The angle_between method is used to compute the angle (in radians) between this vector and another vector.
-
#axes ⇒ Array(Geom::Vector3d, Geom::Vector3d, Geom::Vector3d)
The axes method is used to compute an arbitrary set of axes with the given vector as the z-axis direction.
-
#clone ⇒ Geom::Vector3d
The clone method is used to make a copy of a vector.
-
#cross(vector) ⇒ Geom::Vector3d
The #cross method is used to compute the cross product between two vectors.
-
#dot(vector) ⇒ Float
The #dot method is used to compute the dot product between two vectors.
-
#initialize(*args) ⇒ Vector3d
constructor
The new method is used to create a new vector.
-
#inspect ⇒ Geom::Vector3d
The inspect method is used to inspect the contents of a vector as a friendly string.
-
#length ⇒ Length
The length method is used to retrieve the length of the vector.
-
#length=(length) ⇒ Numeric
The length= method is used to set the length of the vector.
-
#normalize ⇒ Geom::Vector3d
The normalize method is used to return a vector that is a unit vector of another.
-
#normalize! ⇒ Geom::Vector3d
The normalize! method is used to convert a vector into a unit vector, in place.
-
#parallel?(vector2) ⇒ Boolean
The parallel method is used to determine if this vector is parallel to another vector to within tolerance.
-
#perpendicular?(vector2) ⇒ Boolean
The perpendicular? method is used to determine if this vector is perpendicular to another vector to within tolerance.
-
#reverse ⇒ Geom::Vector3d
The reverse method is used to return a new vector that is the reverse of this vector, while leaving the original unchanged.
-
#reverse! ⇒ Geom::Vector3d
The reverse! method is used to reverse the vector in place.
-
#samedirection?(vector2) ⇒ Boolean
The samedirection? method is used to determine if this vector is parallel to and in the same direction as another vector to within tolerance.
-
#set!(*args) ⇒ Object
The set! method is used to set the coordinates of the vector.
-
#to_a ⇒ Array(Length, Length, Length)
The to_a method retrieves the coordinates of the vector in an Array [x, y, z].
-
#to_s ⇒ String
The to_s method is used to format the vector as a String.
-
#transform(transform) ⇒ Geom::Vector3d
Apply a Transformation to a vector, returning a new vector.
-
#transform!(transform) ⇒ Geom::Vector3d
Apply a Transformation to a vector.
-
#unitvector? ⇒ Boolean
The unitvector? method is used to see if the vector is a unit vector.
-
#valid? ⇒ Boolean
The valid? method is used to verify if a vector is valid.
-
#x ⇒ Length
The x method is used to retrieve the x coordinate of the vector.
-
#x=(x) ⇒ Numeric
The x= method is used to set the x coordinate of the vector.
-
#y ⇒ Length
The y method is used to retrieve the y coordinate of the vector.
-
#y=(y) ⇒ Numeric
Set the y coordinate of the vector.
-
#z ⇒ Length
Get the z coordinate of the vector.
-
#z=(z) ⇒ Numeric
Set the z coordinate of the vector.
Constructor Details
#initialize ⇒ Geom::Vector3d #initialize(x, y, z) ⇒ Geom::Vector3d #initialize(vector) ⇒ Geom::Vector3d #initialize(array2d) ⇒ Geom::Vector3d #initialize(array3d) ⇒ Geom::Vector3d
The new method is used to create a new vector.
340 341 |
# File 'SketchUp/Geom/Vector3d.rb', line 340 def initialize(*args) end |
Class Method Details
.linear_combination(weight1, vector1, weight2, vector2) ⇒ Geom::Vector3d .linear_combination(x, xaxis, y, yaxis, z, zaxis) ⇒ Geom::Vector3d
The linear_combination method is used to create a new vector as a linear combination of other vectors. This method is generally used to get a vector at some percentage between two vectors.
A linear combination is a standard term for vector math. It is defined as vector = weight1 * vector1 + weight2 * vector2.
47 48 |
# File 'SketchUp/Geom/Vector3d.rb', line 47 def self.linear_combination(*args) end |
Instance Method Details
#%(vector) ⇒ Float
68 69 |
# File 'SketchUp/Geom/Vector3d.rb', line 68 def %(vector) end |
#*(vector) ⇒ Geom::Vector3d
The #cross method is used to compute the cross product between two vectors.
The cross product, also called the vector product, is an operation on two vectors. The cross product of two vectors produces a third vector which is perpendicular to the plane in which the first two lie.
95 96 |
# File 'SketchUp/Geom/Vector3d.rb', line 95 def *(vector) end |
#+(vector2) ⇒ Geom::Vector3d
The - method is used to add a vector to this one.
111 112 |
# File 'SketchUp/Geom/Vector3d.rb', line 111 def +(vector2) end |
#-(vector2) ⇒ Geom::Vector3d
The - method is used to subtract a vector from this one.
127 128 |
# File 'SketchUp/Geom/Vector3d.rb', line 127 def -(vector2) end |
#<(vector2) ⇒ Boolean
The < method is used to determine if a vector’s x, y or z value is less than another vector’s x, y or z value.
144 145 |
# File 'SketchUp/Geom/Vector3d.rb', line 144 def <(vector2) end |
#==(vector2) ⇒ Boolean
The == method is used to determine if two vectors are equal to within tolerance.
163 164 |
# File 'SketchUp/Geom/Vector3d.rb', line 163 def ==(vector2) end |
#[](i) ⇒ Length
The [] method is used to access the coordinates of a vector as if it was an Array. The index must be 0, 1 or 2.
The following are equivalent:
190 191 |
# File 'SketchUp/Geom/Vector3d.rb', line 190 def [](i) end |
#[]=(index, value) ⇒ Numeric
The []= method is used to set the coordinates of a vector as if it was an Array. The value of i must be 0, 1 or 2.
208 209 |
# File 'SketchUp/Geom/Vector3d.rb', line 208 def []=(index, value) end |
#angle_between(vector2) ⇒ Float
The angle_between method is used to compute the angle (in radians) between this vector and another vector.
225 226 |
# File 'SketchUp/Geom/Vector3d.rb', line 225 def angle_between(vector2) end |
#axes ⇒ Array(Geom::Vector3d, Geom::Vector3d, Geom::Vector3d)
The axes method is used to compute an arbitrary set of axes with the given vector as the z-axis direction.
Returns an Array of three vectors [xaxis, yaxis, zaxis]
240 241 |
# File 'SketchUp/Geom/Vector3d.rb', line 240 def axes end |
#clone ⇒ Geom::Vector3d
The clone method is used to make a copy of a vector.
This method is equivalent to vec2 = Geom::Vector3d.new(vec)
255 256 |
# File 'SketchUp/Geom/Vector3d.rb', line 255 def clone end |
#cross(vector) ⇒ Geom::Vector3d
The #cross method is used to compute the cross product between two vectors.
The cross product, also called the vector product, is an operation on two vectors. The cross product of two vectors produces a third vector which is perpendicular to the plane in which the first two lie.
282 283 |
# File 'SketchUp/Geom/Vector3d.rb', line 282 def cross(vector) end |
#dot(vector) ⇒ Float
The #dot method is used to compute the dot product between two vectors.
299 300 |
# File 'SketchUp/Geom/Vector3d.rb', line 299 def dot(vector) end |
#inspect ⇒ Geom::Vector3d
The inspect method is used to inspect the contents of a vector as a friendly string.
354 355 |
# File 'SketchUp/Geom/Vector3d.rb', line 354 def inspect end |
#length ⇒ Length
The length method is used to retrieve the length of the vector.
366 367 |
# File 'SketchUp/Geom/Vector3d.rb', line 366 def length end |
#length=(length) ⇒ Numeric
The length= method is used to set the length of the vector. The length must be greater than 0.
384 385 |
# File 'SketchUp/Geom/Vector3d.rb', line 384 def length=(length) end |
#normalize ⇒ Geom::Vector3d
The normalize method is used to return a vector that is a unit vector of another.
397 398 |
# File 'SketchUp/Geom/Vector3d.rb', line 397 def normalize end |
#normalize! ⇒ Geom::Vector3d
The normalize! method is used to convert a vector into a unit vector, in place.
Another way to do this is vec.length = 1
412 413 |
# File 'SketchUp/Geom/Vector3d.rb', line 412 def normalize! end |
#parallel?(vector2) ⇒ Boolean
The parallel method is used to determine if this vector is parallel to another vector to within tolerance.
429 430 |
# File 'SketchUp/Geom/Vector3d.rb', line 429 def parallel?(vector2) end |
#perpendicular?(vector2) ⇒ Boolean
The perpendicular? method is used to determine if this vector is perpendicular to another vector to within tolerance.
448 449 |
# File 'SketchUp/Geom/Vector3d.rb', line 448 def perpendicular?(vector2) end |
#reverse ⇒ Geom::Vector3d
The reverse method is used to return a new vector that is the reverse of this vector, while leaving the original unchanged.
461 462 |
# File 'SketchUp/Geom/Vector3d.rb', line 461 def reverse end |
#reverse! ⇒ Geom::Vector3d
The reverse! method is used to reverse the vector in place.
473 474 |
# File 'SketchUp/Geom/Vector3d.rb', line 473 def reverse! end |
#samedirection?(vector2) ⇒ Boolean
The samedirection? method is used to determine if this vector is parallel to and in the same direction as another vector to within tolerance.
492 493 |
# File 'SketchUp/Geom/Vector3d.rb', line 492 def samedirection?(vector2) end |
#set!(x, y, z) ⇒ Geom::Vector3d #set!(vector) ⇒ Geom::Vector3d #set!(array3d) ⇒ Geom::Vector3d
The set! method is used to set the coordinates of the vector.
529 530 |
# File 'SketchUp/Geom/Vector3d.rb', line 529 def set!(*args) end |
#to_a ⇒ Array(Length, Length, Length)
The to_a method retrieves the coordinates of the vector in an Array [x, y, z].
541 542 |
# File 'SketchUp/Geom/Vector3d.rb', line 541 def to_a end |
#to_s ⇒ String
The to_s method is used to format the vector as a String.
554 555 |
# File 'SketchUp/Geom/Vector3d.rb', line 554 def to_s end |
#transform(transform) ⇒ Geom::Vector3d
Apply a Transformation to a vector, returning a new vector. The original vector is unchanged by this method.
569 570 |
# File 'SketchUp/Geom/Vector3d.rb', line 569 def transform(transform) end |
#transform!(transform) ⇒ Geom::Vector3d
Apply a Transformation to a vector. The vector itself is modified.
583 584 |
# File 'SketchUp/Geom/Vector3d.rb', line 583 def transform!(transform) end |
#unitvector? ⇒ Boolean
The unitvector? method is used to see if the vector is a unit vector.
This is equivalent to vec.length == 1.0
599 600 |
# File 'SketchUp/Geom/Vector3d.rb', line 599 def unitvector? end |
#valid? ⇒ Boolean
The valid? method is used to verify if a vector is valid. A vector is valid if its length is not zero.
618 619 |
# File 'SketchUp/Geom/Vector3d.rb', line 618 def valid? end |
#x ⇒ Length
The x method is used to retrieve the x coordinate of the vector.
629 630 |
# File 'SketchUp/Geom/Vector3d.rb', line 629 def x end |
#x=(x) ⇒ Numeric
The x= method is used to set the x coordinate of the vector.
644 645 |
# File 'SketchUp/Geom/Vector3d.rb', line 644 def x=(x) end |
#y ⇒ Length
The y method is used to retrieve the y coordinate of the vector.
656 657 |
# File 'SketchUp/Geom/Vector3d.rb', line 656 def y end |
#y=(y) ⇒ Numeric
Set the y coordinate of the vector.
671 672 |
# File 'SketchUp/Geom/Vector3d.rb', line 671 def y=(y) end |
#z ⇒ Length
Get the z coordinate of the vector.
683 684 |
# File 'SketchUp/Geom/Vector3d.rb', line 683 def z end |
#z=(z) ⇒ Numeric
Set the z coordinate of the vector.
698 699 |
# File 'SketchUp/Geom/Vector3d.rb', line 698 def z=(z) end |