Module: TT::Edge

Defined in:
TT_Lib2/edges.rb

Overview

Collection of Edge methods.

Since:

  • 2.5.0

Class Method Summary collapse

Class Method Details

.intersect_line_edge(line, edge) ⇒ Geom::Point3d|Nil

Parameters:

  • line (Array<Geom::Point3d, Geom::Vector3d>, Array<Geom::Point3d, Geom::Point3d>)
  • edge (Sketchup::Edge)

Returns:

  • (Geom::Point3d|Nil)

Since:

  • 2.5.0



22
23
24
25
26
27
# File 'TT_Lib2/edges.rb', line 22

def self.intersect_line_edge(line, edge)
  point = Geom.intersect_line_line(line, edge.line)
  return nil if point.nil?
  return point if self.point_on_edge?(point, edge)
  return nil
end

.point_on_edge?(point, edge) ⇒ Boolean

Parameters:

  • point (Geom::Point3d)
  • edge (Sketchup::Edge)

Returns:

  • (Boolean)

Since:

  • 2.5.0



35
36
37
38
39
# File 'TT_Lib2/edges.rb', line 35

def self.point_on_edge?(point, edge)
  a = edge.start.position
  b = edge.end.position
  TT::Point3d.between?(a, b, point, true)
end