vector_salad 0.1.0 → 0.1.1

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
checksums.yaml CHANGED
@@ -1,7 +1,7 @@
1
1
  ---
2
2
  SHA1:
3
- metadata.gz: fad3fbafb595baf3f110bf04dce1e97b22cdeed0
4
- data.tar.gz: 6fcf75af8526c58c780c41ce66d01365d5a3cdde
3
+ metadata.gz: 7a6b0ecd1d24e4cdd933aef2c98e31528254e440
4
+ data.tar.gz: 9a7b1e683c59cd59328dec8ab937b7b35c68d734
5
5
  SHA512:
6
- metadata.gz: 064e748a43eaf02ace1dff34cd2c2fd289bee6140d429bae19df2f82809aca94d40659832584da594b238be6d73a4d0194d5f570635ba71e1cdb280def70fb0e
7
- data.tar.gz: 9c81ddc06894f2b8bb92a7ae360e168208a1f549ad27112b541e278cc8727dfa25099599be523aea3b2c9bb629a9b57f7d6682a38ddae87b880c226e54da2d8d
6
+ metadata.gz: 9a35a54a39d8c2dc0c2afc31821412ea4d11c2539cddf330155fa696f1aa544d7b3119eb8302896bb75ff65929216d35ca2e4ca639e20e2db99e02f51f133c50
7
+ data.tar.gz: 26fb55040ca5a28ce3a656e3c8da13a032e1fa293a7bb7aa33676acaabcf6255ab397f75ba2140a3a2a04153a58aeb304f18d30c2453f2cdaebb7d6493a98d7b
data/.travis.yml ADDED
@@ -0,0 +1,4 @@
1
+ language: ruby
2
+ rvm:
3
+ - "2.1.5"
4
+ - "2.2.2"
data/.yardopts CHANGED
@@ -1,4 +1,5 @@
1
1
  --plugin contracts
2
+ -e lib/contracts_contracts.rb
2
3
  --title 'VectorSalad Documentation'
3
4
  --charset utf-8
4
5
  --markup markdown
data/README.md CHANGED
@@ -1,6 +1,7 @@
1
1
  # VectorSalad
2
2
 
3
3
  [![Gem Version](https://badge.fury.io/rb/vector_salad.svg)](http://badge.fury.io/rb/vector_salad)
4
+ [![Build Status](https://travis-ci.org/sfcgeorge/vector_salad.svg)](https://travis-ci.org/sfcgeorge/vector_salad)
4
5
  [![Code Climate](https://codeclimate.com/github/sfcgeorge/vector_salad/badges/gpa.svg)](https://codeclimate.com/github/sfcgeorge/vector_salad)
5
6
  [![Documentation](https://img.shields.io/badge/yard-docs-blue.svg?style=flat)](http://sfcgeorge.github.io/vector_salad/doc/)
6
7
 
@@ -2,7 +2,7 @@
2
2
  module Contracts
3
3
  class Coords
4
4
  def self.valid?(val)
5
- Maybe[[Num, Num]].valid? val
5
+ Contracts::Maybe[[Contracts::Num, Contracts::Num]].valid? val
6
6
  end
7
7
 
8
8
  def self.to_s
@@ -12,7 +12,7 @@ module Contracts
12
12
 
13
13
  class Coord
14
14
  def self.valid?(val)
15
- Num.valid? val
15
+ Contracts::Num.valid? val
16
16
  end
17
17
 
18
18
  def self.to_s
@@ -22,11 +22,11 @@ module Contracts
22
22
 
23
23
  class PolySides
24
24
  def self.valid?(val)
25
- Num.valid?(val) && val >= 3
25
+ val && val.is_a?(Integer) && val >= 3
26
26
  end
27
27
 
28
28
  def self.to_s
29
- "Num; sides of the polygon, minimum of 3"
29
+ "Int; sides of the polygon, minimum of 3"
30
30
  end
31
31
  end
32
32
  end
@@ -23,10 +23,12 @@ module VectorSalad
23
23
 
24
24
  # Convert the shape to a path
25
25
  def to_path
26
+ # Standard:
26
27
  # http://stackoverflow.com/a/13338311
27
28
  # c = 4 * (Math.sqrt(2) - 1) / 3
28
29
  # c = 0.5522847498307936
29
30
  #
31
+ # Better:
30
32
  # http://spencermortensen.com/articles/bezier-circle/
31
33
  c = 0.551915024494
32
34
  d = c * @radius
@@ -51,7 +53,7 @@ module VectorSalad
51
53
  # Flatten the circle into many small straight line segments.
52
54
  #
53
55
  # @param fn The number of segments
54
- Contract Maybe[Num] => Path
56
+ Contract Maybe[PolySides] => Path
55
57
  def to_simple_path(fn = nil)
56
58
  fn ||= (@radius * 4).ceil
57
59
 
@@ -1,3 +1,3 @@
1
1
  module VectorSalad
2
- VERSION = "0.1.0" # Version of VectorSalad
2
+ VERSION = "0.1.1" # Version of VectorSalad
3
3
  end
data/vector_salad.gemspec CHANGED
@@ -24,8 +24,8 @@ Gem::Specification.new do |spec|
24
24
 
25
25
  spec.add_dependency "pretty_backtrace", "~> 0.1"
26
26
  spec.add_dependency "ruby_clipper", "~> 5.0"
27
- spec.add_dependency "spiro", "~> 0.0"
28
- spec.add_dependency "contracts", "~> 0.7"
27
+ spec.add_dependency "spiro", "~> 0.3"
28
+ spec.add_dependency "contracts", "~> 0.12"
29
29
 
30
30
  #spec.add_development_dependency "yard", "~> 0.8"
31
31
  #spec.add_development_dependency "yard-contracts"#, "~> 0.1"
metadata CHANGED
@@ -1,7 +1,7 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: vector_salad
3
3
  version: !ruby/object:Gem::Version
4
- version: 0.1.0
4
+ version: 0.1.1
5
5
  platform: ruby
6
6
  authors:
7
7
  - Simon George
@@ -44,28 +44,28 @@ dependencies:
44
44
  requirements:
45
45
  - - "~>"
46
46
  - !ruby/object:Gem::Version
47
- version: '0.0'
47
+ version: '0.3'
48
48
  type: :runtime
49
49
  prerelease: false
50
50
  version_requirements: !ruby/object:Gem::Requirement
51
51
  requirements:
52
52
  - - "~>"
53
53
  - !ruby/object:Gem::Version
54
- version: '0.0'
54
+ version: '0.3'
55
55
  - !ruby/object:Gem::Dependency
56
56
  name: contracts
57
57
  requirement: !ruby/object:Gem::Requirement
58
58
  requirements:
59
59
  - - "~>"
60
60
  - !ruby/object:Gem::Version
61
- version: '0.7'
61
+ version: '0.12'
62
62
  type: :runtime
63
63
  prerelease: false
64
64
  version_requirements: !ruby/object:Gem::Requirement
65
65
  requirements:
66
66
  - - "~>"
67
67
  - !ruby/object:Gem::Version
68
- version: '0.7'
68
+ version: '0.12'
69
69
  - !ruby/object:Gem::Dependency
70
70
  name: bundler
71
71
  requirement: !ruby/object:Gem::Requirement
@@ -107,6 +107,7 @@ extensions: []
107
107
  extra_rdoc_files: []
108
108
  files:
109
109
  - ".gitignore"
110
+ - ".travis.yml"
110
111
  - ".yardopts"
111
112
  - Gemfile
112
113
  - LICENSE.txt