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) |       ['.png', '.jpg', '.jpeg', '.gif'].include?(extname) | ||||||
|     end |     end | ||||||
|  |  | ||||||
|  |     # Public: Is the blob a support 3D model format? | ||||||
|  |     # | ||||||
|  |     # Return true or false | ||||||
|  |     def solid? | ||||||
|  |       ['.stl', '.obj'].include?(extname) | ||||||
|  |     end | ||||||
|  |  | ||||||
|     MEGABYTE = 1024 * 1024 |     MEGABYTE = 1024 * 1024 | ||||||
|  |  | ||||||
|     # Public: Is the blob too big to load? |     # 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? |     assert !blob("Binary/octocat.psd").image? | ||||||
|   end |   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 |   def test_viewable | ||||||
|     assert blob("Text/README").viewable? |     assert blob("Text/README").viewable? | ||||||
|     assert blob("Ruby/foo.rb").viewable? |     assert blob("Ruby/foo.rb").viewable? | ||||||
|   | |||||||
		Reference in New Issue
	
	Block a user