mirror of
https://github.com/KevinMidboe/linguist.git
synced 2025-10-29 17:50:22 +00:00
Add binary & ascii STLs and OBJs
This commit is contained in:
@@ -142,6 +142,13 @@ module Linguist
|
||||
['.png', '.jpg', '.jpeg', '.gif'].include?(extname)
|
||||
end
|
||||
|
||||
# Public: Is the blob a support 3D model format?
|
||||
#
|
||||
# Return true or false
|
||||
def solid?
|
||||
['.stl', '.obj'].include?(extname)
|
||||
end
|
||||
|
||||
MEGABYTE = 1024 * 1024
|
||||
|
||||
# Public: Is the blob too big to load?
|
||||
|
||||
BIN
samples/Binary/cube.stl
Normal file
BIN
samples/Binary/cube.stl
Normal file
Binary file not shown.
33
samples/Text/cube.obj
Normal file
33
samples/Text/cube.obj
Normal file
@@ -0,0 +1,33 @@
|
||||
# test_file
|
||||
v -18.500000 -24.500000 31.000000
|
||||
v -18.500000 -24.500000 -0.001000
|
||||
v 12.500000 -24.500000 -0.001000
|
||||
v 12.500000 -24.500000 31.000000
|
||||
v -18.500000 6.500000 31.000000
|
||||
v -18.500000 6.500000 -0.001000
|
||||
v 12.500000 6.500000 31.000000
|
||||
v 12.500000 6.500000 -0.001000
|
||||
vn 0.000000 -1.000000 0.000000,
|
||||
vn 0.000000 -1.000000 0.000000,
|
||||
vn -1.000000 0.000000 0.000000,
|
||||
vn -1.000000 0.000000 0.000000,
|
||||
vn 0.000000 1.000000 0.000000,
|
||||
vn 0.000000 1.000000 0.000000,
|
||||
vn 1.000000 0.000000 0.000000,
|
||||
vn 1.000000 0.000000 0.000000,
|
||||
vn 0.000000 0.000000 -1.000000,
|
||||
vn 0.000000 0.000000 -1.000000,
|
||||
vn 0.000000 0.000000 1.000000,
|
||||
vn 0.000000 0.000000 1.000000,
|
||||
f 1//1 2//1 3//1
|
||||
f 1//4 3//4 4//4
|
||||
f 5//7 6//7 2//7
|
||||
f 5//10 2//10 1//10
|
||||
f 6//13 5//13 7//13
|
||||
f 6//16 7//16 8//16
|
||||
f 7//19 4//19 3//19
|
||||
f 7//22 3//22 8//22
|
||||
f 8//25 3//25 2//25
|
||||
f 8//28 2//28 6//28
|
||||
f 5//31 1//31 4//31
|
||||
f 5//34 4//34 7//34
|
||||
86
samples/Text/cube.stl
Normal file
86
samples/Text/cube.stl
Normal file
@@ -0,0 +1,86 @@
|
||||
solid
|
||||
facet normal 0.000000E+00 -1.000000E+00 0.000000E+00
|
||||
outer loop
|
||||
vertex -1.850000E+01 -2.450000E+01 3.100000E+01
|
||||
vertex -1.850000E+01 -2.450000E+01 -1.000000E-03
|
||||
vertex 1.250000E+01 -2.450000E+01 -1.000000E-03
|
||||
endloop
|
||||
endfacet
|
||||
facet normal 0.000000E+00 -1.000000E+00 0.000000E+00
|
||||
outer loop
|
||||
vertex -1.850000E+01 -2.450000E+01 3.100000E+01
|
||||
vertex 1.250000E+01 -2.450000E+01 -1.000000E-03
|
||||
vertex 1.250000E+01 -2.450000E+01 3.100000E+01
|
||||
endloop
|
||||
endfacet
|
||||
facet normal -1.000000E+00 0.000000E+00 0.000000E+00
|
||||
outer loop
|
||||
vertex -1.850000E+01 6.500000E+00 3.100000E+01
|
||||
vertex -1.850000E+01 6.500000E+00 -1.000000E-03
|
||||
vertex -1.850000E+01 -2.450000E+01 -1.000000E-03
|
||||
endloop
|
||||
endfacet
|
||||
facet normal -1.000000E+00 0.000000E+00 0.000000E+00
|
||||
outer loop
|
||||
vertex -1.850000E+01 6.500000E+00 3.100000E+01
|
||||
vertex -1.850000E+01 -2.450000E+01 -1.000000E-03
|
||||
vertex -1.850000E+01 -2.450000E+01 3.100000E+01
|
||||
endloop
|
||||
endfacet
|
||||
facet normal 0.000000E+00 1.000000E+00 0.000000E+00
|
||||
outer loop
|
||||
vertex -1.850000E+01 6.500000E+00 -1.000000E-03
|
||||
vertex -1.850000E+01 6.500000E+00 3.100000E+01
|
||||
vertex 1.250000E+01 6.500000E+00 3.100000E+01
|
||||
endloop
|
||||
endfacet
|
||||
facet normal 0.000000E+00 1.000000E+00 0.000000E+00
|
||||
outer loop
|
||||
vertex -1.850000E+01 6.500000E+00 -1.000000E-03
|
||||
vertex 1.250000E+01 6.500000E+00 3.100000E+01
|
||||
vertex 1.250000E+01 6.500000E+00 -1.000000E-03
|
||||
endloop
|
||||
endfacet
|
||||
facet normal 1.000000E+00 0.000000E+00 0.000000E+00
|
||||
outer loop
|
||||
vertex 1.250000E+01 6.500000E+00 3.100000E+01
|
||||
vertex 1.250000E+01 -2.450000E+01 3.100000E+01
|
||||
vertex 1.250000E+01 -2.450000E+01 -1.000000E-03
|
||||
endloop
|
||||
endfacet
|
||||
facet normal 1.000000E+00 0.000000E+00 0.000000E+00
|
||||
outer loop
|
||||
vertex 1.250000E+01 6.500000E+00 3.100000E+01
|
||||
vertex 1.250000E+01 -2.450000E+01 -1.000000E-03
|
||||
vertex 1.250000E+01 6.500000E+00 -1.000000E-03
|
||||
endloop
|
||||
endfacet
|
||||
facet normal 0.000000E+00 0.000000E+00 -1.000000E+00
|
||||
outer loop
|
||||
vertex 1.250000E+01 6.500000E+00 -1.000000E-03
|
||||
vertex 1.250000E+01 -2.450000E+01 -1.000000E-03
|
||||
vertex -1.850000E+01 -2.450000E+01 -1.000000E-03
|
||||
endloop
|
||||
endfacet
|
||||
facet normal 0.000000E+00 0.000000E+00 -1.000000E+00
|
||||
outer loop
|
||||
vertex 1.250000E+01 6.500000E+00 -1.000000E-03
|
||||
vertex -1.850000E+01 -2.450000E+01 -1.000000E-03
|
||||
vertex -1.850000E+01 6.500000E+00 -1.000000E-03
|
||||
endloop
|
||||
endfacet
|
||||
facet normal 0.000000E+00 0.000000E+00 1.000000E+00
|
||||
outer loop
|
||||
vertex -1.850000E+01 6.500000E+00 3.100000E+01
|
||||
vertex -1.850000E+01 -2.450000E+01 3.100000E+01
|
||||
vertex 1.250000E+01 -2.450000E+01 3.100000E+01
|
||||
endloop
|
||||
endfacet
|
||||
facet normal 0.000000E+00 0.000000E+00 1.000000E+00
|
||||
outer loop
|
||||
vertex -1.850000E+01 6.500000E+00 3.100000E+01
|
||||
vertex 1.250000E+01 -2.450000E+01 3.100000E+01
|
||||
vertex 1.250000E+01 6.500000E+00 3.100000E+01
|
||||
endloop
|
||||
endfacet
|
||||
endsolid
|
||||
@@ -132,6 +132,12 @@ class TestBlob < Test::Unit::TestCase
|
||||
assert !blob("Binary/octocat.psd").image?
|
||||
end
|
||||
|
||||
def test_solid
|
||||
assert blob("Binary/cube.stl").solid?
|
||||
assert blob("Text/cube.stl").solid?
|
||||
assert blob("Text/cube.obj").solid?
|
||||
end
|
||||
|
||||
def test_viewable
|
||||
assert blob("Text/README").viewable?
|
||||
assert blob("Ruby/foo.rb").viewable?
|
||||
|
||||
Reference in New Issue
Block a user