class Disp3D::NodePolylines

Public Class Methods

new(geom, name = nil) click to toggle source
Calls superclass method Disp3D::NodeLeaf::new
# File lib/node/node_polylines.rb, line 7
def initialize(geom, name = nil)
  Util3D.check_arg_type(Symbol, name, true)
  Util3D.check_arg_type(GMath3D::Polyline, geom, false, true)
  super
  @width = 1.0
end

Protected Instance Methods

draw_each(polyline) click to toggle source
# File lib/node/node_polylines.rb, line 30
def draw_each(polyline)
  GL.Begin(GL::LINE_STRIP)
  polyline.vertices.each do | vertex |
    GL.Vertex( vertex.x, vertex.y, vertex.z )
  end
  GL.Vertex( polyline.vertices[0].x, polyline.vertices[0].y, polyline.vertices[0].z ) if( !polyline.is_open )
  GL.End()
end
draw_element() click to toggle source
# File lib/node/node_polylines.rb, line 15
def draw_element
  if(@geom)
    GL.LineWidth(@width)
    draw_color
    if(@geom.kind_of?(GMath3D::Polyline))
      draw_each(@geom)
    elsif(@geom.kind_of?(Array))
      @geom.each_with_index do |polyline, i|
        draw_colors
        draw_each(polyline)
      end
    end
  end
end