Module: SkippyLib::Geometry

Extended by:
Geometry
Included in:
Geometry
Defined in:
modules/geometry.rb

Overview

Since:

  • 3.0.0

Instance Method Summary collapse

Instance Method Details

#midpoint(edge) ⇒ Geom::Point3d #midpoint(point1, point2) ⇒ Geom::Point3d

Overloads:

  • #midpoint(edge) ⇒ Geom::Point3d

    Parameters:

    • edge (Sketchup::Edge)

    Returns:

    • (Geom::Point3d)
  • #midpoint(point1, point2) ⇒ Geom::Point3d

    Parameters:

    • point1 (Geom::Point3d)
    • point2 (Geom::Point3d)

    Returns:

    • (Geom::Point3d)

Since:

  • 3.0.0



19
20
21
22
23
24
25
26
27
28
29
# File 'modules/geometry.rb', line 19

def mid_point(*args)
  case args.size
  when 1 # Edge
    points = args.first.vertices.map(&:position)
  when 2 # Points
    points = args
  else
    raise ArgumentError, "wrong number of arguments (#{args.size} for 1..2)"
  end
  Geom.linear_combination(0.5, points.first, 0.5, points.last)
end

#offset_points(points, vector) ⇒ Array<Geom::Point3d>

Parameters:

  • points (Array<Geom::Point3d>)
  • vector (Geom::Vector3d)

Returns:

  • (Array<Geom::Point3d>)

Since:

  • 3.0.0



35
36
37
# File 'modules/geometry.rb', line 35

def offset_points(points, vector)
  points.map { |point| point.offset(vector) }
end