geomerative 0.4.3-java → 1.0.2-java
Sign up to get free protection for your applications and to get access to all the features.
- checksums.yaml +5 -5
- data/.mvn/extensions.xml +1 -1
- data/.travis.yml +2 -3
- data/CHANGELOG.md +10 -1
- data/COPYING.md +1 -1
- data/docs/_config.yml +8 -0
- data/docs/_includes/head.html +7 -6
- data/docs/_includes/navigation.html +24 -0
- data/examples/README.md +1 -1
- data/examples/jruby_merge.rb +1 -1
- data/examples/{f_agent.rb → library/f_agent/f_agent.rb} +0 -0
- data/examples/{font_agent.rb → library/font_agent/font_agent.rb} +2 -1
- data/examples/text_on_geomerative_path.rb +3 -2
- data/examples/typo_deform.rb +2 -2
- data/examples/typo_extra_bright.rb +1 -1
- data/geomerative.gemspec +2 -3
- data/lib/geomerative.rb +5 -4
- data/lib/geomerative/version.rb +1 -1
- data/pom.rb +2 -2
- data/pom.xml +2 -2
- data/src/geomerative/FastRClip.java +2318 -2595
- data/src/geomerative/RPath.java +0 -1
- data/src/geomerative/RPolygon.java +75 -81
- metadata +9 -10
- data/calculate_torsional_angle.rb +0 -17
@@ -1,17 +0,0 @@
|
|
1
|
-
def calculate_torsional_angle(at0, at1, at2, at3)
|
2
|
-
r01 = at0 - at1
|
3
|
-
r32 = at3 - at2
|
4
|
-
r12 = at1 - at2
|
5
|
-
p = r12.cross(r01)
|
6
|
-
q = r12.cross(r32)
|
7
|
-
r = r12.cross(q)
|
8
|
-
u = q.dot(q)
|
9
|
-
v = r.dot(r)
|
10
|
-
return 360.0 if (u <= 0.0 || v <= 0.0)
|
11
|
-
u1 = p.dot(q) # u1 = p * q
|
12
|
-
v1 = p.dot(r) # v1 = p * r
|
13
|
-
u = u1 / sqrt(u)
|
14
|
-
v = v1 / sqrt(v)
|
15
|
-
return Math.atan2(v, u).degrees if (u.abs > 0.01 || v.abs > 0.01)
|
16
|
-
360.0
|
17
|
-
end
|