forked from mirrors/gecko-dev
		
	 cc4019f675
			
		
	
	
		cc4019f675
		
	
	
	
	
		
			
			This adds the wpf-gpu-raster Rust crate so we can use it for the accelerated Canvas2D project. Differential Revision: https://phabricator.services.mozilla.com/D161477
		
			
				
	
	
		
			26 lines
		
	
	
	
		
			779 B
		
	
	
	
		
			Rust
		
	
	
	
	
	
			
		
		
	
	
			26 lines
		
	
	
	
		
			779 B
		
	
	
	
		
			Rust
		
	
	
	
	
	
| // Output an .obj file of the generated mesh. Viewable at https://3dviewer.net/
 | |
| 
 | |
| fn output_obj_file(data: &[OutputVertex]) {
 | |
|         for v in data {
 | |
|                 let color = v.coverage;
 | |
|                 println!("v {} {} {} {} {} {}", v.x, v.y, 0., color, color, color);
 | |
|         }
 | |
| 
 | |
|         // output a standard triangle strip face list
 | |
|         for n in (1..data.len()-1).step_by(3) {
 | |
|                 println!("f {} {} {}", n, n+1, n+2);
 | |
|         }
 | |
| }
 | |
| 
 | |
| use wpf_gpu_raster::{PathBuilder, OutputVertex};
 | |
| fn main() {
 | |
|     let mut p = PathBuilder::new();
 | |
|     p.move_to(10., 10.0);
 | |
|     p.line_to(30., 10.);
 | |
|     p.line_to(50., 20.);
 | |
|     p.line_to(30., 30.);
 | |
|     p.line_to(10., 30.);
 | |
|     p.close();
 | |
|     let result = p.rasterize_to_tri_list(0, 0, 100, 100);
 | |
|     output_obj_file(&result)
 | |
| }
 |