class Microstation::Point3d
Attributes
x[R]
y[R]
z[R]
Public Class Methods
cartesian_to_polar(x,y)
click to toggle source
# File lib/microstation/point3d.rb, line 13 def cartesian_to_polar(x,y) r = Math.sqrt(x*x + y*y) angle = Angle.radians(Math.atan2(y,x)) [r,angle] end
from_ole(ole)
click to toggle source
# File lib/microstation/point3d.rb, line 23 def from_ole(ole) new(ole.X, ole.Y, ole.Z) end
from_polar_degrees(r,a)
click to toggle source
# File lib/microstation/point3d.rb, line 19 def from_polar_degrees(r,a) end
new(x=0,y=0,z=0)
click to toggle source
# File lib/microstation/point3d.rb, line 35 def initialize(x=0,y=0,z=0) @x = x @y = y @z = z end
ole_point3d?(ole)
click to toggle source
# File lib/microstation/point3d.rb, line 9 def ole_point3d?(ole) ole.class == WIN32OLE_RECORD && ole.typename == 'Point3d' end
polar_to_cartesian(r,a)
click to toggle source
# File lib/microstation/point3d.rb, line 27 def polar_to_cartesian(r,a) end
Public Instance Methods
+(pt)
click to toggle source
# File lib/microstation/point3d.rb, line 42 def +(pt) case pt when Point3d self.class.new(self.x + pt.x, self.y + pt.y, self.z + pt.z) when Array self.class.new(self.x + pt[0], self.y + pt[1]) end end
-(pt)
click to toggle source
# File lib/microstation/point3d.rb, line 51 def -(pt) case pt when Point3d self.class.new(self.x - pt.x, self.y - pt.y, self.z - pt.z) when Array self.class.new(self.x - pt[0], self.y - pt[1]) end end
to_cartesian()
click to toggle source
# File lib/microstation/point3d.rb, line 64 def to_cartesian end
zero()
click to toggle source
# File lib/microstation/point3d.rb, line 60 def zero new(0.0,0.0,0,0) end